news 2026/10/6 14:07:49

Blackash CVE-2025-66516 - Apache Tika 核心XXE漏洞检测工具

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Blackash CVE-2025-66516 - Apache Tika 核心XXE漏洞检测工具

🛡️ Blackash CVE-2025-66516:Apache Tika 核心XXE漏洞检测器

[
[
[

CVE-2025-66516是一个存在于 Apache Tika 核心处理引擎中的严重 XML 外部实体注入漏洞。攻击者无需任何认证或用户交互,仅需上传一个特制的包含 XFA 表单的 PDF 文件,即可实现敏感文件读取、服务端请求伪造,甚至在特定条件下执行远程代码。本工具旨在帮助安全团队和企业管理员,安全、无侵入地检测内部 Apache Tika 服务是否受此漏洞影响。

✨ 功能特性

  • ⚡️ 零接触检测:仅通过请求/version端点来获取版本号,绝不发送任何恶意 payload,确保检测过程绝对安全。
  • 📋 全面的版本库:内置了从1.13到3.2.1的所有受影响版本列表,涵盖tika-core和tika-parsers。
  • 🌐 简单易用:命令行工具,只需提供目标 Tika 服务的 URL,即可一键检测。
  • 🚨 清晰的风险提示:检测完成后,会明确输出“易受攻击”或“安全”的状态,并提供紧急修复建议。

📦 安装指南

系统要求

  • Python 3.x
  • pip包管理器

安装步骤

  1. 克隆或下载本工具到本地。
  2. (可选但推荐)创建并激活 Python 虚拟环境:
    python -m venv venvsourcevenv/bin/activate# 在 Windows 上使用 `venv\Scripts\activate`
  3. 安装所需的依赖库:
    pipinstallrequests urllib3

工具无需复杂安装,所有依赖仅为标准的 HTTP 请求库。

🚀 使用说明

基础用法

在终端中执行以下命令:

python CVE-2025-66516.py<目标Apache Tika服务器的URL>

示例:

# 检测本地运行的 Tika 服务python CVE-2025-66516.py http://127.0.0.1:9998# 检测内网中的 Tika 服务python CVE-2025-66516.py http://192.168.1.100:9998

典型使用场景

  1. 内部资产扫描:在企业内部网络中对所有运行 Apache Tika 的服务器进行批量检测,快速定位脆弱资产。
  2. CI/CD 安全门禁:在部署文档处理服务之前,作为 CI/CD 流水线的一环,自动检测新部署的 Tika 版本是否存在漏洞。
  3. 漏洞验证:安全人员在获得授权后,使用本工具验证漏洞是否存在,为后续的修复工作提供依据。

工具输出概览

执行后,你将看到类似如下的输出:

  • 易受攻击状态 🚨:

    [*] Targeting: http://127.0.0.1:9998 [+] Version response from /version: Apache Tika 3.2.1 🚨 VULNERABLE to CVE-2025-66516 (CVSS 10.0)! Upgrade to Apache Tika ≥ 3.2.2 immediately
  • 安全状态 ✅:

    [*] Targeting: http://127.0.0.1:9998 [+] Version response from /version: Apache Tika 3.2.2 ✅ SAFE – version is patched or not affected

💻 核心代码

1. 漏洞版本库定义

工具的核心在于一个精确的易受攻击版本列表,确保检测结果的准确性。

# 定义所有受 CVE-2025-66516 影响的 Apache Tika 版本VULNERABLE_VERSIONS={# tika-core 受影响的主要版本分支"1.","2.","3.0","3.1","3.2.0","3.2.1",# tika-parsers (旧分支) 受影响的具体版本"1.13","1.14","1.15","1.16","1.17","1.18","1.19","1.20","1.21","1.22","1.23","1.24","1.25","1.26","1.27","1.28.0","1.28.1","1.28.2","1.28.3","1.28.4","1.28.5"}

2. 版本获取逻辑

安全地获取目标 Tika 服务的版本信息,优先尝试/version端点。

defcheck_tika_version(url,timeout=10):""" 向目标 Tika 服务器请求版本信息。 尝试访问 /version 和根路径 /,以兼容不同配置。 """try:# 尝试两个常见的版本信息端点forendpointin["/version","/"]:r=requests.get(f"{url.rstrip('/')}{endpoint}",timeout=timeout,verify=False,# 忽略 SSL 证书错误,便于内网测试headers={"Accept":"text/plain"})# 如果请求成功,返回获取到的版本字符串ifr.status_code==200:version=r.text.strip()print(f"[+] Version response from{endpoint}:{version}")returnversionexceptExceptionase:# 捕获连接超时、拒绝连接等网络错误print(f"[-] Connection error:{e}")returnNone# 无法获取版本信息时返回 None

3. 漏洞判断逻辑

将获取的版本号与预定义的漏洞版本库进行比对。

defis_vulnerable(version):""" 判断给定的版本字符串是否属于易受攻击的版本列表。 """ifnotversion:returnFalse# 清理版本字符串,例如将 "Apache Tika 3.2.1" 转换为 "3.2.1"version=version.lower().replace("apache tika ","").strip()# 检查清理后的版本是否以漏洞列表中的任何一个字符串开头forvulninVULNERABLE_VERSIONS:ifversion.startswith(vuln):returnTruereturnFalse

4. 主执行流程

整合以上逻辑,提供清晰的命令行交互和结果输出。

defmain():# 显示工具 Bannerbanner()# 检查命令行参数iflen(sys.argv)!=2:print("Usage: python3 CVE-2025-66516.py http://target:9998")print("Example: python3 CVE-2025-66516.py http://192.168.1.10:9998")sys.exit(1)target=sys.argv[1]print(f"[*] Targeting:{target}\n")# 1. 获取版本version=check_tika_version(target)ifnotversion:print("[-] Could not retrieve Tika version – is it running?")sys.exit(1)# 2. 判断漏洞ifis_vulnerable(version):# 输出高风险警告print("🚨 VULNERABLE to CVE-2025-66516 (CVSS 10.0)!")print(" Upgrade to Apache Tika ≥ 3.2.2 immediately")else:# 输出安全状态print("✅ SAFE – version is patched or not affected")```FINISHED 6HFtX5dABrKlqXeO5PUv/84SoIo+TE3firf/5vX8AZ6WP5rkCkLHKrkZYqOJIIlf 更多精彩内容 请关注我的个人公众号 公众号(办公AI智能小助手) 对网络安全、黑客技术感兴趣的朋友可以关注我的安全公众号(网络安全技术点滴分享)
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/4 8:23:41

小型核反应堆技术现状与挑战

某国政府宣布了一项计划&#xff0c;将在全国建造十几座小型核反应堆&#xff0c;并称之为核能新的“黄金时代”。最终目标之一是帮助该国在三年内最终摆脱对某国能源的依赖。但问题是&#xff0c;这些小型核反应堆在工程和商业上是否合理&#xff1f;它们真的能建成吗&#xf…

作者头像 李华
网站建设 2026/10/6 8:40:26

Fish Speech 1.5实战教程:从零开始搭建你的语音合成平台

Fish Speech 1.5实战教程&#xff1a;从零开始搭建你的语音合成平台 你是不是也遇到过这种情况&#xff1a;想给视频配音但找不到合适的声音&#xff0c;或者需要制作多语言内容却苦于没有专业配音师&#xff1f;传统的语音合成工具要么声音机械不自然&#xff0c;要么需要大量…

作者头像 李华
网站建设 2026/10/6 8:16:55

股市赚钱学概论:赚钱理之七,赚通胀的钱

市场经济中&#xff0c;纸币&#xff08;法币&#xff09;是一直在贬值的。存款有利息&#xff0c;也在悄悄贬值。而经营情况正常的股票&#xff0c;是可以抵抗通胀的。这是容易被忽略的道理。

作者头像 李华
网站建设 2026/10/4 18:33:33

BEYOND REALITY Z-Image提示词技巧: 中英混合输入实测

BEYOND REALITY Z-Image提示词技巧: 中英混合输入实测 1. 引言 在AI绘画领域&#xff0c;提示词的质量直接影响生成图像的效果。BEYOND REALITY Z-Image作为一款基于Z-Image-Turbo架构的高精度写实文生图引擎&#xff0c;对中英文提示词的处理有着独特的优势。本文将深入测试…

作者头像 李华
网站建设 2026/10/4 18:33:50

Llama-3.2-3B应用指南:智能摘要生成实战

Llama-3.2-3B应用指南&#xff1a;智能摘要生成实战 1. 为什么选Llama-3.2-3B做摘要任务 你是否遇到过这样的场景&#xff1a;手头有一篇2000字的技术文档&#xff0c;需要在5分钟内提炼出核心观点&#xff1b;或者刚读完一篇行业分析报告&#xff0c;却记不住关键数据和结论…

作者头像 李华
网站建设 2026/10/4 18:34:07

2026最新!9个AI论文工具测评:研究生毕业论文与科研写作必备神器

在科研与学术写作日益数字化的今天&#xff0c;论文撰写已成为研究生阶段的核心任务之一。然而&#xff0c;从选题构思到文献综述、数据整理再到最终成稿&#xff0c;整个过程往往面临效率低下、格式混乱、内容重复等多重挑战。为帮助广大研究生更高效地完成毕业论文与科研写作…

作者头像 李华