ctf之misc


Ctf之Misc

文件操作

1.    可以使用file+文件名的方式 查看真實文件類型

File是通過文件的文件頭來判斷文件類型,當file判斷不出文件類型時,建議使用winhex來查看文件尾去判斷文件類型。當確定文件類型時,再在文件頭中補上對應的文件頭。

2.放進winhex可查看文件頭判斷文件類型

 

3.當文件頭損壞時,可根據文件尾進行進行文件類型判斷

 

1.    文件分離

Binwalk

 Binwalk工具可以快速分辨文件是否由多個文件合並而成,並將文件進行分離

(1)      文件分析binwalk 文件名

(2)      文件分離binwalk -e 文件名

 

Foremost

當binwalk無法分離出文件時,可以使用foremost

(1)      foremost 文件頭 -o 輸出目錄名

dd

當文件自動分離出錯或者因為其他原因無法自動分離時,可以使用dd實現文件手動分離

(1)dd if=源文件名 bs=1 skip=開始分離位置 of=輸出文件名

舉例:dd if=misc.jpg bs=1 skip=68019 of=target.zip

參數說明

If=file 輸入文件名 (binwalk中可以獲知文件格式)

Of=file 輸出文件名

Bs=bytes 設置讀寫塊的大小 (binwalk中可以得到對應bs值)

Skip=blocks 從輸入文件開頭跳過blocks個塊 后開始再復制

2.    文件合並

linux:cat 合並的文件 >輸出的文件

例如:cat file1 file2 file3 >file

windows:copy /B 合並的文件> 輸出的文件

copy /B file1+file2+file3 file

3.    文件內容隱寫

Hex隱寫
  1. 以hex形式存放在文件中,此時以winhex(notepad++)打開文件,尋找對應flag值
  2. 或者以strings 文件名的形式,輸出可打印字符

圖片

JPEG|Exif

Jpeg有一個特殊的地方:具備exif文件描述信息

在windows中可直接查看文件屬性,其他系統可使用exiftool

Steghigh

Setghigh是一個可以將文件隱藏到圖片或者音頻中的工具

(1)      隱藏文件 steghide embed -cf 圖片文件載體 -ef 待隱藏文件 [-p 密碼]

(2)      提取文件 steghide extract -sf 圖片文件載體 [-p 密碼]

舉例:

 

Outguess

(1)      隱藏文件 outguess -k 密鑰 -d 隱藏文件 原始圖片 加密后的圖片

(2)      提取文件 outguess -k 密鑰 -r 加密后的圖片 輸出文件名

 

 

Png

Png|圖片高度

經常會去改圖片高度或者寬度是的一張圖片顯示不完整從而達到隱藏信息的目的

第二行0-3字節代表圖片寬度,第二行4-7字節代表圖片高度

 

Png|LSB

PNG圖片中的圖像像素一般是由RGB三原色(紅綠藍)組成,每一種顏色占據8位。Lsb隱寫就是修改了像素中的最低的1bit,而人類的眼睛不會注意到這前后的變化,每個像素可以攜帶3比特的信息

Stegsolve

通過下方的按鈕可以觀察每個通道的信息

 

通過查看對應RGB(紅綠藍)通道,來判斷隱藏信息

 

使用analyse中的Data Extract模塊來進行

 

修改對應rgb值再重新導入

 

Cloacked-pixel

Cloacker-pixel是實現LSB圖像隱寫和基本檢測的工具

工具下載:https://github.com/livz/cloacker-pixel 

加密:lsb.py hide <img_file> <payload_file> <password>

解密:lsb.py extract<stego_file> <out_file> <password>

 

Png|盲水印

當出現兩張看起來一模一樣的圖片,可以用盲水印解密工具試一下

工具下:https://github.com/chishaxie/BindWaterMark

合成盲水印:python bwmforpy3.py encode 原圖 信息文件 盲水印圖片

 

提取盲水印:python bwmforpy3.py decode原圖 盲水印圖片 信息文件

GIF

GIF|空間

由於gif的動態特性,由一幀幀的圖片構成,所以每一幀的圖片,多幀圖片間的結合,都成了隱藏信息一種載體

