吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3122|回复: 10
收起左侧

[KeyGenMe] KeygenMe一只 玩的开心~.~

[复制链接]
zbnysjwsnd8 发表于 2017-9-27 21:24
CM是什么?Crackme是什么?这是什么东西?楼主发的什么?
他们都是一些公开给别人尝试破解的小程序,制作 Crackme 的人可能是程序员,想测试一下自己的软件保护技术,也可能是一位 Cracker,想挑战一下其它 Cracker 的破解实力,也可能是一些正在学习破解的人,自己编一些小程序给自己破解,KeyGenMe是要求别人做出它的 keygen (序号产生器), ReverseMe 要求别人把它的算法做出逆向分析, UnpackMe 是要求别人把它成功脱壳,本版块禁止回复非技术无关水贴。

本帖最后由 zbnysjwsnd8 于 2017-9-28 18:33 编辑

很简单的算法。
要求:编写注册机,编写的必须要全面。



等待大佬弄出原始算法

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x

免费评分

参与人数 2吾爱币 +1 热心值 +2 收起 理由
小枫丶 + 1 鼓励转贴优秀软件安全工具和文档!
carib + 1 + 1 用心讨论,共获提升!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

头像被屏蔽
冷小鑫 发表于 2017-9-27 22:30
提示: 作者被禁止或删除 内容自动屏蔽
chenyw 发表于 2017-9-27 22:59
liuxia 发表于 2017-9-28 09:11
麦布雷 发表于 2017-9-28 14:36
本帖最后由 麦布雷 于 2017-9-28 14:59 编辑



在IDA伪代码基础上精简算法,将算法嵌入遍历框架中暴力算出可用用户名和序列号。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册[Register]

x
 楼主| zbnysjwsnd8 发表于 2017-9-28 17:08
麦布雷 发表于 2017-9-28 14:36
在IDA伪代码基础上精简算法,将算法嵌入遍历框架中暴力算出可用用户名和序列号。

嗯。能说一下怎么想到的嘛
麦布雷 发表于 2017-9-28 17:39
zbnysjwsnd8 发表于 2017-9-28 17:08
嗯。能说一下怎么想到的嘛

算法不太了解,看到与操作不太懂怎么回溯,而且之前处理过相似的东西。
[C] 纯文本查看 复制代码
#include "stdafx.h"
#include "stdio.h"
#include "string.h"
#include <stdlib.h>
#include "time.h"


int sub_401000(int a1, int a2)
{
	return ~a2 & ~a1;
}
int main()
{
		int v3; // ST18_4
		int v4; // ST14_4
		int v5; // eax
		int v6; // eax
		int v7; // ST18_4
		int v13; // ST18_4
		int v15; // eax
		int v16; // eax
		int v17; // ST18_4
		int v46; // ST14_4
		int v47; // eax
		int v48; // eax
		int ijk;
		int k; // [esp+5Ch] [ebp-220h]
		char v54[10]; // [esp+60h] [ebp-21Ch]
		char v55[10]; // [esp+160h] [ebp-11Ch]

		int strnum[10] = { -57,-10,-21,-9,-12,-1,-32,-85 };
		char suc[10];
		int tempnum;
		strcpy_s(suc, "Success!");
		strcpy_s(v54, "88888888");
		strcpy_s(v55, "88888888");

		srand(time(NULL));
		for (k = 0; k < 8; k++)
		{
			srand(rand()%10000 -5000);
			v55[k] = rand()%94+33;
		}

		for (k = 0; k < &v55[strlen(v55) + 1] - &v55[1]; ++k)
		{

			for (ijk = 33; ijk <= 126; ijk++)
			{
				
				v3 = sub_401000(v55[k], ijk);//v3=~v55[k]&~v54[k];
				v4 = sub_401000(ijk, ijk);//v4=~v54[k];
				v5 = sub_401000(v55[k], v55[k]);//v5=~v55[k];
				v6 = sub_401000(v5, v4);//v6=v55[k]&v54[k];
				v7 = sub_401000(v6, v3);//v8 = ~(v55[k] & v54[k])&~(~v55[k] & ~v54[k]);

				v13 = sub_401000(v7, v7);

				v15 = sub_401000(v5, v13);
				v16 = sub_401000(ijk, v15);
				v17 = sub_401000(strnum[k], v16);

				v46 = sub_401000(v16, v16);
				v47 = sub_401000(strnum[k], strnum[k]);
				v48 = sub_401000(v47, v46);
				tempnum = sub_401000(v48, v17);

				if (tempnum == (int)suc[k])
				{
					v54[k] = ijk;
					break;
				}
				if (ijk == 126)
				{
					if (v55[k] < 126)
						v55[k]++;
					else if (v55[k] == 126)
						v55[k] = 33;
					ijk = 32;
				}
			}

		}
		printf_s("new username:%s\n", v55);
		printf_s("new Serial:%s\n", v54);

		system("pause");
		return 0;
	
}

 楼主| zbnysjwsnd8 发表于 2017-9-28 17:51
麦布雷 发表于 2017-9-28 17:39
算法不太了解,看到与操作不太懂怎么回溯,而且之前处理过相似的东西。
[mw_shl_code=c,true]#include " ...

这并没有简化算法啊 算法还是原来的
麦布雷 发表于 2017-9-28 18:01
zbnysjwsnd8 发表于 2017-9-28 17:51
这并没有简化算法啊 算法还是原来的

相比较ida全部的伪代码,我删了不少东西
 楼主| zbnysjwsnd8 发表于 2017-9-28 18:09
麦布雷 发表于 2017-9-28 18:01
相比较ida全部的伪代码,我删了不少东西

那你把你简化后的发来看看
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:29

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

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