您现在的位置: IT技术文档中心 >> 文档资源 >> 安全技术 >> 加密解密 >> 文档正文
脱掉QSound Qmp3D V1.0的vbox壳
作者:未知 文章来源:互联网 点击数: 更新时间:2007-7-14 15:39:09
Program : QSound Qmp3D Version 1.0
Type : a multi-function audio enhancement plug-in for the Winamp MP3 player
OS : only for Win9x/2K
Protection : Vbox 4.3 Preview
Homepage : http://www.qsound.com/
Download :

Cracked by : zombieys[CCG]
Release type : full unpacked
Release date : Jul 22,2002
Release name : cr-dsp_qsnd.dll (430,080 bytes)
Release Download : http://8287.my.west163.com/cr-dsp_qsnd.rar


第一次接触dll文件脱壳,极其不适应,花了2整天搞定。要感谢ljttt老大的指点了,大脱神呀^^


1.找oep

首先执行icedump,运行winamp,加载dsp插件qsound,弹出vbox对话框,下bpx getprocaddress,按f5。点continued后被中断,按一下f12来到这里

01A7:0700BB36 PUSH DWORD PTR [EBP-20]
01A7:0700BB39 CALL [KERNEL32!GetProcAddress]
01A7:0700BB3F MOV EDI,EAX
01A7:0700BB41 CMP EDI,EBX
01A7:0700BB43 JZ 0700BCE6
01A7:0700BB49 MOV ESI,[ESI+16]
01A7:0700BB4C ADD ESI,[EBP+08]
01A7:0700BB4F CMP [EBP-24],EBX
01A7:0700BB52 JZ 0700BB89 -〉jmp 700bb89

上面代码用来控制是否破坏it表,所以必须要他跳过去。
省略跟踪过成,原因是不记得怎么找到oep的了:(
当来到

01A7:7007f57 SETZ CL
01A7:7007f5A TEST EAX,EAX
01A7:7007f5C MOV [EBP+08],ECX
01A7:7007f5F JNZ 7007F71
01A7:7007f61 PUSH DWORD PTR [EBP+14]
01A7:7007f64 PUSH DWORD PTR [EBP+10]
01A7:7007f67 PUSH DWORD PTR [EBP+0C]
01A7:7007f6A CALL EAX ->按f8进去就是程序的入口了
01A7:7007f6C MOV [ESI+18],EAX
01A7:7007f6F JMP 7007E75

Entry Point:15480


2.dump程序,提取it表

在入口处下a,jmp eip,用lordpe来dump dsp_qsnd.dll进程(用prodump会死掉的),dump出来的大约有568kb。运行ImportREC,oep填15480,找到it表后保存。


3.修复程序(最麻烦最花时间的工作)

用peditor删掉除Preview以外的所有sections,用winhex删除相应的数据只剩下大约416kb,再用ImportREC添加一个it表。重新给dll文件分配sections并修改Directory table中的Export table,Import table,Rescoures,Basereloce,Import address table为正确的值,修改Base of data以及Size of image为正确的值,把image base修改成对应的值(一开始不知道要改这个,花了我好长时间, 笨呐)。

4.测试正常运行for Win9x/2K,not for Winme(程序比较老)

ok到此为止

2002.7.22
zombieys[CCG]/[iPB]
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
| 设为首页 | 加入收藏 | 联系站长 | 版权申明 | 雁过留声 | 会员中心 |