首页
社区
课程
招聘
[求助]IAT手动修复的时候不能被改变吗
2012-7-10 16:48 3010

[求助]IAT手动修复的时候不能被改变吗

2012-7-10 16:48
3010
据史料记载,pe装载器加载输入表时会通过IID->OriginalFirstThunk(INT)指向的函数名来确定IMAGE_IMPORT_BY_NAME结构,然后加载器会用真正的函数入口地址来替换FirstThunk(IAT).或者当INT为零时,会通过IAT的值找到指向函数名的地址串,再根据函数名得到函数入口地址并改写IAT.

但是,在程序dump后,我将INT改为零,将IAT改为指向指向函数名的指针时,总不能正确载入函数.按上面所说,IAT是pe装载器自动写入的,那为什么不可以改写呢

也看到一些史料上说,IAT不可改写,只能确定后指向原IAT,这又是为什么?

同时我也注意到,有的程序dump并且修复输入表后,IAT指向的是函数入口地址,也有IAT指向程序名的,但当我想改变IAT,总不能得到正确的结果

附上两个dump并且修复了输入表的程序,请高手指点一二,先谢过了

IAT指向函数入口地址:
dumped.rar

IAT指向函数名:
dumped_.rar

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回