首页
社区
课程
招聘
[旧帖] [原创]爆破riijj_mfccm1_r2.exe 0.00雪花
发表于: 2015-12-30 18:04 1476

[旧帖] [原创]爆破riijj_mfccm1_r2.exe 0.00雪花

2015-12-30 18:04
1476
爆破riijj_mfccm1_r2.exe

提供者:riijj
原帖见:http://bbs.pediy.com/showthread.php?t=12136&page=7

爆破工具:od,winhex
调试平台:winxpsp3

验证主函数:
00401140  /$  6A FF         push    -1
00401142  |.  68 BE3B4000   push    00403BBE                                             ;  SE 处理程序安装
00401147  |.  64:A1 0000000>mov     eax, dword ptr fs:[0]
0040114D  |.  50            push    eax
0040114E  |.  64:8925 00000>mov     dword ptr fs:[0], esp
00401155  |.  81EC D0000000 sub     esp, 0D0
0040115B  |.  8A4C24 03     mov     cl, byte ptr [esp+3]
0040115F  |.  8A4424 03     mov     al, byte ptr [esp+3]
00401163  |.  53            push    ebx
00401164  |.  55            push    ebp
00401165  |.  56            push    esi
00401166  |.  884C24 15     mov     byte ptr [esp+15], cl
0040116A  |.  57            push    edi
0040116B  |.  8D4C24 18     lea     ecx, dword ptr [esp+18]
0040116F  |.  884424 18     mov     byte ptr [esp+18], al
00401173  |.  C64424 20 00  mov     byte ptr [esp+20], 0
00401178  |.  E8 831C0000   call    00402E00
0040117D  |.  8A5424 13     mov     dl, byte ptr [esp+13]
00401181  |.  8A4424 13     mov     al, byte ptr [esp+13]
00401185  |.  33ED          xor     ebp, ebp
00401187  |.  8D4C24 28     lea     ecx, dword ptr [esp+28]
0040118B  |.  89AC24 E80000>mov     dword ptr [esp+E8], ebp
00401192  |.  885424 28     mov     byte ptr [esp+28], dl
00401196  |.  884424 29     mov     byte ptr [esp+29], al
0040119A  |.  C64424 30 00  mov     byte ptr [esp+30], 0
0040119F  |.  E8 5C1C0000   call    00402E00
004011A4  |.  8D4C24 18     lea     ecx, dword ptr [esp+18]
004011A8  |.  8D5424 28     lea     edx, dword ptr [esp+28]
004011AC  |.  51            push    ecx
004011AD  |.  52            push    edx
004011AE  |.  C68424 F00000>mov     byte ptr [esp+F0], 1
004011B6  |.  E8 45FEFFFF   call    00401000
004011BB  |.  8B9C24 F80000>mov     ebx, dword ptr [esp+F8]
004011C2  |.  83C4 08       add     esp, 8
004011C5  |.  8A03          mov     al, byte ptr [ebx]
004011C7  |.  0FBEF0        movsx   esi, al
004011CA      3BF5          cmp     esi, ebp                           ;爆破处1
004011CC      75 2A         jnz     short 004011F8
004011CE      8D4C24 28     lea     ecx, dword ptr [esp+28]
004011D2  |.  C68424 E80000>mov     byte ptr [esp+E8], 0
004011DA  |.  E8 11150000   call    004026F0
004011DF  |.  8D4C24 18     lea     ecx, dword ptr [esp+18]
004011E3  |.  C78424 E80000>mov     dword ptr [esp+E8], -1
004011EE  |.  E8 FD140000   call    004026F0
004011F3      E9 CA010000   jmp     004013C2                            ;爆破处2

该函数逻辑比较复杂,不能简单爆破。为尽力保持程序原貌爆破,我修改了两处
1、把文件偏移0x11CA处字节3BF5752A改为33FFEB25
2、把文件偏移0x11F3处字节E9CA010000改为E9B8000000
爆破完毕。

本程序爆破的难点在于定位函数,作者为了增加难度放弃使用MessageBox函数,同时在验证失败的时候也不做提示。以此来防止调试者使用MessageBox函数和参考字串定位。

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

上传的附件:
收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//