LSB
Stegsolve 思路
- 先檢查有無可疑的plane(雜訊)
- 透過Stereogram Solver解決,並且根據前面找出的Planes進行檢查 調整LSB模式
PNG
IHDR CRC修復
由於CRC由IDCH到IHDR的17 bytes位置計算得出。
因此IHDR的起始位址在於12
,並且到16
為IDHR
四個字元,再來是四個寬度與高度,後面五bytes
為其他資訊
為了方便進行破解,這裡將各個欄位區分開來, 以便猜測寬度或高度。
with open('corrupted_png.png', 'rb') as f:
data = f.read()
idch = data[12:16]
width = data[16:20]
height = data[20:24]
ihdr_info = data[24:29]
計算CRC可以透過以下算式。
crc32 = binascii.crc32(idch + width + height + ihdr_info) & 0xffffffff
print(hex(crc32))
之後可以透過暴力猜測高度或寬度。
參考CTF PNG
注意: 仔細觀察相關檔案的寬度或高度應該會發現big endian endian
CTF