【安全通告】Fastjson <=1.2.68 全版本远程代码执行漏洞通告

漏洞背景

2020年05月28日, 业内安全厂商发布了Fastjson远程代码执行漏洞的风险通告,漏洞等级:高危。

Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。

Fastjson存在远程代码执行漏洞,autotype开关的限制可以被绕过,链式的反序列化攻击者精心构造反序列化利用链,最终达成远程命令执行的后果。此漏洞本身无法绕过Fastjson的黑名单限制,需要配合不在黑名单中的反序列化利用链才能完成完整的漏洞利用。

官方已发布1.2.69版本,建议广大用户及时升级版本,做好资产自查,同时根据临时修复建议进行安全加固,以免遭受黑客攻击。

漏洞详情

Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean 。

腾讯安全玄武实验室研究员发现,autotype开关的限制可被绕过,然后链式地反序列化某些原本是不能被反序列化的有安全风险的类。

漏洞实际造成的危害与 gadgets 有关,gadgets中使用的类必须不在黑名单中,本漏洞无法绕过黑名单的限制。

风险等级

高风险

漏洞风险

远程代码执行,获取服务器系统权限

影响版本

Fastjson: <= 1.2.68

修复建议

1)升级版本到 1.2.69 以上版本;

2)Fastjson 1.2.68 版本,通过配置以下参数开启 SafeMode 来防护攻击: ParserConfig.getGlobalInstance().setSafeMode(true);(safeMode 会完全禁用 autotype,无视白名单,请注意评估对业务影响);

3)  推荐采用 Jackson-databind 或者 Gson 等组件进行替换。


【备注】:建议您在安装补丁前做好数据备份工作,避免出现意外

漏洞参考

1)官方更新通告:https://github.com/alibaba/fastjson/releases

2)类似问题参考:https://github.com/FasterXML/jackson-databind/issues/2620#

分享此页面

Comments