Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-85248 — 针对 CVE-2026-85248 的可运行 Spring Boot 和 Quarkus 复现程序,该漏洞是 camel-pqc 并发 Signature 竞态条件导致 ML-DSA 签名验证绕过,包含受影响版本与修复版本的构建。 | Kitploit
工具/GitHubGitHub/oscerd/cve-2026-85248
漏洞分析漏洞利用Web应用程序漏洞利用密码学学习与教育
GitHuboscerd/cve-2026-85248

CVE-2026-85248

针对 CVE-2026-85248 的可运行 Spring Boot 和 Quarkus 复现程序,该漏洞是 camel-pqc 并发 Signature 竞态条件导致 ML-DSA 签名验证绕过,包含受影响版本与修复版本的构建。

查看仓库
116小时52分前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-85248 — camel-pqc:并发 Signature 竞态(签名验证绕过)

针对 Apache Camel 漏洞的可运行概念验证复现程序:PQC 生产者持有单个 java.security.Signature 实例,并在每次交换中复用它而不做同步。Signature 是有状态的,且不是线程安全的:update() 累积待签名或待验证的数据,而 verify()/sign() 会消耗这些累积的状态。当并发交换共享同一个实例时,不同消息的 update 和 verify 调用会相互交错,因此一次验证可能针对属于另一次交换的数据完成,或针对部分累积的缓冲区完成。其结果是不可确定的,并且包括对一条从未真正校验过签名的消息报告验证成功,这破坏了该组件本应提供的保证。触发该问题只需要通过同一端点产生并发流量——这正是 Camel 路由在负载下的常见条件。

运行时目录技术栈
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-pqc 4.22.0(受影响;修复版本 4.22.1)
Camel Quarkuscamel-quarkus/Quarkus 3.39.0 + camel-quarkus-pqc(Camel 4.22.0,受影响;修复对照 CQ 3.40.0 / Camel 4.22.1)

两个模块都演示了受影响和修复后的行为。

演示内容

一条路由用后量子 ML-DSA 密钥对每条消息签名,然后立即验证它刚刚生成的签名,因此每一条合法签名的消息都必须验证为 true。驱动程序通过共享的 pqc: 生产者并发执行 1024 次这样的签名→验证往返(16 个线程)。

  • 受影响:1024 次验证中有数百次不会返回 true——有些返回 false,有些抛出签名引擎错误——因为跨并发交换共享的单个有状态 Signature 被交错操作破坏。验证结论不再对应它所针对的消息。(同样的竞态,在危险的方向上,会让 verify() 对它从未覆盖的数据返回成功。)
  • 修复后:全部 1024 次往返均验证通过,因为每次交换都使用自己的 Signature 实例。
# Camel Spring Boot
cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected: many of 1024 broken; >>> PROVEN
docker compose down
# Patched control
mvn clean package -Dcamel.version=4.22.1
java -jar target/cve-2026-85248-pqc-signature-race-0.0.1-SNAPSHOT.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: 0 broken; >>> Not exploited
# Camel Quarkus
cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack     # affected (Camel 4.22.0): many broken
docker compose down
# Patched control: CQ 3.40.0 ships Camel 4.22.1
mvn clean package -Dcamel-quarkus.version=3.40.0 -Dquarkus.platform.version=3.40.0
java -jar target/quarkus-app/quarkus-run.jar &
curl -s http://localhost:8080/exploit/attack     # fixed: 0 broken

该竞态本质上依赖时序;复现程序驱动了足够的并发(1024 次往返),因此在受影响的构建上能够可靠地显现。如果某次受影响运行显示 0 个损坏,请重新运行。

漏洞摘要

属性值
组件camel-pqc(PQCProducer 签名/验证)
CWECWE-362(使用共享资源的并发执行且同步不当)
严重性中
攻击向量通过同一 pqc: 端点的并发流量共享一个有状态的 java.security.Signature
影响非确定性的签名验证;验证可能对一条从未检查过签名的消息报告成功
受影响版本从 4.12.0 起至 4.18.5 之前,从 4.19.0 起至 4.22.1 之前
修复版本4.18.5、4.22.1、4.23.0
JIRACAMEL-24445
致谢Claude Security Scan Tool

公告:https://camel.apache.org/security/CVE-2026-85248.html

修复

PQCProducer 不再在并发交换之间共享 Signature。当生产者自行创建实例时,现在会为每个交换创建新实例(signerForExchange());当用户配置了(JVM 范围的 public static final)实例时,对该实例的访问是 synchronized 的。无论哪种方式,都不会有两个交换在同一个实例上交错执行其 init/update/verify 序列。

无法升级时的缓解措施

将受影响的路由限制为单个并发消费者,以便不会有两个交换同时使用该 Signature 实例。

免责声明

本仓库出于教育和防御目的发布:帮助 Apache Camel 用户理解该漏洞、验证自己是否受影响,并确认升级可以解决该问题。消息和密钥均为无实际作用的本地测试数据。请勿将本材料用于您不拥有或运营的系统。

下载工具