高防服务器

关于fastjson出现反序列化远程代码执行漏洞的通知

近日fastjson出现反序列化远程代码执行漏洞。天翼云提醒用户:请尽快采取措施进行排查与防护。

漏洞描述
5月23日,fastjson官方发布公告称在1.2.80及以下版本中存在新的反序列化风险,在特定条件下可绕过默认autoType关闭限制,从而反序列化有安全风险的类,攻击者利用该漏洞可实现在目标机器上的远程代码执行。

fastjson是开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到Java Bean。由于具有执行效率高的特点,应用范围广泛。

漏洞详情
漏洞名称: fastjson反序列化远程代码执行漏洞
漏洞编号: 暂无
漏洞类型: 远程任意代码执行
组件名称: fastjson
影响版本: fastjson ≤ 1.2.80
漏洞等级: 严重

漏洞修复或缓解建议
人工检测:
相关用户可使用以下命令检测当前使用的fastjson版本:
lsof | grep fastjson
注:在fastjson 1.2.68及之后的版本中,官方添加了SafeMode 功能,可完全禁用autoType。

官方升级:
目前官方已在最新版本1.2.83中修复了该漏洞,请受影响的用户尽快升级版本进行防护,官方下载链接:https://github.com/alibaba/fa…

升级步骤如下:

  1. 备份原fastjson依赖库,避免升级失败的情况发生。
    2. 将低版本的fastjson库替换为2.83版本即可

开发人员可通过配置Maven的方式对应用进行升级并编译发布,配置如下:
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.83</version>
</dependency>
注:该版本涉及autotype行为变更,在某些场景会出现不兼容的情况,若遇到问题可以到 https://github.com/alibaba/fa… 寻求帮助。

临时防护措施:
若相关用户暂时无法进行升级操作,也可使用下列方式进行缓解:

由于autotype开关的限制可被绕过,请受影响用户升级fastjson至1.2.68及以上版本,通过开启safeMode配置完全禁用autoType。三种配置SafeMode的方式如下:

  1. 在代码中配置:
    ParserConfig.getGlobalInstance().setSafeMode(true);
  2. 加上JVM启动参数:
    -Dfastjson.parser.safeMode=true
    如果有多个包名前缀,可用逗号隔开。
  3. 通过properties文件配置:
    通过类路径的fastjson.properties文件来配置,配置方式如下:
    fastjson.parser.safeMode=true

参考官方文档:
https://github.com/alibaba/fa…

  1. 另可通过将有风险的类添加至黑名单进行防护:
    ParserConfig.getGlobalInstance().addDeny(“类名”);

[温馨提示:高防服务器能助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。]

[图文来源于网络,不代表本站立场,如有侵权,请联系高防服务器网删除]