飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 2535|回复: 5

木马终结者 v2.1 注册算法分析

[复制链接]

该用户从未签到

发表于 2006-8-25 10:30:01 | 显示全部楼层 |阅读模式
【破文标题】木马终结者 v2.1 注册算法分析
【破文作者】ZHOU2X
破解工具】PEID,OD,W32Dasm
【破解平台】WinXP sp2
【软件名称】木马终结者 v2.1
【软件大小】242KB
【原版下载】本地下载
【保护方式】注册名,注册码
【软件简介】特洛伊木马病毒一种破坏力十分强的黑客病毒,你只要中了毒,你的计算机将被黑客控制,你的资料(所有帐号密码)也将被泄漏出去。木马终结者2.1是所有特洛伊木马病毒的克星,是一个专门防制特洛伊木马病毒的防毒软件,即使是最新出现的或者将要出现的类似病毒,总之是利用特洛伊木马病毒的原理的黑客病毒,都逃不过他的法眼,免除了其它防特洛伊木马病毒软件出现新的木马病毒后要更新或失效的麻烦,你也再不用担心你的网络安全,因此也是木马终结的时代了!
------------------------------------------------------------------------
先用PEiD 0.92侦测,ASPack 2.1 -> Alexey Solodovnikov,ESP定律轻松脱壳
试运行,有注册提示消息,过程中有弹出广告
点主窗口“注册”,输入姓名:ZHOU2X,试炼码:987654
在 0046BC1C 处下断,然后一路 F8,分析代码如下:

  1. 0046BC1C  /.  55             push ebp
  2. 0046BC1D  |.  8BEC           mov ebp,esp
  3. 0046BC1F  |.  33C9           xor ecx,ecx
  4. 0046BC21  |.  51             push ecx
  5. 0046BC22  |.  51             push ecx
  6. 0046BC23  |.  51             push ecx
  7. 0046BC24  |.  51             push ecx
  8. 0046BC25  |.  51             push ecx
  9. 0046BC26  |.  51             push ecx
  10. 0046BC27  |.  53             push ebx
  11. 0046BC28  |.  56             push esi
  12. 0046BC29  |.  8945 FC        mov [local.1],eax
  13. 0046BC2C  |.  33C0           xor eax,eax
  14. 0046BC2E  |.  55             push ebp
  15. 0046BC2F  |.  68 D5BD4600    push 1_.0046BDD5
  16. 0046BC34  |.  64:FF30        push dword ptr fs:[eax]
  17. 0046BC37  |.  64:8920        mov dword ptr fs:[eax],esp
  18. 0046BC3A  |.  33DB           xor ebx,ebx
  19. 0046BC3C  |.  8D55 F8        lea edx,[local.2]
  20. 0046BC3F  |.  8B45 FC        mov eax,[local.1]
  21. 0046BC42  |.  8B80 C4020000  mov eax,dword ptr ds:[eax+2C4]
  22. 0046BC48  |.  E8 1751FCFF    call 1_.00430D64
  23. 0046BC4D  |.  8B45 F8        mov eax,[local.2]
  24. 0046BC50  |.  E8 AF7FF9FF    call 1_.00403C04
  25. 0046BC55  |.  8BF0           mov esi,eax
  26. 0046BC57  |.  85F6           test esi,esi
  27. 0046BC59  |.  7E 39          jle short 1_.0046BC94
  28. 0046BC5B  |.  C745 F4 010000>mov [local.3],1
  29. 0046BC62  |>  8D45 F0        /lea eax,[local.4]
  30. 0046BC65  |.  50             |push eax
  31. 0046BC66  |.  B9 01000000    |mov ecx,1
  32. 0046BC6B  |.  8B55 F4        |mov edx,[local.3]
  33. 0046BC6E  |.  8B45 F8        |mov eax,[local.2]
  34. 0046BC71  |.  E8 9281F9FF    |call 1_.00403E08
  35. 0046BC76  |.  8B45 F0        |mov eax,[local.4]
  36. 0046BC79  |.  E8 4A81F9FF    |call 1_.00403DC8
  37. 0046BC7E  |.  8A00           |mov al,byte ptr ds:[eax]
  38. 0046BC80  |.  25 FF000000    |and eax,0FF                          ;  逐位提取注册名的代码到 eax
  39. 0046BC85  |.  69C0 FE020000  |imul eax,eax,2FE                     ;  eax=eax*2FE
  40. 0046BC8B  |.  03D8           |add ebx,eax                          ;  ebx=ebx+eax
  41. 0046BC8D  |.  43             |inc ebx                              ;  ebx=ebx+1
  42. 0046BC8E  |.  FF45 F4        |inc [local.3]                        ;  记数器
  43. 0046BC91  |.  4E             |dec esi                              ;  记数器
  44. 0046BC92  |.^ 75 CE          \jnz short 1_.0046BC62                ;  循环
  45. 0046BC94  |>  8D55 EC        lea edx,[local.5]
  46. 0046BC97  |.  8B45 FC        mov eax,[local.1]
  47. 0046BC9A  |.  8B80 C8020000  mov eax,dword ptr ds:[eax+2C8]
  48. 0046BCA0  |.  E8 BF50FCFF    call 1_.00430D64
  49. 0046BCA5  |.  8B45 EC        mov eax,[local.5]
  50. 0046BCA8  |.  50             push eax
  51. 0046BCA9  |.  8D55 F0        lea edx,[local.4]
  52. 0046BCAC  |.  8BC3           mov eax,ebx
  53. 0046BCAE  |.  E8 05C3F9FF    call 1_.00407FB8
  54. 0046BCB3  |.  8B55 F0        mov edx,[local.4]
  55. 0046BCB6  |.  58             pop eax
  56. 0046BCB7  |.  E8 5880F9FF    call 1_.00403D14
  57. 0046BCBC  |.  0F85 B4000000  jnz 1_.0046BD76                       ;  注册码错误则跳走,下面是往注册表写注册信息
  58. 0046BCC2  |.  B2 01          mov dl,1
  59. 0046BCC4  |.  A1 28324500    mov eax,dword ptr ds:[453228]
  60. 0046BCC9  |.  E8 0677FEFF    call 1_.004533D4
  61. 0046BCCE  |.  8BF0           mov esi,eax
  62. 0046BCD0  |.  BA 01000080    mov edx,80000001
  63. 0046BCD5  |.  8BC6           mov eax,esi
  64. 0046BCD7  |.  E8 9077FEFF    call 1_.0045346C
  65. 0046BCDC  |.  B1 01          mov cl,1
  66. 0046BCDE  |.  BA ECBD4600    mov edx,1_.0046BDEC                   ;  ASCII "\Software"
  67. 0046BCE3  |.  8BC6           mov eax,esi
  68. 0046BCE5  |.  E8 DE78FEFF    call 1_.004535C8
  69. 0046BCEA  |.  84C0           test al,al
  70. 0046BCEC  |.  74 0C          je short 1_.0046BCFA
  71. 0046BCEE  |.  BA 00BE4600    mov edx,1_.0046BE00                   ;  ASCII "Notojan2"
  72. 0046BCF3  |.  8BC6           mov eax,esi
  73. 0046BCF5  |.  E8 DA77FEFF    call 1_.004534D4
  74. 0046BCFA  |>  B1 01          mov cl,1
  75. 0046BCFC  |.  BA 14BE4600    mov edx,1_.0046BE14                   ;  ASCII "\Software\Notojan2"
  76. 0046BD01  |.  8BC6           mov eax,esi
  77. 0046BD03  |.  E8 C078FEFF    call 1_.004535C8
  78. 0046BD08  |.  84C0           test al,al
  79. 0046BD0A  |.  74 0C          je short 1_.0046BD18
  80. 0046BD0C  |.  BA 30BE4600    mov edx,1_.0046BE30                   ;  ASCII "reg"
  81. 0046BD11  |.  8BC6           mov eax,esi
  82. 0046BD13  |.  E8 BC77FEFF    call 1_.004534D4
  83. 0046BD18  |>  B1 01          mov cl,1
  84. 0046BD1A  |.  BA 3CBE4600    mov edx,1_.0046BE3C                   ;  ASCII "\Software\Notojan2\reg"
  85. 0046BD1F  |.  8BC6           mov eax,esi
  86. 0046BD21  |.  E8 A278FEFF    call 1_.004535C8
  87. 0046BD26  |.  84C0           test al,al
  88. 0046BD28  |.  74 31          je short 1_.0046BD5B
  89. 0046BD2A  |.  8D55 EC        lea edx,[local.5]
  90. 0046BD2D  |.  8B45 FC        mov eax,[local.1]
  91. 0046BD30  |.  8B80 C8020000  mov eax,dword ptr ds:[eax+2C8]
  92. 0046BD36  |.  E8 2950FCFF    call 1_.00430D64
  93. 0046BD3B  |.  8B45 EC        mov eax,[local.5]
  94. 0046BD3E  |.  50             push eax
  95. 0046BD3F  |.  8D55 E8        lea edx,[local.6]
  96. 0046BD42  |.  8B45 FC        mov eax,[local.1]
  97. 0046BD45  |.  8B80 C4020000  mov eax,dword ptr ds:[eax+2C4]
  98. 0046BD4B  |.  E8 1450FCFF    call 1_.00430D64
  99. 0046BD50  |.  8B55 E8        mov edx,[local.6]
  100. 0046BD53  |.  8BC6           mov eax,esi
  101. 0046BD55  |.  59             pop ecx
  102. 0046BD56  |.  E8 297AFEFF    call 1_.00453784
  103. 0046BD5B  |>  8BC6           mov eax,esi
  104. 0046BD5D  |.  E8 DA76FEFF    call 1_.0045343C
  105. 0046BD62  |.  B8 5CBE4600    mov eax,1_.0046BE5C
  106. 0046BD67  |.  E8 8865FEFF    call 1_.004522F4
  107. 0046BD6C  |.  A1 E04A4700    mov eax,dword ptr ds:[474AE0]
  108. 0046BD71  |.  E8 32E1FDFF    call 1_.00449EA8
  109. 0046BD76  |>  8D55 EC        lea edx,[local.5]
  110. 0046BD79  |.  8B45 FC        mov eax,[local.1]
  111. 0046BD7C  |.  8B80 C8020000  mov eax,dword ptr ds:[eax+2C8]
  112. 0046BD82  |.  E8 DD4FFCFF    call 1_.00430D64
  113. 0046BD87  |.  8B45 EC        mov eax,[local.5]
  114. 0046BD8A  |.  50             push eax
  115. 0046BD8B  |.  8D55 F0        lea edx,[local.4]
  116. 0046BD8E  |.  8BC3           mov eax,ebx
  117. 0046BD90  |.  E8 23C2F9FF    call 1_.00407FB8
  118. 0046BD95  |.  8B55 F0        mov edx,[local.4]
  119. 0046BD98  |.  58             pop eax
  120. 0046BD99  |.  E8 767FF9FF    call 1_.00403D14
  121. 0046BD9E  |.  74 0A          je short 1_.0046BDAA
  122. 0046BDA0  |.  B8 78BE4600    mov eax,1_.0046BE78
  123. 0046BDA5  |.  E8 4A65FEFF    call 1_.004522F4
  124. 0046BDAA  |>  33C0           xor eax,eax
  125. 0046BDAC  |.  5A             pop edx
  126. 0046BDAD  |.  59             pop ecx
  127. 0046BDAE  |.  59             pop ecx
  128. 0046BDAF  |.  64:8910        mov dword ptr fs:[eax],edx
  129. 0046BDB2  |.  68 DCBD4600    push 1_.0046BDDC
  130. 0046BDB7  |>  8D45 E8        lea eax,[local.6]
  131. 0046BDBA  |.  BA 02000000    mov edx,2
  132. 0046BDBF  |.  E8 E87BF9FF    call 1_.004039AC
  133. 0046BDC4  |.  8D45 F0        lea eax,[local.4]
  134. 0046BDC7  |.  E8 BC7BF9FF    call 1_.00403988
  135. 0046BDCC  |.  8D45 F8        lea eax,[local.2]
  136. 0046BDCF  |.  E8 B47BF9FF    call 1_.00403988
  137. 0046BDD4  \.  C3             ret
