• 本站为奇迹MU爱好者免费提供:最新奇迹私服技术资料,奇迹加点公式。
  • WAP手机版 RSS订阅 加入收藏  设为首页
技术心得

完美脱ASPack壳, 无需修复ImportTable方法!

时间:2019-7-11 7:09:11   作者:奇迹私发网   来源:奇迹私服   阅读:45   评论:0
内容摘要:网上也有好几篇类似的ASPack脱壳文章, 但都并非是真正的完美脱壳, 这里我简单的用 5 个步骤教大家如何完美脱下ASPack壳:1. 用OD载入被ASPack加壳的程序, 下API断点 BP VirtualFree.F9 停下来 -> 取消断点 -> Ctrl + F9 -> F80040519D...


网上也有好几篇类似的ASPack脱壳文章, 但都并非是真正的完美脱壳, 这里我简单的用 5 个步骤教大家如何完美脱下ASPack壳:

1. 用OD载入被ASPack加壳的程序, 下API断点 BP VirtualFree.
F9 停下来 -> 取消断点 -> Ctrl + F9 -> F8
0040519D    83C6 08         ADD ESI, 8                               ; 停在这里
004051A0    833E 00         CMP DWORD PTR DS:[ESI], 0
004051A3  ^ 0F85 1EFFFFFF   JNZ 004050C7
004051A9    68 00800000     PUSH 8000                                ; 在这里F2下断点, F9运行, 解压完毕, 取消断点...此时用LoadPE  Dump(Full)
004051AE    6A 00           PUSH 0
004051B0    FFB5 56010000   PUSH DWORD PTR SS:[EBP+156]
004051B6    FF95 51050000   CALL DWORD PTR SS:[EBP+551]
=================================================
2. F8往下寻找ImportTableRVA, 大概15下到达此处.
00405278    BE 38200000     MOV ESI, 2038                            ; ImportTableRva = 2038
0040527D    8B95 22040000   MOV EDX, DWORD PTR SS:[EBP+422]          ; [EBP+422] 镜像基址 00400000
00405283    03F2            ADD ESI, EDX
00405285    8B46 0C         MOV EAX, DWORD PTR DS:[ESI+C]
00405288    85C0            TEST EAX, EAX
=================================================
3. 寻找OEP及计算ImportTableSize.
Ctrl + B 寻找十六进制 B8 01 00 00 00 C2 0C 00 68 00 00 00 00 C3
004053B2    B8 01000000     MOV EAX, 1
004053B7    C2 0C00         RETN 0C
004053BA    68 00000000     PUSH 0                                   ; 此处将出现OEP地址
004053BF    C3              RETN
往上查看一下发现
0040539A    B8 00100000     MOV EAX, 1000                            ; F4到此处, OEP = 1000 物理地址
0040539F    50              PUSH EAX
004053A0    0385 22040000   ADD EAX, DWORD PTR SS:[EBP+422]
004053A6    59              POP ECX
004053A7    0BC9            OR ECX, ECX
004053A9    8985 A8030000   MOV DWORD PTR SS:[EBP+3A8], EAX
004053AF    61              POPAD
004053B0    75 08           JNZ SHORT 004053BA
断下来后, 留意ESI的值, ImportTableSize = ESI - 镜像基址 + 14 - ImportTableRva = 00402088 - 00400000 - 00002038 = 00000050.
--------------------------------------------------------------------------
004053B2    B8 01000000     MOV EAX, 1
004053B7    C2 0C00         RETN 0C
004053BA    68 00104000     PUSH 00401000                       ; 此处将出现OEP地址
004053BF    C3              RETN                                     ; F4到此处, 直接返回OEP入口


标签:完美 无需 修复 方法 
上一篇:没有了
下一篇:做奇迹老板必须知道的11组数据
相关评论

本站所有奇迹私服游戏均来自网络版权归游戏业主所有,如果无意之中侵犯了您的版权,请来信告知,本站将在72小时内删除

陕ICP备17000701