- UID
- 901
注册时间2005-4-13
阅读权限40
最后登录1970-1-1
独步武林
TA的每日心情 | 奋斗 2024-10-30 21:11 |
---|
签到天数: 453 天 [LV.9]以坛为家II
|
发表于 2006-7-14 12:00:18
|
显示全部楼层
原帖由 saml 于 2006-5-4 19:00 发表
請教前輩如何注冊,解壓到同一目錄,仍然不行,謝謝!
测试一下,果然注册机是无效的!哈,网上怎么会流传一些未经测试成功的注册机呢??
不过你也不要担心,我提供一个方法:
UPX 0.89.6 - 1.02 / 1.05 - 1.24 -> Markus & Laszlo
Microsoft Visual Basic 5.0 / 6.0
输入假注册码,即弹出:注册失败,请重新运行进行注册!
脱壳之后,UPX壳很容易就脱了啦。
我跟踪了一下这个软件,发现算法还蛮复杂的,可惜是明码比较!!
开始的早候,依据C盘序列号生成机器码,然后依次取机器码……
如下:
机器码:1641018648072878
转换:49545249484956545256485550565556
看看它们的对应关系。这其实是返回相应机器码的ASCII码(十六进制)的十进制形式,然后依次连接。
机器码 相应ASCII值 对应的十进制值
1-------------------------31---------------------------49
然后以这个长字符串进行了一个加密算法,太长,惨不忍睹!
我得到:
“5VK5U5407Z0S6CFN7XON0UZK4S94N6V19Z662ELCEB26H9C39JAW69X35YM81YF33BR01KJ99DSKRGI11B424FV3IRY948R37851"
从这里再取字符并运算,不敢看了。
得到真的注册码D50I1LE90MS87908,注册码为16位。
你脱壳后,在0045A14D处下断,可以看到刚刚生成的真注册码。
以下是比较真假过程:
00462ADD . 50 push eax //真注册码压栈
00462ADE . 8B45 E4 mov eax,dword ptr ss:[ebp-1C] //假注册码
00462AE1 . 50 push eax //假注册码压栈
00462AE2 . FF15 34114000 call dword ptr ds:[<&MSVBVM60.__v>; MSVBVM60.__vbaStrCmp //非常经典的VB比较函数
本想用C++写个注册机,可是一看到VB就头疼!!不敢在上面耗时间了。
再次声明,上面的注册机无效!!!
再次声明,就不要发无效的注册机,误人子弟。
否则会使我们的论坛失去民心。字缺勿滥! |
|