Categories
程式開發

最新報告:開源漏洞2019年增長近50%,C語言項目漏洞最多


最新報告:開源漏洞2019年增長近50%,C語言項目漏洞最多 7

近日,安全公司WhiteSource發布了一份“開源安全年度報告”。報告表明,2019年,公開披露的開源安全漏洞數量再創新高,總數​​為6100個。與2018年相比,開源安全漏洞的數量增長近50%。同時,報告還表明代碼漏洞最多的開源項目是用C語言編寫的。並且,報告發現,2019年最常見的安全漏洞類型是跨站腳本攻擊、輸入驗證安全漏洞、緩衝區錯誤和越界讀取以及信息洩露。

數據表明,2009年,公開披露的開源安全漏洞不足1000個。

但是,隨著企業對開源軟件的使用增多和人們對開源安全漏洞的關注,公開披露的開源安全漏洞數量將不斷增加。在這份名為《The State of Open Source Security Vulnerabilities》的研究報告中,WhiteSource寫道,“當今,開源組件已經成為現代軟件應用的一部分。隨著開源軟件的使用不斷增長,人們開始更多地關注開源軟件安全研究。”

“一路飆升”的開源安全漏洞

在2014年,開源安全出現轉折點。這一年,Codenomicon和谷歌安全部門的研究人員披露OpenSSL漏洞,該漏洞可以讓攻擊者獲得服務器上64K內存中的數據內容。該漏洞被國內稱為“OpenSSL心臟出血漏洞”,因其破壞性之大和影響範圍之廣,堪稱網絡安全里程碑事件。

這件事不僅給科技行業敲響了警鐘,而且讓科技公司開始採取行動,比如為修復類似的重大漏洞,業內十二家頂級科技企業加入Linux基金會基礎架構聯盟(CII),包括亞馬遜、谷歌、IBM、Intel、微軟和思科等。

據WhiteSource的報告顯示,2015年和2016年,每年開源安全漏洞的數量不超過2000,但是在2017年和2018年,開源安全漏洞的數量一路飆升,超過4000。

最新報告:開源漏洞2019年增長近50%,C語言項目漏洞最多 8

2019年,開源安全的漏洞超過6000個,突破歷史記錄。

不過,好消息是超過85%的開源安全漏洞在披露時已經有修復程序。

“過去幾年,科技巨頭在開源上加大投資,從而能更好地管理開源項目和提升安全性。同時,社區也在不斷致力於安全研究,及時發布針對開源安全漏洞的修復版本。”WhiteSource表示。

報告還指出:遺憾的是,開源軟件的漏洞並沒有集中在一處發布,而是分散在數百種資源中。有時,索引的編制並不正確,導致搜索特定數據成為一項艱鉅挑戰

據悉,一部分新發現的安全漏洞來自谷歌開源模糊測試工具,比如OSS-Fuzz,它在2年時間找到9000個漏洞。僅在2020年1月,它又在250個開源項目中發現16000個漏洞。

去年,WhiteSource和GitHub合作,將其漏洞數據庫帶到GitHub,為其安全警報提供服務。針對那些由PHP、Java、Python、.NET、JavaScript和Ruby編寫的開源項目,GitHub會掃描開源項目來發現潛在的安全漏洞。目前,它已經幫助開發者找到和修復了數百萬漏洞

另外,GitHub在2019年成立安全實驗室(Security Lab),匯聚安全研究人員查找並修復開源項目中的安全漏洞。並且,GitHub成為授權CVE編號發布機構,項目維護者可以和安全專家一起研究安全修復程序,並直接從GitHub上申請CVE編號,並披露有關漏洞的詳細信息。

儘管GitHub不斷提升安全性,但是WhiteSource指出,開發者可能被發現的大量安全漏洞所“淹沒”,應接不暇。

最不安全的編程語言

WhiteSource還從編程語言角度對存在安全漏洞的開源項目進行了分析。研究發現,安全漏洞最多的開源項目是用C語言編寫的,佔比30%。

這家公司解釋,C語言佔比之高是因為有太多的開源項目是用它編寫。

最新報告:開源漏洞2019年增長近50%,C語言項目漏洞最多 9

第二是PHP。儘管PHP在開發者心中的受歡迎度大不如前,但用PHP編寫的代碼佔開源安全漏洞的27%,與10年前的15%相比,進一步上升。

相比而言,用Python編寫的代碼佔開源安全漏洞的5%,這與10年前的6%相比有所下降。

此外,報告還表明,2019年,最常見的安全漏洞類型是CSS(跨站腳本攻擊)、輸入驗證安全漏洞、緩衝區錯誤、越界讀取和信息洩露。其中,跨站腳本攻擊是Java、JavaScript、PHP、Python和Ruby中最常見的漏洞類型。