一、說明:
Fastjson是一個開源的高效能JSON解析處理庫,在國內廣泛使用。 5 月23 日,Fastjson 官方發布安全公告,稱修復了一個新的反序列化漏洞:
Fastjson 防禦基於黑白名單的反序列化漏洞,這些防禦機制在Fastjson 1.2.80 及更早版本中可以繞過。因此,在預設配置下,當應用程式或系統使用Fastjson 解析使用者可控的JSON 字串時,可能會對遠端程式碼執行造成危害。
2、影響範圍:
Fastjson ≤ 1.2.80 版本。
3、解決方案或建議:
3.1 升級到最新版本1.2.83https://github.com/alibaba/fastjson/releases/tag/1.2.83
此版本涉及自動類型行為的變更。在某些情況下,會出現不相容的情況。如有問題,可以前往https://github.com/alibaba/fastjson/issues尋求幫助。
3.2 safeMode 加固
fastjson 在 1.2.68 及更高版本中引入了 safeMode。配置为safeMode后,无论白名单还是黑名单都不支持autoType,可以防止反序列化Gadgets变种攻击(关闭autoType,注意评估对业务的影响)
3.2.1 開啟方式
參考https://github.com /alibaba/fastjson/wiki…n_safemode
3.2.2 1.2.83以後是否需要使用safeMode
1.2.83修復了本次發現的漏洞。開啟safeMode是為了徹底關閉autoType功能,避免類似問題再次發生。這可能存在相容性問題。請充分評估對業務的影響並開放。
3.3升級到fastjson v2
fastjson v2位址https://github.com/alibaba/fastjson2/releases
fastjson已經開源2.0版本。在2.0 版本中,為了相容性不再提供白名單,從而提高了安全性。 fastjson v2 程式碼已經改寫,效能有了很大提升。它與1.x 不完全相容。升級需要嚴格的相容性測試。升級有問題,可以參考https://github.com/alibaba/fastjson2/issues
參考來源>>https://hackertop.com/thread-2.html
原创文章,作者:首席安全官,如若转载,请注明出处:https://cncso.com/tw/fastjson-deserialization-rce-vulnerability-html