浅浅记录一道比较绕的misc题~
有一道思路比较类似的题目:DASCTF7月赋能赛 Misc wp - zysgmzb - 博客园
题目:
附件是一个mp3
查看了音频波形图之后发现没有什么收获
binwalk分析
发现是有一张图片
不过我用binwalk和foremost都没有分离出来,所以只能尝试手动分离
这里顺便记录一下怎么用
010editor分离出文件:
找png文件头和文件尾:
选中
右键->selection->save selection->另存为xxx.png即可
得到一张图片:
长得像二维码,但没有思路
于是猜测:
lsb最低有效位隐写
由于图片太小看不清,所以试着用zsteg分析
发现确实藏着一个压缩包
查看具体信息
zsteg分离文件:
分离出压缩包
但是压缩包损坏了,于是尝试用:
WinRAR修复压缩包
直接工具->修复即可
压缩包被加密了,需要找到密钥
暴力破解无效,也不是伪加密,所以必然要从前面找线索
花了大部分时间在那张图片上无济于事,最终改变目标转换到
音频mp3stage
decode -X cipher.mp3
因为不知道密码,所以尝试了一下没有密码的情况,真的就拿到了
压缩包密码:8750d5109208213f
打开47.txt之后得到
2lO,.j2lL000iZZ2[2222iWP,.ZQQX,2.[002iZZ2[2020iWP,.ZQQX,2.[020iZZ2[2022iWLNZQQX,2.[2202iW2,2.ZQQX,2.[022iZZ2[2220iWPQQZQQX,2.[200iZZ2[202iZZ2[2200iWLNZQQX,2.[220iZZ2[222iZZ2[2000iZZ2[2002iZZ2Nj2]20lW2]20l2ZQQX,2]202.ZW2]02l2]20,2]002.XZW2]22lW2]2ZQQX,2]002.XZWWP2XZQQX,2]022.ZW2]00l2]20,2]220.XZW2]2lWPQQZQQX,2]002.XZW2]0lWPQQZQQX,2]020.XZ2]20,2]202.Z2]00Z2]02Z2]2j2]22l2]2ZWPQQZQQX,2]022.Z2]00Z2]0Z2]2Z2]22j2]2lW2]000X,2]20.,2]20.j2]2W2]2W2]22ZQ-QQZ2]2020ZWP,.ZQQX,2]020.Z2]2220ZQ--QZ2]002Z2]220Z2]020Z2]00ZQW---Q--QZ2]002Z2]000Z2]200ZQ--QZ2]002Z2]000Z2]002ZQ--QZ2]002Z2]020Z2]022ZQ--QZ2]002Z2]000Z2]022ZQ--QZ2]002Z2]020Z2]200ZQ--QZ2]002Z2]000Z2]220ZQLQZ2]2222Z2]2000Z2]000Z2]2002Z2]222Z2]020Z2]202Z2]222Z2]2202Z2]220Z2]2002Z2]2002Z2]2202Z2]222Z2]2222Z2]2202Z2]2022Z2]2020Z2]222Z2]2220Z2]2002Z2]222Z2]2020Z2]002Z2]202Z2]2200Z2]200Z2]2222Z2]2002Z2]200Z2]2022Z2]200ZQN---Q--QZ2]200Z2]000ZQXjQZQ-QQXWXXWXj
根据47,联想到ROT47
ROT47解码
rot编码家族:
[GXYCTF2019]CheckIn 以及rot5/13/18/47详解_Second Thoughts的博客-CSDN博客
解码出来:
a=~[];a={___:++a,aaaa:(![]+"")[a],__a:++a,a_a_:(![]+"")[a],_a_:++a,a_aa:({}+"")[a],aa_a:(a[a]+"")[a],_aa:++a,aaa_:(!""+"")[a],a__:++a,a_a:++a,aa__:({}+"")[a],aa_:++a,aaa:++a,a___:++a,a__a:++a};a.a_=(a.a_=a+"")[a.a_a]+(a._a=a.a_[a.__a])+(a.aa=(a.a+"")[a.__a])+((!a)+"")[a._aa]+(a.__=a.a_[a.aa_])+(a.a=(!""+"")[a.__a])+(a._=(!""+"")[a._a_])+a.a_[a.a_a]+a.__+a._a+a.a;a.aa=a.a+(!""+"")[a._aa]+a.__+a._+a.a+a.aa;a.a=(a.___)[a.a_][a.a_];a.a(a.a(a.aa+"\""+a.a_a_+(![]+"")[a._a_]+a.aaa_+"\\"+a.__a+a.aa_+a._a_+a.__+"(\\\"\\"+a.__a+a.___+a.a__+"\\"+a.__a+a.___+a.__a+"\\"+a.__a+a._a_+a._aa+"\\"+a.__a+a.___+a._aa+"\\"+a.__a+a._a_+a.a__+"\\"+a.__a+a.___+a.aa_+"{"+a.aaaa+a.a___+a.___+a.a__a+a.aaa+a._a_+a.a_a+a.aaa+a.aa_a+a.aa_+a.a__a+a.a__a+a.aa_a+a.aaa+a.aaaa+a.aa_a+a.a_aa+a.a_a_+a.aaa+a.aaa_+a.a__a+a.aaa+a.a_a_+a.__a+a.a_a+a.aa__+a.a__+a.aaaa+a.a__a+a.a__+a.a_aa+a.a__+"}\\\"\\"+a.a__+a.___+");"+"\"")())();
这么有规律,不再像是编码了,更像是编程语言
这时候已经是要来不及了,所以最后挣扎一波,ctrl+c去Google搜索
真的就搜到了类似的代码:
原来是:
JavaScript!
在控制台运行
终于拿到flag啦啊啊啊啊好险好险
17:58分交的flag,太险了
几个人一起集思广益写出这一道题,有点神奇,故作小记,吃饭去啦!