CTF Misc 图片隐写 CRC32计算图片正确大小

CTF Misc 图片隐写 CRC32计算图片正确大小

在做一些Misc题目时,大概率会碰到有些图片是需要手动修复的,这些图片可能文件头、尾不正确,CRC32不正确,还有一种可能就是图片的尺寸被篡改,需要我们手动修复图片到正常的图片尺寸,从而能查看到隐藏的信息,利用下面的Python脚本可以很方便的根据图片的CRC值计算出图片正常的尺寸大小,其中将目标CRC值正确的图片放到脚本同目录下,同时在crc32处填写上图片的CRC32值,运行后即可计算图片的正确尺寸。

1
2
3
4
5
6
7
8
9
10
11
12
import binascii
import struct

crcbp = open("xxx.png", "rb").read() #打开图片
for i in range(2000):
for j in range(2000):
data = crcbp[12:16] + \
struct.pack('>i', i)+struct.pack('>i', j)+crcbp[24:29]
crc32 = binascii.crc32(data) & 0xffffffff
if(crc32 == 0xcbd6df8a): #图片当前CRC
print(i, j)
print('hex:', hex(i), hex(j))

CTF Misc 图片隐写 CRC32计算图片正确大小
https://www.xiaoan233.com/hello/Picture-right-CRC32/
作者
Xiao_an
发布于
2024年2月13日
许可协议