级别: 中级会员

UID: 129395
精华: 13
发帖: 86
威望: 1233
霏币: 4111
活跃度: 137
技术分: 0
非凡币: 0
交易值: 0
在线时间: 202(小时)
注册时间: 2005-05-01
最后登录: 2010-02-18
楼主  发表于: 2005-08-28 07:32:20

原创测评】 【原创】班主任管理大师 V1.21(找MD5变形处)

管理提醒: 本帖被 thinker 执行压帖操作(2018-04-02)
【破文作者】   rdsnow[BCG][PYG][D.4s]

【作者主页】   http://rdsnow.ys168.com

【 E-mail 】   rdsnow@163.com

【 作者QQ 】   83757177

【文章题目】   班主任管理大师 V1.21(找MD5变形处)

【软件名称】   班主任管理大师 V1.21

【下载地址】   http://nj.onlinedown.net/soft/41875.htm

----------------------------------------------------------------------------------------------
【加密方式】   序列号,变形MD5

【破解工具】   FLYOD

【软件限制】   功能限制

【破解平台】   Microsoft Windows XP SP2

----------------------------------------------------------------------------------------------
【软件简介】

大拇指软件推出最新版“班主任管理大师”,由大拇指软件在研究了大量优秀班主任工作经验,以及同行业所有相关系列软件优缺点的基础上精心设计而成。专业级的精美软件,简单而又容易上手的*作界面,灵活的自定义量化管理,方便的成绩统计等功能,定会成为班主任日常管理中不可缺少的好帮手。

“班主任管理大师”采用完善的管理体系,科学的管理方法,是班主任日常管理的最佳帮手。包括学生基本资料,班级日常管理、工作管理、期末工作管理、学校工作管理、评语管理系统、座位表编排系统、考评量化自定义统计、素质综合汇总、完善的成绩汇总统计、教案设计备档系统、家教管理等几十个功能模块。

【文章简介】

这个软件的加密没有什么要说的,重启验证,注册信息保存在syssetup.ini中,典型的明码比较,这让破解者在短短的几分钟内就可以找到程序的注册码。软件作者都应该注意到这样的问题,除非你想把注册码暴露在用户面前。

有意思的是程序用了MD5运算,但是Peid却没有能够检测出来,可能是因为变形的缘故吧。好吧,就用这个程序让我们来认识一下MD5吧,虽然变了形,但是我的目标还是做出算法注册机来,所以要想办法找到跟正常的MD5相比发生了什么变化。

----------------------------------------------------------------------------------------------
【破解过程】

脱壳,输入假码,重启程序后,字符串查找来到:

