大多數 SSL 證書簽發錯誤的主要原因是軟件錯誤

2019-10-14 趙一軒 開源中國
瀏覽

最近的一項學術研究發現,軟件錯誤和對行業標準的誤解是大多數錯誤簽發SSL證書的最主要原因,其所占比例高達所有錯誤事件的42%。

這項研究是由印第安納大學布盧明頓分校信息與計算學院的一個團隊撰寫的,他們研究了379起SSL證書簽發錯誤的實例,并總共發現了1300多個事件。

研究人員從公共資源收集了事件數據,例如Mozilla的Bugzilla跟蹤器與Firefox和Chrome瀏覽器安全團隊的網上論壇討論區。該研究的目的是研究證書頒發機構(CA)如何遵守行業標準,以及SSL證書簽發錯誤背后的最常見原因。

研究小組得出了一個結論,即“大多數錯誤簽發SSL證書的事件都是由軟件錯誤引起的”。

在他們分析的379個案例中,有91個(占24%)是由CA的一個軟件平臺中的軟件錯誤引起的,導致客戶收到不兼容的SSL證書。

第二個最常見的原因是CA誤解了CA/B論壇規則,或者CA不知道規則已更改,有69起案件是這種情況,占所有SSL證書簽發錯誤事件的18%。

而惡意根CA導致的問題數據占比排在第三位,有52個SSL證書簽發錯誤案例(占所有分析事件的14%)是CA故意作惡,為了利潤而破壞了行業規則,比如他們會給中間人攻擊者出售證書。

第四大最常見的原因是人為錯誤,有37例(占總數的10%)。

第五位是操作錯誤,其中錯誤是由于CA的內部程序錯誤,而不是軟件或人為錯誤,這占了29例,占所有案例的8%。

第六個根本原因是“非最佳請求檢查(non-optimum request check)”,該術語描述了檢查客戶身份時所犯的錯誤,通常允許流氓客戶假冒另一個實體,例如,惡意軟件作者獲得了SSL證書合法的公司。研究人員發現了24個此類事件,占所有SSL簽發錯誤事件的6%。

SSL證書簽發錯誤的第七個最常見的根本原因是“不正確的安全控制”,這是一個通用類別,其中包括所有CA被黑或失去對其基礎結構的控制以允許第三方獲得SSL證書的情況。

詳情可以查看該研究報告:

//papers.ssrn.com/sol3/papers.cfm?abstract_id=3425554