拿到手一个打不开的PNG文件,查看其十六位文件头及文件尾均为正确
使用binwalk查看
使用Strgsolve查看
使用Strgsolve查看可以看出半个大白
百度得知这属于CRC32错误
需要更改图片的宽或高
使用大佬的脚本进行计算
#coding=utf-8
import os
import binascii
import struct
misc = open("dabai.png","rb").read()
for i in range(1024):
data = misc[12:20] +struct.pack('>i',i)+ misc[24:29]
crc32 = binascii.crc32(data) & 0xffffffff
if crc32 == 0x6d7c7135:
print i
打开010Editor进行修改
图片成功修复,得到flag
flag{He1l0_d4_ba1}