0085C2C7   . 8D85 38FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1C8]
0085C2CD   . BA B8D68500   MOV EDX,Tccsoft.0085D6B8       ; ASCII "sysdate\syssetup.ini"
0085C2D2   . E8 498ABAFF   CALL Tccsoft.00404D20
………………
0085C300   . 50         PUSH EAX
0085C301   . B9 D8D68500   MOV ECX,Tccsoft.0085D6D8       ; ASCII "codes"
0085C306   . BA E8D68500   MOV EDX,Tccsoft.0085D6E8       ; ASCII "CompanyInfo"
0085C30B   . 8BC3         MOV EAX,EBX
0085C30D   . 8B30         MOV ESI,DWORD PTR DS:[EAX]
0085C30F   . FF16         CALL DWORD PTR DS:[ESI]       ; 读出假码
0085C311   . 8BC3         MOV EAX,EBX
0085C313   . E8 1C78BAFF   CALL Tccsoft.00403B34
0085C318   . A0 F4D68500   MOV AL,BYTE PTR DS:[85D6F4]
0085C31D   . 50         PUSH EAX
0085C31E   . 8D85 30FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1D0]
0085C324   . 50         PUSH EAX
0085C325   . 33C9         XOR ECX,ECX
0085C327   . BA 5CD68500   MOV EDX,Tccsoft.0085D65C
0085C32C   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C32F   . E8 843CBBFF   CALL Tccsoft.0040FFB8         ; 去除机器码中的"-"
0085C334   . 8B95 30FEFFFF   MOV EDX,DWORD PTR SS:[EBP-1D0]
0085C33A   . 8D45 A0       LEA EAX,DWORD PTR SS:[EBP-60]
0085C33D   . E8 9E87BAFF   CALL Tccsoft.00404AE0
0085C342   . 8D95 2CFEFFFF   LEA EDX,DWORD PTR SS:[EBP-1D4]
0085C348   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C34B   . E8 C89ED4FF   CALL Tccsoft.005A6218         ; 变形的MD5( )
0085C350   . 8B95 2CFEFFFF   MOV EDX,DWORD PTR SS:[EBP-1D4]
0085C356   . 8D45 A0       LEA EAX,DWORD PTR SS:[EBP-60]
0085C359   . E8 8287BAFF   CALL Tccsoft.00404AE0
0085C35E   . 8D85 24FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1DC]
0085C364   . 50         PUSH EAX
0085C365   . B9 03000000   MOV ECX,3
0085C36A   . BA 01000000   MOV EDX,1
0085C36F   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C372   . E8 018CBAFF   CALL Tccsoft.00404F78         ; 取出前三个字符
0085C377   . FFB5 24FEFFFF   PUSH DWORD PTR SS:[EBP-1DC]
0085C37D   . 68 5CD68500   PUSH Tccsoft.0085D65C
0085C382   . 8D85 20FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1E0]
0085C388   . 50         PUSH EAX
0085C389   . B9 03000000   MOV ECX,3
0085C38E   . BA 08000000   MOV EDX,8
0085C393   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C396   . E8 DD8BBAFF   CALL Tccsoft.00404F78         ; 从第8个字符起取出三个字符
0085C39B   . FFB5 20FEFFFF   PUSH DWORD PTR SS:[EBP-1E0]
0085C3A1   . 68 5CD68500   PUSH Tccsoft.0085D65C
0085C3A6   . 8D85 1CFEFFFF   LEA EAX,DWORD PTR SS:[EBP-1E4]
0085C3AC   . 50         PUSH EAX
0085C3AD   . B9 03000000   MOV ECX,3
0085C3B2   . BA 10000000   MOV EDX,10
0085C3B7   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C3BA   . E8 B98BBAFF   CALL Tccsoft.00404F78         ; 从第16个字符起取出三个字符
0085C3BF   . FFB5 1CFEFFFF   PUSH DWORD PTR SS:[EBP-1E4]
0085C3C5   . 68 5CD68500   PUSH Tccsoft.0085D65C
0085C3CA   . 8D85 18FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1E8]
0085C3D0   . 50         PUSH EAX
0085C3D1   . B9 03000000   MOV ECX,3
0085C3D6   . BA 18000000   MOV EDX,18
0085C3DB   . 8B45 A0       MOV EAX,DWORD PTR SS:[EBP-60]
0085C3DE   . E8 958BBAFF   CALL Tccsoft.00404F78         ; 从第24个字符起取出三个字符
0085C3E3   . FFB5 18FEFFFF   PUSH DWORD PTR SS:[EBP-1E8]
0085C3E9   . 8D85 28FEFFFF   LEA EAX,DWORD PTR SS:[EBP-1D8]
0085C3EF   . BA 07000000   MOV EDX,7
0085C3F4   . E8 DF89BAFF   CALL Tccsoft.00404DD8         ; 用"-"连接得到真注册码
0085C3F9   . 8B95 28FEFFFF   MOV EDX,DWORD PTR SS:[EBP-1D8]   ; 取真码
0085C3FF   . 8B45 9C       MOV EAX,DWORD PTR SS:[EBP-64]   ; 取假码
0085C402   . E8 5D8ABAFF   CALL Tccsoft.00404E64         ; 典型的关键Call
0085C407   . 75 0D       JNZ SHORT Tccsoft.0085C416     ; 关键跳转 (爆破点)
0085C409   . A1 10118700   MOV EAX,DWORD PTR DS:[871110]
0085C40E   . C700 1C000000   MOV DWORD PTR DS:[EAX],1C
0085C414   . EB 0B       JMP SHORT Tccsoft.0085C421
0085C416   > A1 10118700   MOV EAX,DWORD PTR DS:[871110]

真是没有什么意思,太典型的明码比较了。密码格式是:XXX-XXX-XXX-XXX

跟进:0085C34B   CALL Tccsoft.005A6218 ; 变形的MD5( )

……………………
005A622E |. 55         PUSH EBP
005A622F |. 68 65625A00   PUSH Tccsoft.005A6265
005A6234 |. 64:FF30       PUSH DWORD PTR FS:[EAX]
005A6237 |. 64:8920       MOV DWORD PTR FS:[EAX],ESP
005A623A |. 8D55 EC       LEA EDX,DWORD PTR SS:[EBP-14]
005A623D |. 8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
005A6240 |. E8 B3FEFFFF   CALL Tccsoft.005A60F8         ; MD5_EN( ),跟进
005A6245 |. 8D45 EC       LEA EAX,DWORD PTR SS:[EBP-14]
005A6248 |. 8BD3         MOV EDX,EBX
005A624A |. E8 1DFFFFFF   CALL Tccsoft.005A616C         ; 加密得到的HEX,转为"%02x"格式的字符串
……………………

再跟进:005A6240 CALL Tccsoft.005A60F8   ; MD5_EN( ),这一句

