圧縮された .exe ファイルのOEP (元のエントリ ポイント) を確実に見つける方法に関する一般的なルールはありますか? デバッグされたアセンブリ言語で検索する OEP の手がかりは何ですか?
PC-Guard 5.06.0400がパックされた Windows .exe ファイルがあり、それを解凍したいとします。したがって、重要な条件は、新たに抽出されたコード ブロック内で OEP を見つけることです。
そのためには、一般的なデバッガーOllyDBGを使用します。
圧縮された .exe ファイルのOEP (元のエントリ ポイント) を確実に見つける方法に関する一般的なルールはありますか? デバッグされたアセンブリ言語で検索する OEP の手がかりは何ですか?
PC-Guard 5.06.0400がパックされた Windows .exe ファイルがあり、それを解凍したいとします。したがって、重要な条件は、新たに抽出されたコード ブロック内で OEP を見つけることです。
そのためには、一般的なデバッガーOllyDBGを使用します。
これは、パッカーと、パックおよび/または仮想化コードを使用するアルゴリズムにのみ依存します。ollydbg を使用しているので、tuts4you、woodmanns、openrce をチェックすることをお勧めします。これらには多くのプラグインがあります (iirc には、難読化されたコードで oep を見つけるために設計されたプラグインがありますが、それがどの程度うまく機能するかはわかりません)。さまざまなパッカーのアンパック (特定のタイプのパッカーのヒントを得ることができる場合があります) を扱っているほか、このテーマに関するかなりの数の論文/チュートリアルもあり、役立つ場合とそうでない場合があります。
PC ガードはあまり注目されていないようですが、ここにあるビデオ リンクと情報が役立つはずです (Google キャッシュを称賛してください!)。
単純な戦略を指摘して、それが一般的に機能すると主張することは困難です。パッカー ツールの役割は、OEP が非常に困難な問題を発見することであるためです。さらに、優れたパッカーを使用しても、OEP を見つけるだけでは十分ではありません。そうは言っても、いくつかの提案があります。
Justin unpacker に関するこの論文を読むことをお勧めします。Justin アンパッカーは当時かなり効果的だったヒューリスティックを使用しており、そこからいくらかのマイレージを得ることができるかもしれません。少なくとも候補エントリ ポイントの数を管理可能な数に減らします。
Fanglu Guo、Peter Ferrie、Tzi-cker Chiueh によるパッカー問題とその解決策の研究 (2008)
パックされたプログラムについて多くのことを教えてくれる Web 分析ページもいくつかあります。たとえば、次のマルウェア アナライザー: http://eureka.cyber-ta.org/
これは現在ダウンしている別のものですが、過去にかなりの仕事をしており、すぐに再びアップすると思います): http://bitblaze.cs.berkeley.edu/renovo.html