实验吧:武功秘籍

答题链接:http://www.shiyanbar.com/ctf/1887

本题给了个连接,点击下载后是一个zip文件,但是却无法打开,所以用binwalk跑一下看看

发现内部是一个png图片,还有一个zlib格式的data,先把后缀转换成png图片看看

嗯,果然是武功秘籍,但是并没有啥用,那就看看下面的zlib吧

Binwalk -e分离一下

出来了2个文件

用ghex打开4D.zlib,查找flag无果,查找key试试

哈哈,找到了,得来全不费工夫,就在文件的最下面

但是key is 后面的一串字符串很乱,明显不是flag的格式,想到应该是base64加密

上网base64解密一下得到T_ysK9_5rhk__uFMt}3El{nu@E

这一串字符串,里面有{},应该就是flag,我最开始想的是凯撒密码,结果尝试后发现答案是下面这样的

明显不对啊

后来想了想可能是栅栏加密

观察源字符串T_ysK9_5rhk__uFMt}3El{nu@E

T后面应该是跟h,这样组成字符串应该是the key is之类的

所以找到唯一的h在第10个字符位,所以切片字符串时隔9个字符取一次,而一共有26个字符,所以应该是3栏栅栏加密

然后写出相应代码进行解密

str = 'T_ysK9_5rhk__uFMt}3El{nu@E'
cipher =''
for i in range(len(str)/3+1):
    cipher += str[i::9]
print cipher

可得答案

但是提交时需要去掉前面的一大堆字符,实验吧的密码提交格式真的相当有问题了

点赞

发表评论

[2;3Rer>