首页
社区
课程
招聘
[原创]说说THEMIDA新版的DIY
发表于: 2009-9-24 00:22 7075

[原创]说说THEMIDA新版的DIY

2009-9-24 00:22
7075

THEMIDA新版默认都会伪装EP,在加壳完毕后还添加了一个段,然后写了一段异或然后加常数的解码过程,处理原来的典型EP---"MOV EAX,0".大小为1000字节.

   以下这一段是STANDARD方式加壳后的EP对应在主程序中的代码
  

005F3652 83EC 04 sub esp,4
005F3655 50 push eax
005F3656 53 push ebx
005F3657 E8 01000000 call 005F365D ; 005F365D
005F365C CC int3
005F365D 58 pop eax
005F365E 8BD8 mov ebx,eax
005F3660 40 inc eax
005F3661 2D 07B20100 sub eax,1B207 ----
005F3666 2D 5D365F00 sub eax,5F365D ----
005F366B 05 52365F00 add eax,5F3652 ----这3部计算真实EP
005F3670 803B CC cmp byte ptr ds:[ebx],0CC
005F3673 75 19 jnz short 005F368E ; 005F368E
005F3675 C603 00 mov byte ptr ds:[ebx],0
005F3678 BB 07B20100 mov ebx,1B207 ----大小
005F367D 68 C78AA900 push 0A98AC7 ---异或KEY
005F3682 68 C78AA900 push 0A98AC7 ---加KEY
005F3687 53 push ebx
005F3688 50 push eax
005F3689 E8 0A000000 call 005F3698 ; 005F3698
005F368E 83C0 14 add eax,14
005F3691 894424 08 mov dword ptr ss:[esp+8],eax
005F3695 5B pop ebx
005F3696 58 pop eax
005F3697 C3 retn
005F3698 55 push ebp
005F3699 8BEC mov ebp,esp
005F369B 60 pushad
005F369C 8B75 08 mov esi,dword ptr ss:[ebp+8]
005F369F 8B4D 0C mov ecx,dword ptr ss:[ebp+C]
005F36A2 C1E9 02 shr ecx,2
005F36A5 8B45 10 mov eax,dword ptr ss:[ebp+10]
005F36A8 8B5D 14 mov ebx,dword ptr ss:[ebp+14]
005F36AB EB 08 jmp short 005F36B5 ; 005F36B5
005F36AD 3106 xor dword ptr ds:[esi],eax ---异或解码
005F36AF 011E add dword ptr ds:[esi],ebx ---加法解码
005F36B1 83C6 04 add esi,4
005F36B4 49 dec ecx
005F36B5 0BC9 or ecx,ecx
005F36B7 ^ 75 F4 jnz short 005F36AD ; 005F36AD
005F36B9 61 popad
005F36BA C9 leave
005F36BB C2 1000 retn 10

以上这段中的KEY通过以下过程控制.实际上上面这部分代码有2处,我们在下面的处理流程中也可以看出来.计算了真实EP并写入到上面的代码中.生成2个随机数,分别是XOR KEY,和ADD KEY.


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

收藏
免费 7
支持
分享
最新回复 (5)
雪    币: 129
活跃值: (53)
能力值: ( LV9,RANK:220 )
在线值:
发帖
回帖
粉丝
2
效果就是可以忽悠下PEID以及减少一些杀软静态查毒的误报
当然更广点 可以想干嘛就干嘛 比如写个DLL 让TMD乖乖写进去 然后执行你想要的功能先
给各位扩展下思路 提供一种壳插件接口的DIY法.
2009-9-24 00:32
0
雪    币: 337
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
又见壳王搞新壳了,,不愧为壳主
2009-9-24 03:15
0
雪    币: 292
活跃值: (126)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
4
005F3652    83EC 04         sub esp,4
005F3655    50              push eax
005F3656    53              push ebx
005F3657    E8 01000000     call 005F365D                            ; 005F365D
005F365C    CC              int3
005F365D    58              pop eax
005F365E    8BD8            mov ebx,eax
005F3660    40              inc eax
005F3661    2D 07B20100     sub eax,1B207    ----
005F3666    2D 5D365F00     sub eax,5F365D  ----
005F366B    05 52365F00     add eax,5F3652   ----这3部计算真实EP
005F3670    803B CC         cmp byte ptr ds:[ebx],0CC
005F3673    75 19           jnz short 005F368E                       ; 005F368E
005F3675    C603 00         mov byte ptr ds:[ebx],0
005F3678    BB 07B20100     mov ebx,1B207   ----大小
005F367D    68 C78AA900     push 0A98AC7    ---异或KEY
005F3682    68 C78AA900     push 0A98AC7    ---加KEY
005F3687    53              push ebx
005F3688    50              push eax
005F3689    E8 0A000000     call 005F3698                            ; 005F3698
005F368E    83C0 14         add eax,14
005F3691    894424 08       mov dword ptr ss:[esp+8],eax
005F3695    5B              pop ebx
005F3696    58              pop eax
005F3697    C3              retn
005F3698    55              push ebp
005F3699    8BEC            mov ebp,esp
005F369B    60              pushad
005F369C    8B75 08         mov esi,dword ptr ss:[ebp+8]
005F369F    8B4D 0C         mov ecx,dword ptr ss:[ebp+C]
005F36A2    C1E9 02         shr ecx,2
005F36A5    8B45 10         mov eax,dword ptr ss:[ebp+10]
005F36A8    8B5D 14         mov ebx,dword ptr ss:[ebp+14]
005F36AB    EB 08           jmp short 005F36B5                       ; 005F36B5
005F36AD    3106            xor dword ptr ds:[esi],eax ---异或解码
005F36AF    011E            add dword ptr ds:[esi],ebx ---加法解码
005F36B1    83C6 04         add esi,4
005F36B4    49              dec ecx
005F36B5    0BC9            or ecx,ecx
005F36B7  ^ 75 F4           jnz short 005F36AD                       ; 005F36AD
005F36B9    61              popad
005F36BA    C9              leave
005F36BB    C2 1000         retn 10

这个壳如何脱啊,LZ
2009-10-26 19:45
0
雪    币: 2513
活跃值: (575)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
不搞商业壳是LZ的原则,问了也白搭~
2009-10-26 20:13
0
雪    币: 292
活跃值: (126)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
6
他在往上加壳。。。我们要去壳。。。确实白问
2009-10-26 20:23
0
游客
登录 | 注册 方可回帖
返回
//