[ misc 知识点 ] Misc 工具速查
2026-08-22 20:05:38

拷自 https://hello-ctf.com/hc-env/CTFtool/#misc 方便查阅
编码 / 解码 / 解密 工具

项目名称 Usage 项目地址 文档
CyberChef 近乎全能的编码解码工具。 官网
国内中文镜像站
/
Ciphey 自动化解密工具。 GitHub
CTFCrackTools 国内首个 CTF 工具框架 , 内涵多个主流密码加解密,支持添加支持 Python 编写的插件。 GitHub /
  • 文本 / Hex 编辑 | 文件工具
项目名称 Usage 项目地址 文档
010 Editor 专业的文本编辑器和 16 进制编辑器,可通过加载模块脚本,解析文件结构。 官网 /
lmHex 开源的 16 进制编辑器。    GitHub
WinHex 16 进制编辑器为核心的数据处理软件。 官网 /
Binwalk 可识别文件分离提取工具,常用于从文件中提取隐写到其中的其他文件。 GitHub /
Foremost 用于提取一个文件中包含的多个文件。
  • 隐写工具 | 图像 / 音频
项目名称 Usage 项目地址 文档
Qrazybox 二维码分析和恢复 GitHub
Usagepage
QR Research 专业的二维码扫描识别软件,支持多个纠错等级,掩码选项 (已停止维护)。 / /
UleadGIFAnimator 高级 GIF 编辑器 / 吾爱论坛
—– 图像类
Stegsolve 图像分析工具。    GitHub /
TweakPNG 用于检查和修改 PNG 图像文件 |类似于 010 的 Png Template 功能  官网 /
BlindWaterMark(python) 基于 python 的图像盲水印 GitHub /
BlindWatermark(java) 基于 java 的图像盲水印 GitHub /
WaterMark(隐藏水印) 图像隐写工具,在频域添加数字水印  / 吾爱论坛
WaterMarkH 单图盲水印 (频域隐写) 工具 / /
zsteg PNG 和 BMP 图片隐写 GitHub /
StegoVeritas 隐写工具 GitHub /
Stegdetect 检测 jpeg 图像隐写工具,搭配 stegbreak 食用更佳 GitHub
  • 取证工具
项目名称 Usage 项目地址 文档
Forensics-Wiki 取证综合资料库 官网 /
—– 密码爆破
ZipCenOp 伪加密加 / 解密工具    GitHub /
ARCHPR 压缩文件密码暴力破解工具。 / /
Ziperello zip 压缩包密码恢复软件。 / /
Aopr Office 文件密码暴力破解工具。 / /
Passware Kit Forensic 十分强大的解密工具,各类文件 / 磁盘密码爆破,密钥搜索等 / 依依的汉化包
汉化版
Hashcat 高性能,GPU/CPU 兼容的本地密码破解,支持多种不同格式 GitHub /
John the Ripper 简单易用的离线破解 GitHub /
Hydra 远程或在线密码的并行暴力破解。 GitHub /
—– 流量分析
Wireshark 流量分析取证软件。   官网 /
—– 内存 磁盘 取证
Volatility 内存分析取证软件。    官网
GitHub
/
MemProcFS 新型内存取证框架 GitHub /
NtfsStreamsEditor NTFS 流分析 官网 /
R-Studio 内存取证 tick+ 磁盘文件恢复分析 官网 /
AutoPsy 用来分析磁盘映像和恢复文件的开源取证工具 官网 /
RegistryExplorer 注册表文件分析器 官网 /
PowerToy 注册表文件分析器 GitHub /

kali工具

🏷️ 例题:
| 20251206Mini VN welcome.pdf(wbStego/汉信码/盲水印)
| 20260124SpringCTF 启程目标塔卫二(Deepsound/ffmpeg)
| 20251201ISCTF 小蓝鲨的周年庆礼物(VeraCrypt+零宽隐写)
| 20251108浙江省赛 RecoverWallet(BIP-39钱包恢复)
| 20260202SHCTF Open my puff(OpenPuff隐写工具)
| 20260130furryCTF CyberChef(chef语言解码)

steghide

安装

sudo apt update

sudo apt install steghide -y

使用

steghide extract -sf **path** -p '**password**'

OurSecret

  • “我们的秘密”
  • 文件比较后面有冗余的9E 97 BA 2A
  • 居然是电视剧《暗格里的秘密》中文名

https://oursecret.apponic.com/download/

下载File到桌面

![Misc tools-01](/img/obsidian/misc-knowledge-tools/Misc tools-01.png)

![Misc tools-02](/img/obsidian/misc-knowledge-tools/Misc tools-02.png)

9E 97 BA 2A也是OurSecret隐写的特点

Deepsound

Open carrier files放文件

填入密码

Extract secret files提取文件

点下面蓝链获得隐藏文件

![Misc tools-03](/img/obsidian/misc-knowledge-tools/Misc tools-03.png)

隐写术

零宽隐写

零宽隐写是一种利用不可见不可打印但真实存在的Unicode零宽度字符的隐写技术。

零宽度字符是一种在视觉上不占空间 但在计算机中的确存在且占据字符位置的Unicode控制字符。