复制代码

------------------------------------------------------------------------
算法比较简单:逐位提取注册名的代码*2FE+1,再累加,其十进制值就是注册码
E语言注册机源码

  1. .版本 2

  2. .程序集 窗口程序集1

  3. .子程序 _按钮1_被单击
  4. .局部变量 Name, 文本型
  5. .局部变量 len, 整数型
  6. .局部变量 times, 整数型
  7. .局部变量 code, 字节型
  8. .局部变量 SN, 整数型

  9. Name = 编辑框1.内容
  10. len = 取文本长度 (Name)
  11. .计次循环首 (len, times)
  12.     code = 取代码 (Name, times)
  13.     SN = SN + code × 766 + 1
  14. .计次循环尾 ()
  15. 编辑框2.内容 = 到文本 (SN)
复制代码

1.gif
Name:ZHOU2X
SN:355430

BTW:“木马终结者 v2.1”使用逐个扫描端口方式监测系统,个人觉得那是“劳命伤财”的事,汗……
在《黑客X档案》2004.5光盘中看到用“Game Expert”软件另类破解“木马终结者 v2.1”的Flash动画,有兴趣的可以看下;“木马终结者 v2.1”原程序也是在此光盘中获取的。
------------------------------------------------------------------------
【版权声明】本文纯属技术交流,转载请注明作者并保持文章的完整,谢谢!

