Skip to content
KitploitKITPLOIT
工具博客
Log in
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
parquet-canary-exploit-rce-poc-CVE-2025-30065 — 生成恶意 Apache Parquet 文件,以通过 SSRF 回调测试 CVE-2025-30065 RCE 漏洞。专为对 Parquet-avro 处理系统进行授权安全测试而设计。 | Kitploit
工具/GitHubGitHub/f5-labs/parquet-canary-exploit-rce-poc-cve-2025-30065
Payload生成漏洞分析漏洞利用Web安全渗透测试红队
GitHubf5-labs/parquet-canary-exploit-rce-poc-cve-2025-30065

parquet-canary-exploit-rce-poc-CVE-2025-30065

生成恶意 Apache Parquet 文件,以通过 SSRF 回调测试 CVE-2025-30065 RCE 漏洞。专为对 Parquet-avro 处理系统进行授权安全测试而设计。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库
122171年前尚未审核

Parquet CVE-2025-30065 的 Canary 漏洞利用

               (`-.     ('-.
             _(OO  )_ _(  OO)
   .-----,--(_/   ,. (,------.      .-----.  .----.  .-----..------.         .-----.  .----.   .----.   ,--.  .------.
  '  .--.\   \   /(__/|  .---' .-')/ ,-.   \/  ..  \/ ,-.   |   ___|   .-') /  -.   \/  ..  \ /  ..  \ /  .'  |   ___|
  |  |('-.\   \ /   / |  |   _(  OO'-'  |  .  /  \  '-'  |  |  '--.  _(  OO)'-' _'  .  /  \  .  /  \  .  / -. |  '--.
 /_) |OO  )\   '   /,(|  '--(,------. .'  /|  |  '  |  .'  /`---.  '(,------.  |_  <|  |  '  |  |  '  | .-.  '`---.  '.
 ||  |`-'|  \     /__)|  .--''------.'  /__'  \  /  '.'  /__.-   |  |'------.-.  |  '  \  /  '  \  /  ' \  |  .-   |  |
(_'  '--'\   \   /    |  `---.     |       |\  `'  /|       | `-'   /       \ `-'   /\  `'   / \  `'  /\  `'  /| `-'   /
   `-----'    `-'     `------'     `-------' `---'' `-------'`----''         `----''  `---''   `---''  `----'  `----''
         Canary Exploit Generator - https://github.com/F5-Labs/parquet-canary-exploit-rce-poc-CVE-2025-30065

最简快速上手(跳过 README 说明,后果自负):

mkdir -p build/libs
curl -o build/libs/parquet_canary_exploit-fat.jar \
     -L https://github.com/F5-Labs/parquet-canary-exploit-rce-poc-CVE-2025-30065/blob/main/build/libs/parquet_canary_exploit-fat.jar
java -jar build/libs/parquet_canary_exploit-fat.jar --mode=generate YOUR_CALLBACK_URL

这是什么

合规团队?AppSec 团队?漏洞管理团队?F5 Labs 为你们打造了这款工具。该 CVE 的 CVSS 评分为 10 分,这通常意味着需要极短的响应时间。我们将该工具打包为 jar 文件,可为你生成一个 parquet 文件。你可以将其输入到自己的系统中,以判断系统是否存在漏洞——这在修复前后都很有帮助。

该 PoC 的内部实现归功于 Mouad Kondah。他在2025-04-07 发布的分析文章中讨论了此 CVE 及其 PoC。

工作原理

该 parquet 文件滥用了 parquet-avro 中允许将不受信任的 Java String 传递给任意 Java 类构造函数的行为。你提供回调 URL,当你的系统读取该 parquet 文件时,会导致一个 javax.swing.JEditorPane 对象尝试访问该 URL。这是无害的。

演示视频

想快速了解这个 canary 漏洞利用工具吗?观看这段两分钟的 YouTube Short 实时演示视频:[演示视频]。

易受攻击的配置

请注意,F5 Labs 所知 parquet-avro 模块存在两种易受攻击的情形:

  1. 1.15.0 及更早版本——因为当时没有“在将 String 对象强制转换为其他类型时对包进行允许列表(allow-listing)”的概念。
  2. 1.15.1 及更高版本(截至撰写本文时),当且仅当 org.apache.parquet.avro.SERIALIZABLE_PACKAGES 设置被配置为某种宽松值(例如 *)时。

注意事项

你可以将此工具与系统能够出站访问的任何目标一起使用(DNS 和/或 HTTP(S))。如果你的系统无法通过其中任一方式出站访问互联网,那么请考虑数据中心内任何可达且你能获取 DNS 或 HTTP 访问日志的目标。请注意,如果此处配置不当,将导致漏报(false negative)。此外,org.apache.parquet.avro.SERIALIZABLE_PACKAGES 的非常规设置也可能导致漏报,请参见上一小节。

使用 Canary 漏洞利用生成器

我们鼓励你阅读并理解代码,然后自行构建。为方便起见,我们在本仓库中提供了该代码的发行版 jar 包。

获取 Java JDK

构建或运行该生成器需要 JDK 21 或更高版本(搜索“OpenJDK21 install”等关键词可能会有所帮助)。如果你熟悉 JDK 的安装,以下是一些快捷方式:

  • MacOS: brew install openjdk@21
  • Ubuntu/Debian: sudo apt install openjdk-21-jdk
  • Red Hat: sudo yum install java-21-openjdk
  • Windows: https://learn.microsoft.com/en-us/java/openjdk/install

获取发行版 Jar 包

你可以直接下载 jar 包,或者克隆仓库。

下载发行版 Jar 包

mkdir -p build/libs
curl -o build/libs/parquet_canary_exploit-fat.jar \
     -L https://github.com/F5-Labs/parquet-canary-exploit-rce-poc-CVE-2025-30065/blob/main/build/libs/parquet_canary_exploit-fat.jar

克隆此 GitHub 仓库

git clone https://github.com/F5-Labs/parquet-canary-exploit-rce-poc-CVE-2025-30065.git
cd parquet-canary-exploit-rce-poc-CVE-2025-30065

验证你的发行版 Jar 包

file build/libs/parquet_canary_exploit-fat.jar
shasum build/libs/parquet_canary_exploit-fat.jar

预期输出:

build/libs/parquet_canary_exploit-fat.jar: Zip archive data, at least v1.0 to extract, compression method=deflate
19ae361d589a9cd476bee31ba3f437094a8a6440  build/libs/parquet_canary_exploit-fat.jar

获取用法帮助

java -jar build/libs/parquet_canary_exploit-fat.jar -h

预期输出:

生成 Canary 漏洞利用文件

首先,确定你想要的 YOUR_CALLBACK_URL。你需要能够检测到你的 parquet 处理后端是解析了该 URL 的域名,还是向 Web 服务器请求了该 URL。你可以考虑使用 canarytokens.org 的“Web bug”或“DNS”来实现这一点。详见上文“注意事项”部分。

运行以下命令:

java -jar build/libs/parquet_canary_exploit-fat.jar --mode=generate YOUR_CALLBACK_URL

这将生成 poc.parquet。请按如下方式验证:

file poc.parquet

输出应为:

poc.parquet: Apache Parquet

现在可以将此文件输入到你的系统中。如果你的系统存在漏洞,你将收到一次回调。另请参阅“注意事项”部分。

测试 Canary 漏洞利用文件

为方便起见,如果该文件尚不存在,此命令也会生成它。

java -jar build/libs/parquet_canary_exploit-fat.jar --mode=test YOUR_CALLBACK_URL

在本地测试 Canary 漏洞利用

python3 -m http.server --bind 127.0.0.1 9090 &
java -jar build/libs/parquet_canary_exploit-fat.jar --mode=test http://localhost:9090

查看 CanaryExploitGenerator.testParquetFile() 了解 parquet 文件的读取方式。你系统深处的代码将如下所示:

  ParquetReader reader = AvroParquetReader.builder(inputFile).build();
  // enough to trigger the construction of javax.swing.JEditorPane
  Object object = reader.read();

免责声明

本工具仅用于经授权的安全测试环境。请了解适用司法管辖区的相关法律。法律细节请参阅 LICENSE.md。

下载工具