![]() |
|
Spaces home 阿福台PhotosProfileFriendsMore ![]() | ![]() |
阿福台旗下网站
|
阿福台[活着的理由] http://www.youngcore.com | http://www.afutai.com
6/6/2008 Asprotect V2.X 的脱壳与修复的总结及练习作 者: blackeyes 1.2) 被 Asprotect 加壳后的程序在OEP 1.2) 被 Asprotect 加壳后的程序在OEP [转]手动脱壳ASProtect V2.X Registered【PYG官方论坛】http://bbs.chinapyg.com 大家有空去看看 ================ 我是个菜鸟,想跟大家学习点技术。 第一次做动画,有什么错误的地方望高手指正。 今天和大家讨论一下 手动脱壳之ASProtect V2.X Registered -> Alexey Solodovnikov * ////////////////////////// 设置Ollydbg忽略除了“内存访问异常”之外的所有其他异常选项。 用插件去掉Ollydbg的调试器标志。 //////////////////////////////////////// OD载入后停在这里: 00401000 > 68 01B05600 PUSH csetup.0056B001 ===》壳的入口,F9运行 00401005 E8 01000000 CALL csetup.0040100B 0040100A C3 RETN 0040100B C3 RETN 0040100C 0D 6F2F026F OR EAX,6F022F6F 00401011 5B POP EBX =============== Shift+F9按N次,注意右下角堆栈 00AFFAFF C601 9E MOV BYTE PTR DS:[ECX],9E 00AFFB02 BB 71FE8A67 MOV EBX,678AFE71 00AFFB07 64:8F06 POP DWORD PTR FS:[ESI] 00AFFB0A 0000 ADD BYTE PTR DS:[EAX],AL 00AFFB0C 83C4 04 ADD ESP,4 00AFFB0F 8D0C07 LEA ECX,DWORD PTR DS:[EDI+EAX] 00AFFB12 59 POP ECX ===================== 0012FF50 0012FF5C 指向下一个 SEH 记录的指针 0012FF54 00AFFA50 SE处理程序 0012FF58 00000002 0012FF5C 0012FF80 指向下一个 SEH 记录的指针 0012FF60 00AFFFE8 SE处理程序 0012FF64 0012FF78 0012FF68 00A80000 0012FF6C 00AFF62C 0012FF70 00000000 0012FF74 00B3D84C ASCII "FECE69A1-E37D" ====》硬盘特征指纹 0012FF78 0012FF98 0012FF7C 00ADE2D0 0012FF80 0012FFE0 指向下一个 SEH 记录的指针 0012FF84 00AFF854 SE处理程序 0012FF88 0012FF98 Shift+F9经过=23次异常后,堆栈出现硬盘特征指纹 ================= Shift+F9按5次,堆栈硬盘特征指纹消失,再按1次Shift+F9 00AFE8F9 C601 9E MOV BYTE PTR DS:[ECX],9E 00AFE8FC BB 71FE8A67 MOV EBX,678AFE71 00AFE901 64:8F06 POP DWORD PTR FS:[ESI] 00AFE904 0000 ADD BYTE PTR DS:[EAX],AL 00AFE906 83C4 04 ADD ESP,4 00AFE909 8D0C07 LEA ECX,DWORD PTR DS:[EDI+EAX] 00AFE90C 59 POP ECX 00AFE90D A1 4848B000 MOV EAX,DWORD PTR DS:[B04848] ================== 向上找到这里: 00AFE8E3 C3 RETN 00AFE8E4 EB 01 JMP SHORT 00AFE8E7 00AFE8E6 9A C1D19D36 EB0>CALL FAR 01EB:369DD1C1 ; 远调用 00AFE8ED 9A 83F1102B C96>CALL FAR 64C9:2B10F183 ; 远调用 00AFE8F4 FF31 PUSH DWORD PTR DS:[ECX] 00AFE8F6 64:8921 MOV DWORD PTR FS:[ECX],ESP 00AFE8F9 C601 9E MOV BYTE PTR DS:[ECX],9E 在00AFE8E3 C3 RETN按F2下断,Shift+F9断下,取消断点,F8单步 7C9237BF 64:8B25 0000000>MOV ESP,DWORD PTR FS:[0] 7C9237C6 64:8F05 0000000>POP DWORD PTR FS:[0] 7C9237CD 8BE5 MOV ESP,EBP 7C9237CF 5D POP EBP 7C9237D0 C2 1400 RETN 14 Alt+M查看内存在00401000按F2下断,F9运行 004B02B8 55 PUSH EBP 004B02B9 8BEC MOV EBP,ESP 004B02BB 83C4 E4 ADD ESP,-1C 004B02BE 53 PUSH EBX 004B02BF 56 PUSH ESI 004B02C0 33C0 XOR EAX,EAX 004B02C2 8945 E4 MOV DWORD PTR SS:[EBP-1C],EAX 004B02B8程序OEP脱壳之。是Borland Delphi 6.0 - 7.0 ================== 脱壳之后如何修复请高手指教。 动画下载 http://free.ys168.com/?a3chenming 破解常用断点大全
[转]ASProtect V2.X脱壳+处理附加数据+去自校验~ASProtect V2.X脱壳+处理附加数据+去自校验~------------------------------------------------------------------
ASProtect V2.X脱壳+处理附加数据+去自校验 作者:Hmily 博客:Http://Blog.52Hmily.Cn QQ群:39940458 ------------------------------------------------------------------- 大家好,我是Hmily,今天给大家带来 Q宠保姆VC版 2.23 SP8版2007.09.13脱壳教程,需要的工具有: PEiD,OD,Volx大侠ASProtect脚本(http://www.unpack.cn/viewthread.php?tid=9487),ImportREC,Overlay 最终版,Resource Binder......(这些网上都能下到,就不提供了) 这个是我上次脱Q宠保姆VC版 2.23 SP7版 2007.09.06的记录:http://hi.baidu.com/52hmily/blog ... 7a120b28388a04.html 好,开始,先查下壳 普通扫描:ASProtect V2.X Registered -> Alexey Solodovnikov * Sign.By.fly [Overlay] *注意是有附加数据的 用插件VerA 0.15扫描:Version: ASProtect 2.3 SKE build 06.26 Beta [Extract] 第一步:脱壳 先OD载入吧,运行脚本,就会自动脱壳了,脱完先修复,先查看OD运行记录,再打开ImportREC,然后对照着填OEP地址,点获取输入表,再点修复转存文件。 第二步:处理附加数据 好了,现在来处理附加数据,打开Overlay,点复制Overlay,这样就处理了附加数据 第三步:去自校验 现在还是运行不了,看来是有自校验,我们把脱好的程序再次载入OD,在命令出输入:bp CreateFileA,回车,按F9运行,到这就可以了,下面看清楚,点反汇编窗口中跟随,F2下端,F9运行到这里,取消断点,这里都是系统的领空,我们要到程序的领空去,按F8先跟到程序领空,好,这里已经到系统领空了,下面还是用F8跟,后面慢慢来,大家看好, 004638D8 . A3 04DB4D00 mov dword ptr [4DDB04], eax 004638DD . E8 61F5FFFF call 00462E43 004638E2 . E8 272BFFFF call 0045640E 004638E7 . 85C0 test eax, eax 004638E9 . 0F85 15010000 jnz 00463A04 ————跳转没实现 004638EF . 52 push edx 004638F0 . 57 push edi 004638F1 . C1D2 E7 rcl edx, 0E7 004638F4 . 83EA 03 sub edx, 3 004638F7 . 68 28214200 push 00422128 004638FC . 81D2 EC7E7BD3 adc edx, D37B7EEC 00463902 . 5A pop edx 00463903 . FF32 push dword ptr [edx] 00463905 . 335424 08 xor edx, dword ptr [esp+8] 00463909 . 335424 28 xor edx, dword ptr [esp+28] 如果这样下去你会发现程序就结束了,说明这里是关键的跳转,我们先看看,继续跟,出错了,好了,现在我们重新载入程序,直接跳到刚才那个地方004638E9, 004638E9 . /0F85 15010000 jnz 00463A04 没实现跳转,我们来让他实现,可以直接把JNZ改成JMP就可以了,保存 好,我们现在再看看能不能运行,晕,刚才突然点错了,我们继续,OK,可以啦,查下壳 VC8 -> Microsoft Corporation [Overlay] *,我们再用Resource Binder给它优化下,重建资源, 程序也会小点,好了,这样教程就结束了。 欢迎大家和我交流技术! 88 教程地址:http://exs.mail.qq.com/cgi-bin/d ... 5281125d325ea32d7ce 提取码:edac828d Q宠保姆VC版 2.23 SP8版2007.09.13UNPack:http://exs.mail.qq.com/cgi-bin/d ... 4d0ac7ddece7271e0dc 提取码:ae5027bb
[公益广告]天龙八部是游戏还是印钞机?
汗手汗脚症专题
软件编程开发,木马外挂,技术讲解
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|