文号
t25292
阅读
13016
回复
4
收藏
5
一个初级的Crackme
2010/05/07
IP:北京
高手先闪吧……这个是古董级文章了,盘子里找出来的……

都不记得什么写的了。反正没事就发上来了……



首先用DeDeDark分析,DELPHI^-^呵呵
载入OD
(分析见附件,字体太乱)

吐血!花了我大约4个小时。主要原因是我太菜了…………

总结一下算法。

1 如果注册名长度<9 then 注册名不断复制自己,直到长度超过9
2 判断注册号长度,<>9去死
3 abs(asc(每位注册号)-asc(每位注册名)),存入数组
4 双循环,如果数组中有相等的量且当前位数>3,去死!
5 判断
差数组中的元素
1,2,3  =15
1,4,7  =15
2,5,8  =15
3,6,9  =15
1,5,9  =15
3,5,7  =15
(例:1 2 3=15意思是数组中的1 2 3的和是否为15,就是说abs(asc(1,3,5)-asc(1,3,5))是否为15)
6 如果其中有1个不是15,就把标志+1
7 最后用一个中间迷惑你的数除以标志,如果这个数<>0,就进不了SEH,就注册失败

虽说这是个不定方程,也有很多组解。但是我被折磨得够戗,所以简单写了个求1组的程序

Private Sub Command1_Click()
For a1 = 1 To 9
For a2 = 1 To 9
  For a3 = 1 To 9
   For a4 = 1 To 9
    For a5 = 1 To 9
     For a6 = 1 To 9
      For a7 = 1 To 9
       For a8 = 1 To 9
        a9 = 45 - (a1 + a2 + a3 + a4 + a5 + a6 + a7 + a8)
         If a1 + a2 + a3 = 15 And a1 + a4 + a7 = 15 And a2 + a5 + a8 = 15 And a3 + a6 + a9 = 15 And a1 + a5 + a9 = 15 And a3 + a5 + a7 = 15 Then
          If a9 > 0 And a1 * a2 * a3 * a4 * a5 * a6 * a7 * a8 * a9 = 362880 Then
           Open App.Path + "\ok.txt" For Append As #1
             Print #1, a1, a2, a3, a4, a5, a6, a7, a8, a9
           Close #1
           MsgBox "finish!"
           Exit Sub
          End If
         End If
        
       Next
      Next
     Next
    Next
   Next
  Next
Next
Next
End Sub


最后得出一组解是276951438,再编个注册机就OK了:)

注册机代码:
=================

==========================


附:2组注册码:
User Name:NoNameSwordMan
Serial Sum[s:10]hTXhdOtg


User Name:XXXXXXXXXXXXX
Serial:dim%kd`f

==========================
attachment icon GameUnCrackMe01_by_NONAME剑人.rar 182.94KB RAR 22次下载
+200
科创币
虎哥
2010/05/07
没看懂来龙去脉,鼓励一 ..
16年8个月前IP:未同步
215071
1楼
Crackme是什么?
引用
评论
15年11个月前IP:未同步
276618
2楼
黑客。。。。。。。
引用
评论
15年11个月前IP:未同步
279282
3楼
Crackshe又是什么
引用
评论
15年11个月前IP:未同步
280973
4楼
crackme推荐做一些基础的 有可以直接逆向取计算方法

话说这种随机算出随机码的cm还第一次见到 看雪上的无外乎也就是花指令加壳乱七八糟的
引用
评论
笔记
{{note.content}}
{{n.user.username}}
{{fromNow(n.toc)}} {{n.status === noteStatus.disabled ? "已屏蔽" : ""}} {{n.status === noteStatus.unknown ? "正在审核" : ""}} {{n.status === noteStatus.deleted ? '已删除' : ''}}
  • 编辑
  • 删除
  • {{n.status === 'disabled' ? "解除屏蔽" : "屏蔽" }}
我也是有底线的