fastjson 又爆 bug 了!快来看看是否受影响

2020-06-01 09:45:40 +08:00
 qqqccc

https://github.com/alibaba/fastjson/wiki/security_update_20200601

是否对你的业务有影响呢?

14232 次点击
所在节点    程序员
78 条回复
mgzu
2020-06-01 12:41:13 +08:00
问一下各位老哥,有 maven 或 eclipse 、idea 插件提示依赖安全漏洞的插件么
skull
2020-06-01 12:53:36 +08:00
@onikage 你自己的坑
wm5d8b
2020-06-01 13:03:17 +08:00
gson 没有 bug 的话,开发基本停止好像也没问题?
JasonLaw
2020-06-01 13:11:45 +08:00
@sayuria 我还是有点不明白,就算替换了内容,那也是数据(对象的属性)改变了,代码执行的逻辑还是不变的。可以具体讲解一下“怎么造成安全漏洞”的吗?
526326991
2020-06-01 13:12:18 +08:00
一直用 gson 路过~~~
cco
2020-06-01 13:17:37 +08:00
不管谁 bug 多,谁 bug 少。Spring 已经自带了 jackson,那我就懒得引入第三个 json,目前的业务也都满足。小声说:顶多在价格 gson- -!
binbinyouliiii
2020-06-01 13:38:41 +08:00
老老实实用 springboot 默认的 jackson 不好吗,一个 json 工具又不需要中文文档
symeonchen
2020-06-01 14:03:37 +08:00
siteshen
2020-06-01 14:17:26 +08:00
@yuzo555 Go:我怀疑你在说我,但是我没有证据。
hjyjzsn
2020-06-01 14:24:35 +08:00
@onikage 一般签名场景 都会对字段重新进行排序的吧
tairan2006
2020-06-01 14:38:51 +08:00
Jackson 啥功能都有啊…升级 spring 很方便。
mars0prince
2020-06-01 14:39:45 +08:00
毕竟没有漏洞就没有 kpi
liuawei
2020-06-01 14:50:51 +08:00
那些一直推荐 Jackson 这个玩意也有漏洞 反序列化的漏洞可以通过 bash 反弹控制服务器呀。
whoami9894
2020-06-01 14:53:59 +08:00
@JasonLaw
JSON 映射到对象其实就是 build and assign,先实例化对象,然后对成员变量赋值,赋值时如果对象有 setXX 方法会调用,在 setXX 方法中可能有一些可以达到代码执行的操作 比如 JNDI injection
比如`com.sun.rowset.JdbcRowSetImpl`,调用它的`setAutoCommit`时会自动对成员变量`dataSourceName`进行一次 JNDI lookup,在低版本 JDK 中就可以直接加载远程字节码
kennylam777
2020-06-01 15:04:57 +08:00
@GM JsonNode + 1, 該有的 type safety 都有
fanshuzaizai
2020-06-01 15:54:31 +08:00
高级用法才有 bug,像我这种只用来 JSON.parseObject()和 JSON.toJSONString,从来没有 bug
JasonLaw
2020-06-01 16:03:28 +08:00
@whoami9894 产生对象的 class 是自己写的,setXX 能做什么不是完全由自己决定的吗?实例化 class 的一个对象后,会根据序列化之后的内容对属性设置不同的值。如果 setXX 方法除了赋值之外还做了“其他的事情”,不管是什么方式的反序列化,都会做“其他的事情”的呀😅,不会取决于“序列化的内容是否被修改”。是我哪里没有理解吗?😯
Seneca
2020-06-01 16:03:39 +08:00
良心福报厂 养活一批安全从业者
lzvezr
2020-06-01 16:47:40 +08:00
@onikage 兄弟,你这是用法不对啊,哪有 JSON 不排序就做签名的
stormsuncc
2020-06-01 16:51:08 +08:00
上边说 jackjson 也有问题的不知道啥心理。
下雨天没有伞房子还漏雨的人说你看隔壁也没伞出门(人家房子完好)。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/677367

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX