lgjxj 发表于 2010-3-3 22:01:45

原帖由 hflywolf 于 2010-3-3 21:55 发表 https://www.chinapyg.com/images/common/back.gif
注册机就留给其他兄弟写吧给两组Key

name : hflywolf
key :932424524

name : chinapyg
key:   7024618061


非常的好 , 赞一个,随便帮 上面那位朋友算一个

name: manbug
code: 7428022707472

[ 本帖最后由 lgjxj 于 2010-3-3 22:04 编辑 ]

wachinapyg 发表于 2010-3-3 22:35:01

能给个过程就更好了谢谢

sjh717142 发表于 2010-3-3 22:35:03

我期待楼主的VMP教程/:013

manbug 发表于 2010-3-3 23:04:59

真郁闷,明天继续跟!!!!

lgjxj 发表于 2010-3-3 23:16:10

说真的, VMP 我是直接蒙的 ,我晕 /:L

大家期待 hflywolf 大牛对这个 CM 的分析

wachinapyg 发表于 2010-3-4 09:27:41

楼主给分析下就好了hflywolf 大牛都给出两组key了

lgjxj 发表于 2010-3-4 10:26:17

好,明天休假整理一下,可以发出来的,不过,效果一定很烂 /:010

wachinapyg 发表于 2010-3-4 12:45:34

原帖由 lgjxj 于 2010-3-4 10:26 发表 https://www.chinapyg.com/images/common/back.gif
好,明天休假整理一下,可以发出来的,不过,效果一定很烂 /:010
谢谢这不要紧辛苦

hflywolf 发表于 2010-3-4 13:11:49

原帖由 lgjxj 于 2010-3-4 10:26 发表

https://www.chinapyg.com/images/common/back.gif
好,明天休假整理一下,可以发出来的,不过,效果一定很烂 /:010

期待中......

昨天下载这个CM丢进IDA分析的时候,发现VM代码似曾相识。
这才想起曾经拜读过cyclotron大牛的文章.
所以用了一会儿功夫就看明白了CM算法原理

/:014
此CM的VM分析文章在此:《VMCrackME----A Preliminary Virtual Machine From Top To Bottom》

直接举例子简单说一下算法的原理:

name: hflywolf(最大16个字符)
key : 932424524 (最大16个字符)

name的运算过程如下:


hflywolf 的ASCII 10进制值分别为:104 102 108 121 119 111 108 102

n = 2*104*102*108*121*119*111*108*102= 40342842985116672
n = 40342842985116672 + 127(0x7F) = 40342842985116799
n = 40342842985116799 and 4294967295 = 425423999


key 的运算过程如下:


将输入的932424524 转成整数 (注:下面的10(i) 代表10的i次方其中i=0,1,2,3,...,...,i)

m = 9*10(0) + 3*10(1) + 2*10(2)+ 4*10(3) + 2*10(4) + 4*10(5) + 5*10(6) + 2*10(7) + 4*10(8) = 425424239
m = 425424239 - 235(0xEB) - 5 = 425423999

当m = n 时 才将Wrong! 字符改成True


[ 本帖最后由 hflywolf 于 2010-3-4 14:08 编辑 ]

manbug 发表于 2010-3-4 14:07:33

真神奇啊,呵呵,向大牛们学习。。。。
页: 1 [2] 3
查看完整版本: 重发一个经典的 cm