FastJson 1.1.26升級到1.2.58後出現的問題

fastjson曝出代碼執行漏洞,惡意用戶可利用此漏洞進行遠程代碼執行,入侵服務器,漏洞評級爲“高危”。

 

風險:高風險
方式:黑客通過利用漏洞可以實現遠程代碼執行
影響:1.2.24及之前版本
安全版本:>=1.2.28

 

集團強制要求更新jar包版本,然後各個系統出現各種錯誤

參考:https://www.cnblogs.com/shoren/p/fastjson.html

參考:https://www.v2ex.com/t/348227

參考:https://blog.csdn.net/weixin_34049948/article/details/85203048

參考:https://blog.csdn.net/heidou_2016/article/details/89210436

以上都看了一下

因爲自身項目特殊性,controller層和service層這兩層分別部署在不同的服務器,所以問題和上面都不一樣

但是看出來了,是有關序列化和反序列化的問題,因爲無論service層還是controller層都沒有問題,本地開發環境也沒有問題,只有到了兩臺測試服務器(controller,services分層),就發現service層返回的結果list<Map(String,Object)>正確,但是controller卻取不到,

list 集合因爲沒有實現序列化接口,高版本fastJson 反序列化(無論JSON.parseObjet還是JSON.parseArray)都不行,所以不同服務器調用有問題,

 

目前個人最快的解決方法:原來的list<Map(String,Object)> 類型 直接改成 String 類型,然後返回給前臺

因爲接口太多,現在能想到的無論哪種改法都是大工作量,非常希望各位大佬,給出其他更好的思路 0v0

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章