最近,亚信安全CERT监控到Fastjson的漏洞,下面是具体的描述。
亚信安全CERT监控到Fastjson Develop Team发布安全公告,修复了一个存在于Fastjson1.2.80及之前版本中的反序列化漏洞。
Fastjson已使用黑白名单用于防御反序列化漏洞,该利用在特定条件下可绕过默认autoType关闭限制,攻击远程服务器,风险影响较大。在默认配置下,当应用或系统使用Fastjson对由用户可控的JSON字符串进行解析时,将可能导致远程代码执行的危害 。建议Fastjson用户尽快采取安全措施保障系统安全。
Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。
受影响的版本
特定依赖存在下影响 ≤1.2.80
修复建议
1,升级到最新版本1.2.83
下载地址:https://github.com/alibaba/fastjson/releases/tag/1.2.83
该版本涉及autotype行为变更,在某些场景会出现不兼容的情况,如遇到问题可以到https://github.com/alibaba/fastjson/issues寻求帮助。
2,safeMode加固 Fastjson在1.2.68及之后的版本中引入了safeMode,配置safeMode后,无论白名单和黑名单,都不支持autoType,可杜绝反序列化Gadgets类变种攻击(关闭autoType注意评估对业务的影响)
开启方法:参考 https://github.com/alibaba/fastjson/wiki/fastjson_safemode
使用1.2.83之后的版本是否需要使用safeMode:1.2.83修复了此次发现的漏洞,开启safeMode是完全关闭autoType功能,避免类似问题再次发生,这可能会有兼容问题,请充分评估对业务影响后开启。
3,升级到fastjson v2 fastjson v2地址 https://github.com/alibaba/fastjson2/releases
Fastjson已经开源2.0版本,在2.0版本中,不再为了兼容提供白名单,提升了安全性。Fastjson v2代码已经重写,性能有了很大提升,不完全兼容1.x,升级需要做认真的兼容测试。升级遇到问题,可以在https://github.com/alibaba/fastjson2/issues 寻求帮助。
参考: https://github.com/alibaba/fastjson/wiki/security_update_20220523
|