我最近遇到了Python pickle和cPickle模塊的安全問題。 顯然,在pickle中沒有實現真正的安全措施,除非您將find_class方法作爲基本修改來覆蓋 以獲得更多安全性。但我經常聽說,JSON更安全。JSON與Pickle安全
任何人都可以詳細介紹一下嗎?`爲什麼JSON比泡菜更安全?
非常感謝! 馬克
我最近遇到了Python pickle和cPickle模塊的安全問題。 顯然,在pickle中沒有實現真正的安全措施,除非您將find_class方法作爲基本修改來覆蓋 以獲得更多安全性。但我經常聽說,JSON更安全。JSON與Pickle安全
任何人都可以詳細介紹一下嗎?`爲什麼JSON比泡菜更安全?
非常感謝! 馬克
json更安全,因爲它從根本上更有限。 json文檔可以編碼的唯一python類型是unicode
,int
,float
,NoneType
,bool
, list
和dict
。這些都是以基本微不足道的方式進行編組/解組,而且不容易受到代碼注入攻擊。
Pickle的問題是它可以調用任意的Python代碼。詳情請參閱http://nadiana.com/python-pickle-insecure。 JSON解析器只需創建字符串,數字,列表,字典等。它從不創建用戶定義的類,所以它不需要執行任意的Python。
你是什麼意思的「碰到」?你讀過一些說他們不安全的東西?你是否實施了黑客攻擊?或者是什麼? –