PE文件:常用知识点

1、数据目录一共多少个表项?
十六个,但是最后一个为保留。
2.为什么要重定位表?
因为加载基址可能变化,并且在使用PE文件时,用的地址是VA,基址改变,VA也改变,所以需要重定位。
3.为什么脱壳后要修复导入表?
因为壳在加载的时候,它修改了原PE文件的IAT,让导入表指向了自建的导入表。
4.PE那些段可以压缩?

5.函数转发?
#pragma comment(liner,“dll”)
6.导入表需要两个 IMAGE_THUNK_DATA 数组的原因?
函数在加载的时候,IAT被修正,里面存放真实的函数地址。
7.如何判断32还是64位?
可选头的Magic。
PE文件头的Machine
8.如何判断PE文件是exe还是dll?
PE文件头里的属性值Characteristic。
9.PE节的个数?
文件头里的NumberOfSections
10.如何判断一个文件是否为PE文件?
首先看MZ,然后看NT头里的PE。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章