手脱 Armadillo 3.78 - 4.xx -> Silicon Realms Toolworks

 

手脱 Armadillo 3.78 - 4.xx -> Silicon Realms Toolworks

这是一个穿山甲的壳。。。当运行它后,在任务窗口,只发现有一个进程,

那么我们就用常规的方法来处理它。。。

首先,用OD载入, 下 GetModuleHandleA+5 这个断点,然后 shift+F9 运行。

观察堆栈窗口

001292A4 /0012EBB0

001292A8 |00BC6AA1 返回到 00BC6AA1 来自 kernel32.GetModuleHandleA

001292AC |00BDBD6C ASCII "kernel32.dll"

001292B0 |00BDDDAC ASCII "VirtualAlloc"

这个就是一个标志,说明快到了。。在运行。。

00129008 /001292A8

0012900C |00BB5A14 返回到 00BB5A14 来自 kernel32.GetModuleHandleA

00129010 |0012915C ASCII "kernel32.dll"

00129014 |0012EA58

这就到了。。。

删除硬件断点,返回到程序代码。。。

会发现有两个跳转,有个是大跨度的,,那就是 magic jump;;; 将它改为 jmp

00BB5A25 /75 16 JNZ SHORT 00BB5A3D

00BB5A27 |8D85 B4FEFFFF LEA EAX,DWORD PTR SS:[EBP-14C]

00BB5A2D |50 PUSH EAX

00BB5A2E |FF15 B862BD00 CALL DWORD PTR DS:[BD62B8] ; kernel32.LoadLibraryA

00BB5A34 |8B0D 6C50BE00 MOV ECX,DWORD PTR DS:[BE506C]

00BB5A3A |89040E MOV DWORD PTR DS:[ESI+ECX],EAX

00BB5A3D /A1 6C50BE00 MOV EAX,DWORD PTR DS:[BE506C]

00BB5A42 391C06 CMP DWORD PTR DS:[ESI+EAX],EBX

00BB5A45 0F84 2F010000 JE 00BB5B7A // 他就是了

00BB5A4B 33C9 XOR ECX,ECX

00BB5A4D 8B07 MOV EAX,DWORD PTR DS:[EDI]

00BB5A4F 3918 CMP DWORD PTR DS:[EAX],EBX

然后呢??? 来到它跳向的地方观察。。。

00BB5B4E 8B85 ACFEFFFF MOV EAX,DWORD PTR SS:[EBP-154]

00BB5B54 8B00 MOV EAX,DWORD PTR DS:[EAX]

00BB5B56 85C0 TEST EAX,EAX

00BB5B58 ^ 0F85 34FFFFFF JNZ 00BB5A92

00BB5B5E 8BBD 78FDFFFF MOV EDI,DWORD PTR SS:[EBP-288]

00BB5B64 A1 6C50BE00 MOV EAX,DWORD PTR DS:[BE506C]

00BB5B69 8D1C06 LEA EBX,DWORD PTR DS:[ESI+EAX]

00BB5B6C B9 580ABE00 MOV ECX,0BE0A58

00BB5B71 E8 A6330000 CALL 00BB8F1C

00BB5B76 3103 XOR DWORD PTR DS:[EBX],EAX

00BB5B78 33DB XOR EBX,EBX

00BB5B7A 83C7 0C ADD EDI,0C

00BB5B7D 89BD 78FDFFFF MOV DWORD PTR SS:[EBP-288],EDI

00BB5B83 83C6 04 ADD ESI,4

00BB5B86 395F FC CMP DWORD PTR DS:[EDI-4],EBX

00BB5B89 ^ 0F85 49FEFFFF JNZ 00BB59D8

00BB5B8F EB 03 JMP SHORT 00BB5B94 //在这下断..

00BB5B91 D6 SALC

00BB5B92 D6 SALC

断下后,将原来改动的跳转还原,应为程序会检测到代码是否后被修改,

然后 在下一个断点。。bp CreateThread

断下后,F8 一路向下,跟着代码走就行,看到有 call ecx 或则 call edx 的就

进入。。

便会看到程序的OEP 了。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值