密码学 爆破
SECRET是不知道的
flag是md5(SECRET).hexdigest()
已知部分flag为
1 | d0g3{71b2b5616**2a4639**7d979**de964c} |
cipher是sha256加密后的flag,其摘要为
0596d989a2938e16bcc5d6f89ce709ad9f64d36316ab80408cb6b89b3d7f064a
现在不知道secret。
str1=”71b2b5616”
str2=”2a4639”
str3=”7d979”
str4=”de964c”
str1 2 3 4 之间分别有两位不知道 爆破的话需要爆破16^6次。
直接爆破
1 | import hashlib |
misc
签到
扫码套娃,然后得到一个flag.docx,里面一串乱码,而且公众号也提示了不是emojidecode,但是这玩意除了emojidecode还能是啥?
因为我的word2016无法显示emoji,然后我换成rar解压,在xml里面看到了emoji,放到在线解密工具即可。(师傅们直接复制过去就完事了)
王牌特工
这道题一开始没啥思路,然后file看一下是ext3格式。网上搜了一篇教程就差不多出来了。
https://blog.ihomura.cn/2018/08/03/WriteUp-ext3-%E6%96%87%E4%BB%B6%E6%81%A2%E5%A4%8D-HZ-file/
工具:fsstat,ext3grep,veracrypt。
装ext3grep的时候,报错了按照网上说的做增添一些东西,我这还会报错,把最后报错的那一行注释掉就完事儿了。
首先使用fsstat看镜像信息。
fsstat findme
其中root directory比较重要(我也不知道为什么)
接下来使用ext3grep查看文件信息。
ext3grep –inode 2 findme
恢复这个东西
ext3grep –restore-file .coolboy.swp findme
vim -r .coolboy.swp
新建一个目录/root/coolboy 恢复完会放到这里面,base64解码后的内容为:
1 | 真的密码:this_is_a_true_key |
用这个密码使用veracrypt去挂载flagbox,就可以获得flag。
misc3
一开始是hardzip,有个密码1,看文件比较短尝试CRC32爆破,爆破完的密码拼起来就是easyzip的解压密码。
解压下来easyzip,
通过伪加密拿到redeme.txt,尝试明文攻击。
这里需要注意的是,使用明文攻击需要保证待破解压缩包里只有一个文件,也就是已知文件。因为这里面有一个伪加密,其他文件的压缩算法可能与已知文件的不一致,所以为了保证顺利进行,需要将其他文件删除(这道题所需要,其他情况下如果加密方式都一样的话就不用删除。)
misc4
npmtxt打开一看啥也不懂,010editor打开一看有看不懂的东西,搜了搜16进制慢慢搜就搜到了0宽隐写。
把那一串复制到https://yuanfux.github.io/zero-width-web/
decode就可以获得解压密码
RealV1siBle
打开是张图,silenteye一把梭出来flag。
总结
这次比赛觉得web比较难,ssti没做出来比较上心。最近打算深度学习ssti相关内容,争取下次做出来!