# Eclipse Vert.x 静态文件访问拒绝漏洞
## 概述
Vert.x Web 的静态处理器(Static Handler)缓存存在缺陷,攻击者可通过构造特殊请求 URI 操纵缓存,导致无法访问静态文件,从而实现拒绝服务(DoS)。
## 影响版本
使用存在缺陷的 Vert.x Core 版本的 Vert.x Web 组件(具体修复版本需参考补丁提交记录)。
## 细节
该问题源于对 RFC3986 第 5.2.4 节中 C. 规则的不当实现。攻击者可在请求 URI 中插入形如 `bar%2F..%2F` 的字符串(URL 编码后的 `bar/../`),触发错误的路径解析并污染静态处理器的缓存。
例如:
正常请求 `https://example.com/foo/index.html`
可被 `https://example.com/foo/bar%2F..%2Findex.html` 恶意请求干扰,导致服务返回 HTTP 404。
## 影响
导致合法用户无法访问静态资源,实现拒绝服务攻击(DoS)。
是否为 Web 类漏洞: 未知
判断理由:
| # | POC 描述 | 源链接 | 神龙链接 |
|---|
标题: Fix a bug in the removeDots implementation. by vietj · Pull Request #5895 · eclipse-vertx/vert.x · GitHub -- 🔗来源链接
标签:patch
神龙速读:
### 关键信息
#### 漏洞描述
- **问题描述**: `HttpUtils#removeDots` 方法在处理 RFC3986 5.2.4 节中的规则 C 时,未能正确处理输出缓冲区中没有斜杠 `/` 的情况,应在此情况下丢弃缓冲区中的所有内容。
#### 解决方案
- **变更详情**: 在处理规则 C 时,当 `HttpUtils#removeDots` 输出缓冲区中没有斜杠 `/` 时,丢弃输出缓冲区的内容。
#### 涉及的 CVE 漏洞
- **多个引用**: 此 PR 与多个 CVE 相关:
- CVE-2026-1002:在一个静态处理组件中存在缓存被操纵的问题,可能用于拒绝静态文件的访问。
- CVE-2026-1002 在多个 vertx-core 版本中被检测到,提及了其他项目中的问题。
#### 里程碑和链接问题
- **里程碑**: 此次修复已被添加到 `4.5.24` 里程碑。
- **相关问题**: 修复此问题可能关闭一些其他相关问题,包括关于 `StaticHandlerImpl` 缓存问题的关闭问题。
#### 状态
- **已合并**: 提交已被合并到 `4.x` 分支,分支 `remove-dot-segment-fix-4.x` 也被删除。
暂无评论