WAF说绕也就绕了!

admin 2026-04-29 05:20:13 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 研究揭示Java生态中GhostBits编码缺陷,攻击者利用char转byte时高位截断的特性构造Unicode变形Payload,可绕过WAF触发SQL注入、反序列化RCE等攻击。影响Spring、Tomcat等主流组件,建议升级受影响库、规范字符编码并强化输入验证。 综合评分: 95 文章分类: 漏洞分析,WEB安全,应用安全,安全工具,解决方案


cover_image

WAF 说绕也就绕了!

长亭应急响应 长亭应急响应

枇杷熟了

2026年4月28日 16:43 北京

在小说阅读器读本章

去阅读

Java 是目前企业级应用中最广泛使用的编程语言之一,其生态内的 Spring、Tomcat、Jackson、fastjson 等框架和组件被全球数以亿计的系统所依赖。2026 年 4 月,在 Black Hat Asia 2026 大会上,安全研究员 Zhihui Chen(1ue)与安全研究员 Xinyu Bai(浅蓝)发表了题为《Cast Attack: A New Threat Posed by Ghost Bits in Java》的研究成果。

该研究揭示了 Java 生态中一个系统性、长期被忽视的底层编码缺陷——”Ghost Bits(幽灵比特位)”,并证明攻击者可利用该缺陷对 WAF/IDS 等安全设备实现全面绕过,进而触发 SQL 注入、反序列化 RCE、文件上传、SMTP 注入、请求走私等多种高危攻击链。漏洞影响范围覆盖 Java 主流框架与中间件,利用门槛低,建议相关用户高度重视并尽快完成自查修复。

攻击描述

Description

01

缺陷成因

Java 的 char类型为 16 位(2 字节),而 byte类型仅为 8 位(1 字节)。当 Java 代码通过 (byte)chch & 0xFFbaos.write(ch)DataOutputStream#writeBytes()等方式将 char转换为 byte时,高 8 位会被静默丢弃,只保留低 8 位,这一丢失的高位数据即被称为”幽灵比特位(Ghost Bits)”。

以汉字「爻」(U+2F58)为例:

爻  →  U+2F58  →  二进制:00101111 | 00111010(byte) 转换后:高 8 位 0x2F 丢弃,低 8 位 0x3A → 'X'

攻击者可利用这一特性,将攻击 Payload 中的关键 ASCII 字符替换为经过精心选取的 Unicode 字符(其低 8 位与原字符一致),使 WAF 看到的是无意义的 Unicode 字符序列,而后端 Java 服务解码时高位截断还原为原始攻击载荷,从而绕过基于字符串特征的安全检测。

研究人员在 GitHub 上搜索 Java 代码中典型的 Ghost Bits 写法((byte)chch & 0xffbaos.write(ch)writeBytes(...)),命中结果超过 8,100 条,证明此类缺陷在 Java 生态中极为普遍。

造成的影响

WAF/IDS 全面绕过:攻击者通过 Ghost Bits 变形 Payload 可绕过绝大多数现有基于规则的 WAF 检测,使已有安全防护形同虚设。

触发多类高危漏洞:

  • SQL 注入:Jackson charToHexch & 255)截断,SQL 注入 Payload 隐写于 Unicode 字符中,WAF 无告警,后端还原并执行。
  • 反序列化 RCE:BCEL ClassLoader 解码、fastjson \u\x转义均存在 Ghost Bits,可绕过 WAF 触发反序列化远程代码执行。
  • 文件上传绕过:Tomcat RFC2231Utility处理文件名时截断高位,可将 .jsp伪装为非敏感 Unicode 字符,绕过 WAF 上传 Webshell。
  • 路径穿越 / 认证绕过:Spring、Jetty、Undertow、Vert.x 等框架 URL 解码路径存在 Ghost Bits,可绕过 WAF 实现目录穿越;Openfire CVE-2023-32315 可借此绕过 WAF 防护直接利用。
  • 已知高危 CVE WAF 绕过:GeoServer CVE-2024-36401(CVSS 9.8)、Spring4Shell(CVE-2022-22965)等漏洞的现有 WAF 防护均可被 Ghost Bits 变体 Payload 绕过,直接触发 RCE。
  • SMTP 注入:Angus Mail 等邮件库存在 Ghost Bits,可将隐写 CRLF 序列还原为换行符,触发 SMTP 注入,实现邮件劫持或业务逻辑绕过(已在 Jira、Confluence 上复现)。
  • HTTP 请求走私 / XSS:Apache HttpClient(≤ 4.5.9)、JDK 原生 HttpServer 等组件同样受 Ghost Bits CRLF 影响。

