首先先來個畫得很清楚的excel圖 (別人做的, 用Excel把pe header畫得像packet, 很容易懂大小, 不過有些要根據offset 調整, 如他畫的pe header是0x80, 但是有可能是其他值)
由圖上可以看到import data (idata) 也是pe的其中一個section, 裡面有 offset 和size.
這篇由 matt pietrek 寫的 更深一步看win32 pe file format 裡有解釋import table 指到的位置 是一個IMAGE_IMPORT_DESCRIPTOR 的格式,
這篇我覺得是最實用的txt檔, 真希望我以後也可以把我要解釋的東西用txt 講的這麼清楚
The IMAGE_DATA_DIRECTORY struct consists of two fields:
DWORD VirtualAddress; // the RVA of the data structure
DWORD Size; // the size of the data structure
size 會是 20 *(import dll個數加1 ), 加1是因為最後一個會是全0, 20是IMAGE_IMPORT_DESCRIPTOR的大小.
沒有留言:
張貼留言