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^ 盗用之嫌疑
对找Magic jmup处理没有说明。一语带过。 藐视我也见过........ 感謝分享脫殼教學.
页:
[1]