……………………
005A610E |. 55         PUSH EBP
005A610F |. 68 5E615A00   PUSH Tccsoft.005A615E
005A6114 |. 64:FF30       PUSH DWORD PTR FS:[EAX]
005A6117 |. 64:8920       MOV DWORD PTR FS:[EAX],ESP
005A611A |. 8D45 A4       LEA EAX,DWORD PTR SS:[EBP-5C]
005A611D |. E8 AEFEFFFF   CALL Tccsoft.005A5FD0         ; MD5的四个常数

  005A5FD0 /$ C700 01234567   MOV DWORD PTR DS:[EAX],67452301   \
  005A5FD6 |. C740 04 89ABCDE>MOV DWORD PTR DS:[EAX+4],EFCDAB8> |看到这四个常数了吗
  005A5FDD |. C740 08 FEDCBA9>MOV DWORD PTR DS:[EAX+8],98BADCF> |至此我确信这是MD5了
  005A5FE4 |. C740 0C 7654321>MOV DWORD PTR DS:[EAX+C],1032547> /
  005A5FEB |. 33D2         XOR EDX,EDX
  005A5FED |. 8950 10       MOV DWORD PTR DS:[EAX+10],EDX
  005A5FF0 |. 33D2         XOR EDX,EDX
  005A5FF2 |. 8950 14       MOV DWORD PTR DS:[EAX+14],EDX
  005A5FF5 |. 83C0 18       ADD EAX,18
  005A5FF8 |. BA 40000000   MOV EDX,40
  005A5FFD |. E8 8224E6FF   CALL Tccsoft.00408484
  005A6002 \. C3         RETN

005A6122 |. 8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
005A6125 |. E8 EEEBE5FF   CALL Tccsoft.00404D18         ; 取长度
005A612A |. 50         PUSH EAX
005A612B |. 8B45 FC       MOV EAX,DWORD PTR SS:[EBP-4]
005A612E |. E8 E5EDE5FF   CALL Tccsoft.00404F18
005A6133 |. 8BD0         MOV EDX,EAX
005A6135 |. 8D45 A4       LEA EAX,DWORD PTR SS:[EBP-5C]
005A6138 |. 59         POP ECX
005A6139 |. E8 C6FEFFFF   CALL Tccsoft.005A6004
005A613E |. 8BD3         MOV EDX,EBX
005A6140 |. 8D45 A4       LEA EAX,DWORD PTR SS:[EBP-5C]
005A6143 |. E8 3CFFFFFF   CALL Tccsoft.005A6084         ; MD5_EN( )
005A6148 |. 33C0         XOR EAX,EAX
……………………

Borland Delphi 6.0 - 7.0的程序太多的Call了,还要跟进005A6143 CALL Tccsoft.005A6084,有点不耐烦了。

……………………
005A60BE |> \BA 187D8600   MOV EDX,Tccsoft.00867D18
005A60C3 |. 8BCB         MOV ECX,EBX
005A60C5 |. 91         XCHG EAX,ECX
005A60C6 |. E8 39FFFFFF   CALL Tccsoft.005A6004         ; 附1在消息的后面
005A60CB |. 8BD4         MOV EDX,ESP
005A60CD |. 8BC3         MOV EAX,EBX
005A60CF |. B9 08000000   MOV ECX,8
005A60D4 |. E8 2BFFFFFF   CALL Tccsoft.005A6004         ; 继续对消息处理,跟进

