首页
社区
课程
招聘
[原创]看雪CTF2019 第一题流浪者 WriteUp
2019-3-18 00:10 3031

[原创]看雪CTF2019 第一题流浪者 WriteUp

2019-3-18 00:10
3031
0x01 首先,先查看文件信息,发现是用VC++写的,无壳。

0x02 拖入IDA,发现其会对输入的FLAG值做校验,其范围必须在0-9 a-z A-Z范围,并且会减去一定数值,对其进行序列号排序。

对其做输入测试数据,和变换后的数据。


0x03 进入sub_4017f0函数继续分析。发现其用输入的数据,作为静态变量区aAbcdefghiabcde[]变量的下标值ID,并且循环读取,当值等于KanXueCTF2019JustForhappy时,答案通过。


0x04 于是此时,有两种解题思路可选。一种直接写注册机,一种直接数值替换。我比较懒,直接数值替换。
把0-9 a-z A-Z数值,分别输入,在strcmp()比较函数断下,均可以看到替换值。由此可得知,0-9被替换成a-i A字符。以此论推。

对应表

0x05 可得出WriteUp为 flag{j0rXI4bTeustBiIGHeCF70DDM},输入,pass.



[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

最后于 2019-3-25 13:48 被kalikaikai编辑 ,原因: 增加附件
收藏
免费 1
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回