首页
社区
课程
招聘
[原创]我刚才写的一个crackme,简单的!有空的朋友来玩玩,算法型的!
发表于: 2006-8-31 04:51 11257

[原创]我刚才写的一个crackme,简单的!有空的朋友来玩玩,算法型的!

2006-8-31 04:51
11257
我刚才写的一个crackme,简单的!有空的朋友来玩玩,算法型的!
如果有的朋友觉得强度太低,请联系我,我尽力把程序写的强一点!
(本人很菜,大家理解下!)
大家多多交流,谢谢!

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

上传的附件:
收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 221
活跃值: (20)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
2
超级字符串查找
0048C82C  |.  6A 40         push    40
0048C82E  |.  B9 ACC84800   mov     ecx, 0048C8AC                    ;  恭喜你
0048C833  |.  BA B4C84800   mov     edx, 0048C8B4                    ;  注册成功!请联系我!qq:609841314
0048C838  |.  A1 D0EB4800   mov     eax, [48EBD0]
0048C83D  |.  8B00          mov     eax, [eax]

往上面看
0048C748  |.  8B45 FC       mov     eax, [ebp-4]
0048C74B  |.  E8 CC79F7FF   call    0040411C                         ;  注册名
0048C750  |.  83F8 10       cmp     eax, 10                          ;  注册名不能超过16位,否则退出
0048C753  |.  0F8F EB000000 jg      0048C844
0048C759  |.  8B45 F8       mov     eax, [ebp-8]
0048C75C  |.  E8 BB79F7FF   call    0040411C                         ;  注册码
0048C761  |.  83F8 11       cmp     eax, 11                          ;  注册码长度不能少于16位
0048C764      0F8C DA000000 jl      0048C844                         ;  爆破点,修改为jmp到成功点

测试
用户名:xiaohui_82
注册码:852741
上传的附件:
2006-8-31 10:23
0
雪    币: 313
活跃值: (440)
能力值: ( LV12,RANK:530 )
在线值:
发帖
回帖
粉丝
3
//不是把。。。
//刚才仔细看了看,写了一个版本的注册机,能算出注册码,但是不是很满意,有点投机呵呵
//大家将就看看,希望对你们的分析有帮助

#include <stdio.h>
#include <string.h>
#define MAX_LEN_OF_STRING 50

int main()
{
	const int MIN_LEN_OF_NAME=10;
	const int MAX_LEN_OF_NAME=24;
	char name[MAX_LEN_OF_STRING]="";
	char sn[MAX_LEN_OF_STRING]="";
	char magicString[]="i am Bin Laden";
	int lenOfName,
		lenOfMagicString,
		lastCharIndex,
		lenOfSerial;
	int i,j;

	//录入用户名,确保符合长度
	do{
		printf("Plz input your name:");
		scanf("%s", name);
		lenOfName = strlen(name);
		if(lenOfName < MIN_LEN_OF_NAME)
			printf("Name should be at least %d characters!\r\n", MIN_LEN_OF_NAME);
		else if(lenOfName > MAX_LEN_OF_NAME)
			printf("Name should no more than %d characters!\r\n", MAX_LEN_OF_NAME);
		else 
			goto goodway;
	}while(1);

goodway:
	strcat(name,magicString);

	//下面的计算保证10位的用户名对应17位的序列号
	lenOfMagicString = strlen(magicString);
	lastCharIndex = lenOfName+lenOfMagicString-3;
	for(i=0; i<26; i++)
	{//穷举得到序列号第一位
		if(((name[lastCharIndex]*(i+0x41)-i)%26)==0)
		{
			sn[0]=0x41+i;
			break;
		}
	}

	//每一位的计算都用到了第一位,然后用倒叙存储
	for(i=1,j=lastCharIndex-1; 
		j>=5;
		i++,j--)
		sn[i]=((name[j]*sn[0])%26) + 0x41;
	lenOfSerial = lastCharIndex - 5 + 1;
	sn[lenOfSerial]='\0';

	printf("The serial number is %s .\r\n", sn);
	getch();
	return 0;
}
2006-8-31 11:30
0
雪    币: 112
活跃值: (16)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
4
呵呵!谢谢兄弟们支持!
我本人不是很支持爆破,
因为本程序没有使用任何的防暴技术!
4nil分析的不错!
佩服!!!!
有时间我再写一个!呵呵!
2006-8-31 17:38
0
雪    币: 112
活跃值: (16)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
5
procedure TForm1.Button1Click(Sender: TObject);
var
   name,code,laden,tiger,str:string;
   i,j:integer;
   part:array[1..100]of char;
begin
     name:=edit1.Text;
     code:=edit2.Text;
     laden:='i am Bin Laden';
     tiger:='i am yi zhi lao hu';
     if (length(name)<10) or (length(name)>16) then
         exit;
     if (length(code)<17) or (length(code)>22) then
         exit;
     name:=name+laden;
     for i:=1 to 100 do
         part[i]:='.';
     for i:=1  to length(name) do
        for j:=1 to length(tiger) do
            part[i+j]:=chr(((ord(name[i])*ord(code[j]))mod 26)+65);
     str:='';
     for i:=1 to length(code) do
         str:=part[i+6]+str;
     if str=code then
       Application.MessageBox('注册成功!请联系我!QQ:609841314','恭喜你',MB_ICONINFORMATION+MB_OK);
end;

这是原代码!呵呵!!写的不好!
2006-8-31 17:40
0
雪    币: 207
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
我可以爆破啦,算法有点头痛啊
2006-9-2 23:41
0
雪    币: 96
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
下来分析分析算法。。。
2010-3-4 20:59
0
雪    币: 1074
活跃值: (160)
能力值: ( LV13,RANK:760 )
在线值:
发帖
回帖
粉丝
8
这样的如果也爆破的话,真的就什么也学不到了……
2010-3-5 20:26
0
雪    币: 45
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
     2006年的帖子  被你拉回到现在
2010-3-5 21:00
0
雪    币: 136
活跃值: (1480)
能力值: ( LV6,RANK:80 )
在线值:
发帖
回帖
粉丝
10
多年前的帖子还是能学习的。。。。
2010-3-7 16:03
0
雪    币: 76
活跃值: (55)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
刚刚接触汇编,正在学习中啊。。。。
2010-12-9 09:28
0
雪    币: 25
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
不知道为什么会被杀软报毒?。。NOD32 ESS
2010-12-9 23:54
0
雪    币: 101
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
看看··············
2014-2-8 17:20
0
游客
登录 | 注册 方可回帖
返回
//