MISC相关工具下载 图片相关 jpg f5-steganography (F5隐写,需要passwd)写在前面:本文包含在windows和在kali下使用的工具,win下已做标
安装
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 文件即可
使用(加密)
outguess (可需要passwd)> java Embed 原图.jpg 生成图.jpg -e 隐藏的文件.txt -p 密码
安装
打开终端输入: 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
使用(解密)
stegdetect(检查jpg图片隐写方法_win)右键打开终端(接上述)
> outguess -k 12345 -r 2.jpg out.txt ......out.txt 中内容即为想要隐藏的 hidden.txt 中内容
也可不需要密码,即
> outguess -r 2.jpg out.txt
使用
steghide(jpg隐藏信息)将图片复制到 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的密码
安装(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爆破密码
png & bmp BlindWaterMark (盲水印) 第一种 正常的bwm有些题目用steghide加密文件但是不给密码,此时就需要爆破,steghide本身并不支持爆破,需要一些其他的方法:https://github.com/Va5c0/Steghide-Brute-Force-Tool
python steg_brute.py -b -d [字典] -f [jpg_file]需要安装的库:progressbar
pip install progressbar2
安装
在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() 使用
lsb的py脚本解密(lsb隐写+需要passwd)python pinyubwm.py --original 1.png --image 2.png --result out.png查看 out.png 即可,如果无法得到正常图片,可将 1.png 和 2.png 调换位置再次尝试
下载: https://github.com/livz/cloacked-pixel使用
zsteg(lsb隐写)python lsb.py extract [stego_file] [out_file] [password]其余详见: https://github.com/livz/cloacked-pixel
安装
gem install zsteg
使用
pngcheck(检查IDAT块_win)zsteg -a 1.bmp
使用
WebP在 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/
安装(kali中)
apt install webp需要的时候按 Y 即可
使用
exiftool(查看图片exif信息)cwebp - 编码器工具:可将png转为webp
cwebp 1.png -o 2.webpdwebp - 解码器工具:可将webp转为png
dwebp 1.webp -o 2.pngvwebp - 查看器工具:可直接查看webp格式图片
vwebp 1.webpwebpinfo - 格式查看工具:可打印出WebP文件的块级结构以及基本完整性检查
webpinfo 1.webp其余(gif2webp、img2webp等可见官方文档)
安装(kali中)
apt-get install exiftool需要的时候按 Y 即可
使用
压缩包相关 Fcrackzip (zip暴力破解)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
安装
kali中安装: sudo apt-get install fcrackzip
> sudo apt-get install fcrackzip ......
使用
crc值爆破(zip包碰撞crc值)参数说明:
-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 表示要使用的那个字典
下载脚本:https://github.com/theonlypwner/crc32使用
ZipCenOp(zip伪加密)python crc32.py reverse 你的crc32密文
下载:https://files.cnblogs.com/files/ECJTUACM-873284962/ZipCenOp.zip使用(解密)
在工具所在文件夹打开cmd,输入
java -jar ZipCenOp.jar r xxx.zip如果显示success则表示成功,之后再直接解压压缩包即可
使用(加密)
pyc文件相关 uncompyle6(pyc文件反编译)同样打开cmd,输入
java -jar ZipCenOp.jar e xxx.zip压缩包就被伪加密了
安装
pip install uncompyle6
使用
Stegosaurus(pyc隐写_win)uncompyle6 test.pyc > test.py
版本:Python 3.6 or later使用
音频相关 MP3stego(MP3隐写_win)在 stegosaurus.py 所在文件夹打开cmd,输入:
python stegosaurus.py -x [pyc_file]
使用
steghide(wav隐藏信息)在MP3stego文件夹中打开cmd,然后将 Decode.exe 拖到命令行里,将要解密的文件放在文件夹中
...Decode.exe -X -P [password] [stego_mp3]执行后会在该文件夹中生成一个 txt 文件,打开查看即可
安装(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爆破密码
其他 aircrack-ng(爆破wifi密码)有些题目用steghide加密文件但是不给密码,此时就需要爆破,steghide本身并不支持爆破,需要一些
其他的方法:https://github.com/Va5c0/Steghide-Brute-Force-Tool
python steg_brute.py -b -d [字典] -f [jpg_file]需要安装的库:progressbar
pip install progressbar2
创建字典
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 xortoolpython2似乎也可以……
pip install xortool
使用
mimikatz(抓取lsass密码)在想要解密的文件所在目录打开终端:
xortool (-x) -c 20 123.txt #-x:代表文件内容为十六进制 #-c:后加出现频率最高的字符,文本内容一般是空格(20),二进制文件一般是00这里只列出了最简单的使用方法,其余可见: https://pypi.org/project/xortool/
下载:https://pan.baidu.com/s/1qZmnPar-gfqT9OaWO_DS3g 提取码 svp9使用
gaps(拼图)参考一:介绍一下神器mimikatz,从lsass里抓密码 | Jarett's Blog参考二:Windows密码抓取总结 | TimeS0ng's blog
将 lsass.dmp 文件放在 mimikatz.exe 所在目录下,关闭杀软后打开 mimikatz.exe
执行以下三条命令:
privilege::debug sekurlsa::minidump lsass.dmp sekurlsa::logonpasswords full
安装
依次执行以下五条命令
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 .
使用
dtmf-decoder(电话音解码)详细: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参数效果会更好
下载:https://github.com/hfeeki/dtmf使用
先将其中dtmf-decoder.py这个脚本中读入文件的部分按照个人需求进行修改
修改后直接运行脚本即可
python dtmf-decoder.py注:如果在py3环境下运行失败的话请换成py2环境再次运行



