首页
论坛
课程
招聘

[原创]nsPack2.x通用脱壳法

2005-7-26 18:03 10991

[原创]nsPack2.x通用脱壳法

2005-7-26 18:03
10991
[原创]NsPack2.x通用脱壳法
Author: peaceclub[at]PEDIY Goldsun[at]SECURITY

脱壳过程描述:
1、OD 加载
2、Ctrl+B 寻找二进制: 61 9d e9
3、修改 619d为ebfe
4、F9
5、暂停程序,Alt+Backspace恢复代码,3次F8,Ctrl+A
6、Dump+Imprec IAT Fix

案例分析:
附件中为一个数据包侦听工具,经过nspack2.6压缩。
下载例子:packinter_nspack.zip

[/quote]我们按照上面的脱壳过程一步步做.
1、OD 加载
[quote]
0040B4A8 > 9C PUSHFD '停在这里
0040B4A9 60 PUSHAD
0040B4AA E8 00000000 CALL PackInte.0040B4AF
0040B4AF 5D POP EBP
0040B4B0 B8 07000000 MOV EAX,7
0040B4B5 2BE8 SUB EBP,EAX
0040B4B7 8DB5 E8FDFFFF LEA ESI,DWORD PTR SS:[EBP-218]
0040B4BD 8A06 MOV AL,BYTE PTR DS:[ESI]

2、Ctrl+B 寻找二进制: 61 9d e9
   

0040B72F 61 POPAD '找到了这里
0040B730 9D POPFD
0040B731 -E9 A978FFFF JMP PackInte.00402FDF
0040B736 8BB5 9CFDFFFF MOV ESI,DWORD PTR SS:[EBP-264]
0040B73C 0BF6 OR ESI,ESI

3、修改 619d为ebfe

0040B72F -EB FE JMP SHORT PackInte.0040B72F
0040B731 -E9 A978FFFF JMP PackInte.00402FDF

有的朋友有可能问为什么,Nspack新版本本身对硬软断点有检测,所以断不住。采用此方法直接改代码,让程序自己断 :)
4、F9
  程序进入死循环
5、暂停程序,Alt+Backspace恢复代码,3次F8,Ctrl+A
  

00402FDF /. 55 PUSH EBP '道路的开始 OEP
00402FE0 |. 8BEC MOV EBP,ESP
00402FE2 |. 6A FF PUSH -1
00402FE4 |. 68 784A4000 PUSH PackInte.00404A78
00402FE9 |. 68 66314000 PUSH PackInte.00403166 ; JMP to msvcrt._except_handler3; SE handler installation
00402FEE |. 64:A1 00000000 MOV EAX,DWORD PTR FS:[0]
00402FF4 |. 50 PUSH EAX
00402FF5 |. 64:8925 000000>MOV DWORD PTR FS:[0],ESP
00402FFC |. 83EC 68 SUB ESP,68
00402FFF |. 53 PUSH EBX
00403000 |. 56 PUSH ESI
00403001 |. 57 PUSH EDI



  
6、Dump+Imprec IAT Fix
   这个就不说了。

关于nsPack2.6主程序脱壳
  nspack2.6新版本主程序加了两个异常seh(内存访问异常和除零异常),脱法也很容易:
   OD中仅保留Kernel32内存访问异常忽略,od加载后,直接F9,一次Shift+F9,Ctrl+A,在从上面脱壳过程描述第二步开始即可。

任务提高:
   附件中原未压缩文件大小为: 36864 字节,请尝试把您脱壳的文件整理缩小,看是否能自己实现完美脱壳,并把过程简易描述到此帖。

[推荐]看雪企服平台,提供项目众包、渗透测试、安全分析、定制项目开发、APP等级保护等安全服务!

最新回复 (21)
prince 16 2005-7-26 18:20
2
0
多谢,学习一下~
夜凉如水 3 2005-7-26 18:26
3
0
好东西 经典 过程
闪电狼 2005-7-26 20:09
4
0
主程序脱壳 没这么麻烦的
baby2008 28 2005-7-26 20:19
5
0
牛x
peaceclub 6 2005-7-26 22:17
6
0
最初由 闪电狼 发布
主程序脱壳 没这么麻烦的

麻烦吗?别看我写这么多,按照我的方法做,几秒就搞定了。
操作一下试试吧.(主程序是针对2.6版的)
Lenus 3 2005-7-26 23:04
7
0
第3,4步的思维,我喜欢...
peaceclub 6 2005-7-26 23:13
8
0
此贴两目的:
1、针对新手,学会快速脱壳
2、主要目的在于进行脱壳文件的文件大小优化,有没有更好的方法或者思路来解决section合并后的文件大小问题
peaceclub 6 2005-7-27 00:49
9
0
fly 看到贴请联系我一下.谢谢
QQ: 84823714
fly 85 2005-7-27 09:07
10
0
mail联系
fly4099@sohu.com
auser 2005-7-27 17:33
11
0
我也依葫芦画瓢:

[原创]NsPack2.x通用脱壳法
Author: auser[at]PEDIY

脱壳过程描述:
1、OD 加载
2、F8
3、hr esp
4、F9
5、F8   ;-->到达oep
6、Dump+Imprec IAT Fix

pepack 2005-7-27 18:16
12
0
PEID或quickunpack0.7 秒杀!!!
有点累了 2005-7-27 22:40
13
0
复杂 看不懂一些
技术不好!
这个主程序可以用ESP定律 快脱壳
ljy3282393 1 2005-7-28 22:05
14
0
最初由 Lenus 发布
第3,4步的思维,我喜欢...
βοА 2005-7-29 00:25
15
0
一定要?一下~
山蒙 2005-7-30 18:35
16
0
最初由 βοА 发布
一定要?一下~
yunfeng 1 2005-7-31 08:30
17
0
老版本加的壳能用这个方法脱吗?
yunfeng 1 2005-7-31 10:09
18
0
用quickunpack0.7轻松脱壳成功.
djpvd 4 2005-7-31 22:43
19
0
最初由 peaceclub 发布
[原创]NsPack2.x通用脱壳法
Author: peaceclub[at]PEDIY Goldsun[at]SECURITY

脱壳过程描述:
1、OD 加载
........


THX 大佬您描述的很详细

不知大佬可否写一篇 Hying 0.7x的新手教程

THX...
pendan2001 4 2005-8-1 16:47
20
0
  学习
酷酷 2005-8-3 09:44
21
0
好奇怪的问题,我照脱文一步一步下来,最后得到的脱壳exe比加了壳的还要小

还有,双击运行没发映,就闪一下
zbqy 2005-8-6 10:51
22
0
学习了
不错不错
游客
登录 | 注册 方可回帖
返回