hackwm 发表于 2009-7-13 03:33:19

MoleBox V2.X -> MoleStudio.com 脱壳笔记 HackWm[D.S.T]

自问脱壳实在菜.今天碰到 在网上找了大把资料才终于搞定,现在来做下笔记..方便以后用到…


OD载入,忽略所有异常.入口代码如下

0057BBD3 >E8 00000000   CALL FEI.0057BBD8      //是一个进Call,F7跟进.
0057BBD8    60            PUSHAD                  //此时ESP亮起,那就ESP吧
0057BBD9    E8 4F000000   CALL FEI.0057BC2D
0057BBDE    CA 3990         RETF 9039
0057BBE1    D2D4            RCL AH,CL
0057BBE3    81F8 19F592D7   CMP EAX,D792F519
0057BBE9    0D C1805FA8   OR EAX,A85F80C1
0057BBEE    90            NOP


F9运行后断在

0057B7B1    58            POP EAX
0057B7B2    58            POP EAX
0057B7B3    FFD0            CALL EAX                //其实这里跟进就是OEP了
0057B7B5    E8 05CB0000   CALL FEI.005882BF
0057B7BA    CC            INT3
0057B7BB    CC            INT3
0057B7BC    CC            INT3

好了来到OEP.

004EDAAC    55            PUSH EBP               //OEP
004EDAAD    8BEC            MOV EBP,ESP
004EDAAF    83C4 F0         ADD ESP,-10
004EDAB2    53            PUSH EBX
004EDAB3    B8 48C74E00   MOV EAX,FEI.004EC748
004EDAB8    E8 6792F1FF   CALL FEI.00406D24


直接LordPE脱之,然后用ImportREC填上OEP自动搜索找到指针获取了下成功获取到了,可是好多无效呀..用ImportREC修复后还省3个错误的.于是重载OD在第一处错误的地方下硬件写入断点.F9几次后发现数据窗口出现了解密的IAT但是就这里是错误的.

004F9F7C7C802530kernel32.WaitForSingleObject
004F9F807C80BA71kernel32.VirtualQuery
004F9F847C809B84kernel32.VirtualFree
004F9F887C809AF1kernel32.VirtualAlloc
004F9F8C0058975EFEI.0058975E      //下断处
004F9F90000FB922
004F9F94000FB936
004F9F98000FB94E


想想处理加密的关键应该就在上面点吧..然后在上面点下了断去跟,断下后经过N次F9之后发现之前会跳的je不跳了.同时IAT就出错,猜想可能是Magic Jump于是改成了在此处下断重载运行改成Jmp,之后删除断点冲向OEP.(OEP之前ESP下过断还没删现在派上用场了.)

00583556    8B0D D4405900   MOV ECX,DWORD PTR DS:
0058355C    E8 13650000   CALL FEI.00589A74
00583561    8945 F8         MOV DWORD PTR SS:,EAX
00583564    837D F8 00      CMP DWORD PTR SS:,0
00583568    74 45         JE SHORT FEI.005835AF         //Magic Jump
0058356A    8D55 F0         LEA EDX,DWORD PTR SS:
0058356D    52            PUSH EDX
0058356E    6A 04         PUSH 4
00583570    6A 04         PUSH 4
00583572    8B45 08         MOV EAX,DWORD PTR SS:
00583575    50            PUSH EAX   
00583576    FF15 ACF75800   CALL DWORD PTR DS:   //VirtualProtect
0058357C    85C0            TEST EAX,EAX
0058357E    75 0A         JNZ SHORT FEI.0058358A


继续ImportREC修复与天上OEP地址自动获取IAT发现全部有效高兴啊.抓去修复试运行哦耶.成功了…
学习就要摸索..感谢百度.^o^

glts 发表于 2009-7-13 03:55:51

遇到困难能自己想办法摸索解决不错.

leafstone 发表于 2009-11-12 17:01:02

好文章,可是我脱出来的总是有一个mbox的###文件,难道我没找对magic jmp?可是其他iat我已经修复了,就那一个搞不定,惭愧
页: [1]
查看完整版本: MoleBox V2.X -> MoleStudio.com 脱壳笔记 HackWm[D.S.T]