首页
社区
课程
招聘
[原创]ctf_fifth(终于开张了)
发表于: 2016-11-14 16:03 2342

[原创]ctf_fifth(终于开张了)

2016-11-14 16:03
2342
分析系统:win XP
分析工具:PEID;IDA;HawkOD

1、首先用PEID加载查看,显示结果正常。

2、用调试器HawkOD加载调试,经过多次下断点尝试,最终在SendMessageA函数入口处断下来,接下来回到重要函数分析。

3、在IDA中找到主要函数为DialogFunc,重点分析SendMessageA函数返回以后的过程。函数SendMessageA返回结果为输入字符串的长度,程序首先判断字符串长度length!=0且为0-9的数字则进行下一步。

4、然后是两个比较重要的验证函数sub_401000和sub_4010C0,函数sub_401000先根据输入字符串顺序,打乱原有的256byte0x00-0xFF数据顺序,然后将256byte数据首尾字节数据相加得出一个128byte数组(第一位和倒数第一位相加,第二位和倒数第二位相加…最后取低位字节),再与数组byte_406030的数据按字节相异或。

5、函数sub_4010C0将sub_401000函数的字符串处理结果,也就是当前内存区域byte_406030的128byte数据,按字节累加,判断结果是否等于0x2979。

6、最后写程序爆破,将000000-999999的数字都试一遍,总有一个对的。最后成功找到正确的数。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 0
支持
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回
//