再跟进:
……………………
005A603A |. 8D4406 18     LEA EAX,DWORD PTR DS:[ESI+EAX+18>
005A603E |. 8BCB         MOV ECX,EBX
005A6040 |. 8BD5         MOV EDX,EBP
005A6042 |. E8 3524E6FF   CALL Tccsoft.0040847C         ; 附64位消息bit长度,数据填充结束
005A6047 |. 8BD6         MOV EDX,ESI
005A6049 |. 8D46 18       LEA EAX,DWORD PTR DS:[ESI+18]
005A604C |. E8 4FF8FFFF   CALL Tccsoft.005A58A0         ; 数据处理,跟进

再跟进:
005A58A0 /$ 53         PUSH EBX
005A58A1 |. 56         PUSH ESI
005A58A2 |. 57         PUSH EDI
005A58A3 |. 55         PUSH EBP
005A58A4 |. 83C4 A8     ADD ESP,-58
005A58A7 |. 895424 04     MOV DWORD PTR SS:[ESP+4],EDX
005A58AB |. 890424       MOV DWORD PTR SS:[ESP],EAX
005A58AE |. 8D5C24 08     LEA EBX,DWORD PTR SS:[ESP+8]
005A58B2 |. 8D7424 0C     LEA ESI,DWORD PTR SS:[ESP+C]
005A58B6 |. 8D7C24 10     LEA EDI,DWORD PTR SS:[ESP+10]
005A58BA |. 8D6C24 14     LEA EBP,DWORD PTR SS:[ESP+14]
005A58BE |. 8D5424 18     LEA EDX,DWORD PTR SS:[ESP+18]
005A58C2 |. B9 40000000   MOV ECX,40
005A58C7 |. 8B0424       MOV EAX,DWORD PTR SS:[ESP]
005A58CA |. E8 5DFFFFFF   CALL Tccsoft.005A582C         ; 512位分为16个32位字
005A58CF |. 8B4424 04     MOV EAX,DWORD PTR SS:[ESP+4]
005A58D3 |. 8B00       MOV EAX,DWORD PTR DS:[EAX]
005A58D5 |. 8903       MOV DWORD PTR DS:[EBX],EAX
005A58D7 |. 8B4424 04     MOV EAX,DWORD PTR SS:[ESP+4]
005A58DB |. 8B40 04     MOV EAX,DWORD PTR DS:[EAX+4]
005A58DE |. 8906       MOV DWORD PTR DS:[ESI],EAX
005A58E0 |. 8B4424 04     MOV EAX,DWORD PTR SS:[ESP+4]
005A58E4 |. 8B40 08     MOV EAX,DWORD PTR DS:[EAX+8]
005A58E7 |. 8907       MOV DWORD PTR DS:[EDI],EAX
005A58E9 |. 8B4424 04     MOV EAX,DWORD PTR SS:[ESP+4]
005A58ED |. 8B40 0C     MOV EAX,DWORD PTR DS:[EAX+C]
005A58F0 |. 8945 00     MOV DWORD PTR SS:[EBP],EAX
005A58F3 |. 8B45 00     MOV EAX,DWORD PTR SS:[EBP]

下面就要看到什么,很多循环,到了MD5的核心部分了

★★★★★★★★★★★★ 第 一 轮 十 六 个 循 环:★★★★★★★★★★★★

005A58F6 |. 50         PUSH EAX                 ; /Arg4
005A58F7 |. 8B4424 1C     MOV EAX,DWORD PTR SS:[ESP+1C]   ; |
005A58FB |. 50         PUSH EAX                 ; |Arg3
005A58FC |. 6A 07       PUSH 7                   ; |Arg2 = 00000007
005A58FE |. 68 78046AD7   PUSH D76A0478             ; |Arg1 = D76A0478 这里压加法常数T[ i]
005A5903 |. 8BC3         MOV EAX,EBX               ; |
005A5905 |. 8B0F         MOV ECX,DWORD PTR DS:[EDI]     ; |
005A5907 |. 8B16         MOV EDX,DWORD PTR DS:[ESI]     ; |
005A5909 |. E8 4EFEFFFF   CALL Tccsoft.005A575C         ; \Tccsoft.005A575C:辅助函数F(X,Y,Z)
005A590E |. 8B07         MOV EAX,DWORD PTR DS:[EDI]
……………………
005A5A86 |. 50         PUSH EAX                 ; /Arg4
005A5A87 |. 8B4424 58     MOV EAX,DWORD PTR SS:[ESP+58]   ; |
005A5A8B |. 50         PUSH EAX                 ; |Arg3
005A5A8C |. 6A 16       PUSH 16                 ; |Arg2 = 00000016
005A5A8E |. 68 2108B449   PUSH 49B40821             ; |Arg1 = 49B40821
005A5A93 |. 8BC6         MOV EAX,ESI               ; |
005A5A95 |. 8B4D 00       MOV ECX,DWORD PTR SS:[EBP]     ; |
005A5A98 |. 8B17         MOV EDX,DWORD PTR DS:[EDI]     ; |
005A5A9A |. E8 BDFCFFFF   CALL Tccsoft.005A575C         ; \Tccsoft.005A575C

★★★★★★★★★★★★ 第 二 轮 十 六 个 循 环:★★★★★★★★★★★★

005A5AA2 |. 50         PUSH EAX                 ; /Arg4
005A5AA3 |. 8B4424 20     MOV EAX,DWORD PTR SS:[ESP+20]   ; |
005A5AA7 |. 50         PUSH EAX                 ; |Arg3
005A5AA8 |. 6A 05       PUSH 5                   ; |Arg2 = 00000005
005A5AAA |. 68 62251EF6   PUSH F61E2562             ; |Arg1 = F61E2562
005A5AAF |. 8BC3         MOV EAX,EBX               ; |
005A5AB1 |. 8B0F         MOV ECX,DWORD PTR DS:[EDI]     ; |
005A5AB3 |. 8B16         MOV EDX,DWORD PTR DS:[ESI]     ; |
005A5AB5 |. E8 D6FCFFFF   CALL Tccsoft.005A5790         ; \Tccsoft.005A5790
……………………
005A5C30 |. 8B03         MOV EAX,DWORD PTR DS:[EBX]
005A5C32 |. 50         PUSH EAX                 ; /Arg4
005A5C33 |. 8B4424 4C     MOV EAX,DWORD PTR SS:[ESP+4C]   ; |
005A5C37 |. 50         PUSH EAX                 ; |Arg3
005A5C38 |. 6A 14       PUSH 14                 ; |Arg2 = 00000014
005A5C3A |. 68 8A4C2A8D   PUSH 8D2A4C8A             ; |Arg1 = 8D2A4C8A
005A5C3F |. 8BC6         MOV EAX,ESI               ; |
005A5C41 |. 8B4D 00       MOV ECX,DWORD PTR SS:[EBP]     ; |
005A5C44 |. 8B17         MOV EDX,DWORD PTR DS:[EDI]     ; |
005A5C46 |. E8 45FBFFFF   CALL Tccsoft.005A5790         ; \Tccsoft.005A5790

★★★★★★★★★★★★ 第 三 轮 十 六 个 循 环:★★★★★★★★★★★★

005A5C4E |. 50         PUSH EAX                 ; /Arg4
005A5C4F |. 8B4424 30     MOV EAX,DWORD PTR SS:[ESP+30]   ; |
005A5C53 |. 50         PUSH EAX                 ; |Arg3
005A5C54 |. 6A 04       PUSH 4                   ; |Arg2 = 00000004
005A5C56 |. 68 4239FAFF   PUSH FFFA3942             ; |Arg1 = FFFA3942
005A5C5B |. 8BC3         MOV EAX,EBX               ; |
005A5C5D |. 8B0F         MOV ECX,DWORD PTR DS:[EDI]     ; |
005A5C5F |. 8B16         MOV EDX,DWORD PTR DS:[ESI]     ; |
005A5C61 |. E8 5EFBFFFF   CALL Tccsoft.005A57C4         ; \Tccsoft.005A57C4
……………………
005A5DDE |. 50         PUSH EAX                 ; /Arg4
005A5DDF |. 8B4424 24     MOV EAX,DWORD PTR SS:[ESP+24]   ; |
005A5DE3 |. 50         PUSH EAX                 ; |Arg3
005A5DE4 |. 6A 17       PUSH 17                 ; |Arg2 = 00000017
005A5DE6 |. 68 6556ACC4   PUSH C4AC5665             ; |Arg1 = C4AC5665
005A5DEB |. 8BC6         MOV EAX,ESI               ; |
005A5DED |. 8B4D 00       MOV ECX,DWORD PTR SS:[EBP]     ; |
005A5DF0 |. 8B17         MOV EDX,DWORD PTR DS:[EDI]     ; |
005A5DF2 |. E8 CDF9FFFF   CALL Tccsoft.005A57C4         ; \Tccsoft.005A57C4

★★★★★★★★★★★★ 第 四 轮 十 六 个 循 环:★★★★★★★★★★★★

005A5DF7 |. 8B45 00       MOV EAX,DWORD PTR SS:[EBP]
005A5DFA |. 50         PUSH EAX                 ; /Arg4
005A5DFB |. 8B4424 1C     MOV EAX,DWORD PTR SS:[ESP+1C]   ; |
005A5DFF |. 50         PUSH EAX                 ; |Arg3
005A5E00 |. 6A 06       PUSH 6                   ; |Arg2 = 00000006
005A5E02 |. 68 442229F4   PUSH F4292244             ; |Arg1 = F4292244
005A5E07 |. 8BC3         MOV EAX,EBX               ; |
005A5E09 |. 8B0F         MOV ECX,DWORD PTR DS:[EDI]     ; |
005A5E0B |. 8B16         MOV EDX,DWORD PTR DS:[ESI]     ; |
005A5E0D |. E8 E6F9FFFF   CALL Tccsoft.005A57F8         ; \Tccsoft.005A57F8
……………………
005A5F8A |. 50         PUSH EAX                 ; /Arg4
005A5F8B |. 8B4424 40     MOV EAX,DWORD PTR SS:[ESP+40]   ; |
005A5F8F |. 50         PUSH EAX                 ; |Arg3
005A5F90 |. 6A 15       PUSH 15                 ; |Arg2 = 00000015
005A5F92 |. 68 913383EB   PUSH EB833391             ; |Arg1 = EB833391
005A5F97 |. 8BC6         MOV EAX,ESI               ; |
005A5F99 |. 8B4D 00       MOV ECX,DWORD PTR SS:[EBP]     ; |
005A5F9C |. 8B17         MOV EDX,DWORD PTR DS:[EDI]     ; |
005A5F9E |. E8 55F8FFFF   CALL Tccsoft.005A57F8         ; \Tccsoft.005A57F8

跟进CALL Tccsoft.005A575C 发现第一轮的处理是这样的:

……………………
005A5762 |. 8BF9       MOV EDI,ECX
005A5764 |. 8BF2       MOV ESI,EDX
005A5766 |. 8BD8       MOV EBX,EAX
005A5768 |. 8B4D 14     MOV ECX,DWORD PTR SS:[EBP+14]
005A576B |. 8BD7       MOV EDX,EDI
005A576D |. 8BC6       MOV EAX,ESI
005A576F |. E8 9CFFFFFF   CALL Tccsoft.005A5710         ; F(X,Y,Z)
005A5774 |. 0345 10     ADD EAX,DWORD PTR SS:[EBP+10]   ; 加上消息的32位字
005A5777 |. 0345 08     ADD EAX,DWORD PTR SS:[EBP+8]   ; 加上T[ i]
005A577A |. 0103       ADD DWORD PTR DS:[EBX],EAX     ; 加上第四个变量,并送回
005A577C |. 8BC3       MOV EAX,EBX
005A577E |. 8A55 0C     MOV DL,BYTE PTR SS:[EBP+C]
005A5781 |. E8 B6FFFFFF   CALL Tccsoft.005A573C         ; 循环左移
005A5786 |. 0133       ADD DWORD PTR DS:[EBX],ESI     ; 在加上第四个变量
……………………
第二、第三、第四轮处理几乎一样,只是用了不同的辅助函数。

从流程上看和标准的MD5没有什么两样,经过仔细比对,作者在使用MD5时,修改了8个加法常数,其中第一轮改了1个,第四轮改了7个。

于是我把正常的加法常数T[ i]表整理了一下:

标准的加法常数T[ i]表:

D76AA478   E8C7B756   242070DB   C1BDCEEE
F57C0FAF   4787C62A   A8304613   FD469501
698098D8   8B44F7AF   FFFF5BB1   895CD7BE
6B901122   FD987193   A679438E   49B40821

F61E2562   C040B340   265E5A51   E9B6C7AA
D62F105D   02441453   D8A1E681   E7D3FBC8
21E1CDE6   C33707D6   F4D50D87   455A14ED
A9E3E905   FCEFA3F8   676F02D9   8D2A4C8A

FFFA3942   8771F681   6D9D6122   FDE5380C
A4BEEA44   4BDECFA9   F6BB4B60   BEBFBC70
289B7EC6   EAA127FA   D4EF3085   04881D05
D9D4D039   E6DB99E5   1FA27CF8   C4AC5665

F4292244   432AFF97   AB9423A7   FC93A039
655B59C3   8F0CCC92   FFEFF47D   85845DD1
6FA87E4F   FE2CE6E0   A3014314   4E0811A1
F7537E82   BD3AF235   2AD7D2BB   EB86D391

作者改后的加法常数T[ i]表:

D76A0478★ E8C7B756   242070DB   C1BDCEEE
F57C0FAF   4787C62A   A8304613   FD469501
698098D8   8B44F7AF   FFFF5BB1   895CD7BE
6B901122   FD987193   A679438E   49B40821   (第一轮改了一个)

F61E2562   C040B340   265E5A51   E9B6C7AA
D62F105D   02441453   D8A1E681   E7D3FBC8
21E1CDE6   C33707D6   F4D50D87   455A14ED
A9E3E905   FCEFA3F8   676F02D9   8D2A4C8A   (第二轮没有变化)

FFFA3942   8771F681   6D9D6122   FDE5380C
A4BEEA44   4BDECFA9   F6BB4B60   BEBFBC70
289B7EC6   EAA127FA   D4EF3085   04881D05
D9D4D039   E6DB99E5   1FA27CF8   C4AC5665   (第三轮没有变化)

F4292244   432AFF97   AACD43A7★ FC93A039
655B59C3   8F0CCC92   FAAAA47D★ 85845DD1
6FA87E4F   FE2CE6E0   A3014314   4EA611A1★
F7C37E82★ AA3AF235★ 200002BB★ EB833391★ (第四论变了七个)

下面要做的把从网上下载的标准的ND5的源码中的加法常数T[ i]表修改一下嵌入的你的算法注册机中去吧!

----------------------------------------------------------------------------------------------
【破解心得】

通过找变形MD5的变形处,复习了一下MD5的流程,老实说我很喜欢这个程序,作者在使用MD5时,也动了脑筋,为作者采用明码比较二感到惋惜。

----------------------------------------------------------------------------------------------
【破解声明】   我是一只小菜鸟,偶得一点心得,愿与大家分享:)

