利用OllyDbg找出旋风中文编辑器的注册码
作者:孤风飘影 来源:邪恶八进制信息安全团队技术论坛 更新:2005-6-7 9:21:04 点击:
好了,废话说了一大堆,转入正题。现给出本次破解用到的工具:Ollydbg、Peid和Quick Unpack。
方法:
1.首先用Peid 0.93查看一下程序是否加壳,结果是用了ASPack 2.12 -> Alexey Solodovnikov。
2.利用Quick Unpack 0.7脱壳,这可是个好东西,目前支持的类型有 UPX 1.xx, ASPack 2.12,FSG 1.33/2.0,MEW10,MEW11,PECompact 1.x/2.x'。当然也可以用AspackDie 1.41脱壳或手动脱壳。脱壳之后再利用peid查看,得到:Microsoft Visual Basic 5.0 / 6.0。^_^,是vb写的!
3.打开ollydbg 1.10,载入脱壳后的程序文件,执行后程序会弹出要求注册的对话框,先不去管它,点击ollydbg菜单中的查看选项,然后选择执行模块,选中MSVBVM60.dll,双击回到ollydbg主窗口,右键选择搜索当前模块中的名称,下拉菜单,找到__vbaStrCmp,在此下断,之后回到程序中在注册对话框中填写用户名为:gufengpiaoying,注册码为:777888999,确定之后,ollydbg自动中断来到以下地址:
6A9F4813 > FF7424 08 PUSH DWORD PTR SS:[ESP+8]
6A9F4817 FF7424 08 PUSH DWORD PTR SS:[ESP+8]
6A9F481B 6A 00 PUSH 0
6A9F481D E8 03000000 CALL MSVBVM60.__vbaStrComp
6A9F4822 C2 0800 RETN 8
6A9F4825 > 837C24 04 02 CMP DWORD PTR SS:[ESP+4], 2
6A9F482A 0F84 DB2C0200 JE MSVBVM60.6AA1750B
6A9F4830 68 01000300 PUSH 30001
6A9F4835 FF7424 08 PUSH DWORD PTR SS:[ESP+8]
6A9F4839 FF7424 10 PUSH DWORD PTR SS:[ESP+10]
6A9F483D FF7424 18 PUSH DWORD PTR SS:[ESP+18]
6A9F4841 FF15 840EAE6A CALL NEAR DWORD PTR DS:[6AAE0E84] ; OLEAUT32.VarBstrCmp
而此时我们看右边寄存器部分赫然提示:
EAX 001C7DCC UNICODE "777888999"
ECX 001C173C UNICODE "2904LT9QNZ84A1MC"
"777888999"不正是我们填入的假注册码吗,那下边的是...,^_^,原来旋风注册码是明文比对,"2904LT9QNZ84A1MC"正是我们要的正确的注册码。赶紧记下!好了,退出Ollydbg,重新启动程序注册,注册成功!收工。
4.总结一下VB程序下断的技巧,设置断点的位置主要包括:
__vbaStrCmp 比较字符串
__vbaStrComp 比较字符串
__vbaStrCopy 复制字符串
__vbaStrMove 移动字符串
__vbaVarTstNe 进行变量比较
__vbaVarTstEq 进行变量比较
rtcMsgBox 显示对话框(有时候超级好用的断点)
VarBstrCmp 比较字符串(Oleaut32.dll)
VarCyCmp 比较字符(Oleaut32.dll)
我经常用的差不多就这么些,本次破解并没有穷追注册算法,如果哪位朋友有兴趣破出来别忘了写个注册机给我啊!
转截请注明:来自 广西安全网络 Http://www.gxfa.com
在百度搜索:利用OllyDbg找出旋风中文编辑器的注册码相关文章
在Google搜索:利用OllyDbg找出旋风中文编辑器的注册码相关文章
在雅虎搜索:利用OllyDbg找出旋风中文编辑器的注册码相关文章
在Google搜索:利用OllyDbg找出旋风中文编辑器的注册码相关文章
在雅虎搜索:利用OllyDbg找出旋风中文编辑器的注册码相关文章
数据载入中,请稍后……

