Releases: alibaba/fastjson
fastjson 1.2.68版本发布,支持GEOJSON
fastjson 1.2.68版本发布,Bug修复功能增强安全加固
这又是一个Bug修复功能安全加固版本,补充了autoType黑名单。如果已经升级到1.2.67版本或者所有sec09版本,没有显式打开autoType,不需要因为安全原因升级到1.2.68。
在1.2.68中引入一个safeMode的配置,配置safeMode后,无论白名单和黑名单,都不支持autoType。
在1.2.68版本中,引入了GeoJSON的支持。https://github.com/alibaba/fastjson/wiki/geojson_cn
Issues
- 内置支持geojson https://github.com/alibaba/fastjson/wiki/geojson_cn
- 修复1.2.67版本引入JSONObject.toJavaObject某些场景结果不对的问题。
- ParserConfig加入AutTypeCheckHandler支持,允许自定义安全检查
- jsonpath修复对.max和.min支持的bug #3066
- 修复JSONObject containsKey对Number值类型参数行为和getObject不一致的问题 #3093
- 增强对Map.Entry泛型的支持
- 增加autoType黑名单。
- 支持配置safeMode https://github.com/alibaba/fastjson/wiki/fastjson_safemode
相关链接
fastjson 1.2.67版本发布,Bug修复安全加固
fastjson 1.2.66版本发布,Bug修复安全加固
这又是一个维护版本,修复了一些BUG,并且做安全加固,补充了AutoType黑名单。
Issues
- 修复某些场景下BeanToArray报错的问题
- 修复某些场景多版本共存导致的的兼容问题
- 修复JSONArray构造方法中,由null List会引发的NPE问题
- 修复大对象某些场景会报错的问题 #2779
- 修复字符串自动转换为数值时,小数点后全零报错的问题 #2838
- 修复某些场景下不识别Kotlin泛型的问题
- 修复开始SupportNonPublicField特性后JSONField配置name不支持private字段的问题 #2866
- 修复纳秒级 Timestamp 解析异常问题 #2894
- 日期自动识别增强对纳秒时间的支持的
- 支持对Queue类型的反序列化
- 修复JSONField 在LocalDateTime类型时 format 不生效问题
- 修复JSONValidator有些场景不能识别非法JSON数据的问题 #3017
- 加强安全防护
相关链接
fastjson 1.2.62版本发布,增加autoType黑名单、增强日期反序列化和JSONPath
国庆期间在家休息,更新一个版本。主要是增加autoType黑名单、增强日期反序列化支持、增强JSONPath支持。
再次声明一下,fastjson的autoType缺省是关闭的,缺省是基于白名单的。autoType黑名单的不断补充是给一些特别场景需要的,没有显式打开autoType的用户,不需要因为安全原因升级到大于1.2.60的版本。
Issues
- 增加autoType黑名单
- 修复JavaBeanSerializer.processValue兼容问题 #2790
- 修复JSONField.unwrapped在toJSON方法中不起作用的问题 #2447
- 增强日期定制序列化反序列化的支持,增强dateFormat的支持,新增支持'millis'和'unixtime'两种格式输出和反序列化
- 修复某些场景下多级别泛型推导不起作用的问题 #2397
- JSONPath.remove方法支持更多语法 #2791
- JSONPath复杂表达式支持更多场景 #2743 #2792
- 支持$和_开头字段 #2762
- 反序列化自动识别日期格式支持新西兰时区 #2754
相关链接
Fastjson发布1.2.61版本,增加AutoType安全黑名单
最近Freebuf有人发表了文章,公布了两个不在autoType黑名单中可以被利用的类,某安全厂商把漏洞定义为高。这里要说明下,autoType默认是关闭的,需要显示配置打开并且依赖特定包的漏洞不应该算是高危漏洞。
欢迎 https://github.com/Omega-Ariston 成为 fastjson的committer。
Issues
- 增加autoType安全黑名单
- 恢复1.2.60版本SerializeConfig中误删的put方法
- 修复JSONField.unwrapped在某些场景属性丢失的问题 #2753
- 修复Feature.NonStringKeyAsString在某些场景不生效的问题 #2736
- 修复不支持guava ArrayListMultimap的问题 #2430
- 修复JSON.parseArray方法不能识别byte[].class和char[].class作为变长参数的问题 #2464
- 修复snake_case配置在嵌套时不生效的问题 #2428
- 修复BigInteger类属性在超大数时结果不对的问题 #2628
- 修复java.sql.Date在某些场景丢失精度的问题
相关链接
fastjson 1.2.60版本发布 修复拒绝服务安全问题
这又是一个BUG修复安全加固版本,增加了AutoType黑名单,修复了一个导致拒绝服务的问题。
安全修复建议
拒绝服务安全漏洞涉及之前所有FASTJSON版本,建议升级到最新版本1.2.60。如果遇到不兼容问题,可以使用如下兼容版本:
1.1.15~1.1.31 -> 1.1.31.sec07 这版本不一样是因为1.1.31.sec06发布后,发现1.1.31版本特有一个的问题,又发布了1.1.31.sec07
1.1.32~1.1.33 -> 1.1.33.sec06
1.1.34 -> 1.1.34.sec06
1.1.35~1.1.46 -> 1.1.46.sec06
1.2.3~1.2.7 -> 1.2.7.sec06 因为1.2.7使用最多特别提供,也可以直接使用1.2.8.sec06
1.2.8 -> 1.2.8.sec06
1.2.9~1.2.29 -> 1.2.29.sec06
安卓版本1.1.71.android 不受此漏洞影响。
已知不兼容列表
https://github.com/alibaba/fastjson/wiki/1_2_60_incompatible
为了方便大家无缝升级,提供了如下原地升级版本
1.2.48.sec06
1.2.51.sec06
1.2.54.sec06
1.2.56.sec06
1.2.57.sec06
1.2.58.sec06
Issues
- 安全增强,增加AutoType黑名单,修复特定场景导致拒绝服务的问题
- 序列化支持org.json.JSONObject类型 #1780
- 修复某些场景Enum定制反序列化不生效的问题 #2179
- 修复某些场景解析非法字符串不抛异常的问题 #2641
- 修复JSONField配置WriteBigDecimalAsPlain不生效的问题 #2355
- 增强Builder模式支持,JSONPOJOBuilder支持withPrefix为空字符串等,#2346 #2673
- 修复全接口对象@transient不起作用的问题 #1903
- 修复解析base64字符串带'/'解析错误的问题
- 修复使用JSONField指定序列化使用单引号不生效的问题 #2678
- 修复使用JSONField指定WriteMapNullValue特性不生效的问题
- 反序列化自动识别日期格式支持'yyyy-MM-dd HH:mm:ss,SSS'
- 反序列化日期格式支持unixtime #2300
- 修复序列化byte[]在某些场景报错的问题 #2602
- 新增加高性能JSONValidator API https://github.com/alibaba/fastjson/wiki/JSONValidator
- 新增Mixed功能,解决第三方无法修改源码的类定制序列化问题 https://github.com/alibaba/fastjson/wiki/MixInAnnotations_cn
相关链接
fastjson-1.2.59发布,增强AutoType打开时的安全性
fastjson 1.2.58版本发布,修复JDK 5/6/7版本兼容问题
五一期间没外出,在家休息,修复已知问题,发一个版本。改动很少,只有3个Issue。
Issues
- 修复JDK 5/6/7兼容问题
- 内置支持Moneta
- 提升JSONObject.toJavaObject性能
相关链接
fastjson 1.1.71.android版本发布 优化某些场景的性能
fastjson 1.2.57版本发布 Bug修复维护版本
这又是一个例行的bug修复维护版本。修复BUG ,提升某些场景的性能。
Issues
- 修复智能匹配多余字段时覆盖原字段的问题 #2348
- 支持序列化按父类字段序列化 #2289 https://github.com/alibaba/fastjson/wiki/WriteAs_CN
- 修复JSON.parseArray反序列化非静态内部类时报错信息不友好的问题 #2358
- 修复JSONPath的一些问题 #2189 #2306
- 修复Java 10兼容问题 #2105
- 修复SupportArrayToBean反序列化首字段是字符串是报错的问题 #2351
- 序列化反序列化支持ByteBuffer类型 #2357
- 修复BrowserCompatible在long类型时无效的问题 #2344
- 序列化java.sql.Date使用yyyy-MM-dd格式 #2156
- Date、Timestamp类型支持1970年以前的时间格式 #2260
- 新增JSONObject.toString(SerializeFeature...)方法 #2074
- 修复复杂继承情况下 TypeUtils.getCollectionItemType() 获取类型错误导致反序列化失败的问题 #2224
- 提升字段数量大于200个的对象反序列化性能
- 提升JSONObject.toJavaObject性能