高危!Fastjson反序列化远程代码执行漏洞风险通告,请尽快升级

2022/05/24 23:50

返回新闻中心

据国家网络与信息安全信息通报中心监测发现,开源Java开发组件Fastjson存在反序列化远程代码执行漏洞。攻击者可利用上述漏洞实施任意文件写入、服务端请求伪造等攻击行为,造成服务器权限被窃取、敏感信息泄漏等严重影响。

据统计,此次事件影响Fastjson 1.2.80及之前所有版本。目前, Fastjson最新版本1.2.83已修复该漏洞。 葡萄城提醒广大开发者:请及时排查梳理受影响情况,在确保安全的前提下修复漏洞、消除隐患,提高网络系统安全防护能力,严防网络攻击事件。

漏洞描述

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

Fastjson是开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到Java Bean。由于具有执行效率高的特点,Fastjson被众多java软件作为组件集成,广泛存在于java应用的服务端代码中。

漏洞详情

  • 漏洞名称: Fastjson反序列化远程代码执行漏洞
  • 漏洞编号: 暂无
  • 漏洞类型: 远程任意代码执行
  • 组件名称: Fastjson
  • 影响版本: Fastjson ≤ 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类变种攻击。

3、升级到Fastjson v2,下载地址: https://github.com/alibaba/fastjson2/releases

Fastjson已经开源2.0版本,在2.0版本中,不再为了兼容提供白名单,提升了安全性。Fastjson v2代码已经重写,性能有了很大提升,不完全兼容1.x,升级需要做认真的兼容测试。升级遇到问题,可以在https://github.com/alibaba/fastjson2/issues寻求帮助。

排查建议

  • Maven:排查pom.xml,通过搜索Fastjson确定版本号
  • 其他项目通过搜索jar文件确定Fastjson版本号

经过测试,葡萄城产品(Wyn活字格SpreadJSGcExcel)并未使用Fastjson JSON库,因此用户无需担心安全问题。

文中提及的资源,请前往Github官网,搜索“Fastjson”获取。


关于葡萄城

葡萄城是专业的软件开发技术和低代码平台提供商,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务,一站式满足开发者需求,帮助企业提升开发效率并创新开发模式。葡萄城开发技术始于1980年,40余年来始终聚焦软件开发技术,有深厚的技术积累和丰富的产品线。是业界能够同时赋能软件开发和低代码开发的企业。凭借过硬的产品能力、活跃的用户社区和丰富的伙伴生态,与超过3000家合作伙伴紧密合作,产品广泛应用于信息和软件服务、制造、交通运输、建筑、金融、能源、教育、公共管理等支柱产业。