2011-11-11 5 views
0

私はWindows PEファイルについて説明しています。 あるファイルに別のファイルが含まれているかどうかを確認する方法はありますか? 私は意味...私は1つのrunableのプログラムにこのファイルに別のファイルが含まれていることを確認してください

MZ header 1st program 
PE header 1st program 
. 
. 
. all the sections from 1st program 
. 
MZ header 2nd program 
PE header 2nd program 
. 
. 
. all the sections from 2nd program 
. 

のような二つのプログラムをマージする場合は?もちろん、最初のものだけが実行されます。

+0

別のバイナリのバイナリを検索するコマンドラインツールが必要ですか? – tenfour

+0

あなたの目標は何ですか?私はそのような2つのexectuablesファイルをマージするための正当な(そして疑わしい)理由を考えることができません。 – ereOn

+0

私はC/C++ソリューションを探しており、マルウェアの研究に関する学士論文を必要としています。 – Samuel

答えて

1

場合によっては、PEファイル(IMAGE_SECTION_HEADER)の最後のセクションに関するオフセットとサイズの情報を取得する必要があります。この情報があれば、(offset + size)の後にチャンクを読むことができ、それが別のPEフォーマット(MZマジックナンバー)とマッチすればに最初に追加されたファイルがあると示唆します。

+0

ありがとう、これは役に立ちましたが、問題が発生しました。リリースビルドで動作し、デバッグビルドでは動作しません。おそらくこれの原因は何でしょうか?私はPEセクションの後に来るものについての情報は見つけられませんでした。私はセクションが最後にあると思った。デバッグデータがありますか?彼らはデバッグディレクトリにあるはずですか? – Samuel

+0

シンボルデータベースをデバッグする必要はありませんが、デバッグに役立つものやまったく異なるものをデバッグすることは可能です。それは本当に何でもできる... – JosephH

関連する問題