Skip to content

update_faq_20190722

温绍锦 edited this page Nov 5, 2019 · 10 revisions

FASTJSON升级常见问题解答

在2018年2月5日和2018年10月1日,FASTJSON分别发布了1.2.46和1.2.51版本做了安全更新。

在2018年10月1日发布的1.2.51版本中,修复了所有已知安全漏洞。在1.2.51之后陆续修复了一些兼容性问题和bug,最新版本是1.2.62 https://github.com/alibaba/fastjson/releases/tag/1.2.62

为了方便大家升级,提供了兼容的补丁版本sec04。最近咨询升级兼容的同学较多,将更新常见问题整理如下:

更新方法

1. Maven依赖配置更新

通过maven配置更新,使用最新版本,如下:

<!-- 1.2.51包括所有的安全更新 -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.51</version>
</dependency>

<!-- 1.2.62是最新的版本 -->
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>fastjson</artifactId>
    <version>1.2.62</version>
</dependency>

2. 直接下载

常见问题

1. 升级遇到不兼容问题怎么办?

1.2.62已经修复了绝大多数兼容问题,但是总会有一些特殊的用法导致不兼容,如果你遇到不兼容问题,通过 https://github.com/alibaba/fastjson/wiki/incompatible_change_list 查看不兼容问题,链接的后面提供了遇到不兼容问题之后的使用相应的sec04版本解决办法。所有的sec04版本都可以在maven中央仓库中下载。

2. 所有的sec01版本是否需要升级

所有的sec01版本都是为了兼容的安全补丁版本,需要升级到sec04版本。sec04版本修复了所有已知安全漏洞。

3. 升级之后报错autotype is not support

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

4. 通过配置打开autotype之后是否存在安全漏洞

在1.2.51以及所有的.sec04版本中,有多重保护,但打开autotype之后仍会存在风险,不建议打开,而是使用一个较小范围的白名单。打开autoType建议升级到最新版本1.2.51以上

5. Android环境使用是否需要升级

目前未发现漏洞对Android系统产生影响,在Android环境中使用不用升级。但Android升级到最新版1.1.71.android版本能提升性能。

6. 升级遇到问题希望提供支持怎么办?

作者愿意帮助大家一起解决问题,如果遇到文档中没说明到的问题,请通过如下方式联系作者:

钉钉号 wenshaojin2017
微信号 wenshaojin
微博 http://weibo.com/wengaotie

Clone this wiki locally