实验吧逆向工程-该题不简单

回校第一天,该题不简单,生活也不简单。
下载链接:http://ctf5.shiyanbar.com/crack/3/
1、打开后是一个网站,上面有提示,是找出注册码:


2、随便验证一下,显示“密钥无效”:


3、使用Exeinfo PE来检测一下文件语言,发现是C++,推荐使用Ida(终于有个可以使用Ida的了)。

4、寻找strings:

5、找到一个可疑的,双击:

6、上划,看见了“密钥无效”:

7、双击引用的Data部分,找到源代码:

8、按F5进行反编译:

9、可以看到是由sub_4011D0控制的,双击进入:

10、重要的函数就是对于输入的用户名(String)首先要大于等于5位,然后对每一位,平方相乘再与序号想乘,然后加上位的序号,然后模0x42再加33,最后复制在“Happy@”后面。
题中用户名为hello
python解码,ord函数为字符转ASCII码,chr函数为ASCII码转字符:

String = "hello"
result = "Happy@"
for i in range(len(String)):
    result += chr((i + i * ord(String[i]) * ord(String[i]))% 0x42 + 33)
print(result)

11、得到结果:



小结:是一个Ida的应用,我感觉我的Ida版本有点低了。。寻求更新一下,原来破解的注册机都是这样干的吗?

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。