CrackMe_002

老规矩,先熟悉程序。

只有一个验证的功能,错误提示You Get 。。。 关闭没有nag窗口

 

 

第一种,暴力破解

查找字符串,很少,直接双击进入

 

可以看到错误提示的跳转来自:

 

 表示这应该是个重要的跳转,找到位置:

 

 下面就是You Get  It,很明显,就是这个跳转了,直接nop导出就行。

 

第二种 注册机

接上面,刚刚跳转的位置,向上面找找,看看整个函数,在这个位置能看到string,StrCat之类的注释,尝试这里下断,然后查看功能。发现这里有一些对密码的堆栈,和AKA-487704,唔。。。应该已经完成加密,这就是注册码了(第一个和第三个箭头都是我自己注释的)。注册码应该是“AKA-”+“加密的注册码”

说明加密的方式还在上面,这里是一个对应的结果。继续向上

 

 

看到这个位置:

 

 这"ValueBstr" (?!) 和 “String” ,唔。。。。很像,下断看一下。 突然出现注册码,应该就是这段了。

 

 

 分析一下,大概就是:输入的长度*0x17CFB +(第一个字符的十六进制) -》十进制输出,在加上下面的"AKA-"就是了

 

Num = input('输入:\n')

flag = ''

test = hex(0x17CFB*len(Num)+ord(Num[0]))

flag = 'AkA-'+ str(int(test.upper(), 16))

print(flag)

尝试一下:

 

 

Ok,成功

转载于:https://www.cnblogs.com/yidianhan/p/11571992.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值