尊敬的腾讯云用户,您好!
近日,腾讯云安全运营中心监测到,Fastjson <=1.2.68版本存在远程代码执行漏洞,漏洞被利用可直接获取服务器权限。为避免您的业务受影响,腾讯云安全建议您及时开展安全自查,如在受影响范围,请您及时进行更新修复,避免被外部攻击者入侵。
Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean 。
腾讯安全玄武实验室研究员发现,autotype开关的限制可被绕过,然后链式地反序列化某些原本是不能被反序列化的有安全风险的类。漏洞实际造成的危害与 gadgets 有关,gadgets中使用的类必须不在黑名单中,本漏洞无法绕过黑名单的限制。
0. 风险等级
高!!!
1. 漏洞描述
fastjson采用黑白名单的方法来防御反序列化漏洞,导致当黑客不断发掘新的反序列化Gadgets类时,在autoType关闭的情况下仍然可能可以绕过黑白名单防御机制,造成远程命令执行漏洞。经研究,该漏洞利用门槛较低,可绕过autoType限制,风险影响较大。阿里云应急响应中心提醒fastjson用户尽快采取安全措施阻止漏洞攻击。
2. 影响版本
fastjson <=1.2.68 fastjson 、sec版本 <= sec9 。说明:android版本不受此漏洞影响
3. 升级方案
升级到最新版本1.2.69或者更新的1.2.70版本:1.2.69 https://github.com/alibaba/fastjson/releases/tag/1.2.69 1.2.70 https://github.com/alibaba/fastjson/releases/tag/1.2.70
如果遇到兼容问题,请原地升级sec10版本;
4. safeMode加固
fastjson在1.2.68及之后的版本中引入了safeMode,配置safeMode后,无论白名单和黑名单,都不支持autoType,可一定程度上缓解反序列化Gadgets类变种攻击(关闭autoType注意评估对业务的影响),开启方法有3种:
- 在代码中配置:ParserConfig.getGlobalInstance().setSafeMode(true);
- 加上JVM启动参数:-Dfastjson.parser.safeMode=true ,如果有多个包名前缀,用逗号隔开;
- 通过类路径的fastjson.properties文件来配置:fastjson.parser.safeMode=true。
附:两个版本描述


参考地址:https://github.com/alibaba/fastjson/wiki/security_update_20200601
END
如果读完觉得有收获的话,欢迎点【好看】,关注【阿飞的博客】,查阅更多精彩历史!!!