【版权声明】   本文纯属技术交流, 转载请注明作者并保持文章的完整, 谢谢!
----------------------------------------------------------------------------------------------
                                              文章写于2005-8-27 21:45:00
蜀山仙剑派 首席执行官
级别: 荣誉管理员

UID: 9841
精华: 2
发帖: 569
威望: 67928
霏币: 60500
活跃度: 679
技术分: 0
非凡币: 0
交易值: 0
在线时间: 2776(小时)
注册时间: 2004-07-06
最后登录: 2014-12-09
1楼  发表于: 2005-08-28 12:53:29
支持原创,给以精华。

又是一个使用MD5的,最后却是使用明码比较的软件。可惜了。
既不囬頭,何必不忘;
    既然無緣,何需誓言。
       今日種種,似水無痕;
           明夕何夕,君已陌路。
★ 家有清华生★
级别: 资深会员
UID: 83168
精华: 0
发帖: 966
威望: 3188
霏币: 19612
活跃度: 2336
技术分: 0
非凡币: 0
交易值: 0
在线时间: 2682(小时)
注册时间: 2004-11-14
最后登录: 2018-07-08
2楼  发表于: 2005-08-28 14:14:50
支持楼主!!!
破解爱好者
级别: 新手上路
UID: 79521
精华: 0
发帖: 133
威望: 10
霏币: 52377
活跃度: 148
技术分: 0
非凡币: 0
交易值: 0
在线时间: 64(小时)
注册时间: 2004-11-09
最后登录: 2009-06-06
3楼  发表于: 2005-08-28 23:50:54
学习学习,写破文不容易,有耐心,支持
级别: 霏凡贵宾
UID: 69122
精华: 9
发帖: 69
威望: 763
霏币: 2831
活跃度: 67
技术分: 0
非凡币: 0
交易值: 0
在线时间: 89(小时)
注册时间: 2004-10-28
最后登录: 2009-02-09
4楼  发表于: 2005-08-29 09:53:01
凡成功之士,往往贵在坚持。不错。
Crsky, Best!
级别: 初级会员
UID: 7877
精华: 0
发帖: 34
威望: 90
霏币: 9383
活跃度: 45
技术分: 0
非凡币: 0
交易值: 0
在线时间: 137(小时)
注册时间: 2004-07-03
最后登录: 2011-08-26
5楼  发表于: 2005-08-30 00:32:20
注册机呢?
级别: 新手上路
UID: 159034
精华: 0
发帖: 17
威望: 1
霏币: 5288
活跃度: 33
技术分: 0
非凡币: 0
交易值: 0
在线时间: 28(小时)
注册时间: 2005-10-01
最后登录: 2008-11-22
6楼  发表于: 2005-10-28 10:25:08
怎么不把注册机共享出来啊
下载区
级别: 霏凡元勋

