WPE|52wpe|我爱WPE

 找回密码
 注册会员
搜索
  • 2487查看
  • 0回复

主题

好友

1442

积分

金牌会员

发表于 2009-8-24 09:58:30 |显示全部楼层
天在学习脱壳, 下载了几个软件都脱壳不成功,没办法重新学过。

看到手脱“黑色 诱 惑 ”的 手脱ASProtect1.2 和 ASProtect1.23 壳,决定整个软件下来练习一下

就拿系统自带的“记事本”来练习一下吧, 用ASPack加下壳, 用PEid 查询, 显示为ASPack 2.12 -> Alexey Solodovnikov

好了, 不废话了, 第一篇. 脱壳, 高手见笑了...

脱壳目标: notepad.exe 记事本
加壳类型: ASPack 2.12 - Alexey Solodovnikov


1. 使用Peid 查壳, 显示为 ASPack 2.12 -> Alexey Solodovnikov

2. OD载入, 停在

01013001 note>  60                  pushad
01013002        E8 03000000        call notepad.0101300A
01013007      - E9 EB045D45        jmp 465E34F7
0101300C        55                  push ebp

3. 按F8步进到 01013002,  查看寄存器中的ESP值, 值为0007ffa4
(这算不算是使用ESP定律呢? 不太清楚, 有空再复习下.)

4. 将0007ffa4 设置为访问中断, 如在命令中输入 hr 7ffa4, 在调试->硬件断点可以查看到
(也可以 dd 7ff4, 断点 -> 硬件访问断点 -> Word 字)

5. F9 运行, 运行到这里被中断

010133B0      /75 08              jnz short notepad.010133BA
010133B2      |B8 01000000        mov eax,1
010133B7      |C2 0C00            retn 0C
010133BA      \68 A5730001        push notepad.010073A5
010133BF        C3                  retn

6. 清除硬件断点. F8步过. 直到retn 过后, 就是入口点了(push 70)
010073A5        6A 70              push 70
010073A7        68 B0180001        push notepad.010018B0
010073AC        E8 E3010000        call notepad.01007594


查出, 入口点为73A5

7. LoadPe 脱壳

8. Import Re 修复输入表(在OEP 输入刚找到的入口点73A5->自动搜索IAT->获取输入表->显示无效函数-> 全部有效 ->修复转存文件)

9. 看看脱壳成功了没有, 查壳显示为Microsoft Visual C++ 7.0 Method2 [调试]

10. 运行正常, 脱壳成功!

快速发帖

您需要登录后才可以回帖 登录 | 注册会员

手机版|Archiver|WPE|52wpe|我爱WPE ( 闽ICP备15009081号 )

GMT+8, 2024-4-30 06:50 , Processed in 0.060047 second(s), 16 queries .

返回顶部