飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 3150|回复: 3

EXEStealth 2.5 / 2.6 -> WebToolMaster脱壳小记

[复制链接]

该用户从未签到

发表于 2006-3-22 20:39:48 | 显示全部楼层 |阅读模式
【破文标题】EXEStealth 2.5 / 2.6 -> WebToolMaster脱壳小记
【破文作者】忧伤的路西法
【作者邮箱】jifeng9464@163.com
【作者主页】暂无
破解工具】OD 1.1  PEID 0.94
【破解平台】XP SP2
【软件名称】hijackthis 1.99.1
【软件大小】220KB
【原版下载】http://soft.mumayi.net/Software/catalog101/2422.html
【保护方式】
【软件简介】ANTI IE 劫持工具
【破解声明】偶的处女作,一点心得,愿与大家分享!
------------------------------------------------------------------------
OD载入,除忽略非法内存外,其他不选

004E9060 >  60              PUSHAD               //入口点
004E9061    EB 22           JMP SHORT HijackTh.004E9085
004E9063    45              INC EBP
004E9064    78 65           JS SHORT HijackTh.004E90CB
004E9066    53              PUSH EBX
004E9067    74 65           JE SHORT HijackTh.004E90CE
004E9069    61              POPAD
004E906A    6C              INS BYTE PTR ES:[EDI],DX                 ; I/O 命令
004E906B    74 68           JE SHORT HijackTh.004E90D5
004E906D    202D 20777777   AND BYTE PTR DS:[77777720],CH
.............................................................
F9 运行下....到了这里
004E97AB    0000            ADD BYTE PTR DS:[EAX],AL    停在这里
004E97AD    0000            ADD BYTE PTR DS:[EAX],AL
004E97AF    0000            ADD BYTE PTR DS:[EAX],AL
004E97B1    0000            ADD BYTE PTR DS:[EAX],AL
004E97B3    0000            ADD BYTE PTR DS:[EAX],AL
004E97B5    0000            ADD BYTE PTR DS:[EAX],AL
004E97B7    0000            ADD BYTE PTR DS:[EAX],AL
004E97B9    0000            ADD BYTE PTR DS:[EAX],AL
004E97BB    0000            ADD BYTE PTR DS:[EAX],AL
004E97BD    0000            ADD BYTE PTR DS:[EAX],AL
004E97BF    0000            ADD BYTE PTR DS:[EAX],AL
004E97C1    0000            ADD BYTE PTR DS:[EAX],AL
004E97C3    0000            ADD BYTE PTR DS:[EAX],AL

堆栈内容:
0012FFBC   0012FFE0  指向下一个 SEH 记录的指针
0012FFC0   004E974E  SE处理程序
0012FFC4   7C816D4F  返回到 kernel32.7C816D4F
0012FFC8   7C930738  ntdll.7C930738
0012FFCC   FFFFFFFF
0012FFD0   7FFDE000
0012FFD4   8054B938
0012FFD8   0012FFC8

ctrl+g  004e974E
下断点,SHIT+F9运行到断点,取消断点

004E974E    55              PUSH EBP    停在这里
004E974F    8BEC            MOV EBP,ESP
004E9751    57              PUSH EDI
004E9752    8B45 10         MOV EAX,DWORD PTR SS:[EBP+10]
004E9755    8BB8 C4000000   MOV EDI,DWORD PTR DS:[EAX+C4]
004E975B    FF37            PUSH DWORD PTR DS:[EDI]
004E975D    33FF            XOR EDI,EDI
004E975F    64:8F07         POP DWORD PTR FS:[EDI]