UID: 147916
精华: 0
发帖: 15977
威望: 8178
霏币: 6828.6
活跃度: 20026
技术分: 0
非凡币: 833
交易值: 0
在线时间: 8825(小时)
注册时间: 2005-07-15
最后登录: 2018-12-13
7楼  发表于: 2005-10-28 10:36:54
感谢楼主!楼主辛苦了!
级别: 新手上路
UID: 159034
精华: 0
发帖: 17
威望: 1
霏币: 5288
活跃度: 33
技术分: 0
非凡币: 0
交易值: 0
在线时间: 28(小时)
注册时间: 2005-10-01
最后登录: 2008-11-22
8楼  发表于: 2005-10-28 10:38:22
好好好,谢谢楼主
级别: 霏凡贵宾
UID: 162274
精华: 0
发帖: 487
威望: 1505
霏币: 2848.8
活跃度: 685
技术分: 85
非凡币: 0
交易值: 0
在线时间: 246(小时)
注册时间: 2005-10-01
最后登录: 2018-09-01
9楼  发表于: 2005-10-28 10:39:43
现在用 md5 的软件还真不少。
===IDM 中文化&交流中心===
IDM最新中文化,请访问:[url]mailsonice.ys168.com[/url]
醉解兰舟中文化系列:http://mailsonice.ys168.com
级别: 高级会员
UID: 11940
精华: 0
发帖: 147
威望: 1502
霏币: 280
活跃度: 177
技术分: 0
非凡币: 0
交易值: 0
在线时间: 874(小时)
注册时间: 2004-07-10
最后登录: 2018-10-17
10楼  发表于: 2005-10-28 14:36:53
正需要.太好了.就是很麻烦.有些看不懂.看来还要再学习啊.
级别: 中级会员
UID: 173871
精华: 0
发帖: 54
威望: 1058
霏币: 2528
活跃度: 63
技术分: 0
非凡币: 0
交易值: 0
在线时间: 40(小时)
注册时间: 2005-10-01
最后登录: 2007-03-10
11楼  发表于: 2005-10-28 21:40:12
学习,支持原作
怀着感恩的心,你就会快乐
级别: 青铜长老
UID: 55619
精华: 0
发帖: 516
威望: 15251
霏币: 7460.3
活跃度: 1205
技术分: 0
非凡币: 0
交易值: 0
在线时间: 991(小时)
注册时间: 2004-10-02
最后登录: 2018-08-01
12楼  发表于: 2005-10-28 23:50:25
谢谢分享了
信念是一种力量
级别: 超级会员
UID: 163425
精华: 0
发帖: 292
威望: 12000
霏币: 1588
活跃度: 401
技术分: 0
非凡币: 0
交易值: 0
在线时间: 636(小时)
注册时间: 2005-10-01
最后登录: 2015-05-07
13楼  发表于: 2005-10-29 00:02:36
我顶,谢谢了
断了的弦....弹奏着从前
级别: 初级会员
UID: 60188
精华: 0
发帖: 574
威望: 52
霏币: 158
活跃度: 1104
技术分: 0
非凡币: 0
交易值: 0
在线时间: 242(小时)
注册时间: 2004-10-08
最后登录: 2014-04-17
14楼  发表于: 2005-10-29 08:18:35
谢谢楼主分享!!
路在何方
级别: 高级会员
UID: 115139
精华: 0
发帖: 253
威望: 2925
霏币: 1
活跃度: 312
技术分: 0
非凡币: 0
交易值: 0
在线时间: 382(小时)
注册时间: 2005-03-15
最后登录: 2016-10-25
15楼  发表于: 2005-10-29 20:19:45
支持 老大哥了!!!!!!!!!!!!
生活在海边
级别: 高级会员
UID: 158212
精华: 0
发帖: 199
威望: 1500
霏币: 0
活跃度: 281
技术分: 0
非凡币: 0
交易值: 0
在线时间: 718(小时)
注册时间: 2005-10-01
最后登录: 2015-03-21
16楼  发表于: 2005-10-30 04:03:30
学习了,很厉害
谢谢 hyqm520 哥哥的帮助!
级别: 中级会员
UID: 200745
精华: 0
发帖: 581
威望: 1286
霏币: 505.1
活跃度: 584
技术分: 9
非凡币: 0
交易值: 0
在线时间: 93(小时)
注册时间: 2010-10-31
最后登录: 2017-12-25
17楼  发表于: 2017-06-11 11:29:53
感谢楼主!试试效果
霏凡绝非一般
霏凡好
级别: 高级会员

