免費開源軟件的潛在安全風險
Linux基金會和哈佛大學創新科學實驗室的研究人員進行了廣泛調查和深入研究,得出了有關企業內常用的免費開源軟件(FOSS)的一些重要結論與潛在安全風險。
研究人員發現,由于缺少針對FOSS組件的標準化命名方案,企業和其他股東難以快速、準確地識別可疑或易受攻擊的組件。
其次,他們還發現,需要更加安全地保護開發人員的賬號,那些積極為某些廣泛部署開源軟件做貢獻的人員。第三個發現是,與其他較舊的硬件或軟件技術一樣,開源社區中的舊版軟件包日益危險。
《哈佛商學院》的合著者Frank Nagle教授說:“ FOSS組件幾乎是所有其他軟件的基礎,無論是開放的還是專有的,但我們對軟件的常用性或安全性信息知之甚少??紤]到了免費開源軟件可能對經濟產生的影響,但卻很少人考慮到支持和維護這一核心基礎架構的系統性工作。”
在這項研究中,Linux基金會和哈佛大學的研究人員分析了企業軟件的使用數據,這些數據由軟件合成分析公司和應用安全公司提供,例如Snyk和Synopsys網絡安全研究中心。在確定常用的開源軟件時,研究人員考慮了FOSS軟件包或組件與其他企業應用程序和系統之間可能存在的從屬關系。
目的在于確定和衡量企業環境中常用的FOSS,了解該軟件的安全性等。FOSS組件幾乎占企業當前正在使用的所有應用程序的80%至90%。盡管許多FOSS項目有接受安全檢查,但是很多還沒有。
研究人員在本周發布的一份報告中說,在諸如OpenSSL之類的有小部分貢獻者基礎的常用項目中,漏洞通常會被忽略。隨著對FOSS的依賴日益增長,政府、研究人員和組織通過審核、漏洞賞金計劃、黑客馬拉松和會議更好地了解開源軟件的來源和安全。Nagle說:“第一步是要真正了解企業所依賴的FOSS組件。無論是通過定期的安全掃描和代碼審計,還是通過其數字產品采用的軟件材料清單。”
頂級項目和頂級風險
Linux基金會與哈佛大學創新科學實驗室的聯合研究表明,企業內10個最常用的FOSS軟件包是async,inherits,isarray,kindof,lodash,minimist,native,qs,readable-stream和string-decoder。研究人員還確定了最常用的非JavaScript程序包,其中包括com.fasterxml.jackson.core:jackson-core,com.fasterxml.jackson.core:Jackson-databind,com.google.guava:guava和commons -codec。
在確定了最重要的項目之后,研究人員著手尋找這些項目中最活躍的貢獻者,并確定了其中約75%的公司從屬關系。在研究過程中,研究人員發現,最常用的七個開源軟件項目中的七個托管在開發人員個體賬號上,其安全性比企業賬號更弱。報告警告說:“個體賬號的開發人員控制和更改代碼非常容易實現,無需檢測即可進行。”
此外,根據研究人員的說法,對開發人員個體賬號的攻擊正在增加,利用賬號接管、后門和其他惡意代碼等實現代碼訪問的風險越來越大。Nagle說:“如果這類個人賬號的存儲庫支持的話,可以執行兩因素身份驗證。”
個人賬號控制的常用FOSS的另一個風險是開發人員,他們有刪除賬號或刪除有爭議和分歧代碼的決定權。Nagle指出:“更廣泛和長期的解決方案是,將此類項目轉移到企業賬號,而不是由個人賬號控制,這有助于增強項目的歸責性和將來的可用性。”
研究表明, FOSS組件需要有更好的命名規則。Nagle表示,由于FOSS可以自由修改和復制,因此可以有多個版本,分支和類似名稱的存儲庫。為了進一步確保安全,重要的是對正在使用的FOSS組件情況以及支持和維護工作有個共識。
研究人員的另一個發現是,與舊版不受支持的軟件或硬件版本一樣的是,舊版開源組件也面臨風險。例如,Nagle指出了常用的PuTTY SSH軟件的0.70版,該軟件于2017年7月發布。將近兩年后,直到2019年3月該軟件的更新0.71版才發布。像這樣常用軟件的更新和檢查就可以解決存在于代碼庫20多年的安全問題了。”