WEB开发网
开发学院网络安全黑客技术 AZPR3.0的脱壳教程 阅读

AZPR3.0的脱壳教程

 2006-07-03 20:26:51 来源:WEB开发网   
核心提示: OK. 再往下,直到0167:004F3637 8D4818 LEA ECX,[EAX+18]0167:004F363A 8B4508 MOV EAX,[EBP+08]0167:004F363D 8B10 MOV EDX,[EAX]0167:004F363F 8B4508 MOV EAX,

OK. 再往下,直到

0167:004F3637 8D4818     LEA ECX,[EAX+18]
0167:004F363A 8B4508     MOV EAX,[EBP+08]
0167:004F363D 8B10     MOV EDX,[EAX]
0167:004F363F 8B4508     MOV EAX,[EBP+08]
0167:004F3642 8B401C     MOV EAX,[EAX+1C]
0167:004F3645 E8EAF6FFFF   CALL 004F2D34 <--F8进入
0167:004F364A 5F     POP EDI
0167:004F364B 5E     POP ESI
到了
0167:004F2D72 E9148B1DA8   JMP A86CB88B
0167:004F2D77 8E4F00     MOV CS,[EDI+00]
0167:004F2D7A EB01     JMP 004F2D7D
0167:004F2D7C EB89     JMP 004F2D07
0167:004F2D7E 041C     ADD AL,1C
0167:004F2D80 EB02     JMP 004F2D84
0167:004F2D82 EBE8     JMP 004F2D6C
0167:004F2D84 61     POPAD
0167:004F2D85 EB01     JMP 004F2D88
0167:004F2D87 E850EB02E9   CALL E95218DC
0167:004F2D8C 17     POP SS
0167:004F2D8D E802000000   CALL 004F2D94
0167:004F2D92 E91758C35E   JMP 5F1285AE
0167:004F2D97 5B     POP EBX
0167:004F2D98 59     POP ECX
此时小心地跟踪,碰到JMP时按F8而不要按F10

直到显示变成

0167:004F2D72 E9148B1DA8   JMP A86CB88B
0167:004F2D77 8E4F00     MOV CS,[EDI+00]
0167:004F2D7A EB01     JMP 004F2D7D
0167:004F2D7C EB89     JMP 004F2D07
0167:004F2D7E 041C     ADD AL,1C
0167:004F2D80 EB02     JMP 004F2D84
0167:004F2D82 EBE8     JMP 004F2D6C
0167:004F2D84 61     POPAD
0167:004F2D85 EB01     JMP 004F2D88
0167:004F2D87 E850EB02E9   CALL E95218DC
0167:004F2D8C 17     POP SS
0167:004F2D8D E802000000   CALL 004F2D94
0167:004F2D92 E91758C35E   JMP 5F1285AE
0167:004F2D94 58     POP EAX <-- 光标位于此行时, EAX=401000
0167:004F2D95 C3     RET <--这里
下Suspend指令. 回到Windows. 用ProcDump来Dump(full)脱壳的程序,得到azprdump.exe. 你也可以用TRW的PEDUMP命令来得到脱壳程序,但我个人的经验很容易死机,所以我宁愿用ProcDump来做.

4. 用PE Editor修改程序的Entry Point为1000. 并查看脱壳后程序的.idata section. 此时Raw size=1670, Raw offset=1FC00. 修改Directory中Import Table的RVA=21000,SIZE=1670.

5. 用Hexworkshop打开azprdump.exe和azprdata.bin. Goto到exe文件的1FC00偏移处,Select Block大小为1670. 拷贝.bin文件的同样大小(1670)的Block,粘贴到exe文件中以替换掉不正确的.idata section.

现在,再试着运行程序,应该可以正常运行了. 如果程序出错,再做一件事: 把 .bss section的raw size值改为00000000 (高手tiamath的建议).

有了脱壳的程序,大家应该会Patch它成为注册版了吧. 只需改一个字节.

结语: 用本文所描述的方法,可以对绝大多数Asprotect+Aspack保护的程序进行成功的脱壳. 大家读完这篇教程,不妨找几个程序开刀. 比方说,The Bat! 1.39现在不应该再难住大家了.

上一页  1 2 

Tags:AZPR 脱壳 教程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接