UID: 130435
精华: 0
发帖: 5194
威望: 718
霏币: 84383.6
活跃度: 5206
技术分: 128
非凡币: 105
交易值: 0
在线时间: 1332(小时)
注册时间: 2005-05-01
最后登录: 2018-01-04
18楼  发表于: 2017-06-12 14:21:11
学习了,厉害,我以前通过差异化升级大文件也是对比差异处,现在都是类似的思路了啦。
我自横刀向天笑 笑完我就去睡觉
级别: 资深会员

UID: 80905
精华: 0
发帖: 747
威望: 3759
霏币: 1667
活跃度: 782
技术分: 0
非凡币: 70
交易值: 0
在线时间: 744(小时)
注册时间: 2004-11-10
最后登录: 2018-12-14
19楼  发表于: 2017-10-25 21:47:32
看看怎样用.谢谢分享
。。。。。。。。。。。。。。。。。。。。。。。。。。。。
级别: 青铜长老
UID: 170260
精华: 0
发帖: 40050
威望: 17888
霏币: 9419.6
活跃度: 41781
技术分: 0
非凡币: 1083
交易值: 3
在线时间: 5761(小时)
注册时间: 2005-10-01
最后登录: 2018-12-14
20楼  发表于: 2017-10-27 19:23:44
12年前的帖。厉害
级别: 新手上路
UID: 234538
精华: 0
发帖: 118
威望: 1
霏币: 127
活跃度: 119
技术分: 0
非凡币: 0
交易值: 0
在线时间: 18(小时)
注册时间: 2018-02-09
最后登录: 2018-03-21
21楼  发表于: 2018-03-06 10:58:03
这个软件有点意思,收藏了
级别: 新手上路
UID: 206163
精华: 0
发帖: 486
威望: 21
霏币: -1574
活跃度: 485
技术分: 0
非凡币: 0
交易值: 0
在线时间: 37(小时)
注册时间: 2011-06-28
最后登录: 2018-07-29
22楼  发表于: 2018-04-02 10:24:55
老实说,这种软件不同学校差异太大了,我就是教育信息化的