LCBOWER33/StegoScan
GitHub: LCBOWER33/StegoScan
StegoScan 是一款结合 AI 视觉模型的自动化隐写检测与深度文件分析工具,用于从网站、服务器和本地存储中大规模发现隐藏信息。
Stars: 99 | Forks: 7
# StegoScan
## 概述
StegoScan.py 是一款功能强大的下一代工具,用于在网站、Web 服务器和本地目录中进行自动化的隐写术检测,它将 AI 驱动的对象与文本识别与深度文件分析相结合。传统的隐写术检测工具通常只关注有限的文件类型或需要手动处理,与此不同,StegoScan.py 专为全面、自动化的扫描而设计——能够抓取网站、剖析嵌入的文件,并跨越多种格式(包括 PNG、JPG、BIN、PDF、DOCX、WAV 和 MP3)检测隐藏信息。
该工具具备网站和 Web 服务器扫描功能,使其对于监控非法数据交换的安全研究人员或追踪网络犯罪分子的执法部门来说具有无与伦比的价值。只需一条命令即可分析整个域名或 IP 范围,检索并检查可疑媒体和文档以寻找隐藏的通信内容。无论是在暗网市场中检测隐蔽的数据交换,在虚假信息活动中识别嵌入的宣传内容,还是在恐怖组织网络中揭示隐藏的指令,StegoScan.py 都能提供对隐写威胁的无与伦比的可见性。
其在隐写检测方面的一项改进是集成了 YOLO 和 TrOCR 等 AI 模型,用于对图像和音频文件中的对象和文本进行检测,而这些以前必须经过人工验证。传统的 OCR(光学字符识别)工具 notoriously 不可靠,由于噪声、失真或非标准字体,通常甚至无法识别图像中隐藏的基本文本。StegoScan.py 通过提供可选的 AI 增强文本检测克服了这一问题,极大地提高了从图像、扫描文档甚至音频频谱图中提取隐藏信息的能力。这对于需要从受损媒体中进行高置信度文本提取的司法分析师、网络安全专业人员和执法机构来说是一个颠覆性的改变。
另一个新颖的功能是深度文件提取——这是隐写分析领域的一项关键进步。StegoScan.py 不仅仅扫描 PDF 和 DOCX 文件的表面;它更进一步,提取并分析其中嵌入的文件。这意味着可以揭开隐藏在附件或深度嵌套文档中的隐写内容,从而解决了传统扫描工具的一个主要盲点。
通过将多种隐写分析技术结合到一个统一的测试中,StegoScan.py 为文件提供了详细的多层分析,为安全团队、数字取证专家和网络安全研究人员提供了一种应对不断演变的数字威胁的尖端解决方案。随着隐写术变得越来越复杂,传统工具已经显得力不从心——StegoScan.py 通过检测其他工具遗漏的内容,确保组织始终领先于恶意行为者。有关隐写术及其使用方法的更详细说明,请查看标题为“StegoScan 的背景与原理”的章节。
## StegoScan 的工作原理
StegoScan 首先会设置自己专用的 Python 环境,创建本地工作区,并安装所有必要的工具和包以支持其分析功能套件。一切准备就绪后,它会验证提供的 IP 地址(如果选中),以确保它们属于活跃的 Web 服务器。
确认目标后,StegoScan 开始工作——从指定的 IP 地址和 URL 中抓取所有指定类型的可用文件。如果选择了本地目录,它也会从那里收集文件。收集到的每个文件都按类型整齐地组织并存储在所选目录中。
接下来,StegoScan 准备一个结果目录并启动其隐写检测测试套件。有关可用测试的更多详细信息,请查看标题为“隐写测试”的章节。随着隐藏数据的被发现,文件被分类并存储在与识别它们的特定测试相对应的子文件夹中。一旦所有测试完成运行,StegoScan 将完成处理并结束执行。
## 演示视频
[](https://youtu.be/3GZBubhOTcY)
## 新特性
* 网站和 Web 服务器扫描能力 —— 不同于仅关注静态文件的传统隐写分析工具,StegoScan.py 能够主动扫描整个网站、IP 范围和 Web 服务器以寻找隐藏信息。无论是调查暗网市场、网络犯罪论坛还是受损的企业网站,它都能自动化整个检索和分析文件以寻找嵌入隐写内容的过程。无需再手动下载和排序——StegoScan 为您完成一切!
* 图像和音频文件上的 AI 对象和文本检测 —— 传统的 OCR(光学字符识别)不可靠,在处理扭曲文本、非标准字体或嘈杂图像时经常会失败。StegoScan.py 集成了 YOLO 和 TrOCR 等高级 AI 模型以增强文本提取和对象检测,能够揭示标准 OCR 完全遗漏的隐藏信息。甚至音频频谱图也可以被扫描以查找隐写内容,从而提供对隐藏数据交换的洞察。
* PDF 和 DOCX 文件中的深度文件提取 —— 大多数工具在分析文档文件时只触及表面,但 StegoScan.py 挖得更深!它会自动提取隐藏在 PDF、DOCX 文档和其他复杂格式中的嵌入文件,并分析它们是否包含隐写数据。这消除了一大盲点——隐藏在看似无害文档中的有效载荷不再能逃脱检测。不再有被忽略的隐藏文件——只要它在那里,StegoScan 就会找到它。
* 结合工具的测试以进行详细的文件分析 —— StegoScan.py 绝不是只有单一功能的工具。它将多种隐写检测方法结合到一个强大且单一的测试中,确保对每个扫描文件进行分层、彻底的分析。StegoScan 不会依赖单一的检测技术(该技术很容易被规避),而是使用多种方法对文件进行交叉检查,以最大化检测准确性。
* 自动化并针对 Linux 进行了优化 —— 厌倦了处理依赖关系吗?StegoScan.py 是即插即用的。它会自动安装所需的组件,确保扫描过程顺畅高效,无需手动设置。它为速度和效率而生,在 Linux 上无缝运行,使其成为网络安全专业人员、渗透测试人员和取证分析师的完美工具。
## 常规功能
* Web 抓取与文件下载 —— 自动从 URL、IP 地址和 IP 范围中提取和下载特定文件类型,实现大规模 Web 内容分析。
* 本地目录提取与测试 —— 扫描本地目录以查找隐写内容,识别存储文件中的隐藏信息。
* 图像处理与隐写分析 —— 使用多种检测技术对图像执行深度隐写测试,以揭示隐藏数据。
* 从 PDF 和 DOCX 中提取嵌入文件 —— 从 PDF 和 DOCX 文档中提取并分析图像和嵌入文件,这是识别深度隐藏隐写内容的关键步骤。
* 隐写检测工具 —— 集成 stegano、stegdetect 和 zsteg,用于对图像文件中隐藏的信息进行多层检测。
* AI 驱动的对象与文本检测 —— 通过 AI 驱动的分析增强传统检测方法:
* YOLOv8 用于高精度对象检测,识别嵌入的图像和符号。
* TrOCR 用于高级文本识别,从手写、风格化或扭曲字体中提取文本,其准确性优于标准 OCR 工具。
* 基础恶意软件与 ELF 文件分析 —— 对 ELF 二进制文件和其他可执行文件执行初步安全分析,帮助识别潜在的恶意软件威胁。
* 音频与二进制文件分析 —— 分析 WAV 和 MP3 文件以查找隐藏的隐写数据,包括嵌入在频谱图或不可闻频率范围中的信息。
* 二进制文件结构提取 —— 利用 Binwalk 提取和检查二进制文件中隐藏的文件、固件和嵌入数据。
* 多线程支持 —— 针对性能进行了优化,能够快速高效地扫描大型数据集,是取证调查和大规模网络安全应用的理想之选。
# 隐写测试
(在某些测试下方是用于测试该工具的示例文件,直观地概述了测试将揭示的内容以及在通信站点上这些文件可能有多么不引人注目)
1. LSB - 使用 stegano Python 导入库来检查 PNG 文件中隐藏在文件 LSB(最低有效位)中的纯文本信息。
Unaltered image on the left, "hello world" embedded in the image on the right
2. 图像完整性 - 使用 Pillow Python 导入库来检查 PNG 和 JPG 文件的完整性。 3. 直方图 - 使用 Matplotlib Python 导入库生成直方图,以显示 PNG 和 JPG 文件的 RGB 颜色值分布。 4. 对象检测 - 使用 YOLOv8 和 TrOCR,通过迭代移除 LSB 并仅测试图像上的红色、绿色和蓝色滤镜来测试 PNG 和 JPG 文件的每一层。
Hidden image of a cat hidden in the LSBs uncovered with YOLOv8 [2]
5. Jpeg - 使用 Stegdetect Linux 命令行工具测试 JPG 文件,以检测使用 jSteg、jphide、Outguess、F5(头部分析)、invisible secrets、appendX 和 camouflage 等技术嵌入图像中的隐藏数据。 6. Png - 使用 Zsteg Linux 命令行工具测试 PNG,以检测 LSB 隐写术,检查不同的颜色通道(R、G、B、A)及其位平面,检测用于在图像中隐藏数据的常见编码技术,提取有效载荷,检测文本和 ASCII 隐藏信息以及进行熵分析。
Unaltered image on the left, the right image "has the first chapter of the “Hunting of the Snark” embedded into it" [1]
7. 音频完整性 - 使用 Wave Python 导入库来检查 MP3 和 WAV 文件的完整性。 8. 音频检测 - 使用 Librosa Python 导入库为 MP3 和 WAV 文件生成音频频谱图,然后将这些频谱图通过 YOLOv8 和 TrOCR 运行,以检查在文件持续时间内频率值的描绘中是否隐藏了图像或信息。
[Listen to the audio](https://github.com/LCBOWER33/StegoScan/blob/main/images/Drawing_of_the_word_Wikipedia.wav)
Hidden text message inside of an audio file uncovered using TrORC [2]
9. 二进制 - 使用 Binwalk Linux 命令行工具测试二进制文件中是否包含嵌入的文件和数据,识别二进制文件中的已知文件签名(例如 ZIP、PNG、ELF 等),检测二进制映像、压缩和加密数据中的固件组件,查找文件内部的压缩数据(例如 LZMA、GZIP、BZIP2),标记加密或混淆的数据、文件系统签名,识别嵌入的文件系统(例如 SquashFS、JFFS2、EXT、FAT),检测已编译的可执行文件(ELF、PE、Mach-O),识别引导加载程序和固件组件,并进行熵分析。 10. Elf 检查 - 使用 YARA 规则、魔术字节、Linux file 命令和熵分析来检查所有文件中是否嵌入了恶意软件。 # 参数: -u, --url : 用于抓取文件的基础 URL、IP 地址或 IP 范围。 -t, --types : 要下载的文件扩展名逗号分隔列表(* 表示所有文件)。 -n, --num : 要下载的文件数量。 -o, --output : 输出目录。 -m, --mode : 指定特定测试(例如 lsb,hist)或 "all" 运行所有测试的测试模式。 -l, --local : 用于分析的本地文件或目录的路径。 # 示例命令 ## 基本用法 sudo python StegoScan.py -u "https://example.com" -t "*" -o "downloads" -m "all" ## 从 URL 下载文件 sudo python StegoScan.py -u "https://example.com" -t "jpg,png" -n 5 -o "downloads" -m "all" ## 分析本地目录 sudo python StegoScan.py -l "path/to/local/files" -t "*" -o "downloads" -m "lsb,hist,png" # GUI 虽然 GUI 仍在开发中并正在整合到整个系统中,但这是当前的版本:
标签:AI安全, Chat Copilot, JPG分析, MP3分析, OCR, PDF分析, PNG分析, Python, StegoScan, TrOCR, WAV分析, YOLO, 光学字符识别, 反恐安全, 多媒体安全, 威胁情报, 开发者工具, 情报收集, 数字取证, 数据隐藏检测, 无后门, 暗网监控, 本体建模, 深度学习, 漏洞研究, 网站扫描, 网络安全, 网络犯罪调查, 自动化脚本, 舆情监测, 计算机视觉, 逆向工具, 隐写分析, 隐写术, 隐私保护, 音频隐写