通過stegsolve工具一幀一幀的分析。加載gif圖片 Analyse-frame browser

 

GIF|時間

文件每一幀的時間間隔也可以作為信息隱藏的載體

Imagemagick:linux安裝 sudo apt install imagemagick

 

壓縮包

Zip

Zip|通過進制轉換隱藏信息

 

Zip|圖種

將壓縮包隱藏在一張圖片中

解法:

1.binwalk -e foremost 分離

 

2.直接將圖片后綴改成.zip

Zip|偽加密

 

解法:

 

Zip|暴力破解

 

Zip|掩碼破解

 

Zip|明文攻擊

明文攻擊是一種較為高效的攻擊手段,大致原理是當你不知道一個zip的密碼,但是你有zip中的一個已知文件〈文件大小要大於12Byte)時,因為同一個zip壓縮包里的所有文件都是使用同一個加密密鑰來加密的,所以可以用已知文件來找加密密鑰,利用密鑰來解鎖其他加密文件

例子:已知明文.zip中存在的文件test.txt,因此將test.txt壓縮(不用加密),這里需要判斷明文壓縮后的CRC32是否與加密文件中的一致,若不一致可以換一個壓縮軟件

 

Zip|CRC碰撞

CRC32:CRC本身是“冗余校驗碼"的意思,CRC32則表示會產生一個32bit(8位十六進制數)的校驗值。在產生CRC32時,源數據塊的每一位都參與了運算,因此即使數據塊中只有一位發生改變也會得到不同的CRC32值,利用這個原理我們可以直接爆破出加密文件的內容。

舉例:已知一個壓縮包,解壓密碼很復雜,無法爆破。我們打開看看,知道里面壓縮的flag.txt文件內容為4個字節,CRC32為9BE3EOA3,嘗試用CRC32碰撞一下

 

解法:使用腳本來進行爆破

 

用ARCHPR爆破工具攻擊類型選擇明文,加載加密文件和我們壓縮的明文文件

 

Rar

Rar|暴力破解

從題目相關提示中猜解密碼的長度以及字符范圍等

還是使用archpr工具來進行暴力破解

 

Rar|偽加密

RAR文件由於有頭部校驗,使用偽加密時打開文件會出現報錯,使用winhex修改標志位后如報錯消失且正常解壓縮,說明是偽加密。使用winhex打開RAR文件,找到第24個字節,該字節尾數為4表示加密,0表示無加密,將尾數改為0即可破解偽加密。

 

解法:將對應的x4改為x0即可破解偽加密

音頻

Mp3

Mp3|隱寫
Mp3stego

工具下載:https://www. petitcolas.net/steganography/mp3stego/

加密:encode -E hidden_text.txt -P pass svega.wav svega_stego.mp3

 

解密:decode -X -P pass svega_stego.mp3

 

波形

波形中隱藏摩斯密碼,較長的藍色即為 “-“,較短的即為 ”.“

 

Morse2ascii

Morse2ascii是一個PCM解碼wac文件莫斯密碼工具

安裝:apt-get install morse2ascii

解密:運行命令:morse2ascii music.wav

 

音頻

音頻|波形

波形譜轉化為01字符串

將單聲道波形提取出來,接近1的變成1 ,接近-1的變成0,得到二進制,並轉化為ascii

 

音頻|頻譜

音頻中的頻譜隱寫是將字符串隱藏在頻譜中,此類音頻通常會有一個較明顯的特征,聽起來是一段雜音或者比較刺耳

 

 

聲音

LSB

二維碼

拼接

 

反向

 

殘缺

 

二進制

 

文檔

Word

Word|隱藏字符

 

Word|隱藏文件

 

Pdf

Pdf|隱藏文字

 

取證分析

內存取證

volatility

volatility 是一款內存取證和分析工具,可以對raw、wmem、img、dmp等內存鏡像文件進行分析,並提取內存中的文件。

工具下載: https://www.volatilityfoundation.org/releasesvolatility使用:

volatility -f <文件名> --profile=<配置文件><插件>[插件參數]

 

Ctf之Pwn(待更)

Ctf之逆向培訓(待更)

Ctf之Web(待更)

Ctf之密碼學(待更)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM