-
-
[原创]看雪CTF赛2019-Q1-第一题 流浪者WP(萌新队真萌新)
-
发表于:
2019-3-24 00:15
3501
-
[原创]看雪CTF赛2019-Q1-第一题 流浪者WP(萌新队真萌新)
可以获得相关字符串
2.然后丢入ida里(32位)
通过查找字符串可以看到pass,双击进去,一步一步可以找到源码,
3.用F5大法
可以看到MessageBox,这里是输入内容成功返回的地方,按x返回上一步看看是谁调用了它~
然后得到以下关键,可以知道代码段,对输入内容做变形处理后,如果字符串等于KanXueCTF2019JustForhappy,就可成功pass
4.简单来说,变形就是一个替换算法:
abcdefghiABCDEFGHIJKLMNjklmn0123456789opqrstuvwxyzOPQRSTUVWXYZ
0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
上下一一对应,这样只要根据"KanXueCTF2019JustForhappy"反推输入即可
5.脚本如下
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | str1 = 'abcdefghiABCDEFGHIJKLMNjklmn0123456789opqrstuvwxyzOPQRSTUVWXYZ'
str2 = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
enc = 'KanXueCTF2019JustForhappy'
flag = ""
list1 = list (str1)
list2 = list (str2)
list3 = list (enc)
i = 0
while i < len (list3):
flag + = list2[list1.index(list3[i])]
i + = 1
print (flag)
|
2.然后丢入ida里(32位)
通过查找字符串可以看到pass,双击进去,一步一步可以找到源码,
3.用F5大法
可以看到MessageBox,这里是输入内容成功返回的地方,按x返回上一步看看是谁调用了它~
然后得到以下关键,可以知道代码段,对输入内容做变形处理后,如果字符串等于KanXueCTF2019JustForhappy,就可成功pass
[招生]科锐逆向工程师培训(2025年3月11日实地,远程教学同时开班, 第52期)!