2012-04-16 8 views
0

私は何時間もこれを理解しようとしていますが、私はそれを得ることができません。私はMicrosoftのドキュメントの情報を見つけようとしていますが、情報の量に圧倒されています。私の質問は:インポートセクションのオフセットをPE32ファイル内で見つける方法はありますか?ファイルがいつメモリにロードされるのかは、ディスク上にあるときを意味します。 オブジェクトテーブルの内部を調べるべきですか?もう1つの質問は、オブジェクトテーブルはその直後に来るセクションの概要ですか?PE32ファイルのインポートセクションのオフセットを見つける方法は?

ありがとうございます。

答えて

1

私はPEファイルを掘り起こしていたのでかなりの間、 。 。

私がdocumentationを正しく読んでいる場合は、セクションテーブルがヘッダーのすぐ後に続きます。ヘッダーのサイズを計算することにより、セクションテーブルに直接配置することができます。

各セクションテーブルエントリの長さは40バイトです(ドキュメントの25ページを参照)。最初のフィールドは8バイトの名前です。私はそれからインポートセクション名を得ることができると仮定します。レコードのオフセット20には、生データへのポインタがあります。これは、「COFFファイル内のセクションの最初のページへのファイルポインタ」と記述されています。オフセット16のフィールドはサイズを示します。

セクションテーブルに配置し、各セクションヘッダーを順番に読み取ってインポートアドレステーブルを見つけて、生データへのポインタを取得できるようにする必要があります。

1

PeDumpをご覧ください。このツール(ソースコードが提供されています)では、どのように動作するかを見ることができます。

関連する問題