-
-
[原创]看雪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编辑
,原因: 增加附件
赞赏
他的文章
看原图
赞赏
雪币:
留言: