首页
社区
课程
招聘
[求助]DLL要怎么脱壳?脱壳前只有一百K,脱壳后居然变成了5M,不知道是不是弄错了
发表于: 2011-8-23 21:04 5423

[求助]DLL要怎么脱壳?脱壳前只有一百K,脱壳后居然变成了5M,不知道是不是弄错了

2011-8-23 21:04
5423
是一个DLL文件来的,原本只有90多K,外面有一层NsPacK V3.7 -> LiuXingPing *这个壳,我用ESP定律脱下来,DUMP后得到的文件是5M多,是不是弄错了?(这个DLL是资源DLL来的)
然后再用PEID看,脱下来的DLL显示为Microsoft Visual C++ v7.1 DLL [Overlay]。MS什么时候有VS7.1的编译器了,不知道是不是伪造的,但PEID已经查不出是什么壳了

脱壳后的DLL入口部分代码如下,大家分析一下这种开头是不是VC7.1的?
10002701   .  6A 0C         PUSH 0C
10002703   .  68 E0C10010   PUSH Zongheng.1000C1E0
10002708   .  E8 8F040000   CALL Zongheng.10002B9C
1000270D   .  33C0          XOR EAX,EAX
1000270F   .  40            INC EAX
10002710   .  8945 E4       MOV DWORD PTR SS:[EBP-1C],EAX
10002713   .  8B75 0C       MOV ESI,DWORD PTR SS:[EBP+C]
10002716   .  33FF          XOR EDI,EDI
10002718   .  3BF7          CMP ESI,EDI
1000271A   .  75 0C         JNZ SHORT Zongheng.10002728
1000271C   .  393D 5C0C0110 CMP DWORD PTR DS:[10010C5C],EDI
10002722   .  0F84 B3000000 JE Zongheng.100027DB
10002728   >  897D FC       MOV DWORD PTR SS:[EBP-4],EDI
1000272B   .  3BF0          CMP ESI,EAX
1000272D   .  74 05         JE SHORT Zongheng.10002734
1000272F   .  83FE 02       CMP ESI,2
10002732   .  75 31         JNZ SHORT Zongheng.10002765
10002734   >  A1 FC240110   MOV EAX,DWORD PTR DS:[100124FC]
10002739   .  3BC7          CMP EAX,EDI
1000273B   .  74 0C         JE SHORT Zongheng.10002749
1000273D   .  FF75 10       PUSH DWORD PTR SS:[EBP+10]
10002740   .  56            PUSH ESI
10002741   .  FF75 08       PUSH DWORD PTR SS:[EBP+8]
10002744   .  FFD0          CALL EAX
10002746   .  8945 E4       MOV DWORD PTR SS:[EBP-1C],EAX
10002749   >  397D E4       CMP DWORD PTR SS:[EBP-1C],EDI
1000274C   .  0F84 85000000 JE Zongheng.100027D7


我用再用OD载入这个DLL的时候,OD提示是加密过的。不是已经脱了壳了么,怎么还是加密过的?大家给点意见啊

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 622
活跃值: (294)
能力值: ( LV13,RANK:410 )
在线值:
发帖
回帖
粉丝
2
VC7是VS2003中的VC版本,7.1可能是2003sp1之类的。
至于体积,纯资源DLL里面如果全是文本的话,压缩率确实是可以达到很夸张。
但是这么大的体积可能是中间某些段是没有数据的,编译的时候那些区段的实际大小是0,或者只有很小的数据,实际体积就会很小,但是又很多需要的初始化为0的数据,就会占据很大的虚拟空间,而dump的时候是按虚拟空间的大小来读取数据的,这就有可能会造成一个小文件被dump出一个很大的体积的问题。
2011-8-23 21:11
0
雪    币: 19
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
那我上面贴出的代码开头有没有问题?好像还没有解开似的,看不到任何资源字串,怀疑字串编译前被加密了,但问题是连密文也没有看到
2011-8-23 21:41
0
雪    币: 220
活跃值: (161)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
资源dll你应该用exescope之类的工具看看
2011-8-24 17:06
0
雪    币: 19
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
谢谢大家,,解决了,应该是我之前用的工具弄错了
2011-8-24 22:33
0
游客
登录 | 注册 方可回帖
返回
//