MISC相關工具下載
圖片相關
jpg
f5-steganography (F5隱寫,需要passwd)
- 安裝
kali中安裝: git clone https://github.com/matthewgao/F5-steganography
> git clone https://github.com/matthewgao/F5-steganography ......
- 使用(解密)
進入 F5-steganography 文件夾 打開終端
> java Extract 1.jpg -p 123456 # -p后接f5的key
打開 output.txt 文件即可
- 使用(加密)
> java Embed 原圖.jpg 生成圖.jpg -e 隱藏的文件.txt -p 密碼
outguess (可需要passwd)
- 安裝
打開終端輸入: git clone https://github.com/crorvick/outguess
> git clone https://github.com/crorvick/outguess ......
下載成功后進入outguess文件夾,在文件夾中打開終端輸入:./configure && make && make install
> ./configure && make && make install ......
成功后即可使用
- 使用(加密)
右鍵打開終端
> outguess -k 12345 -d hidden.txt 1.jpg 2.jpg ...... # -k后接密碼 # -d后接要隱藏的內容 # 加密后1.jpg會覆蓋2.jpg
- 使用(解密)
右鍵打開終端(接上述)
> outguess -k 12345 -r 2.jpg out.txt ......
out.txt 中內容即為想要隱藏的 hidden.txt 中內容
也可不需要密碼,即
> outguess -r 2.jpg out.txt
stegdetect(檢查jpg圖片隱寫方法_win)
- 使用
將圖片復制到 stegdetect.exe 所在文件夾,打開 cmd 輸入:
stegdetect.exe -tjopi -s 10.0 [stego_file] -s 修改檢測算法的敏感度,該值的默認值為1。檢測結果的匹配度與檢測算法的敏感度成正比,算法敏感度的值越大,檢測出的可疑文件包含敏感信息的可能性越大。 -t 設置要檢測哪些隱寫工具(默認檢測jopi),可設置的選項如下: j 檢測圖像中的信息是否是用jsteg嵌入的。 o 檢測圖像中的信息是否是用outguess嵌入的。 p 檢測圖像中的信息是否是用jphide嵌入的。 i 檢測圖像中的信息是否是用invisible secrets嵌入的。
如果顯示為
[stego_file]:jphide(***)
,則可以用 stegbreak 破解密碼stegbreak -r rules.ini -f password.txt -t p [stego_file] # password.txt為自帶字典 Loaded 1 files... [stego_file]:jphide[v5](2333) # 2333為該文件jphide的密碼
steghide(jpg隱藏信息)
- 安裝(kali中)
apt-get install steghide
有需要按 Y 即可
- 使用(加密)
將 flag.txt 文件隱藏到 out.jpg 中:
steghide embed -cf out.jpg -ef flag.txt [-p 123456] # -p后接密碼,可無
- 使用(解密)
查看圖片中嵌入的文件信息:
steghide info out.jpg
提取含有密碼的隱藏內容:
steghide extract -sf out.jpg -p 123456
提取不含有密碼的隱藏內容:
steghide extract -sf out.jpg
直接按回車即可
- steghide爆破密碼
有些題目用steghide加密文件但是不給密碼,此時就需要爆破,steghide本身並不支持爆破,需要一些其他的方法:https://github.com/Va5c0/Steghide-Brute-Force-Tool
python steg_brute.py -b -d [字典] -f [jpg_file]
需要安裝的庫:progressbar
pip install progressbar2
png & bmp
BlindWaterMark (盲水印)
第一種 正常的bwm
- 安裝
在github上下載腳本,網址:https://github.com/chishaxie/BlindWaterMark
安裝 python前置模塊
> pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python ...... > sudo pip install matplotlib ......
- 使用(解密)
安裝成功后打開 bwm.py 所在文件夾,在文件夾中打開終端
# 1.png 為無水印原圖 # 2.png 為有盲水印的圖 # flag.png 為解出來的圖片 > python bwm.py decode 1.png 2.png flag.png
查看 flag.png 即可
- 使用(加密)
安裝成功后打開 bwm.py 所在文件夾,在文件夾中打開終端
# 1.png 為無水印原圖 # water.png 為水印圖 # 2.png 為有盲水印圖 > python bwm.py encode 1.png water.png 2.png
查看 2.png 即可
第二種 頻域盲水印
-
腳本
import cv2 import numpy as np import random import os from argparse import ArgumentParser ALPHA = 5 def build_parser(): parser = ArgumentParser() parser.add_argument('--original', dest='ori', required=True) parser.add_argument('--image', dest='img', required=True) parser.add_argument('--result', dest='res', required=True) parser.add_argument('--alpha', dest='alpha', default=ALPHA) return parser def main(): parser = build_parser() options = parser.parse_args() ori = options.ori img = options.img res = options.res alpha = options.alpha if not os.path.isfile(ori): parser.error("original image %s does not exist." % ori) if not os.path.isfile(img): parser.error("image %s does not exist." % img) decode(ori, img, res, alpha) def decode(ori_path, img_path, res_path, alpha): ori = cv2.imread(ori_path) img = cv2.imread(img_path) ori_f = np.fft.fft2(ori) img_f = np.fft.fft2(img) height, width = ori.shape[0], ori.shape[1] watermark = (ori_f - img_f) / alpha watermark = np.real(watermark) res = np.zeros(watermark.shape) random.seed(height + width) x = range(height / 2) y = range(width) random.shuffle(x) random.shuffle(y) for i in range(height / 2): for j in range(width): res[x[i]][y[j]] = watermark[i][j] cv2.imwrite(res_path, res, [int(cv2.IMWRITE_JPEG_QUALITY), 100]) if __name__ == '__main__': main()
- 使用
python pinyubwm.py --original 1.png --image 2.png --result out.png
查看 out.png 即可,如果無法得到正常圖片,可將 1.png 和 2.png 調換位置再次嘗試
lsb的py腳本解密(lsb隱寫+需要passwd)
python lsb.py extract [stego_file] [out_file] [password]
zsteg(lsb隱寫)
- 安裝
gem install zsteg
- 使用
zsteg -a 1.bmp
pngcheck(檢查IDAT塊_win)
- 使用
在 pngcheck.exe 所在文件夾打開cmd
pngcheck.exe -v 123.png
可檢查 png 的 IDAT 塊是否有問題
相關題目可參考:https://blog.csdn.net/u010391191/article/details/80818785
有關解題腳本可參考 FzWjScJ 師傅的blog:http://www.fzwjscj.xyz/index.php/archives/17/
WebP
- 安裝(kali中)
apt install webp
需要的時候按 Y 即可
- 使用
- cwebp - 編碼器工具:可將png轉為webp
cwebp 1.png -o 2.webp
- dwebp - 解碼器工具:可將webp轉為png
dwebp 1.webp -o 2.png
- vwebp - 查看器工具:可直接查看webp格式圖片
vwebp 1.webp
- webpinfo - 格式查看工具:可打印出WebP文件的塊級結構以及基本完整性檢查
webpinfo 1.webp
其余(gif2webp、img2webp等可見官方文檔)
exiftool(查看圖片exif信息)
- 安裝(kali中)
apt-get install exiftool
需要的時候按 Y 即可
- 使用
exiftool 1.jpg # 顯示圖片所有信息 exiftool 1.jpg | grep flag # 查看圖片有關‘flag’字符的信息 exiftool * # 查看此文件夾所有圖片信息 exiftool -b -ThumbnailImage attachment.jpg >flag.jpg # 提取縮略圖
其余詳細: https://segmentfault.com/a/1190000018032048?utm_source=tag-newest
壓縮包相關
Fcrackzip (zip暴力破解)
- 安裝
kali中安裝: sudo apt-get install fcrackzip
> sudo apt-get install fcrackzip ......
- 使用
參數說明:
-c 指定字符集,格式 -c 'aA1!:' a 表示小寫字母[a-z] A 表示大寫字母[A-Z] 1 表示阿拉伯數字[0-9] ! 表示特殊字符集[!:$%&/()=?{[]}+*~#] : 表示包含冒號之后的字符(不能為二進制的空字符),例如 a1:$% 表示 字符集包含小寫字母、數字、$ 和 %
打開終端
> fcrackzip -b -c 'a1A' -l 1-10 -u 123.zip PASSWORD FOUND!!!!: pw == qsb
參數說明:
-b 表示使用暴力破解方式 -c 'a1A' 表示使用大小寫字母和數字混合破解的方式 -l 1-10 表示需要破解的密碼長度為1-10 -u 表示只顯示破解出來的密碼,其他錯誤密碼不顯示
添加字典:
frcackzip -D -p zidian.txt -u 123.zip PASSWORD FOUND!!!!: pw == qsb
參數說明:
-D 表示要使用字典破解 -p 表示要使用的那個字典
crc值爆破(zip包碰撞crc值)
python crc32.py reverse 你的crc32密文
ZipCenOp(zip偽加密)
在工具所在文件夾打開cmd,輸入
java -jar ZipCenOp.jar r xxx.zip
如果顯示success則表示成功,之后再直接解壓壓縮包即可
- 使用(加密)
同樣打開cmd,輸入
java -jar ZipCenOp.jar e xxx.zip
壓縮包就被偽加密了
pyc文件相關
uncompyle6(pyc文件反編譯)
- 安裝
pip install uncompyle6
- 使用
uncompyle6 test.pyc > test.py
Stegosaurus(pyc隱寫_win)
- 版本:Python 3.6 or later
- 使用
在 stegosaurus.py 所在文件夾打開cmd,輸入:
python stegosaurus.py -x [pyc_file]
音頻相關
MP3stego(MP3隱寫_win)
- 使用
在MP3stego文件夾中打開cmd,然后將 Decode.exe 拖到命令行里,將要解密的文件放在文件夾中
...\Decode.exe -X -P [password] [stego_mp3]
執行后會在該文件夾中生成一個 txt 文件,打開查看即可
steghide(wav隱藏信息)
- 安裝(kali中)
apt-get install steghide
有需要按 Y 即可
- 使用(加密)
將 flag.txt 文件隱藏到 out.jpg 中:
steghide embed -cf out.jpg -ef flag.txt [-p 123456] # -p后接密碼,可無
- 使用(解密)
查看圖片中嵌入的文件信息:
steghide info out.jpg
提取含有密碼的隱藏內容:
steghide extract -sf out.jpg -p 123456
提取不含有密碼的隱藏內容:
steghide extract -sf out.jpg
直接按回車即可
- steghide爆破密碼
有些題目用steghide加密文件但是不給密碼,此時就需要爆破,steghide本身並不支持爆破,需要一些
其他的方法:https://github.com/Va5c0/Steghide-Brute-Force-Tool
python steg_brute.py -b -d [字典] -f [jpg_file]
需要安裝的庫:progressbar
pip install progressbar2
其他
aircrack-ng(爆破wifi密碼)
- 創建字典
kali下自帶有一份無線密碼字典:/usr/share/wordlists/rockyou.txt.gz,我們需要將其解壓:
- 爆破
aircrack-ng -w /usr/share/wordlists/rockyou.txt -b [MAC] [capfile]
注:-w 后加字典的位置(kali中自帶字典的位置)
-b 后加路由器的MAC地址(應該也就是 BSSID)
- 其余有關aircrack-ng的內容: https://blog.csdn.net/qq_36119192/article/details/84254622
xortool(猜測xor加密的密碼長度及值)
- 安裝
安裝環境基於python3
python3 -m pip install --user xortool
python2似乎也可以……
pip install xortool
- 使用
在想要解密的文件所在目錄打開終端:
xortool (-x) -c 20 123.txt #-x:代表文件內容為十六進制 #-c:后加出現頻率最高的字符,文本內容一般是空格(20),二進制文件一般是00
這里只列出了最簡單的使用方法,其余可見: https://pypi.org/project/xortool/
mimikatz(抓取lsass密碼)
- 下載:https://pan.baidu.com/s/1qZmnPar-gfqT9OaWO_DS3g 提取碼 svp9
- 使用
將 lsass.dmp 文件放在 mimikatz.exe 所在目錄下,關閉殺軟后打開 mimikatz.exe
執行以下三條命令:
privilege::debug sekurlsa::minidump lsass.dmp sekurlsa::logonpasswords full
gaps(拼圖)
- 安裝
依次執行以下五條命令
git clone https://github.com/nemanja-m/gaps.git cd gaps pip install -r requirements.txt sudo apt-get install python-tk pip install -e .
- 使用
詳細:https://www.zhuanzhi.ai/document/282c8a2293a31361d4c15b4451b5406a
- 創建拼圖:
create_puzzle [圖片絕對路徑] --size=[尺寸] --destination=[創建拼圖名稱]
得到的拼圖所有圖在一張大圖上,可以配合
convert
命令將其切開
- 還原拼圖:
如果還原的是被切開成一小塊一小塊的拼圖,需要先將其拼在一張大圖上(可用
montage
命令),之后再用gaps將其還原:gaps --image=out.jpg --generations=50 --population=120 --size=50 --image 指向拼圖的路徑 --size 拼圖塊的像素尺寸 --generations 遺傳算法的代的數量 --population 個體數量 --verbose 每一代訓練結束后展示最佳結果 --save 將拼圖還原為圖像
如果不能明確提供
--size
的參數,拼圖塊尺寸將自適應調整,經過我的多次試驗,提供--size
參數效果會更好
dtmf-decoder(電話音解碼)
先將其中
dtmf-decoder.py
這個腳本中讀入文件的部分按照個人需求進行修改修改后直接運行腳本即可
python dtmf-decoder.py
注:如果在py3環境下運行失敗的話請換成py2環境再次運行