🧂 前言
關於圖片類型的Forensic 如果出現在 CTF 上,我都覺得是通靈題
所以只要遇到圖片的 forensic 題,我都會盡可能找可以無腦砸下去就可以解出來的工具,因此今天要來介紹幾個我覺得好用的圖片鑑識工具。
Zsteg
下載連結:https://github.com/zed-0xff/zsteg
專門針對 PNG 跟 BMP 做 steganography 探測。例如偵測 LSB 隱寫、ZLIB 壓縮後的隱藏資料、OpenStego、Camouflage 等格式。用於 CTF 隱藏資料快速找訊息
1 | $ zsteg -h |
直接把圖片用zsteg分析
1 | $ zsteg pico.flag.png |
就直接得到了flag
Binwalk
下載連結:https://github.com/ReFirmLabs/binwalk
他可以分析圖片是否有隱藏的檔案,並將隱藏檔案塊挖出來。對於圖片裡面被 embed 的檔案或壓縮段非常方便。
例子:picoctf 2021 Matryoshka doll
這題下載後可以用binwalk 看看
1 | $ binwalk dolls.jpg |
發現他裡面有zip 檔 可以把它extra 出來
1 | $ binwalk -e dolls.jpg |
他會在現在的所在位置創建一個 extractions 資料夾,進入之後裡面後又有一個jpg,就跟他的圖片一樣一層一層的用 binwalk 解。最後就會拿到flag

foremost
下載連結:https://www.kali.org/tools/foremost/
foremost 跟 binwalk 類似,也是在分離隱寫的檔案,foremost 也可以拿來恢復資料。
剛剛 binwalk 那題也可以用 foremost 解
1 | $ foremost dolls.jpg -T |
stegsolve
下載連結:https://github.com/Giotino/stegsolve
網頁版:https://georgeom.net/StegOnline/upload
GUI 工具,可視化地查看圖片像素 / RGB / alpha 通道 /做 XOR /顏色通道切割,適合人工探索圖片裡的變化/隱寫的痕跡,這個工具也可以解LSB。
這題下載後是一個png 檔,丟進 stegsolve 看一下

下面會有左右箭頭都按按看

在 Red plane 0 的情況下出現 QRcode ,掃了就會是 flag
除了看每個通道外還可以去Analyse 功能中可以看 File format 以及提出LSB 資料…等等
imhex
下載連結:https://imhex.werwolv.net/
十六進位/二進位編輯器,可用來檢查圖片的 header、檔案結構、metadata 有沒有被動過或有異常,介面還不錯看。

pngcheck
下載連結:https://www.libpng.org/pub/png/apps/pngcheck.html
檢查 PNG 檔案的結構正確性,檢測 chunk 是否完整、CRC 是否正確。若隱寫工具改動了部分 chunk,檔案可能破壞或檢查出錯。
modsize
下載連結:https://github.com/flawwan/modsize
一款專門調整圖片尺寸 metadata 的工具,或檢查圖片尺寸/metadata 跟真實圖像的 mismatch(我自己找的這個 library 可以用來看 image metadata 裡頭尺寸標記會不會被偽造)。
以他github 的X-MAS CTF 2018 的題目測試


可以成功修改 height
結論
有這些工具之後還蠻大程度幫助我在遇到圖片鑑識時可以很快就解決,或很快直接放棄,如果有什麼其他好用的圖鑑鑑識工具也歡迎跟我說。