Fastjson存在远程代码执行高危安全漏洞

    • Fastjson简介
    • Fastjson安全通告
    • 更新方法
    • 常见问题
    • 自我检查方法


Fastjson简介:

    Fastjson是一个Java语言编写的高性能功能完善的JSON库。它采用一种“假定有序快速匹配”的算法,把JSON Parse的性能提升到极致,是目前Java语言中最快的JSON库。Fastjson接口简单易用,已经被广泛使用在缓存序列化、协议交互、Web输出、Android客户端等多种应用场景。

Fastjson安全通告:

    最近发现fastjson在1.2.24以及之前版本存在远程代码执行高危安全漏洞,为了保证系统安全,请升级到1.2.28/1.2.29或者更新版本。
    1.2.29是在1.2.28版本上修复了一些大家升级过程中遇到的问题的版本,非安全问题,如果升级到1.2.24~1.2.28以及各种sec01版本的,也是没有安全问题的。
    1.2.25/1.2.26/1.2.27都是在升级的过程中修复不兼容问题发布的过度版本,如果你是在此之前升级到这些版本,不用因为这次的安全问题再次升级。

更新方法:

  1. Maven依赖配置更新:
    通过maven配置更新,使用最新版本,如下:

    com.alibaba
    fastjson
    1.2.29
  2. 版本更新:
    1.2.28版本下载地址:fastjson_1.2.28

常见问题:

1.升级遇到不兼容问题:
    1.2.28/1.2.29已经修复了绝大多数兼容问题,但是总会有一些特殊的用法导致不兼容,如果你遇到不兼容问题,通过 alibaba/fastjson/wiki/查看不兼容问题,提供了遇到不兼容问题之后的使用相应的sec01版本解决办法。

2.升级之后报错autotype is not support:
   安全升级包禁用了部分autotype的功能,也就是”@type”这种指定类型的功能会被限制在一定范围内使用。如果你使用场景中包括了这个功能,https://github.com/alibaba/fastjson/wiki/enable_autotype 这里有一个介绍如何添加白名单或者打开autotype功能。

3.配置打开autotype之后是否存在安全漏洞
   在1.2.28/1.2.29以及所有的.sec01版本中,有多重保护,但打开autotype之后仍会存在风险,不建议打开,而是使用一个较小范围的白名单。

4.Android环境使用是否需要升级:
   目前未发现漏洞对Android系统产生影响,在Android环境中使用不用升级。

自我检查方法:

   在lib目录下执行如下命令,可以判断版本是否有问题
sudo -u admin lsof -X | grep fastjson | grep jar
| grep -v sec01 | grep -v 1.2.24 | grep -v 1.2.25 | grep -v 1.2.26 | grep -v 1.2.27
| grep -v 1.2.28 | grep -v 1.2.29

你可能感兴趣的:(漏洞通告)