0
EAT有人建議可以使用Python我怎麼能得到導入地址表 和導出地址表形式的PE?我目前使用pefile模塊,但不知道我可以使用它獲得IAT和EAT。 非常感謝您的幫助。獲取IAT和PE
EAT有人建議可以使用Python我怎麼能得到導入地址表 和導出地址表形式的PE?我目前使用pefile模塊,但不知道我可以使用它獲得IAT和EAT。 非常感謝您的幫助。獲取IAT和PE
的documentation介紹瞭如何做到這一點:
清單中的導入符號
每個目錄,如果在PE文件中存在正在處理,已在PE實例的條目爲DIRECTORY_ENTRY_directoryname。導入的符號可以如下:
# If the PE file was loaded using the fast_load=True argument, we will need to parse the data directories:
pe.parse_data_directories()
for entry in pe.DIRECTORY_ENTRY_IMPORT:
print entry.dll
for imp in entry.imports:
print '\t', hex(imp.address), imp.name
輸出
comdlg32.dll 0x10012A0L PageSetupDlgW 0x10012A4L FindTextW 0x10012A8L PrintDlgExW [snip] SHELL32.dll 0x1001154L DragFinish 0x1001158L DragQueryFileW
清單導出的符號
類似地,導出的符號可以列出如下:
for exp in pe.DIRECTORY_ENTRY_EXPORT.symbols:
print hex(pe.OPTIONAL_HEADER.ImageBase + exp.address), exp.name, exp.ordinal
輸出
0x7ca0ab4f SHUpdateRecycleBinIcon 336 0x7cab44c0 SHValidateUNC 173 0x7ca7b0aa SheChangeDirA 337 0x7ca7b665 SheChangeDirExA 338 0x7ca7b3e1 SheChangeDirExW 339 0x7ca7aec6 SheChangeDirW 340 0x7ca8baae SheConvertPathW 341