2

IDA では、.textセクションは から始まります0x01001630

ファイルでは、これらのバイトは生のオフセット0xA30.

セグメントPointerToRawDataのセクション テーブル内のフィールドは で、これはとの間の距離です。 .text0x4000xA300x630

0xA30PE ファイルのファイル ヘッダーから取得する方法がわかりません。どんな助けでも大歓迎です。

4

2 に答える 2

1

.text セクションの最初の 0x630 バイトは、IDA が新しいセクションに変換した IAT (インポート アドレス テーブル).idataです。

1000 [     630] RVA [size] of Import Address Table Directory

Name   Start    End      
----   -----    ---      
HEADER 01000000 01001000 
.idata 01001000 01001630   <- added by IDA
.text  01001630 01054000 
.idata 01054000 01054004   <- added by IDA
.data  01054004 01059000 

初期読み込みダイアログでチェックを外す[x] Make imports segmentと、変更されていないセクション テーブルが得られます。

Name   Start    End      
----   -----    ---      
HEADER 01000000 01001000 
.text  01001000 01054000 
.data  01054000 01059000 
于 2013-09-18T10:23:48.690 に答える
0

これはIDAが賢くなろうとしているケースだと思います。セクションは実際には.textファイル オフセット0x400(RVA 0x1000) から始まります。IDA は、.textセクションの先頭に api インポート データが含まれていることを認識するため、セクション名を に変更し.idataます。PE ヘッダーのすべてのセクション名を見ると、.idataセクションがないことがわかります。

PE ヘッダー全体を見てください。インポート アドレス テーブルが RVA0x1000で始まり、サイズが0x630.

于 2013-09-18T10:23:22.577 に答える