处置优先级:高

类型:WAF绕过/远程代码执行/注入

危害等级:

触发方式:网络远程

权限认证要求:无需权限

系统配置要求:默认配置

用户交互要求:无需用户交互

利用成熟度:POC/EXP 已公开

修复复杂度:中

影响范围

Affects

02

以下组件已被确认受 Ghost Bits 影响:

|  |  |
| --- | --- |
| 组件 | 漏洞类型 |
| Apache Commons BCEL | WAF 绕过 / 反序列化 RCE |
| Jackson Databind | WAF 绕过 / SQL 注入 |
| Fastjson | WAF 绕过 / 反序列化 RCE |
| Apache Tomcat | 文件上传绕过(Webshell) |
| Spring Framework | URL 解码绕过 / 路径穿越 |
| Jetty | URL 解码绕过 / CRLF 注入 |
| Undertow | URL 解码绕过 |
| Vert.x | URL 解码绕过 |
| Angus Mail | SMTP 注入 |
| Apache HttpClient ≤ 4.5.9 | HTTP 请求走私(HTTPCLIENT-1974/1978) |
| ActiveJ | HTTP CRLF 注入 |
| Lettuce(Redis 客户端) | Redis 命令注入 |
| Jodd | 路径穿越 |
| XMLWriter | XML 标签注入 |

受影响的真实 CVE 包括但不限于:GeoServer CVE-2024-36401、Spring4Shell CVE-2022-22965、Openfire CVE-2023-32315。

解决方案

Solution

03

#

升级修复方案

请关注上述各受影响组件的官方 Security Advisory,升级至已修复版本。重点关注:

  • Apache Commons BCEL:升级至 6.12.0 及以上版本
  • Fastjson:升级至 2.x 系列最新版本
  • Apache HttpClient:升级至 4.5.10 及以上版本,或迁移至 HttpClient 5.x
  • GeoServer:升级至 2.28.3 及以上版本
  • Openfire:升级至 5.0.4 及以上版本

**临时缓解方案 1. WAF 规则:现有基于字符串特征的 WAF 规则对 Ghost Bits 变形 Payload 防护效果有限,建议在解码层面进行语义检测,或引入 Unicode 规范化预处理后再执行规则匹配。 2. 代码层面:排查自研代码中 (byte)chch & 0xFFbaos.write(ch)DataOutputStream#writeBytes()等写法,改为使用 String.getBytes(StandardCharsets.UTF_8)等明确指定编码的方式。 3. 输入验证:在输入校验阶段对关键字段(文件名、邮件地址、URL 参数、JSON 键名等)严格过滤非 ASCII 字符或进行 Unicode 归一化(NFC/NFKC)处理。 4. 网络层面:对暴露在公网的 Java 应用服务,在完成代码修复前限制访问来源,降低攻击面。 *漏洞复现* Reproduction 04 时间线 Timeline 05 2026年4月 Black Hat Asia 2026 披露 Ghost Bits 攻击 2026年4月28日 长亭安全应急响应中心发布通告** 参考资料: [1].Black Hat Asia 2026 议题:Cast Attack: A New Threat Posed by Ghost Bits in Java  作者:Xinyu Bai(@b1u3r / @iSafeBlue)、Zhihui Chen(@1ue1166323)、贡献者 Zongzheng Zheng(@chun_springX) [2].https://github.com/geoserver/geoserver/security/advisories/GHSA-6jj6-gm7p-fcvv [3].https://github.com/advisories/GHSA-gw42-f939-fhvm [4].https://spring.io/security/cve-2022-22965

长亭应急响应服务

全力进行产品升级

及时将风险提示预案发送给客户

检测业务是否受到此次漏洞影响

请联系长亭应急服务团队

7*24小时,守护您的安全

第一时间找到我们:

邮箱:[email protected]


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:枇杷熟了 长亭应急响应 长亭应急响应《WAF 说绕也就绕了!》

评论:0   参与:  0