ALT+M  内存镜像
在资源处下内存访问断点,由于其他资源还没有解压缩完,所以在资源处下内存访问断点(资源解压缩完之后,会有红色的提示,大家可以看到)
SHIT+F9运行,断在这里
7C93280D    66:8B50 0C      MOV DX,WORD PTR DS:[EAX+C]  这里断下
7C932811    66:8955 B0      MOV WORD PTR SS:[EBP-50],DX
7C932815    8D70 10         LEA ESI,DWORD PTR DS:[EAX+10]
7C932818    8975 90         MOV DWORD PTR SS:[EBP-70],ESI
7C93281B    8B55 0C         MOV EDX,DWORD PTR SS:[EBP+C]
7C93281E    66:F742 02 FFFF TEST WORD PTR DS:[EDX+2],0FFFF
7C932824    75 11           JNZ SHORT ntdll.7C932837
7C932826    0FB755 B0       MOVZX EDX,WORD PTR SS:[EBP-50]
7C93282A    8D34D6          LEA ESI,DWORD PTR DS:[ESI+EDX*8]
7C93282D    8975 90         MOV DWORD PTR SS:[EBP-70],ESI
.........
移除内存访问断点,改在CODE断下内存访问断点....
SHIT+F9运行,断下
004E72BC    8B06            MOV EAX,DWORD PTR DS:[ESI]    这里
004E72BE    85C0            TEST EAX,EAX
004E72C0    75 03           JNZ SHORT HijackTh.004E72C5
004E72C2    8B46 10         MOV EAX,DWORD PTR DS:[ESI+10]
004E72C5    03C2            ADD EAX,EDX
004E72C7    0385 49050000   ADD EAX,DWORD PTR SS:[EBP+549]

移除内存访问断点...
F8单步

004E7305   /75 6F           JNZ SHORT HijackTh.004E7376  跳转,跳
004E7307   |F7C3 00000080   TEST EBX,80000000
004E730D   |75 19           JNZ SHORT HijackTh.004E7328
004E730F   |57              PUSH EDI
004E7310   |8B46 0C         MOV EAX,DWORD PTR DS:[ESI+C]
004E7313   |0385 22040000   ADD EAX,DWORD PTR SS:[EBP+422]
004E7319   |50              PUSH EAX
004E731A   |53              PUSH EBX


跳到这里
004E7376    8907            MOV DWORD PTR DS:[EDI],EAX               ; MSVBVM60.__vbaVarTstGt
004E7378    8385 49050000 0>ADD DWORD PTR SS:[EBP+549],4
004E737F  ^ E9 32FFFFFF     JMP HijackTh.004E72B6
004E7384    8906            MOV DWORD PTR DS:[ESI],EAX    //F4到这里
004E7386    8946 0C         MOV DWORD PTR DS:[ESI+C],EAX
004E7389    8946 10         MOV DWORD PTR DS:[ESI+10],EAX
004E738C    83C6 14         ADD ESI,14
004E738F    8B95 22040000   MOV EDX,DWORD PTR SS:[EBP+422]
004E7395  ^ E9 EBFEFFFF     JMP HijackTh.004E7285
004E739A    B8 0C660000     MOV EAX,660C                  //F4到这里
004E739F    50              PUSH EAX

004E73B0   /75 08           JNZ SHORT HijackTh.004E73BA   运行到这里的时候,004E73BA处代码会改变,这段代码类似于Aspack的壳运行时的
004E73B2   |B8 01000000     MOV EAX,1
004E73B7   |C2 0C00         RETN 0C
004E73BA   \68 0C664000     PUSH HijackTh.0040660C
004E73BF    C3              RETN     返回到OEP


0040660C    68 98A54000     PUSH HijackTh.0040A598     这里用OD的DUMP插件直接脱壳
00406611    E8 F0FFFFFF     CALL HijackTh.00406606                   ; JMP 到 MSVBVM60.ThunRTMain
00406616    0000            ADD BYTE PTR DS:[EAX],AL
00406618    0000            ADD BYTE PTR DS:[EAX],AL
0040661A    0000            ADD BYTE PTR DS:[EAX],AL
0040661C    3000            XOR BYTE PTR DS:[EAX],AL
0040661E    0000            ADD BYTE PTR DS:[EAX],AL
00406620    40              INC EAX
不用修复,,可运行....

------------------------------------------------------------------------

------------------------------------------------------------------------
【版权声明】偶是新手,希望大家多多指教........欢迎转载
PYG19周年生日快乐!

该用户从未签到

发表于 2006-3-23 20:51:13 | 显示全部楼层
我在顶呀
PYG19周年生日快乐!

该用户从未签到

发表于 2006-3-24 16:22:17 | 显示全部楼层
看不懂的说,还得好好学学
PYG19周年生日快乐!

该用户从未签到

发表于 2006-4-18 22:24:09 | 显示全部楼层
呵呵,......
PYG19周年生日快乐!
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

快速回复 返回顶部 返回列表