Fastjson漏洞修复参考

Fastjson漏洞修复参考

1. 漏洞背景

​ Fastjson是阿里巴巴的开源JSON解析库,它可以解析JSON格式的字符串,支持将Java Bean序列化为JSON字符串,也可以从JSON字符串反序列化到JavaBean。

Fastjson多处补丁修补出现纰漏,Fastjson在1.2.68版本以下,无需Autotype开启,或者可绕过autoType限制,攻击者即可通过精心构造的请求包在使用Fastjson的服务器上进行远程代码执行。

受影响的版本:

fastjson <=1.2.68

fastjson sec版本 <= sec9

恶意攻击者可以利用漏洞攻击做到:

1、执行远程命令,获取服务数据

2、执行远程命令,植入后门,控制服务器

2. 修复思路

1.升级至安全版本.

2.对fastjson进行一定的安全加固措施

3.采用其他json处理组件替换,jackson-databind漏洞也频发,建议使用Gson

4.使用WAF紧急漏洞拦截,再升级到安全版本

3. 代码修复

1.升级至安全版本,参考下载链接:https://repo1.maven.org/maven2/com/alibaba/fastjson/

2.对fastjson进行一定的安全加固措施

​ fastjson在1.2.68及之后的版本中引入了safeMode,配置safeMode后,无论白名单和黑名单,都不支持autoType,可一定程度上缓解反序列化Gadgets类变种攻击(关闭autoType注意评估对业务的影响)

开启方法参考:

打开SafeMode功能

在1.2.68之后的版本,在1.2.68版本中,fastjson增加了safeMode的支持。safeMode打开后,完全禁用autoType。所有的安全修复版本sec10也支持SafeMode配置。

有三种方式配置SafeMode,如下:

A.在代码中配置

ParserConfig.getGlobalInstance().setSafeMode(true); 

B.加上JVM启动参数

    -Dfastjson.parser.safeMode=true 

如果有多个包名前缀,用逗号隔开

C.通过fastjson.properties文件配置。

通过类路径的fastjson.properties文件来配置,配置方式如下:

fastjson.parser.safeMode=true

3.采用其他json处理组件替换,jackson-databind漏洞也频发,建议使用Gson

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值