好友
阅读权限10
听众
最后登录1970-1-1
|
本帖最后由 xi0405 于 2025-3-23 17:30 编辑
前言:特例,是因为我只是对这一个文件进行修复。文件是ximo老师手脱UPX壳的案例。这篇帖子可以算是续脱壳后,无法运行的修复IAT(那篇帖子已解决是因为在虚拟机XP机可以跑的了)。
1.环境和工具
windows11
工具
2.使用的方法
1.LordPE-ImportREC (都使用管理员打开,不然可能会有程序找不到的可能)
2.LordPE-Scylla
3.OD-ImportREC
4.OD-Scylla
5.Scylla-ImportREC
6.Scylla-Scylla
7.x32dbg-ImportREC (x32dbg指的是x32dbg插件的Scylla)
8.x32dbg-Scylla
9.x32dbg-x32dbg
注:只有6.Scylla-Scylla和9.x32dbg-x32dbg可以成功运行
九种方法
3.具体步骤
脱壳的话具体可以去前一篇帖子,单步脱壳。修复IAT,在第一个方法中会写的比较详细,后续的都是一样的我就跳过了好多步骤
1.LordPE-ImportREC
在OD中打开,到达OEP,右键->OD脱壳调试进程,记住地址
1.1
打开LoadPE按照图示操作
1.2
1.2
进入ImportREC,这里的OEP是需要减去基地址的OEP,点击IAT自动搜索(此刻还不是在进行修复IAT),按图示操作,显示无效,然后剪掉,显示可疑我也会剪一下,转储到LordPE中dump下来的文件中
1.3
1.3
1.3
1.3
1.3
无法运行
1.4
开始修复IAT
进入ImportREC,跟着图示来
1.5
1.6
在数据窗口中命令输入,计算出来的值,Enter
1.7
1.7
1.7
计算好后到ImportREC中进行修复(后续修复,直接使用这些数据)
1.8
转储后
1.9
1.9
运行结果
1.10
LordPE-ImportREC无法成功修复IAT
2.LordPE-Scylla(Scylla不是插件)
因为都是使用LordPE进行dump,所以直接使用前一个方法dump出来的文件进行修复,Scylla需要的是完整的地址,OEP、VA(RVA)、大小,都是在前面计算出来的,记得剪一下后进行转储
2.1
2.1
2.1
2.1
运行结果
2.2
LordPE-Scylla无法修复IAT
3.OD-ImportREC
到达OEP,使用OD脱壳调试进程进行脱壳
3.1
到ImportREC进行修复
3.1
3.1
运行结果
3.2
OD-ImportREC无法修复IAT
4.OD-Scylla
使用前一次OD脱壳的文件(后面就不再提了),直接到Scylla进行修复
4.1
运行结果
4.2
OD-Scylla无法修复IAT
5.Scylla-Import
到OEP记住地址,打开Scylla,进行脱壳
5.1
5.2
5.2
5.2
dump后打开Import
5.3
5.3
5.3
运行结果
5.5
Scylla-ImportREC无法修复IAT
6.Scylla-Scylla
修复IAT,打开Scylla
6.1
6.1
运行结果
6.2
Scylla-Scylla修复IAT成功
7.x32dbg-Import
在x32dbg打开,不是壳的push ad,需要自己找到,断点
7.1
7.1
7.1
7.1
单步或者其他方法,到达OEP,使用x32dbg中的Scylla插件脱壳
7.2
7.2
使用ImportREC进行修复
7.3
7.3
运行结果
7.4
x32dbg-ImportREC无法修复IAT
8.x32dbg-Scylla
打开Scylla
8.1
8.1
8.1
运行结果
8,。2
x32dbg-Scylla无法修复IAT
9.x32dbg-x32dbg
直接在x32dbg中的插件Scylla中修复
9.1
9.1
运行结果
9.2
x32dbg-x32dbg修复IAT成功
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|
|