0%

ctfshow-reverse-1

ctfshow reverse板块部分wp的第一弹,持续更新ing

勒索病毒

查壳,32位

进程序看一眼,发现要打开几个文件,但是事实上我们没有flag文件,只有enflag,而猜测enflag就是加密后的falg,所以把enflag复制改名flag试试

a = "DH~mqqvqxB^||zll@Jq~jkwpmvez{"
flag = ""
for i in range(0,len(a)):
    flag += chr(ord(a[i])^31)
print(flag)
if len(a) == len(flag):
    print("yes")

得到如下图的密钥

运行程序后会发现那个以读模式打开的enflag已经改变了里面就是flag

![](./ctfshow-reverse-1/ 1.5.png)
(可以发现程序里面似乎有一段很多余的东西,因为这个密钥出来我第一反应是这种纯白字体的报错没见过搜一下

武穆遗书

查壳,脱壳,32位



进ida看一下

如果按照正常流程一直分析下去真的很套娃,所以这一题尝试一下动态调试




断点打在最后的对比字符串这里,然后开始调试,在程序输入123然后回车,回到ida界面中查看


同样的tap操作以后进入伪代码界面,然后可以看见这里的颜色变了,鼠标挪到v4上就可以查看v4的内容了

flag{fmf_is_great!}