首页
社区
课程
招聘
Rwx2005内存注册机制作全攻略
发表于: 2005-4-6 22:25 4758

Rwx2005内存注册机制作全攻略

2005-4-6 22:25
4758
Rwx2005内存注册机制作全攻略

软件名称:Rwx2005
功能:远程控制(属于黑客工具)
破解工具:PEiD V0.92,UPX-iT161,W32Dasm,OllyDebug 109C,KeyMake v173

前几天我朋友从QQ上传了个软件(就是今天要动手术的Rwx2005)给我,问我会不会破解,我只能说试试看了(本人也是菜鸟1只啊)。
此软件的目录下包含HKrwx.exe文件和cache文件夹,,今天要被摧残的对象就是HKrwx.exe了。
此软件未注册前只能在本机运行1次,退出后再运行就显示要求输入注册码的对话框了。

第一步就是先将要破解的软件复制一份备份,以免破解过程中把软件给搞坏了。

第二步先查看该软件是否加了壳,于是就用PEiD检查了一下,不出所料,果然有陷阱,是UPX1的壳(注意啊!不是UPX,是UPX1啊),小弟我也是第一次见到这样的壳(没办法,刚入行,见的世面也少),估计和UPX没多大区别,于是我就用Unpacker for UPX这个工具去脱壳,真简单,没过多久就出现了脱壳成功的信息,^_^看来今天运气不错。

二话没说先运行一下看看,@_@我倒~~~~~ 不能运行,提示说XXX.DLL错误,天啊,耍我啊。

看来此路不通啊,还好我还有一个脱UPX壳的工具UPX-iT(没办法啊小弟功力太差只能靠现成的工具来脱壳,还未练到可以手动脱壳的境界),这个如果还失败的话,那我就只能放弃了,佛祖保佑~~~~~~~

没一会就显示成功的信息了,还是运行一下先,哈哈可以运行,看来上天没有抛弃我^@^

好了,现在就按平常的破解思路来破解吧,先运行一下软件,弹出注册对话框(第一次运行的时候不出现的),然后在要求输入注册码的框里随便输点什么,比如:12345678,然后点“注册”按钮,弹出“注册失败,请重新输入!”的对话框,太好了,还有提示,这下简单了。

下面出场的是今天的女主角――W32Dasm
加载完脱壳程序后,在菜单栏中选“参考”―>“字符串数据参考”,在其中查找“注册失败,请重新输入!”的字样,一般在最后,找到后双击这个字符串,W32Dasm立刻跳转到0050D094,向上可以看到“Referenced by a (U)nconditional or (C)onditional Jump at Address:0050D02E”,这个就是告诉我们是哪个跳转跳到这个“注册失败”的地方来的,再向上看可以看到“感谢您的支持,注册成功!”的字样,估计0050D02E是个关键跳转。再向上可以看到“Possible StringData Ref from Code Obj ->"reg"”和“Possible StringData Ref from Code Obj ->"software\Microsoft\shellrwx"”的字样,说明改软件注册成功后向注册表中写数据。

好了,我们到0050D02E这个关键跳去看看吧。看到这句跳转的上一句是一个CALL,看了0050D02E这个跳转99%是关键跳了!

下面出场的就是今天的男主角――阿~~~发~~~~他岳父(周星星的片子看多了 ^&^)应该是OllyDebug!
用OllyDebug加载HKrwx.exe,加载完毕后按Ctrl+G然后输入那个关键跳的地址0050D02E,按一下F2下个断点,然后在上面三行也下上断点,
0050D023  |. 8B45 F4        MOV EAX,DWORD PTR SS:[EBP-C]
0050D026  |. 8B55 FC        MOV EDX,DWORD PTR SS:[EBP-4]
0050D029  |. E8 527EEFFF    CALL HKrwx.00404E80
0050D02E  |. 75 64          JNZ SHORT HKrwx.0050D094
也就是上面四行下断点。

然后就按F9运行程序,出现输入注册码的对话框,照旧随便输入,比如:12345678,然后按“注册”按钮,程序被OllyDebug拦截下来,停在0050D023(因为在关键跳上面3行也下了断点,所以程序来到这里),不过在窗口的右下角可以看到刚才填的注册码“12345678”,下面一行就是注册信息中出现的机器码了,再下面一行很长的字符串很有可能是真正的注册码了。

没关系,我们按F8继续往下走,这时可以看到EAX中的内容是自己输的注册码,继续按F8,可以看到EDX中显示的就是那个可能是真正注册码的内容,继续按F8,程序来到0050D02E的关键跳,如果将此关键跳JNE改成JE那么如果你输入的注册码是错误的话就显示正确的对话框,这就是爆破手要做的事,我们是要做内存注册机,所以不需要去改它。按F9让程序运行完,然后点“退出”。

好了,已经掌握了此软件注册的过程,那我们可以做内存注册机了。(其实用KeyMake来做非常简单)
运行KeyMake,点一下“其他”―>“内存注册机”,然后选择要做注册机的程序,点左下角的“添加”按钮来添加要中断的地址,为什么中断的地址是50D029啊?因为当程序运行到这里的时候,EDX中的内容才是真正的注册码,如果中断在50D26的话,EDX中的内容还未变成注册码的内容。指令长度为什么是5,因为E8 527EEFFF是5个字节,所以长度是5。记得啊,右边的注册码框中也要填如相应的内容。填好后就可以点“生成”按钮就可以了,注意啊,生成的注册机一定要和主程序放在 同一个文件夹下的啊,还有直接运行注册机就可以了,不需要先运行主程序然后再运行注册机!!

好了大功告成,是不是很有成就感啊,哈哈~~~~

另:注册信息写在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\shellrwx中,将此项删除也可以运行Rwx2005

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 0
支持
分享
最新回复 (3)
雪    币: 547
活跃值: (2200)
能力值: ( LV7,RANK:100 )
在线值:
发帖
回帖
粉丝
2
先跟着顶了辛苦啊
2005-4-6 23:04
0
雪    币: 234
活跃值: (104)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不错!!!
2005-4-7 10:08
0
雪    币: 214
活跃值: (86)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
4
什么啊~~~~~~大家去看看2005 的第4期<黑客防线>,就可以看见一模一样的文章~~~~~

应该不是抄袭的吧??????????????????????????????
2005-4-7 12:13
0
游客
登录 | 注册 方可回帖
返回
//