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

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

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

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

工具目录

分类

查看所有分类
Loading categories
CVE-2026-60093 — 针对 camel-azure-storage-datalake 中 Apache Camel 路径遍历漏洞(CVE-2026-60093)的概念验证复现程序,演示通过 downloadToFile 实现任意文件写入。 | Kitploit
工具/GitHubGitHub/oscerd/cve-2026-60093
漏洞分析漏洞利用Web应用程序漏洞利用论文与研究学习与教育
GitHuboscerd/cve-2026-60093

CVE-2026-60093

针对 camel-azure-storage-datalake 中 Apache Camel 路径遍历漏洞(CVE-2026-60093)的概念验证复现程序,演示通过 downloadToFile 实现任意文件写入。

查看仓库
9小时24分前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-60093 — camel-azure-storage-datalake downloadToFile 路径遍历

针对同一 Apache Camel 漏洞的可运行概念验证复现程序,每个运行时一个:

运行时目录技术栈
Camel Spring Bootcamel-spring-boot/Spring Boot 3.5.13 + camel-azure-storage-datalake 4.18.2
Camel Quarkuscamel-quarkus/Quarkus 3.36.0 + Camel Quarkus 3.36.0(打包了 Camel 4.20.0)

两者均为受影响版本(该问题已在 4.14.9 / 4.18.4 / 4.22.0 中修复),并且都证明了完全相同的缺陷:camel-azure-storage-datalake 组件可以通过其 downloadToFile 操作将一个 ADLS Gen2 文件下载到本地文件系统,写入由 fileDir 选项指定的目录中。 DataLakeFileOperations.downloadToFile 通过将 fileDir 与 Azure SDK 报告的确切远程路径名拼接到一起来构建本地目标(new File(fileDir, fileClientWrapper.getFileName()))——没有任何词法规范化,也没有检查解析后的位置是否保持在 fileDir 内。远程名称不受路由控制:消费者枚举文件系统(DataLakeConsumer.createBatchExchangesFromPath)并下载每个条目。因此,包含 ../ 段的路径名会解析到 fileDir 之外(CWE-22,路径遍历 → 任意文件写入)。

关于测试工具的说明。 任何可用的本地模拟器都没有实现 Azure Data Lake Gen2 API —— Azurite 对 Gen2 listPaths 和文件操作返回 HTTP 400。因此,这些复现程序直接驱动确切易受攻击的代码(DataLakeFileOperations.downloadToFile → new File(fileDir, fileClientWrapper.getFileName())),提供一个 Data Lake 文件客户端包装器,其 getFileName() 返回远程名称——与消费者从 PathItem.getName() 读取名称并传入的方式完全相同。同类组件 camel-azure-storage-blob 共享相同的修复(CVE-2026-66906),而相同的缺陷在该组件中则针对正在运行的 Azurite 模拟器进行了端到端复现。

root@kitploit:~
cd camel-spring-boot   # or: cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down

受影响构建(两种变体)的预期输出:

root@kitploit:~
2) Download of a file named '../../../../../../tmp/pwned-60093.txt':
     resolved local target: /app/downloads/../../../../../../tmp/pwned-60093.txt
File written OUTSIDE it, at /tmp/pwned-60093.txt: true
    content: PWNED via path traversal — CVE-2026-60093
>>> PROVEN: DataLakeFileOperations.downloadToFile built the local target as new File(fileDir, fileName) ... : true

漏洞摘要

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

修复方案

消费者现在会将下载目标解析并限制在配置的 fileDir 目录内(通过 AzureFileNameHelper.resolveWithinDirectory),拒绝会导致其逃逸的路径名——这与覆盖 camel-azure-storage-blob(CVE-2026-66906)的修复相同。

免责声明

本仓库发布用于教育和防御目的:帮助 Apache Camel 用户了解该漏洞、确认自己是否受影响,并验证升级是否解决问题。写入的文件是 /tmp 下一个无害的标记。请勿将本材料用于针对你不拥有或运营的系统。

下载工具
属性值
组件camel-azure-storage-datalake(Spring Boot:camel-azure-storage-datalake-starter;Quarkus:camel-quarkus-azure-storage-datalake)
CWECWE-22(路径名到受限目录的限制不当——路径遍历)
攻击向量一个路径名包含 ../ 段的 Gen2 文件,由设置了 fileDir 的消费者下载
影响在配置的 fileDir 目录之外进行任意文件写入
受影响版本4.0.0 至 4.14.9 之前,4.15.0 至 4.18.4 之前,4.19.0 至 4.22.0 之前
修复版本4.14.9, 4.18.4, 4.22.0
JIRACAMEL-23942
致谢n0mi1k; Hiep Nguyen