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

推荐文章

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

天然码输入法(1)

 作者:本站收集   日期:2005-5-28
字号选择〖 〗/ 双击滚屏 单击停止   
标软件:天然码输入法(对应小球兄昨天的帖子)
目标文件:trm32.ime;getdiskserial.exe
加壳方式:UPX 1.03
使用工具:trw2000
Procdump
peditor
Imprec 1.3
URL: http://www.chinatrm.com/download/file/suggest/setup.exe
本文作者:leo_cyl

加密特点:在比较注册码前,先产生另外的进程调用vxd绕过window api读指纹盘,如果没有指纹盘就不比较注册码。其实这个软件是明码比较不用脱壳的,但对dll脱壳是很多初学者还没掌握的基本技能,所以还是多此一举把trm32.ime的壳脱了。(trm32.ime说穿了就是一个dll)
dll壳脱的难点在于dll是动态加载的(废话!),所以不能用loader。那么我们只好在dll的entry point加上int 3的指令了。
用peditor装入\windows\system\trm32.ime,可看到entry point = 0003D210;Image Base = 10000000;用peditor的FLC计算entry point(1003d210)的偏移为:00013610。再用二进制编辑器在偏移为00013610处机器码为80H的内容改为CC(即 int 3的机器码)。
现在运行trw2k,下命令“I3HERE ON”,打开任务条的输入法管理器。选天然码,点“属性”将激活trw2k,停在dll的入口处:
017F:1003D210 CC INT3
017F:1003D211 7C24 JL 1003D237 (NO JUMP)
017F:1003D213 0801 OR [ECX],AL
017F:1003D215 0F8581010000 JNZ NEAR 1003D39C
017F:1003D21B 60 PUSHA
017F:1003D21C BE00A00210 MOV ESI,1002A000

“r eip eip-1”,“d eip”,将017F:1003D210处改为80H:
017F:1003D210 807C240801 CMP BYTE [ESP+08],01
017F:1003D215 0F8581010000 JNZ NEAR 1003D39C
017F:1003D21B 60 PUSHA
017F:1003D21C BE00A00210 MOV ESI,1002A000
017F:1003D221 8DBE0070FDFF LEA EDI,[ESI+FFFD7000]
017F:1003D227 57 PUSH EDI

f10跟踪,来到这里:
017F:1003D344 95 XCHG EAX,EBP
017F:1003D345 8A07 MOV AL,[EDI]
017F:1003D347 47 INC EDI 《===EDI为引入的函数
017F:1003D348 08C0 OR AL,AL
017F:1003D34A 74DC JZ 1003D328
017F:1003D34C 89F9 MOV ECX,EDI
017F:1003D34E 57 PUSH EDI
017F:1003D34F 48 DEC EAX
017F:1003D350 F2AE REPNE SCASB
017F:1003D352 55 PUSH EBP
017F:1003D353 FF9634DA0300 CALL NEAR [ESI+0003DA34] 〈==getprocessaddress
017F:1003D359 09C0 OR EAX,EAX
017F:1003D35B 7407 JZ 1003D364
017F:1003D35D 8903 MOV [EBX],EAX
017F:1003D35F 83C304 ADD EBX,BYTE +04
017F:1003D362 EBE1 JMP SHORT 1003D345

以上代码为恢复引入表。继续f10跟踪,来到这里:
017F:1003D38C EBE2 JMP SHORT 1003D370
017F:1003D38E 240F AND AL,0F
017F:1003D390 C1E010 SHL EAX,10
017F:1003D393 668B07 MOV AX,[EDI]
017F:1003D396 83C702 ADD EDI,BYTE +02
017F:1003D399 EBE2 JMP SHORT 1003D37D
017F:1003D39B 61 POPA 〈====很眼熟吧!
017F:1003D39C E906BBFCFF JMP 10008EA7〈====OEP

所以OEP在10008EA7处。在10008EA7处DUMP出文件。先看一下trm32.ime的IMTE。“MOD32 TRM32.IME”
可看到IMTE 为:xxxxxxxx;“PEDUMP C:\TRM32.DLL xxxxxxxx”。并挂起进程“SUSPEND”。
回到window运行Imprec 1.3。在任务列表选rundll32.exe 点“pick dll”找到trm32.ime。输入OEP(8EA7)
“get Imports”可修复IAT。再“fix dump”。将产生TRM32_.DLL,把它改名为trm32.ime 即可。到此脱壳完成。
上一篇:天然码输入法(2)    下一篇:论 彩票快车白金版v90 的脱壳+爆破(2)  
[发送给好友]  [关闭窗口]  [返回顶部]   转载请注明来源:www.it00.com   
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
责任编辑: 原点 投稿作者: 本站收集
信息来源: 网络 录入时间: 2005-5-28
关于我们 - 广告服务 - 版权申明 - 网站地图 - 联系方式 - 总编信箱 - 会员投稿