パッカー(Packer)
パッカー(Packer)
パッカーとは?
パッカー(Packer)っていうのは、EXEファイルのサイズを削減したり(ファイル圧縮) クラックを難しくする為にコード部分を暗号化するソフトウェアの総称。
パッカー(Packer)を使って作成されたEXEをクラックする為には自前でアンパッキング (パッキングされる前の状態に戻すこと)するか、専用のパッカーを拾ってきて アンパッキングしなければいけません。
パッカーの仕組み
パッカーの動作は、実は狭義のウィルスと非常に似ていて、パッキングされたプログラムが 実行されると、以下のような動作をします。
- パッカーがEXEに埋め込んだローダー(Loader)というプログラムを実行
- EXEファイルに埋め込まれた暗号化コードを復号化
- EXE本来のコードを実行
目的はまったく違いますが、自己書き換えコードであるという点でウィルスと パッカーは非常に似ています。またパッカーの中にはクラッカーによる リバースエンジニアリングを困難にする為にポリモーフィックなローダー を実装したものまであります。
アンパッカー(UnPacker)
パッカーによって作成されたEXEファイルをリバースエンジニアリングして作成された 特定のパッカーによって作成されたEXEファイルをパッキングされる前の状態に するプログラム。有名どころのパッカーにはことごとくアンパッカーが存在します。 しかもご丁寧にバージョンごとに複数のものが公開されていることが多いようです。
主なパッカー
フリーのものだとUpxが有名。商用のものだとAsPackとかが有名ですね。




