1. 程式人生 > 實用技巧 >PE檔案結構 | 逆向 | 節表相關

PE檔案結構 | 逆向 | 節表相關

主要涉及,PE檔案的兩種狀態->檔案對齊記憶體對齊

節表由n(在標準PE頭中有屬性標明數量)個IMAGE_SECTION_HEADER結構體(40bytes)組成:

結構如下:

 1 typedef struct _IMAGE_SECTION_HEADER {
 2     BYTE    Name[IMAGE_SIZEOF_SHORT_NAME]; //名字(可改):8bytes的ascii陣列
 3     union {                                //當前節的真實大小是多少(對齊前的大小)
 4         DWORD   PhysicalAddress;
5 DWORD VirtualSize; 6 } Misc; 7 DWORD VirtualAddress; //在記憶體中的偏移地址 需要加上ImageBase 8 DWORD SizeOfRawData; //在檔案中對齊後的大小 可能比Misc大或小,涉及到全域性變數有沒有初始值的問題,誰大取誰 9 DWORD PointerToRawData; //節區在檔案中的偏移 10 DWORD PointerToRelocations; //除錯相關 11 DWORD PointerToLinenumbers; //
除錯相關 12 WORD NumberOfRelocations; //除錯相關 13 WORD NumberOfLinenumbers; //除錯相關 14 DWORD Characteristics; //節的屬性-讀 寫 執行等等 15 } IMAGE_SECTION_HEADER, *PIMAGE_SECTION_HEADER;

over。