5月28日,360网络安全响应中心(360-CERT)发布“Fastjson远程代码执行漏洞通告”。通告称,Java 库fastjson <= 1.2.68 版本存在远程代码执行漏洞,漏洞被利用可直接获取服务器权限。360网络安全响应中心评定其为“高危漏洞”,影响面“广泛”。
据悉,该漏洞的影响版本为fastjson <=1.2.68和fastjson sec版本 <= sec9,而android版本不受此漏洞影响。
同一天,腾讯云发布安全通告:
尊敬的腾讯云用户,您好!
近日,腾讯云安全运营中心监测到,Fastjson <=1.2.68版本存在远程代码执行漏洞,漏洞被利用可直接获取服务器权限。
据悉,Fastjson是阿里巴巴的开源JSON解析库,它能解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean 。
Fastjson采用黑白名单的方法来防御反序列化漏洞,导致当黑客不断发掘新的反序列化Gadgets类时,在autoType关闭的情况下仍然可以绕过黑白名单防御机制,造成远程命令执行漏洞。经过研究,该漏洞利用门槛较低,可绕过autoType限制,风险影响较大。
在《反序列化漏洞:使用了编译型语言,为什么还是会被注入?》中,安全专家何为舟解释道:黑客构造恶意的序列化数据,从而控制应用在反序列化过程中需要调用的类方法,最终实现任意方法调用。如果在这些方法中有命令执行的方法,黑客就可以在服务器上执行任意的命令。
修复建议:
升级到
Fastjson 1.2.69/1.2.70
版本,下载地址为 Releases · alibaba/fastjson或者通过配置以下参数开启 SafeMode 来防护攻击:
ParserConfig.getGlobalInstance().setSafeMode(true);
(safeMode
会完全禁用autotype
,无视白名单,请注意评估对业务影响)
截至笔者撰文时,官方已经修复高危安全漏洞,并发布了1.2.69版本和1.2.70版本。
附:
360网络安全响应中心:Fastjson远程代码执行漏洞通告
腾讯云“Fastjson <=1.2.68全版本远程代码执行漏洞通告”