首页
社区
课程
招聘
Obsidium V1.1.1.4 脱壳――jingulong兄的UnPackIt.EXE
2004-4-28 22:13 15328

Obsidium V1.1.1.4 脱壳――jingulong兄的UnPackIt.EXE

fly 活跃值
85
2004-4-28 22:13
15328
收藏
点赞11
打赏
分享
最新回复 (30)
雪    币: 229
活跃值: (143)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
yeyu0808 1 2004-5-21 17:50
26
0
[QUOTE]最初由 fly 发布
Obsidium V1.1.1.4 脱壳――jingulong兄的UnPackIt.EXE
         
         
         
―――――――――――――――――――――――――――――――――
二、避开IAT加密,得到正确的输入表
        
         
重新载入unpackit.EXE,还记得刚开始在第5次003A381D异常时偶搜索的地址吗?003A64F0
        
003A54D9     F7F0                div eax//第4次异常   输入表处理


在第4次异常时偶们在 003A64F0 处下  内存访问  断点
然后Shift+F9运行,中断数十次就会来到003A64F0处,取消内存断点

003A64F0     66:F706 2000        test word ptr ds:[esi],20
//①、改为 test word ptr ds:[esi],8  ◆
003A64F5     74 59               je short 003A6550
//②、改为 jnz 003A6550 ◆

003A6517     FF75 18             push dword ptr ss:[ebp+18]
003A651A     FF50 4C             call dword ptr ds:[eax+4C]
003A651D     85C0                test eax,eax
003A651F     74 44               je short 003A6565
//③、改为 je 003A6550 ◆

003A653D     FF76 04             push dword ptr ds:[esi+4]
003A6540     FF75 18             push dword ptr ss:[ebp+18]
003A6543     FF50 4C             call dword ptr ds:[eax+4C]
003A6546     85C0                test eax,eax
003A6548     74 1B               je short 003A6565
//④、改为 je 003A6550 ◆ 

003A654E     8907                mov dword ptr ds:[edi],eax
//正确的函数进入正确的地址
003A6550     83C6 08             add esi,8
003A6553     83C7 04             add edi,4
003A6556     FF4D 08             dec dword ptr ss:[ebp+8]
003A6559     75 95               jnz short 003A64F0//循环

        
fly大侠在我的机子上面这里下 内存访问 后中断不了呀,会出现内存00000008,无法访问,用Shift+F9也过不去哦,这是为什么呀?
雪    币: 896
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
fly 85 2004-5-21 22:35
27
0
1、在其他系统上不一定就是003A64F0段代码处理IAT,以你调试时看到的为准
2、注意你的调试环境
雪    币: 229
活跃值: (143)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
yeyu0808 1 2004-5-21 23:35
28
0
我也是在XP环境下调试的,还有我调试的时候有很多代码和你的也是一样的,但就IAT的那个地方不行~!
雪    币: 221
活跃值: (100)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
tjiao 1 2004-5-27 08:35
29
0
运行ImportREC,填入RVA=006162E4,Size=00000240,点“Get Import”,得到输入表。
有1个特殊函数:006163E4 ? 0000 003A6D54//为:GetCommandLineA

我在自己的机器上看了一下,当时edi的值为9f63f8,RVA是5f63f8,但得出的函数只有76个,改为5f62e0为145个,不知道这个62e4怎么计算得来的?还有size=240怎么计算??
还望赐教!
雪    币: 896
活跃值: (4039)
能力值: ( LV9,RANK:3410 )
在线值:
发帖
回帖
粉丝
fly 85 2004-5-27 10:53
30
0
006162E4 是函数的起始RVA,240是大小,可以在转存里查看IAT的情况
雪    币: 227
活跃值: (130)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
iceplus 2004-5-29 02:02
31
0
好就一个字了得
游客
登录 | 注册 方可回帖
返回