[ 本帖最后由 ZHOU2X 于 2006-8-25 10:33 编辑 ]

木马终结者2.1.rar

242.05 KB, 下载次数: 23, 下载积分: 飘云币 -2 枚

木马终结者 v2.1原程序

木马终结者2.1注册机.rar

386.91 KB, 下载次数: 25, 下载积分: 飘云币 -2 枚

木马终结者2.1注册机

破解木马终结者Flash.part1.rar

488.28 KB, 下载次数: 15, 下载积分: 飘云币 -2 枚

破解木马终结者Flash.part2.rar

372.98 KB, 下载次数: 14, 下载积分: 飘云币 -2 枚

PYG19周年生日快乐!
  • TA的每日心情
    无聊
    2016-8-5 17:44
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    发表于 2006-8-25 12:25:35 | 显示全部楼层
    好文,学习了
    PYG19周年生日快乐!
  • TA的每日心情
    奋斗
    2016-1-14 00:02
  • 签到天数: 138 天

    [LV.7]常住居民III

    发表于 2006-8-25 15:48:32 | 显示全部楼层
    算法分析。学习了!
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2006-8-25 19:13:44 | 显示全部楼层
    好文章,学习了!:victory:
    0046BCBC
    0046BD9E 是爆破点!

    [ 本帖最后由 tigerisme 于 2006-8-25 19:16 编辑 ]
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2006-8-25 22:37:47 | 显示全部楼层
    学习了。。。支持下楼主
    PYG19周年生日快乐!

    该用户从未签到

    发表于 2006-8-30 14:11:22 | 显示全部楼层
    不错.学习下.
    PYG19周年生日快乐!
    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表