ctf-stego彙總

相關命令,工具:
***binwalk工具使用(提取文件隱藏的文件,原理就是檢索匹配文件頭)
binwalk test.jpg //顯示文件名
dd if=test.png of=’test.rar’ bs=1 skip=100097 //根據偏移量提取文件
binwalk -e test.jpg //識別並自動化提取test.jpg中的文件
http://www.freebuf.com/sectool/15266.html

***formost恢復文件工具(extundelete是另一種)
基於文件頭和尾部信息以及文件的內建數據結構恢復文件的命令行工具
支持恢復如下格式:avi, bmp, dll, doc, exe, gif, htm, jar, jpg, mbd, mov,
mpg, pdf, png, ppt, rar, rif, sdw, sx, sxc, sxi, sxw, vis, wav, wmv, xls, zip。
安裝#apt-get install foremost
刪除USB(/dev/sdba1)存儲器中一個 png 文件然後使用 formost 恢復:
rm -f /dev/sdb1/photo1.png
foremost -t png -i /dev/sdb1
http://os.51cto.com/art/201401/426316.htm

***strings,file,cat

*判斷文件類型TrIDNet(http://www.pconline.com.cn/pcedu/teach/tool/0707/1065748.html)
下載後即可直接使用

圖片隱寫:
*對圖片微處理
根據題目信息來做,可能跟cookie, 編碼結合
可能通過firebug查看html,js註釋的隱藏信息
通過exif屬性的信息隱寫:右鍵圖片-屬性-詳細信息
一些文件如png無法直接打開,也許是缺少文件頭,在16進制下加上文件頭後即可
嘗試修改圖片分辨率,查看flag是否被覆蓋:http://bobao.360.cn/ctf/learning/137.html 強網杯
base64編碼後的文件:Data:image/png;base64…….. Base64編碼後的png圖片,放到瀏覽器上回車得到圖片
改後綴.txt,搜索flag,key,ctf,{,flage等關鍵詞
有些圖片直接用記事本打開看不到內容,但在linux下用cat filename就會得到意想不到的結果。

***stegsolve(http://www.caesum.com/handbook/Stegsolve.jar
Stegsolve——Analyse——Frame Browser。瀏覽每個顏色通道的每一位,看是否隱藏了二維碼
(二維碼在線解碼:http://tool.chinaz.com/qrcode/
Stegsolve——Analyse——Data Extract。這個是使用ASCII隱寫的時候可以查看的。
Stegsolve——Analyse——file format。查看文件格式,結合IDAT結構是否異常,結合編程。
Stegsolve——Analyse——frame browser。可以查看GIF文件每一幀的圖片。
Stegsolve——Analyse——image combiner雙圖分析
雙圖分析見末尾(http://bobao.360.cn/learning/detail/243.html

***IDAT隱寫-方式一
結合stegsolve——Analyse——file format,如果倒數第二個IDAT塊未滿65524,
則可初步判定最後一個塊爲添加的塊,可使用zlib解壓縮(python)
import zlib import binascii IDAT =”789C5D91011280400802BF04FFFF5C75294B5537738A21A27D1E49CFD17DB3937A92E7E603880A6D485100901FB0410153350DE83112EA2D51C54CE2E585B15A2FC78E8872F51C6FC1881882F93D372DEF78E665B0C36C529622A0A45588138833A170A2071DDCD18219DB8C0D465D8B6989719645ED9C11C36AE3ABDAEFCFC0ACF023E77C17C7897667”.decode(‘hex’) result = binascii.hexlify(zlib.decompress(IDAT)) print result

***IDAT隱寫-方式二
binwalk 圖片名
DECIMAL HEXADECIMAL DESCRIPTION
0x0 PNG image, 1000 x 562, 8-bit/color RGBA, non-interlaced
0x5B Zlib compressed data, compressed
0xDC6 Zlib compressed data, best compression
0x15AFFB Zlib compressed data, default
compression後面是Zlib壓縮的數據,寫個腳本解壓一下:
python提取腳本
from PIL import Image
from zlib import *
data = open(‘圖片名’,’rb’).read()[0x15AFFB:]
data = decompress(data)
img = Image.new(‘1’, (25,25))
d = img.load()
for n,i in enumerate(data):
d[(n%25,n/25)] = int(i)*255
f = open(‘flag.png’,’wb’)
img.save(f)

*此處順便附上01字符串形成二維碼的代碼(需要PIL庫)
!/usr/bin/env python
import Image
MAX = 25
pic = Image.new(“RGB”,(MAX, MAX))
str = “1111111000100001101111111100000101110010110100000110111010100000000010111011011101001000000001011101101110101110110100101110110000010101011011010000011111111010101010101111111000000001011101110000000011010011000001010011101101111010101001000011100000000000101000000001001001101000100111001111011100111100001110111110001100101000110011100001010100011010001111010110000010100010110000011011101100100001110011100100001011111110100000000110101001000111101111111011100001101011011100000100001100110001111010111010001101001111100001011101011000111010011100101110100100111011011000110000010110001101000110001111111011010110111011011”
i=0
for y in range (0,MAX):
for x in range (0,MAX):
if(str[i] == ‘1’):
pic.putpixel([x,y],(0, 0, 0))
else:
pic.putpixel([x,y],(255,255,255))
i = i+1
pic.show()
pic.save(“flag.png”)

*加密壓縮包zip或者rar破解(http://blog.csdn.net/fuzz_nancheng/article/details/53230389
使用ARCHPR進行破解,密碼使用自帶密碼集或者python進行編寫
如果不支持,那麼可能是文件頭前面還有東西,去掉即可
另一種情況是僞加密參考以下網址:

***png圖片-LSB隱寫-cloacked-pixel工具(下載https://github.com/cyberinc/cloacked-pixel
cloacked-pixel在加密的過程中會刪除其他數據塊,只保留關鍵數據塊IDAT
加密:python lsb.py hide big.png 1.txt 123456
hide:表示加密模式 big.png:待加密的png圖片
1.txt:存放payload 123456:加密的密碼
運行後生成圖片big.png-stego.png
解密:python lsb.py extract big.png-stego.png 3.txt 123456
extract:表示解密模式 big.png-stego.png:待解密的png圖片
3.txt:存放導出的payload 123456:解密密碼

***png圖片-LSB隱寫-LSB-Steganography工具
https://github.com/RobinDavid/LSB-Steganography
加密:python LSBSteg.py -image original.png -binary original.bin -steg-out steg.png
解密:python LSBSteg.py -steg-image steg.png -out bin

***jpg圖片-使用winhex/010editor/C32Asm打開,查看文件尾FF D9後面是否有其他內容。
copy命令即copy /b 2.jpg+1.zip output.jpg
圖片可利用copy命令將1.zip通過連接放到2.jpg後面並只顯示2.jpg
也可以直接16進制打開後搜索flag,ctf,{,flage等關鍵詞

***jpg隱寫-steghigh
加密:steghide embed -cf picture.jpg -ef secret.txt(需要輸入兩次密碼)
解密:steghide extract -sf picture.jpg(需要輸入一次密碼)
獲取相關信息:steghide info received_file.wav

***jpeg圖片隱寫-Stegdetect(https://github.com/abeluck/stegdetect
可以檢測到通過JSteg、JPHide、OutGuess、Invisible Secrets、F5、appendX和Camouflage等這些隱寫工具隱藏的信息,
具有基於字典暴力破解密碼方法提取通過Jphide、outguess和jsteg-shell方式嵌入的隱藏信息。
探測命令:stegdetect.exe -tjopi -s 10.0 test.jepg
-q 僅顯示可能包含隱藏內容的圖像。
-n 啓用檢查JPEG文件頭功能,以降低誤報率。如果啓用,所有帶有批註區域的文件將被視爲沒有被嵌入信息。如果JPEG文件的JFIF標識符中的版本號不是1.1,則禁用OutGuess檢測。
-s 修改檢測算法的敏感度,該值的默認值爲1。檢測結果的匹配度與檢測算法的敏感度成正比,算法敏感度的值越大,檢測出的可疑文件包含敏感信息的可能性越大。
-d 打印帶行號的調試信息。
-t 設置要檢測哪些隱寫工具(默認檢測jopi),可設置的選項如下:

* j 檢測圖像中的信息是否是用jsteg嵌入的。
* o 檢測圖像中的信息是否是用outguess嵌入的。
* p 檢測圖像中的信息是否是用jphide嵌入的。
* i 檢測圖像中的信息是否是用invisible secrets嵌入的。

-V 顯示軟件版本號。
如果檢測結果顯示該文件可能包含隱藏信息,那麼Stegdetect會在檢測結果後面用1~3顆星標識
隱藏信息存在的可能性大小,3顆星表示隱藏信息存在的可能性最大。

***jpg圖片隱寫-Jphide(https://www.hackfun.org/CTF/jphide-steganography.html
先解壓壓縮JPEG圖像,得到DCT係數;
然後對隱藏信息用戶給定的密碼進行Blowfish加密;
再利用Blowfish算法生成僞隨機序列,並據此找到需要改變的DCT係數,
將其末位變爲需要隱藏的信息的值,
最後把DCT係數重新壓回成JPEG圖片。
用JPHS工具解決

***jepg圖片隱寫-JPHS(http://io.acad.athabascau.ca/~grizzlie/Comp607/programs.htm
由Stegdetect檢測出來的,這個是分離工具,有圖形界面,可以直接導入圖片,txt進行加密解密

***JEPG圖片-outguess工具(http://download.csdn.net/detail/florak/5620983
下載後,在linux裏cd到outguess目錄下
執行命令:./configure && make && make install
這樣就可以使用outguess命令了。
執行命令:outguess -r test.jpg outfile.txt
打開outfile.txt即可得到隱藏信息
***F5隱寫(https://github.com/matthewgao/F5-steganography
在文件夾中命令行模式下運行:java Extract test.jpg -p 123456
-p 後面是密碼
得到output.txt,打開即可得到隱藏信息
其他隱寫:
***MP3隱寫-MP3stego
將MP3文件和Decode.exe和Encode.exe放在同一目錄下
在命令行模式使用命令“cd 路徑”進入該目錄下
使用命令Decode.exe -X -P password test.mp3
其中 -X 提取隱藏數據,-P 密碼 ,提取出來的信息在test.txt裏面
密碼可能在文件本身或者網頁前端代碼或者響應頭或者是弱密碼

***wav隱寫-Audacity
-打開wav文件,Audacity-效果-反向-播放
-Audacity-文件名-頻譜圖
-聲道里面夾雜着莫斯密碼,短的代表’.’,長的代表’-’
-Audacity-頻譜圖-attach-點擊頻譜-然後點擊修改spectrogram setting,把8000改爲48000
-電話音分析(http://dialabc.com/sound/detect/

***wav隱寫-silenteye
wav隱寫

***MP4隱寫-ffmpeg,fMP4
ffmpeg.exe -i test.mp4 -r 30.0 test.bmp
把一幀幀的視頻分割爲一張張的圖片。具體怎麼使用可以在linux下man ffmpeg。

***avi隱寫-MSU VideoStego

***BMP、TXT、HTM和PDF-wbStego4open
wbStego4open一般可以解決這種隱寫
http://wbstego.wbailer.com

***PDF隱寫-pdfdetach工具:
pdfdetach test.pdf -saveall(還原創建這個pdf的前一個pdf)
還原到第一個pdf後 pdfdetach start.pdf -save 1 -o origin.pdf

***vmdk隱寫-Dsfok-tools,FTK
通常Dsfok-tools是用來編輯vmdk文件中的描述符
FTK直接打開文件就可以

***exe文件-Hydan
對於可執行文件的數據隱藏可以使用Hydan
或者直接用txt格式打開
或者用od,ida進行逆向分析

***NTFS文件系統ida隱藏-ntfsinfo

***dmp文件隱寫
在線分析網站:http://www.osronline.com/page.cfm?name=analyze
例子:http://bobao.360.cn/ctf/learning/153.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章