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

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-79986 — CVE-2026-79986 的复现程序与分析:Apache Camel camel-azure-files 中的路径遍历漏洞,其中共享列表名称会逃逸出被轮询的目录。 | Kitploit
工具/GitHubGitHub/oscerd/cve-2026-79986
漏洞分析漏洞利用Web应用程序漏洞利用云安全论文与研究学习与教育
GitHuboscerd/cve-2026-79986

CVE-2026-79986

CVE-2026-79986 的复现程序与分析:Apache Camel camel-azure-files 中的路径遍历漏洞,其中共享列表名称会逃逸出被轮询的目录。

查看仓库
2天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-79986 — camel-azure-files:消费者从共享列表构建远程路径,且无包含性检查

Apache Camel 漏洞的复现仓库。在该漏洞中,azure-files 消费者与其他远程文件消费者一样派生自同一个 RemoteFileConsumer 基类,并通过一个简单的拼接辅助方法组合远程路径;它为每个轮询到的文件构建远程路径时,将配置的目录与 Azure File 共享列表中报告的名称直接拼接,且没有包含性检查。因此,一个不是单一路径段的列表名称会在检索时解析到被轮询目录之外,并且在启用 delete/move/preMove/moveFailed/readLock=rename 时,还会导致删除或重命名。

本复现器仅限作者使用 —— 见下文 —— 它是可运行的 CVE-2026-79983(camel-ftp)和 CVE-2026-79984(camel-mina-sftp)的 Azure-Files 姊妹项目,后两者针对嵌入式恶意服务器端到端演示了相同的 根本原因和修复。

为何仅限作者使用

  1. 正如公告所述,触发该问题*“需要一个不是单一路径段的列表名称,而 Azure Files REST 服务通常不会返回这种名称;该暴露问题是在与其他远程文件消费者相同的基础上修正的,而不是通过针对此方案演示的概念验证。”*
  2. 实际运行还需要一个真实的 Azure 存储账户和文件共享。

因此,本仓库包含确切受影响的消费者接线(一个真实的 camel-azure-files 路由,见 AzureFilesRoute.java / AzureFilesRoutes.java),记录了机制和修复,并将可运行的端到端演示交由上述 FTP 和 SFTP 复现器完成。

运行时目录技术栈
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-azure-files 4.22.0(受影响;修复版本 4.22.1)
Camel Quarkuscamel-quarkus/Quarkus 3.29.0 + camel-quarkus-azure-files 3.29.0(Camel 4.15.0,受影响)

两个模块均可在没有 Azure 凭据的情况下正常编译和启动(路由以 autoStartup=false 定义)。设置 -Daz.enabled=true 以及 az.account/az.share/az.sharedKey,即可将确切受影响的路由指向你自己的 Azure 文件共享。

cd camel-spring-boot
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack   # prints the explanation + links to the runnable PoCs
docker compose down

漏洞摘要

属性值
组件camel-azure-files(azure-files scheme)
CWECWE-22(对路径名的限制不恰当,导致访问受限目录之外的文件)
严重程度高
攻击向量一个不是单一路径段的共享列表名称(由服务器提供)
影响读取——以及在启用 delete/move/readLock=rename 时,删除或重命名——轮询目录之外的文件,使用端点的凭据
受影响版本从 4.0.0 起至 4.18.5 之前,从 4.19.0 起至 4.22.1 之前
修复版本4.18.5、4.22.1、4.23.0
JIRACAMEL-24487
致谢来自上海交通大学 NSSL 的 Dilrevx

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

修复方案

azure-files 消费者现在应用与其他远程文件消费者相同的包含性检查:解析后的路径若落在轮询目录之外,将被跳过并记录警告,因此携带路径遍历段的列表名称不再能到达 retrieve/delete/rename 操作数。

无法升级时的缓解措施

通过 filter/antInclude/include 约束消费者,使其仅接受单段名称,并避免对列表不完全可信的共享执行 delete/move/preMove/moveFailed/readLock=rename。

免责声明

本仓库出于教育和防御目的发布:帮助 Apache Camel 用户理解该漏洞、验证自身是否受影响,并确认升级可解决该问题。请勿将本材料用于您不拥有或运营的系统。

下载工具