FSG2.0 手动脱壳笔记
来源:互联网 发布:网络维护书籍 编辑:程序博客网 时间:2024/06/02 21:14
为了逆向研究一款木马,给自己的马提供思路,需要脱壳。用PEID侦测,发现类型为FSG 2.0 -> bart/xt。试着脱了一下,ESP定律,内存镜像法都跑飞了。无奈只好单步跟踪了!这个壳很多朋友反应不好脱,有一定的难度,脱完之后的修复是关键! 用OD载入,
00400154 > 8725 6CD34000 xchg ds:[40D
0040015B 94 xchg eax, esp ;ZX_Clear.0040D370
0040015D A4 movs byte ptr es:[edi], byte ptr ds:[>
0040015E B6 80 mov dh, 80
00400160 FF13 call ds:[ebx]
00400162 ^
00400164
00400166 FF13 call ds:[ebx]
00400168 73 16 jnb short ZX_Clear.00400180
0040016E 73
00400170 B6 80 mov dh, 80
00400172 41 inc ecx
00400173 B0 10 mov al, 10
00400175 FF13 call ds:[ebx]
00400177
00400179 ^ 73 FA jnb short ZX_Clear.00400175
0040017B 75
0040017D AA stos byte ptr es:[edi]
0040017E ^ EB E0 jmp short ZX_Clear.00400160
00400180 FF53 08 call ds:[ebx+8];F4运行到这
00400183
00400185 83D9 01 sbb ecx, 1
00400188 75 0E jnz short ZX_Clear.00400198
0040018D EB 24 jmp short ZX_Clear.004001B3 ......................... 遇到向上跳的F4
004001CA 8B07 mov eax, ds:[edi]
004001CC 40 inc eax
004001CD ^
004001CF 75 03 jnz short ZX_Clear.004001D4;注意这里不能实现这个跳转
004001D1 FF63
004001D4 50 push eax
DUMP 出来之后并没有结束,运行出现错误用,修复引入表之后依然出现错误。很多朋友都做到这一步!由于引入表被壳修改了,需要我们手动查找,如图1,具体的方法是找一个API函数,然后F7跟进去,查看JMP后的地址,如这里我查看了GetMessage这个函数,后边的405130包含在引入表的范围之内,在数据串口跟随地址,然后找到上下全0的开始和结束就是整个引入表的范围了 开始修复 左下角的数值 注意有个错误RVA填成40508C了应该是508C,是我们上一步搜到的 Getimports->show Invalid 然后删除非法的 保存就大功告成了
- FSG2.0 手动脱壳笔记
- 自己的脱壳过程(FSG2.0)
- FSG2.0(2)------手动查找IAT
- 手动脱壳
- 手动脱壳入门破文锦集
- 常用手动脱壳方法
- ASProtect 1.23 手动脱壳
- 手动脱壳VMP
- 手动脱壳技巧总结
- 手动脱壳nSPack 3.7
- 记一次手动脱壳
- 手动脱壳之PECompact
- 脱FSG2.0加的98记事本
- FSG2.0(1)------内存镜像法
- 手动脱壳进阶第三篇PEncrypt V4.0
- 脱壳笔记
- 手动脱壳进阶锦集
- 手动脱壳方法及原理
- 在/usr/include/regex.h文件中正则表达式
- fedora下的yum命令使用
- 夏新、联想能不能低下高昂的头?
- JULY-6 WORKING LOG
- Python语言动态WEB开发学习总结
- FSG2.0 手动脱壳笔记
- Begin to learn python
- C/C++忠告(转载)
- 边缘人
- 需求(一)
- 宝宝,你听到了吗?
- 数据库的查询优化技术
- Summary on 20080706: setting for many-to-many mapping in hibernate
- Python编写WEB服务器压力测试工具