surge 发表于 2005-11-5 17:30:14

通讯调试 2.0简单算法分析,高手勿入。

【破文标题】通讯调试 2.0简单算法分析,高手勿入。
【破文作者】surge
【作者邮箱】[email protected]
【作者主页】
【破解工具】PEiD ; DEDE ; OLLYDBG
【破解平台】Windows2000Professional+SP4
【软件名称】通讯调试 2.0
【软件大小】941KB
【原版下载】http://hecz.onlinedown.net/soft/43993.htm
【保护方式】注册码
【软件简介】RS232/485通讯调试程序。
------------------------------------------------------------------------
【破解过程】
第一步:查壳。
用PEiD v0.93测试为:Borland Delphi 4.0 - 5.0
第二步:静态分析,找到关键代码。
用DEDE 3.50.4的修改版找到断点地址
第三步:动态分析,总结算法。
用OLLYDBG载入,在0048b340处下断点,运行程序,注册,输入14位的注册码,确认之后中断
0048B340   push    ebp
0048B341   mov   ebp, esp
0048B343   push    0
0048B345   push    0
0048B347   push    ebx
0048B348   mov   ebx, eax
0048B34A   xor   eax, eax
0048B34C   push    ebp
0048B34D   push    TestComm.0048B422
0048B352   push    dword ptr fs:
0048B355   mov   dword ptr fs:, esp
0048B358   lea   edx, dword ptr ss:
0048B35B   mov   eax, dword ptr ds:
0048B361   call    TestComm.00436494
0048B366   mov   edx, dword ptr ss:
0048B369   mov   eax, ebx
0048B36B   call    TestComm.0048B5FC                  ;这里F7跟进

跟进之后,到了这里:

0048B5FC   push    ebp
0048B5FD   mov   ebp, esp
0048B5FF   add   esp, -8
0048B602   push    ebx
0048B603   push    esi
0048B604   xor   ecx, ecx
0048B606   mov   dword ptr ss:, ecx
0048B609   mov   dword ptr ss:, edx
0048B60C   mov   eax, dword ptr ss:
0048B60F   call    TestComm.00404A4C
0048B614   xor   eax, eax
0048B616   push    ebp
0048B617   push    TestComm.0048B675
0048B61C   push    dword ptr fs:
0048B61F   mov   dword ptr fs:, esp
0048B622   xor   ebx, ebx
0048B624   lea   eax, dword ptr ss:
0048B627   mov   edx, dword ptr ss:
0048B62A   call    TestComm.00404688
0048B62F   mov   eax, dword ptr ss:
0048B632   call    TestComm.00404898
0048B637   cmp   eax, 0E                               ;注册码要14位
0048B63A   jnz   short TestComm.0048B65A
0048B63C   mov   ecx, 378                           ;这个值后面要用到
0048B641   xor   edx, edx                               ;清0,保存计算结果
0048B643   xor   eax, eax                               ;循环计数清0
0048B645   /mov   esi, dword ptr ss:      ;注册码地址到esi
0048B648   |movzx   esi, byte ptr ds:   ;依次每一个注册码到esi
0048B64C   |add   edx, esi                              ;累加放入edx
0048B64E   |inc   eax                                     ;指针加1
0048B64F   |cmp   eax, 0E                              ;比较是不是加完了
0048B652   \jnz   short TestComm.0048B645    ;没加完接着加
0048B654   cmp   edx, ecx                           ;比较最后的结果是不是378
0048B656   jnz   short TestComm.0048B65A   ;爆破点~~
第四步:算法总结
注册码的ASCII十六进制值累加和为十六进制378就OK~~
------------------------------------------------------------------------
【破解总结】
这个软件对破解者没有什么干扰,算法也很简单,适合初学者练手。
提供一组可用的注册:
surge      R
注意空格。
感谢飘云提供的飘云破文圣手1.0 ★PYG专用版★
------------------------------------------------------------------------
【版权声明】本文纯属技术交流, 转载请注明作者信息并保持文章的完整, 谢谢!
                                                 2005-10-8

风球 发表于 2005-11-5 23:11:18

支持```这个好```适合我这样的菜鸟```哈```

@ FengQ @**?**

阿才 发表于 2005-11-6 13:19:22

在这里下了不少好的算法,,,谢谢

skyege 发表于 2005-11-6 17:23:17

支持一下!!!

Nisy 发表于 2005-11-6 17:51:44

谢谢分享~

冷血书生 发表于 2005-11-8 00:36:31

支持一下!!!
页: [1]
查看完整版本: 通讯调试 2.0简单算法分析,高手勿入。