CTF – MISC – 圖片文件隱碼術

0x01.文件操作與隱寫
1.文件類型識別
對於沒有後綴名的文件類型識別。

方法一:Linux下file命令。

格式:file 文件名。
方法二:windows下通過winhex查看文件頭字段識別文件類型。

最好使用Notepad++,安裝插件HEX-Editor進行查看。

文件頭殘缺情況: 使用十六進制編輯器010editor編輯器進行編輯。

2.文件分離操作
方法一: Linux下使用Binwalk工具進行文件的分析和分離。

分析文件:binwalk filename
分離文件:binwalk -e filename
方法二: 如果binwalk無法正確分離出文件,可以使用formost工具。

foremost 文件名 -o 輸出目錄名
方法三: 當文件自動分離出錯或因為其他原因無法自動分離時,用dd工具進行手動分離。

dd if=源文件 of=目標文件名 bs=1 skip=開始分離的字節數
參數:if=file輸入文件名,省略為標準輸入。
參數:of=file輸出文件名,省略為標準輸出。
參數:bs=bytes同時設置讀寫塊的大小為bytes。
參數:skip=blocks從輸入文件開頭跳過blocks個塊後再開始覆制。
參數:count一共取的塊。
方法四: 使用010Editor直接選擇對應的十六進制,然後右鍵單獨保存,實現分離。

3.文件合並操作
Linux下:cat 要合並的文件 輸出的文件

完整性檢測: md5sum 文件名
Windows下: copy /B 合並的文件 輸出的文件

完整性檢測:certutil -hashfile 文件名 md5
4.文件內容隱寫
概述:文件內容隱寫,是直接將KEY以十六進制的形式寫在文件中,通常在文件的開頭或結尾部分,分析時通常重點觀察文件開頭和結尾部分。如果在文件內容中間部分,通常搜索關鍵字KEY或者flag來查找隱藏內容。


0x02.圖片文件隱寫


1.Firework
使用010Editor打開文件後,如果看到文件頭部包含firework的標識,可以通過firework來找到隱藏的圖片。
2.Exif
Exif按照JPEG的規格在JPEG中插入一些圖像、數字相機的信息數據以及縮略圖像,可以通過與JPEG兼容的圖片瀏覽器,圖片處理軟件等查看Exif格式的圖像文件。
右鍵屬性,查看exif或者詳細信息,在相關的選項卡中查找flag。
3.Stegsolve
當兩張jpg圖片的樣式,大小,像素基本相同時,可以考慮進行結合分析,將兩個文件的像素進行ADD,SUB,XOR等操作,看是否可以得到有用的信息。Stegsolve工具可以方便的進行這些操作。
4.LSB(最低有效位)
LSB替換隱寫的基本思想:用嵌入的秘密信息取代載體圖像的最低比特位,原來的7個高低平面與替代 秘密信息的最低位平面組合成含隱藏信息對=的新圖形。

通過修改像素中最低位的一位來達到隱藏的效果。

也可以使用Stegsolve來進行。

Linux下的工具:zteg工具

下載:gem install zsteg

檢測LSB隱寫:zsteg xxx.png

Windows下的工具:wbstego4工具。能夠解密通過LSB加密的圖片。

其它方式:Python腳本。

5.TweakPNG
TweeakPNG是一款PNG圖像瀏覽工具,它允許查看和修改一些PNG圖像文件的原信息存儲。
如果文件頭是正常的,但卻無法打開,可以使用TweakPNG修改CRC。出現校驗信息錯誤時,可以根據錯誤的CRC去十六進制中搜索,然後改成正確的CRC。(CRC上一行之後的 8個字節,前四個為寬度,後四個為高度(十六進制下的第二行前八位))
有時不是CRC的錯誤,而是圖片的寬高錯誤,需要通過CRC計算出正確的高度或寬度。可以通過腳本進行計算。
6.Bftools
Bftools常用於解密圖片信息。

Windows下:

Bftools.exe decode braincopter 要解密的圖片名稱 -output 輸出文件名
Bftools.exe run 上一步輸出的文件。
7.SilentEye
Windows下可視化解密工具。
8.JPG圖像加密
Stegdetect 工具用於探測JPEG文件的加密方式。(Linux下)

可以檢測到JSteg,F5,Camouflage,OutGuess,JPHide,appendX,Invisible Secrets等加密方式所隱藏的信息。
stegdetect xxx.jpg

stegdetect -s 敏感度 xxx.jpg

9.Jphide
基於LSB的JPEG格式圖像隱寫算法。
如果使用Stegdetect檢測到使用jphide,可以使用Jphs進行解密。
10.Outguess
outguess用於解密文件信息。

如果確認使用OUtguess加密的圖片,可以使用outguess進行解密。

outguess -r 要解密的文件名 輸出結果文件名

11.F5
識別是F5加密後,進入F5-stegangraphy_F5目錄,將圖片文件拷貝下來,cmd進入該目錄。
Java Exrtact 待解密文件名 -p 密碼
運行成功後,在output.txt可以看到解密結果。
12.二維碼處理
使用工具CQR打開圖片,查看內容字段。
如果二維碼的定位角覆蓋,該工具有一定幾率識別,如果不能識別,需要使用其他工具將另外幾個角的定位符移動搭配相應的位置,補全二維碼。
如果二維碼定位點中間是白色,可能是被反色了,可以使用其它工具進行反色再回來掃描。


版權聲明:本文為CSDN博主「ATFWUS」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處連結及本聲明。
原文連結:https://blog.csdn.net/ATFWUS/article/details/107336145


我覺得這篇很有質量,所以分享在這裡,本篇內文轉載遵循原文所屬協議,如有冒犯,請聯絡我。

Back To Top
error: 內容被保護 !!