庞大资源库的计算机教程网站!
设为首页
加入收藏
总编信箱
投稿或申请专栏请先 [登 陆]
首页 操作系统 程序设计 图形图像 媒体动画 机械电子 WEB开发 数 据 库 办公系列 路由技术 网络原理 网络应用
认证考试 安全技术
首页>安全技术>软件破解>脱壳技术>正文
资料搜索
Google搜索
Google
返回上级列表

推荐文章

快速保存网页中所有图片的方法
Windows中让光驱巧妙“隐身”技
防范非法用户入侵Win 2000/XP系
两款比较典型的ASP木马防范方法
有关表格边框的css语法整理
Windows XP中可以被禁用的服务
SQL Server导出导入数据方法
Javascript所有对象的属性的获
网页(HTML)中的特殊字符
与篮球共舞,尽显模式本色
QQ病毒的手工清除方法
Photoshop为极品美女打造性感睫
天衣无缝:IIS与PHP水火也相容
SQL Server存储过程编写和优化

手动脱壳的教程(由petite v2.2加壳)

 作者:本站收集   日期:2005-5-28
字号选择〖 〗/ 双击滚屏 单击停止   
虽然已经有petite v2.2的脱壳机,但我认为手动脱壳是一个cracker必须掌握的基本技能之一,有必要学习ImportREC重建IAT的技巧
就拿embird[bcg]在论坛贴的问题做例子吧!
工具:trw2000,ImportREC v1.3,冲击波2000

一,找OEP
很简单,用冲击波2000可看到OEP在426F67处。

二,保存主程序
在426F67处设断点,中断后下命令:“makepe c:\dump.exe”。

三,重建IAT
下命令“suspend”挂起进程。回到window,运行ImportREC,选ReadBook.exe,
输入OEP(4526f67-40000 = 26f67),
"IAT AutoSearch",可得到IAT,但还有一些指针未解决,点击“Get Import”,“AUTO TRACE”后,全部解决。
“fix dump”后生成dump_.exe。运行它非法操作。用trw2000跟踪找到非法操作的地方:

017F:0044DCF4 33DB XOR EBX,EBX
017F:0044DCF6 385814 CMP [EAX+14],BL
017F:0044DCF9 7409 JZ 0044DD04
017F:0044DCFB 838E14010000FF OR DWORD [ESI+0114],BYTE -01
017F:0044DD02 EB63 JMP SHORT 0044DD67
017F:0044DD04 53 PUSH EBX
017F:0044DD05 FF15FC364500 CALL [4536FC] <----这是非法操作的地方
017F:0044DD0B 3BC3 CMP EAX,EBX
017F:0044DD0D 7D0A JNL 0044DD19
017F:0044DD0F 53 PUSH EBX
017F:0044DD10 E863000000 CALL 0044DD78

查看[4536FC]的内容发现该地址指向ole32.dll。看来ImportREC并没有完全修复IAT,重新运行ImportREC
输入OEP,点击"IAT AutoSearch",发现默认的RVA是:00052FFC,Size是00000394。
但是00052FFC+00000394=53390小于4536FC!原来petite 的外壳欺骗了ImportREC,使它得不到完全的IAT
那么我们就手动输入一个范围给它。我把Size改为00000709,加大查找范围。
(00000709是个经验值,可以自己试出来)。"Get Import",“AUTO TRACE”后,还有一个指针未解决,它指向Cxxxxxxx,不太合理,而且程序也位使用它,那就随便给它一个函数名吧(我选GetTickCount)。“fix dump”后再次生成dump_.exe。
这样dump_.exe可以运行了。但还有暗桩:
017F:00417CE6 C6470165 MOV BYTE [EDI+01],65
017F:00417CEA FF75F0 PUSH DWORD [EBP-10]
017F:00417CED FF75D8 PUSH DWORD [EBP-28]
017F:00417CF0 FF75E8 PUSH DWORD [EBP-18]
017F:00417CF3 E8BB060000 CALL 004183B3 <-----此call是暗桩,F8进入
017F:00417CF8 83C40C ADD ESP,BYTE +0C
017F:00417CFB 85C0 TEST EAX,EAX
017F:00417CFD 0F8516010000 JNZ NEAR 00417E19
017F:00417D03 53 PUSH EBX
017F:00417D04 53 PUSH EBX


017F:004183B3 FF742408 PUSH DWORD [ESP+08]
017F:004183B7 FF742408 PUSH DWORD [ESP+08]
017F:004183BB E80CF1FFFF CALL 004174CC <-----,F8进入
017F:004183C0 2B442414 SUB EAX,[ESP+14]
017F:004183C4 59 POP ECX
017F:004183C5 59 POP ECX
017F:004183C6 F7D8 NEG EAX
017F:004183C8 1BC0 SBB EAX,EAX
017F:004183CA 40 INC EAX
017F:004183CB C3 RET


017F:004174CC 8B4C2408 MOV ECX,[ESP+08] ----------+
017F:004174D0 83C8FF OR EAX,BYTE -01 |
017F:004174D3 8BD1 MOV EDX,ECX |
017F:004174D5 49 DEC ECX |
017F:004174D6 85D2 TEST EDX,EDX |
017F:004174D8 7423 JZ 004174FD |
017F:004174DA 56 PUSH ESI |
017F:004174DB 8D5101 LEA EDX,[ECX+01] | 典型的crc32
017F:004174DE 8B4C2408 MOV ECX,[ESP+08] |
017F:004174E2 57 PUSH EDI |
017F:004174E3 0FB631 MOVZX ESI,BYTE [ECX] |
017F:004174E6 0FB6F8 MOVZX EDI,AL |
017F:004174E9 33F7 XOR ESI,EDI |
017F:004174EB C1E808 SHR EAX,08 |
017F:004174EE 8B34B590594600 MOV ESI,[ESI*4+00465990] |
017F:004174F5 33C6 XOR EAX,ESI |
017F:004174F7 41 INC ECX |
017F:004174F8 4A DEC EDX |
017F:004174F9 75E8 JNZ 004174E3 ---------------|
017F:004174FB 5F POP EDI
017F:004174FC 5E POP ESI
上一篇:论 彩票快车白金版v90 的脱壳+爆破(1)    下一篇:脱pecompact1.71加的壳  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-5-28
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