机器人论坛
直播中

蒋进如

7年用户 186经验值
私信 关注
[问答]

fastjson为什么会被频繁爆出漏洞?

fastjson大家一定都不陌生,这是阿里巴巴的开源一个JSON解析库,通常被用于将Java Bean和JSON 字符串之间进行转换。
前段时间,fastjson被爆出过多次存在漏洞,很多文章报道了这件事儿,并且给出了升级建议。
但是作为一个开发者,我更关注的是他为什么会频繁被爆漏洞?于是我带着疑惑,去看了下fastjson的releaseNote以及部分源代码。
最终发现,这其实和fastjson中的一个AutoType特性有关。
从2019年7月份发布的v1.2.59一直到2020年6月份发布的 v1.2.71 ,每个版本的升级中都有关于AutoType的升级。
下面是fastjson的官方releaseNotes 中,几次关于AutoType的重要升级:






回帖(1)

张红玲

2020-11-4 11:10:29
1.2.59发布,增强AutoType打开时的安全性 fastjson1.2.60发布,增加了AutoType黑名单,修复拒绝服务安全问题 fastjson1.2.61发布,增加AutoType安全黑名单 fastjson1.2.62发布,增加AutoType黑名单、增强日期反序列化和JSONPath fastjson1.2.66发布,Bug修复安全加固,并且做安全加固,补充了AutoType黑名单 fastjson1.2.67发布,Bug修复安全加固,补充了AutoType黑名单 fastjson1.2.68发布,支持GEOJSON,补充了AutoType黑名单。(引入一个safeMode的配置,配置safeMode后,无论白名单和黑名单,都不支持autoType。) fastjson1.2.69发布,修复新发现高危AutoType开关绕过安全漏洞,补充了AutoType黑名单 fastjson1.2.70发布,提升兼容性,补充了AutoType黑名单甚至在fastjson的开源库中,有一个Isuue是建议作者提供不带autoType的版本:
-w747
那么,什么是AutoType?为什么fastjson要引入AutoType?为什么AutoType会导致安全漏洞呢?本文就来深入分析一下。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分