首页
社区
课程
招聘
[原创]菜鸟的第一个注册机
发表于: 2014-10-30 15:01 6473

[原创]菜鸟的第一个注册机

2014-10-30 15:01
6473

[LEFT]
软件环境:OD+xp sp3
程    序:  这是KSSD的序列号保护方式的习题5 eKHcrackme1.rar

前言
      本人超级菜鸟一个,从去年开始学破解,当时看的是看雪老大的《加密与解密(第三版)》不过越看越不懂.......可能我的脑子比较笨,当时一直不得要领,于是乎就作罢了,今年毕业了又开始重新学,感觉还是很难,,,这是我的第一个注册机话说心情还是很激动的。
这个crackme也是最简单的那种,不过我还是花了很多时间,,,这个是菜鸟级的,大牛请飘过。

1.首先是用od载入程序。

随便输入一个用户名qwert注册码123123出现了错误对话框。看到这个对话框就知道用字符串查找去找一下。

可以看到正确与错误的提示都能看到。
点击错误提示回车后来到:

由427BA3地址可以跳到正确对话框,并且427B9E地址处的cmp eax,0xBC614E可以猜想427B99的这个call 是关键Call。下个断点重新运行下程序,进入call里面:


进来以后可以看到[ebp-0x8]和[ebp-0x4]分别放的是注册码和用户名(信息框中有提示)。
在往下走:


Name的字符串qwert又一次出现,接着是427A59地址处的一个函数是获取name长度的。
接着下面是一个循环:


这个循环就是取name的字符串中的每个字符和 一个全局字符串的每个字符做运算得到一个数在与0x12345678相异或。
接下来:

这个函数的作用是把16进制数串转换为10进制字符串。
接着又是一个循环:

这个循环就是把上面那个循环得出的值与0xA相除得到的余数作为全局字符穿的索引得到一个字符。
跟到427AF6的时候就可以看到这个生成的key了。然后与自己输入的key比较。

注册机:
#include<stdio.h>
#include<String.h>

int main()
{
  char name[10]={"123123"};
  char info[30]={"LANNYDIBANDINGINANAKEKHYANGNGENTOT"};
  char in[20]={"LANNY5646521"};
  char key[20]={0};
  char decstr[20]={0};
  int i=0,j=0,k,sum=0,d=0;
  
     k=strlen(name);
    for(i=0;i<k;i++)
  {
    sum+=(int)name[i];
    sum=((sum<<8)|info[i]); 
    if(sum<0) 
    {
      sum=-sum;
    }
  }
   sum=sum^0x12345678;
   itoa(sum,decstr,10);

    k=strlen(decstr);
    for(i=0;i<k;i++)
  {
    
     d=sum%0xa;
     sum/=0xa;
    if(d<0||d>0xc) return 0;
     key[i]=in[d];
  }
   printf("%s\n",key);
   return 0;
}[/LEFT]


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 3
支持
分享
最新回复 (6)
雪    币: 341
活跃值: (153)
能力值: ( LV7,RANK:110 )
在线值:
发帖
回帖
粉丝
2
好好学习天天向上
2014-10-30 15:24
0
雪    币: 16711
活跃值: (2783)
能力值: ( LV9,RANK:147 )
在线值:
发帖
回帖
粉丝
3
还是那句老话.多看,多练,少吃零食,多碎觉,鼓励下,.看懂看不懂的都请深看.实在看不懂的就放一放,不要纠结.持之以恒,就成大牛了.= =.
2014-10-30 15:38
0
雪    币: 37
活跃值: (216)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
多谢楼上2位前辈的鼓励~说的是啊我觉得有时候实在是看不明白需要休息下,干点别的,,,回头来看的时候可能突然就懂了,,
2014-10-30 16:35
0
雪    币: 195
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
多学习还是收获很大的,看来我是老了学不动了
2014-10-31 12:23
0
雪    币: 16
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
恭喜楼主写出人生第一个注册机
2014-11-1 22:12
0
雪    币: 1632
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
处女机,可喜可贺!
2014-11-2 07:52
0
游客
登录 | 注册 方可回帖
返回