漏洞:
关于 Fastjson2 远程代码执行漏洞的应急通告
威胁程度:高
漏洞描述:
近日,监测到阿里巴巴开源 Java JSON 解析库 Fastjson2 存在一个全JDK版本通杀的远程代码执行漏洞(0day)。攻击者仅需控制 JSON 请求体,无需目标系统存在任何已知危险类,即可触发远程代码执行(RCE)。
漏洞成因:该漏洞源于 Fastjson2 在默认配置下未启用 SupportAutoType 时,仍可能处理以 @type 属性开头的通用对象元素。其“AutoType 已禁用”校验分支会将输入字符串的增量 FNV-1a 哈希与默认接受哈希进行匹配,但命中后不会确认实际文本是否等于预期的白名单类名。因此,攻击者可针对任意前缀计算 FNV chosen-prefix 碰撞,使 URL 形态的字符串进入应用的上下文类加载器,导致任意代码执行。
影响版本:
Fastjson2 <= 2.0.62 均受影响
危害评估
漏洞类型:远程代码执行
触发方式:网络远程
权限认证要求:无需权限
系统配置要求:默认配置即可触发
用户交互要求:无需用户交互
利用成熟度:POC 未公开
修复复杂度:低,官方已发布修复补丁
潜在危害:
攻击者可在服务器上执行任意代码,可能导致服务器被完全控制、数据泄露或业务系统沦陷。
处置建议
⚠️ 处置优先级:高
(一)升级修复方案(推荐)
官方已发布修复补丁,请受影响用户尽快升级修复。
官方修复补丁参考链接:https://github.com/alibaba/fastjson2/pull/7695/changes
(二)临时缓解方案
如无法立即升级,建议采取以下临时缓解措施:
1. 禁用 AutoType
开启 SafeMode 或使用 noneautotype 版本,完全禁用 AutoType 功能,从根本上杜绝此类风险。
JVM 参数方式:
-Dfastjson2.parser.safeMode=true
2. 配置 WAF 规则
在 WAF 层面配置规则,拦截请求体中 key 包含 @type 字段的 JSON 数据。
其他防护建议
建议在网络边界部署 Web 应用防火墙,并持续关注官方安全公告,及时更新组件版本。