JarvisOJ Misc 炫酷的战队logo

欣赏过了实验室logo,有人觉得我们战队logo直接盗图比较丑,于是我就重新设计了一个,大家再欣赏下?

一开始拿到的BMP文件就打不开,用010打开发现文件头被抹去了,补上了BMP,与文件大小后,发现只是一张普通的图片,就很气

文件头大概是没有什么隐藏信息了,那就剩下会不会在最后加上一个文件了,先扔进Kali中拿binwalk扫了一下,说后面有一个zlib文件,解压之后无果

没有头绪看了题解,发现是Kali误报了(((φ(◎ロ◎;)φ))),在010中明显可以看到后面附加着一个PNG文件,用dd命令剪下来,发现打不开,原来是图像的宽和高被篡改

需要根据crc校验找回原来的w和h,可气的是还给了一个错误的w

写一个脚本叭

import binascii,struct

misc = open(r'misc.png','rb').read()
for w in range(1024):
    for h in range(1024):
        data = misc[12:16] + struct.pack('>I',w) + struct.pack('>I',h) +misc[24:29]
        crc = misc[29:33]
        if (binascii.crc32(data) & 0xffffffff )== struct.unpack('>I',crc)[0]:
            print('%d*%d' %(w,h))

修改为正确的宽和高就可以得到flag了

猜你喜欢

转载自www.cnblogs.com/fantasquex/p/10350321.html
今日推荐