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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-66908 — Apache Camel JWT 身份验证绕过(CVE-2026-66908)的概念验证复现器,演示 camel-platform-http-main 中缺少 iss/aud 校验的问题,附带基于 Docker 的环境搭建与验证步骤。 | Kitploit
工具/GitHubGitHub/oscerd/cve-2026-66908
漏洞分析漏洞利用Web安全身份验证学习与教育
GitHuboscerd/cve-2026-66908

CVE-2026-66908

Apache Camel JWT 身份验证绕过(CVE-2026-66908)的概念验证复现器,演示 camel-platform-http-main 中缺少 iss/aud 校验的问题,附带基于 Docker 的环境搭建与验证步骤。

查看仓库
10小时1分前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-66908 — camel-platform-http-main 未校验 JWT iss/aud

针对 Apache Camel 漏洞的可运行 PoC 复现工具:当未配置 jwtIssuer 或 jwtAudience 时,camel-main 内嵌 HTTP 服务器仅凭密钥库构建其 JWT 认证器,因此入站令牌仅检查签名和过期时间——iss 和 aud 声明从未被校验。

运行时目录技术栈
Camel Main(独立运行)camel-main/camel-main 4.21.0 + camel-platform-http-main

为什么选择 camel-main 而不是 Camel Spring Boot / Camel Quarkus? 受影响的类 JWTAuthenticationConfigurer 位于 camel-platform-http-main 中——即 camel-main 内嵌 HTTP 服务器 (MainHttpServer),供独立 camel-main 应用和 camel-jbang 使用。该服务器不是 Camel Spring Boot 的 platform-http 集成(基于 servlet),也不是 Camel Quarkus 的实现(Quarkus/Vert.x HTTP,带 自己的安全机制),因此对于这个特定缺陷,不存在忠实的 Spring Boot 或 Quarkus 复现方案。本仓库因此提供了一个独立的 camel-main 复现程序,它是该 bug 的准确宿主环境。

root@kitploit:~
cd camel-main
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit
docker compose down

受影响构建上的预期输出:

root@kitploit:~
[1] GET /protected 无令牌                             -> HTTP 401  (已强制认证)
[2] GET /protected 使用令牌 iss=https://attacker.example aud=some-unrelated-service  -> HTTP 200  (已接受——iss/aud 未被校验)
[3] GET /protected 使用同一令牌但已过期               -> HTTP 401  (过期时间已检查)
>>> PROVEN: ... iss 和 aud 声明从未被检查 ... : true

漏洞摘要

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

修复方案

从 4.22.0 开始,当配置了 JWT 密钥库但未设置 jwtIssuer 或 jwtAudience 时,服务器拒绝启动,并明确指出缺少的属性。如果运维人员确实只需要签名和过期时间校验,则必须显式设置 camel.server.jwtAllowMissingIssuerAndAudience=true 来选择加入(默认失败关闭):

root@kitploit:~
// fixed (JWTAuthenticationConfigurer.assertIssuerOrAudienceConfigured)
if (ObjectHelper.isEmpty(audience) && ObjectHelper.isEmpty(issuer)) {
    throw new IllegalArgumentException(
        "JWT authentication requires camel.server.jwtIssuer or camel.server.jwtAudience to be configured, ...");
}

免责声明

本仓库仅用于教育和防御目的:帮助 Apache Camel 用户了解该漏洞、确认自己是否受影响,并验证升级可以解决该问题。相关令牌是使用项目中捆绑的一次性演示密钥库在本地生成的。请勿将本材料用于您不拥有或无权操作的系统。

下载工具
属性值
组件camel-platform-http-main(camel-main 内嵌 HTTP 服务器)
CWECWE-287(身份验证不当)/ CWE-1259(缺少安全声明校验)
攻击向量由受信任密钥(例如共享的 JWKS)签名、但签发给不同 issuer/audience 的 JWT
影响任何持有共享签名密钥的一方签发的未过期令牌都会被接受——部署实际执行的安全策略比运维人员认为的更弱
受影响版本4.8.0 至 4.22.0 之前
修复版本4.22.0
JIRACAMEL-24281
致谢n0mi1k