![Misc tools-04](/img/obsidian/misc-knowledge-tools/Misc tools-04.png)

不会在网页或文本编辑器中显示,但是可以被复制粘贴存储和程序读取。

零宽隐写通过不同的零宽字符代表二进制位0/1或者摩斯密码·/-等编码单元 把隐写内容嵌入到一段看似正常的公开文本中

1.把那段话复制到cyberchef 可以看到一些红点

![Misc tools-05](/img/obsidian/misc-knowledge-tools/Misc tools-05.png)

2.配方使用Escape Unicode Chaecaters

在输出可以看到\u200B``\u200C``\u200D之类的零宽字符 记下出现了哪些零宽字符

3.把那段话复制到在线网址右边的红框里

https://330k.github.io/misc_tools/unicode_steganography.html

![Misc tools-06](/img/obsidian/misc-knowledge-tools/Misc tools-06.png)

4.按照第二步出现的零宽字符在Zero Width Characters for Steganography:

里面勾选出现的零宽字符 就像这样

![Misc tools-07](/img/obsidian/misc-knowledge-tools/Misc tools-07.png)

5.获得隐写内容

![Misc tools-08](/img/obsidian/misc-knowledge-tools/Misc tools-08.png)

文本隐水印

https://www.guofei.site/pictures_for_blog/app/text_watermark/v1.html

Brainfuck加密

https://www.splitbrain.org/services/ook

社会主义核心价值观加密

https://apiked.com/core_values

二进制十进制数的转换

https://www.jyshare.com/unit-conversion/7988/

bmp

文件头14字节

42 4D /50 87 06 00/00 00/00 00/36 00 00 00

BM/文件尺寸/保留字1/保留字2/位图数据部分相对于文件首的起始偏移量

![Misc tools-09](/img/obsidian/misc-knowledge-tools/Misc tools-09.png)

位部信息头:40字节

信息头部大小:28 00 00 00相当于十六进制的28 对应十进制就是40 此处信息头部大小一般为40或者56 信息头部大小一般为28 00 00 00或者38 00 00 00

图像宽度:84 03 00 00读取是每一个信息块字节从右向左排序 也就是00 00 03 84十六进制00 00 00 03 84对应十进制是 900

图像高度:96 00 00 00同理 读取00 00 00 96对应十进制是150

![Misc tools-10](/img/obsidian/misc-knowledge-tools/Misc tools-10.png)

图源ctfshow Misc入门:Misc30

binwalk和foremost

binwalk -eM 文件地址

foremost

工具 原理 优点 缺点
binwalk 基于签名(magic bytes)扫描 + 尝试智能提取 能识别多种嵌入格式(ZIP、ELF、YAFFS等),支持递归分析 依赖外部工具提取;若无对应解包器,会失败
foremost 基于文件头/尾的原始 carving(数据雕刻) 不依赖文件系统,直接按已知文件头尾恢复数据 只能恢复它内置支持的格式(如 JPG、ZIP、PDF 等)

常用脚本

PNG图片CRC爆破并还原

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import binascii
import struct

with open("2.png", "rb") as f:
data = bytearray(f.read())

# 提取 CRC 和固定尾部
orig_crc = struct.unpack('>I', data[29:33])[0]
tail = data[24:29]

for w in range(1, 4000):
for h in range(1, 4000):
chunk = b'IHDR' + struct.pack('>II', w, h) + tail
if binascii.crc32(chunk) & 0xffffffff == orig_crc:
data[16:24] = struct.pack('>II', w, h)
data[29:33] = struct.pack('>I', binascii.crc32(chunk) & 0xffffffff)
with open("fixed_2.png", "wb") as f:
f.write(data)
print(f"✅ 修复成功: {w}x{h} → fixed_2.png")
exit()

print("❌ 未找到匹配尺寸")

多次Base64解码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import base64

def decode(f):
n = 0;
while True:
try:
f = base64.b64decode(f)
n += 1
except:
print('[+]Base64共decode了{0}次,最终解码结果如下:'.format(n))
print(str(f,'utf-8'))
break

if __name__ == '__main__':
f = open('base64.txt','r').read()
decode(f)

gif帧提取

1
2
3
4
5
6
7
8
9
10
11
12
13
from PIL import Image
import os
import sys

gif_path = sys.argv[1]
out_dir = sys.argv[2] if len(sys.argv) > 2 else os.path.splitext(gif_path)[0] + "_frames"
os.makedirs(out_dir, exist_ok=True)

with Image.open(gif_path) as im:
for i in range(im.n_frames):
im.seek(i)
im.convert("RGBA").save(os.path.join(out_dir, f"frame_{i:04d}.png"))
print(f"✅ 已保存 {im.n_frames} 帧到 {out_dir}")

解压tar/gz文件

1
2
3
4
5
import tarfile

# 解压 .tar, .tar.gz, .tar.bz2 等
with tarfile.open("file.tar.gz", "r:*") as tar:
tar.extractall(path="output_folder")

社会主义核心价值观解码

https://z.duoluosb.com/

隐写方法速查

LSB隐写(zsteg/stegsolve)

010直接打开

宽高隐写

加密压缩包

伪加密

archpr爆破

已知明文加密

上一页
2026-08-22 20:05:38
下一页