Synopsys 公司發布了2020 年開源安全和風險分析(OSSRA)報告,該報告由Synopsys 網絡安全研究中心(CyRC)制作,研究了由黑鴨審計服務團隊進行的 1,250 多次商業代碼庫審計的結果。重點介紹了商業應用程序中開源使用的趨勢和模式,并提供了見解和建議,以幫助組織從安全性,許可證合規性和運營角度更好地管理開源風險。
該報告重申了開源在當今軟件生態系統中的關鍵作用,揭示了過去一年中幾乎所有(99%)的經審核代碼庫均至少包含一個開源組件,其中開源代碼占總體代碼的70%。然而更值得注意的是,老化或廢棄的開源組件的繼續廣泛使用,其中 91% 的代碼庫包含的組件已經過時四年以上,或者在過去兩年中沒有開發活動。
此外,更令人擔憂的則是不受管理的開放源代碼帶來的日益嚴重的安全風險的趨勢。經過審計的代碼庫中有 75% 包含具有已知安全漏洞的開源組件;同時,幾乎一半(49%)的代碼庫包含高風險漏洞;兩者比例都實現了同比增長。
Synopsys 網絡安全研究中心首席安全策略師 Tim Mackey 表示:“很難否認開源軟件在現代軟件開發和部署中扮演的重要角色,但是很容易從安全和許可證合規性的角度忽略開源軟件如何影響您的應用程序風險態勢。”2020 OSSRA 報告強調了組織如何繼續努力有效地跟蹤和管理其開源風險。維護包括開放源代碼依賴項在內的第三方軟件組件的準確清單,并使其保持最新狀態,是從多個層面解決應用程序風險的關鍵起點。”
2020 OSSRA 報告中一些值得關注的開源風險趨勢總結如下:
開源的采用率繼續飆升。99% 的代碼庫至少包含一些開源,每個代碼庫平均有 445 個開源組件,比 2018 年的 298 個有了顯著增加。經過審核的代碼中有 70 % 被確定為開源,這一數字從 2018 年的 60% 增長到 2015 年(36%)以來的近兩倍。
過時的和“廢棄的”開源組件無處不在。91% 的代碼庫包含的組件或者已經過時四年以上,或者在過去兩年中沒有開發活動。除了存在安全漏洞的可能性增加之外,使用過時的開源組件的風險還在于更新它們還會帶來不必要的功能或兼容性問題。
易受攻擊的開源組件的使用再次呈上升趨勢。在 2017 年至 2018 年期間,包含易受攻擊的開源組件的代碼庫所占比例從 78% 下降至 60% 之后,在 2019 年上升至 75%。同樣,包含高風險漏洞的代碼庫的百分比從 2018 年的 40% 上升到 2019 年的 49%。幸運的是,2019 年審核的代碼庫均未受到臭名昭著的 Heartbleed 錯誤或 2017 年困擾 Equifax 的 Apache Struts 漏洞的影響。
開源許可證沖突繼續使知識產權面臨風險。68% 的代碼庫包含某種形式的開放源代碼許可證沖突,而 33% 的代碼庫包含沒有可識別許可證的開放源代碼組件。許可證沖突的發生率因行業而異,從最高的 93%(互聯網和移動應用程序)到相對較低的 59%(虛擬現實、游戲、娛樂、媒體)不等。