首页
社区
课程
招聘
[原创]脱壳一种投机的方法
发表于: 2014-11-12 21:20 4892

[原创]脱壳一种投机的方法

2014-11-12 21:20
4892
最近在学习脱壳。遇到一个未知壳,入口很乱
00439451 >  3E:0FA4C1 64    shld ecx,eax,64
00439456    0FCF            bswap edi
00439458    F6DC            neg ah
0043945A    F7C5 D150D34A   test ebp,4AD350D1
00439460    1C 23           sbb al,23
00439462    C6C2 71         mov dl,71
00439465    0FC8            bswap eax
00439467    D1D6            rcl esi,1
00439469    0FCD            bswap ebp
0043946B    89CB            mov ebx,ecx
0043946D    41              inc ecx
0043946E    0FCF            bswap edi
00439470    1AE2            sbb ah,dl
00439472    64:             prefix fs:

然后我不经意 的往上拉了一下,突然发现,很像upx壳的出口。只是中间隔了一小段的全零。
然后在00439428  下段到oep搞定。
00439418   /74 07           je short chess.00439421
0043941A   |8903            mov dword ptr ds:[ebx],eax
0043941C   |83C3 04         add ebx,4
0043941F  ^|EB D8           jmp short chess.004393F9
00439421   \FF96 98F40300   call dword ptr ds:[esi+3F498]
00439427    61              popad
00439428  - E9 EDD1FCFF     jmp chess.0040661A
0043942D    0000            add byte ptr ds:[eax],al
0043942F    0000            add byte ptr ds:[eax],al
00439431    0000            add byte ptr ds:[eax],al
00439433    0000            add byte ptr ds:[eax],al
00439435    0000            add byte ptr ds:[eax],al
00439437    0000            add byte ptr ds:[eax],al
00439439    0000            add byte ptr ds:[eax],al
0043943B    0000            add byte ptr ds:[eax],al
0043943D    0000            add byte ptr ds:[eax],al
0043943F    0000            add byte ptr ds:[eax],al
00439441    0000            add byte ptr ds:[eax],al
00439443    0000            add byte ptr ds:[eax],al
00439445    0000            add byte ptr ds:[eax],al
00439447    0000            add byte ptr ds:[eax],al
00439449    0000            add byte ptr ds:[eax],al
0043944B    0000            add byte ptr ds:[eax],al
0043944D    0000            add byte ptr ds:[eax],al
0043944F    0000            add byte ptr ds:[eax],al
00439451 >  3E:0FA4C1 64    shld ecx,eax,64

这是一个很简单的一个壳。用单步向下跟踪F8,实现向下的跳。不实现向上的跳也很容易到达oep。我这里想说的是,偶尔把代码往上拉拉,或许你会发现意想不到的惊喜!

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 608
活跃值: (703)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
这叫什么投机的方法。。。
2014-11-12 21:22
0
雪    币: 10
活跃值: (100)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
3
就是投机取巧的意思。碰运气碰的。
2014-11-12 22:24
0
雪    币: 222
活跃值: (185)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
4
投机真的很投机
2014-11-13 00:44
0
游客
登录 | 注册 方可回帖
返回