bugkuCTF——猫片(安恒)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/x947955250/article/details/81482471

                           

 bugku昨天才更新的这道题,先将文件下载下来并改后缀png,

通常做图片隐写的题,大概都是先右键查看属性,看下有没有一些特殊的信息,没有就放binwalk看下有没有隐藏什么文件,又或者直接stegsolve分析一波,这题一开始我都试了一遍,无果。但是总不能就这样放弃吧,应该还是漏了点东西。然后折腾了快一个小时,好像有点发现,

在RGB里都发现了这奇怪的一段,然后就试着分析一波,

打算生成一个新的图片,不过要改下文件头

打开winhex将前面的FFFE移除,

扫描二维码关注公众号,回复: 3096860 查看本文章

保存之后出现惊喜,看到半张二维码的图片,接下来就可以考虑改一下图片的高度

这图是280*140的,那就改成280*280的试试,用winhex将高度改为01 18

得出一张完整的二维码

这二维码看着不大对劲,用画图反色(ctrl+shift+i),得出正确的二维码

扫一下,发现有个百度网盘的地址。。。

下载下来是一个压缩包,解压。发现解压出错

更气人的是。。。

真TM。。。无语

后来特意去查了下ctf隐写的各种信息,了解到还有一种ntfs文件流的东西

反正看起来各种高大上,我呢。。肯定就看不懂。。。

只能屁颠屁颠地去找了下某大佬,在被他一顿无情嘲讽之后,他告诉我这是今年安恒杯的赛题,好像还有writeup。。

。。。。。。。。

。。。。。。。。

行吧。。百度搜了下,发现另一位老铁写的writeup

https://www.jianshu.com/p/abc44c54857a

接下来。。就按照大佬的做法。。用NtfsStreamsEditor查看数据流,然后导出,

PS:flag.rar这个压缩文件一定要用winrar来解压才能找得到数据流。。。

.pyc文件,直接丢到这。。https://tool.lu/pyc/

下载之后写解密的脚本。。。

def decode():
    ciphertext = [
    '96',
    '65',
    '93',
    '123',
    '91',
    '97',
    '22',
    '93',
    '70',
    '102',
    '94',
    '132',
    '46',
    '112',
    '64',
    '97',
    '88',
    '80',
    '82',
    '137',
    '90',
    '109',
    '99',
    '112']
    ciphertext.reverse()
    flag = ''
    for i in range(len(ciphertext)):
        if i % 2 == 0:
            s = int(ciphertext[i]) - 10
        else:
            s = int(ciphertext[i]) + 10
        s=chr(i^s)
        flag += s
    return flag
 
def main():
    flag = decode()
    print(flag)
 
if __name__ == '__main__':
    main()

最后得出 flag{Y@e_Cl3veR_C1Ever!}

猜你喜欢

转载自blog.csdn.net/x947955250/article/details/81482471