《電子技術應用》
您所在的位置:首頁 > 通信與網絡 > 業界動態 > 開源漏洞長期普遍存在,軟件供應鏈挑戰我國關基設施安全

開源漏洞長期普遍存在,軟件供應鏈挑戰我國關基設施安全

2021-06-03
來源: e安在線
關鍵詞: 開源漏洞 關基設施

  近年來,針對軟件供應鏈的安全攻擊事件一直呈快速增長態勢,造成的危害越來越嚴重,防范軟件供應鏈安全風險,已經迫在眉睫;

  開源軟件漏洞頻現:截至2020年底,CVE/NVD、CNNVD、CNVD等公開漏洞庫中共收錄開源軟件相關漏洞41342個,其中高達13%(5366個)為2020年度新增漏洞;

  研究發現:近9成軟件項目存在已知開源軟件漏洞;平均每個軟件項目存在66個已知開源軟件漏洞;影響最廣的開源軟件漏洞存在于44.3%的軟件項目中;15年前開源軟件漏洞仍存在于多個軟件項目中。

  2020年 “奇安信開源項目檢測計劃”對1364個開源軟件項目的源代碼安全檢測顯示:開源軟件項目整體缺陷密度為14.96個/千行,高危缺陷密度為0.95個/千行;

  近期,奇安信代碼安全實驗室發布《2021年中國軟件供應鏈安全綜合分析報告》。報告主要包括國內企業自主開發源代碼安全狀況分析、開源軟件生態發展與安全狀況分析、國內企業軟件開發中開源軟件應用狀況分析、典型應用系統供應鏈安全風險實例分析、總結及建議等五個方面。

  國內企業自主開發源代碼安全狀況

  源代碼是軟件的原始形態,位于軟件供應鏈的源頭。源代碼安全是軟件供應鏈安全的基礎,其地位非常關鍵和重要。

  2020年全年,奇安信代碼安全實驗室對2001個國內企業自主開發的軟件項目源代碼進行了安全缺陷檢測,檢測的代碼總量為335011173行,共發現安全缺陷3387642個,其中高危缺陷361812個,整體缺陷密度為10.11個/千行,高危缺陷密度為1.08個/千行。

  1、編程語言分布情況

  在被檢測的2001個國內企業自主開發的軟件項目中,使用數量排名前3的編程語言為Java、PHP、C/C++,對應的軟件項目數量分別為1492個、204個和97個。可以看出,相關國內企業在進行軟件開發時的首選語言是Java語言,占比高達75%。編程語言的總體分布情況如下圖所示。

 1.png

  2、典型安全缺陷檢出情況

  輸入驗證、路徑遍歷、跨站腳本、注入、NULL引用、資源管理、密碼管理、API誤用、配置管理、日志偽造等十類安全缺陷是程序員在編寫軟件代碼時經常會出現的典型安全缺陷。

  典型安全缺陷的檢出率可以體現出軟件源代碼的基本安全狀況(檢出率指含有某類缺陷的軟件項目數占軟件項目總數的比例)。在被檢測的2001個軟件項目中,十類典型安全缺陷的總體檢出率為77.8%,每類典型缺陷的檢出率及排名如下表所示。

 2.png

  開源軟件生態發展與安全狀況

  Gartner表示,現代軟件大多數是被“組裝”出來的,不是被“開發”出來的。根據知名研究機構Forrester統計,軟件開發中,80~90%的代碼來自于開源軟件。因此,現代軟件的源代碼絕大多數是混源代碼,由企業自主開發的源代碼和開源軟件代碼共同組成。開源軟件是現代軟件開發最基礎的原材料,與企業自主開發的源代碼所處的軟件供應鏈環節相同,也位于軟件供應鏈的源頭,其代碼自身的安全狀況,會直接影響最終軟件的安全性。

  報告從開源軟件生態發展狀況、開源軟件源代碼安全狀況、開源軟件公開報告漏洞狀況、開源軟件活躍度狀況等四個方面對2020年開源軟件生態發展與安全狀況進行綜合分析。

  1、開源軟件生態發展狀況分析

  據奇安信代碼安全實驗室監測和統計,2019年底和2020年底,主流開源軟件包生態系統中開源項目總量分別為2841314個和3814194個,一年間增長了34.2%;截至2020年底,主流開源軟件包生態系統中平均每個開源項目有10.2個版本。可以看出,2020年開源軟件生態更加繁榮,整體發展非常迅猛。

  本報告中對八個典型的開源軟件包生態系統進行了進一步的分析和比較,這八個包生態系統為Maven、NPM、Packagist、Pypi、Godoc、Nuget、Rubygems、Swift,具體分析如下。

  NPM包生態項目數量最多,Godoc包生態增速最快。八個典型的開源軟件包生態系統中開源項目數量和增長率情況如下圖所示,其中開源項目數量最多的是NPM包生態系統,截至2020年底,其開源項目數量達到了1559835個;開源項目數量增速最快的是Godoc包生態系統,2020年一年間的項目總量增速達到了36.2%。

 3.png

  Maven、Nuget、NPM包生態系統的開源項目開發者比較“勤奮”,開源項目的平均版本數超過11個。截至2020年底,八個典型的開源軟件包生態系統的開源項目數量和版本數量如下表所示。其中,Maven包生態系統平均每個開源項目有18.0個版本,Nuget包生態系統平均每個開源項目有11.7個版本,NPM包生態系統平均每個開源項目有11.0個版本。

  4.png

  2、開源軟件源代碼安全狀況分析

  奇安信代碼安全實驗室于2015年初發起了“奇安信開源項目檢測計劃”,該計劃是一項針對開源軟件項目的公益性安全檢測計劃,旨在讓廣大開發者關注和了解開源軟件的安全問題,提高軟件安全開發意識和技能。

  2020年全年,“奇安信開源項目檢測計劃”對1364個開源軟件項目的源代碼進行了安全檢測,代碼總量為124296804行,共發現安全缺陷1859129個,其中高危缺陷117738個。2020年檢測的1364個開源軟件項目整體缺陷密度為14.96個/千行,高危缺陷密度為0.95個/千行。

  (1)編程語言分布情況

  2020年檢測的1364個開源項目中,一共涉及到7種編程語言,分別是Java、C/C++、Python、OC、Go、JavaScript、PHP,編程語言的分布情況如下圖所示。

 5.png

  (2)典型安全缺陷檢出情況

  輸入驗證、路徑遍歷、跨站腳本、注入、NULL引用、資源管理、密碼管理、API誤用、配置管理、日志偽造等十類安全缺陷是程序員在編寫軟件代碼時經常會出現的典型安全缺陷。

  典型安全缺陷的檢出率可以體現出軟件源代碼的基本安全狀況(檢出率指含有某類缺陷的軟件項目數占軟件項目總數的比例)。在2020年檢測的1364個開源軟件項目中,十類典型安全缺陷的總體檢出率為56.3%,每類典型缺陷的檢出率及排名如下表所示。

 6.png

  3、開源軟件公開報告漏洞狀況分析

  據奇安信代碼安全實驗室監測與統計,截至2020年底,CVE/NVD、CNNVD、CNVD等公開漏洞庫中共收錄開源軟件相關漏洞41342個,其中5366個為2020年度新增漏洞。

  (1)大型開源項目漏洞總數及年度增長TOP20

  截至2020年底,歷史漏洞總數排名前20的大型開源項目信息如下表所示。

  7.png

  2020年一年間,公開報告漏洞數量增長排名前20的大型開源項目信息如下表所示。

 8.png

  (2)主流開源軟件包生態系統漏洞總數及年度增長TOP20

  截至2020年底,主流開源軟件包生態系統中歷史漏洞總數排名前20的開源軟件信息如下表所示。

 9.png

  2020年一年間,主流開源軟件包生態系統中公開報告漏洞數量增長排名前20的開源軟件信息如下表所示。

 10.png

  4、開源軟件活躍度狀況分析

  活躍度也是衡量開源軟件安全性的一個重要維度。不活躍的開源軟件,無論是更新頻率很低,或者被廢棄,一旦出現安全漏洞,難以得到及時的修復,安全風險很高;活躍的開源軟件中,如果其版本更新發布的頻率過高,同樣會增加使用者運維的成本和安全風險。在選擇使用開源軟件時,應該充分考慮這兩個因素。

  本報告中分析了2020年主流開源軟件包生態系統中開源軟件的版本更新情況,可以一定程度上體現當前開源軟件活躍度的整體狀況。

  (1)61.6%的開源軟件項目處于不活躍狀態

  我們將一年內未更新發布過版本的開源軟件項目定義為不活躍項目。2020年全年,主流開源軟件包生態系統中不活躍的開源軟件項目數量為2347794個,占比達到61.6%。

  本報告中對八個典型的開源軟件包生態系統進行了進一步的分析和比較,這八個包生態系統為Maven、NPM、Packagist、Pypi、Godoc、Nuget、Rubygems、Swift,其中NPM的不活躍項目數量最多,達到1018533個,Rubygems的不活躍項目比例最高,占比達到86.5%,具體數據見下表。

 11.png

  (2)13000多個開源軟件一年內更新發布超過100個版本

  2020年全年,主流開源軟件包生態系統中,更新發布100個以上版本的開源項目有13411個。前述八個典型的開源軟件包生態系統中,一年內更新發布超過100個版本的項目數量見下表。

  12.png

  國內軟件開發中開源軟件應用狀況

  現代軟件的源代碼絕大多數是混源代碼,由企業自主開發的源代碼和開源軟件代碼共同組成。本章內容將針對國內企業在進行軟件開發工作時,使用開源軟件的具體情況進行分析。主要回答兩個問題:一是國內企業在軟件開發中是否使用以及使用了多少開源軟件?二是其使用的開源軟件是否存在安全問題?

  2020年全年,奇安信代碼安全實驗室對2557個國內企業軟件項目中使用開源軟件的情況進行了分析,這些軟件項目的應用領域涉及政府、金融、能源等重要行業。分析發現,國內企業在軟件開發中普遍使用存在已知漏洞的開源軟件,存在巨大的軟件供應鏈安全風險。具體分析數據如下。

  1、開源軟件總體使用情況分析

  (1)國內企業軟件項目100%使用開源軟件

  在被分析的2557個國內企業軟件項目中,無一例外,均使用了開源軟件。最多的項目使用了3878個開源軟件,平均每個項目使用126個開源軟件。使用開源軟件最多的5個項目情況如下表所示。

 13.png

  經過后續的調研和訪談,我們還發現,軟件項目中使用的開源軟件數量大大超出了軟件項目管理者和程序員自身的認知。由于開源軟件之間的依賴關系錯綜復雜,且軟件開發中依賴包的管理通常通過包管理器程序自動管理,軟件開發者常常意識不到自己使用了數量巨大的開源軟件,因此當某個開源軟件曝出安全漏洞時,軟件開發者常常“躺槍”而不自知,這中間隱含了巨大的軟件供應鏈安全風險。

  (2)流行開源軟件被近1/4的軟件項目使用

  一些流行開源軟件會被很多軟件項目所使用,這些開源軟件一旦出現安全漏洞,影響面將會非常巨大。對于大型企業來說,企業內部可能就有數以百計的軟件開發項目,更加需要對流行開源軟件保持足夠的關注和重視,應該做到對其在本單位內的使用情況心中有數。經統計,在我們分析的2557個國內企業軟件項目中,被使用最多的開源軟件為Apache Commons Lang,被622個項目所使用,占比達24.3%。被使用最多的前5名開源軟件如下表所示。

 14.png

  2、開源軟件漏洞風險分析

  (1)近9成軟件項目存在已知開源軟件漏洞

  分析發現,在2557個國內企業軟件項目中,存在已知開源軟件漏洞的項目有2280個,占比高達89.2%;存在已知高危開源軟件漏洞的項目有2062個,占比為80.6%;存在已知超危開源軟件漏洞的項目有1802個,占比為70.5%。

  (2)平均每個軟件項目存在66個已知開源軟件漏洞

  在2557個國內企業軟件項目中,共檢出168604個已知開源軟件漏洞(涉及到4166個唯一CVE漏洞編號),平均每個軟件項目存在66個已知開源軟件漏洞,最多的軟件項目存在1200個已知開源軟件漏洞。存在已知開源軟件漏洞數量排名前5的項目情況如下表所示。

 15.png

  (3)影響最廣的開源軟件漏洞存在于44.3%的軟件項目中

  從漏洞的影響度來分析,影響范圍最大的開源軟件漏洞為CVE-2020-5421,影響了44.3%的軟件項目。影響度排名前5的開源軟件漏洞情況如下表所示。

  16.png

  (4)15年前開源軟件漏洞仍然存在于多個軟件項目中

  分析發現,部分軟件項目中存在十幾年前公開的古老開源軟件漏洞,最古老的漏洞是2005年11月公開的CVE-2005-3510,仍然存在于31個項目中。部分古老開源軟件漏洞的影響情況如下表所示。

  17.png

  3、開源軟件運維風險分析

  開源軟件運維風險復雜多樣,本報告主要從老舊開源軟件的使用和開源軟件多版本的使用角度進行分析。

  (1)18年前的老舊開源軟件版本仍在被使用

  分析發現,許多軟件項目中使用了十幾年前發布的開源軟件版本,存在很大的運維風險。被使用的老舊開源軟件版本中,最老舊的一個是2003年3月3日發布的Apache Xalan 2.5.D1,已經有18年之久,但仍然被7個軟件項目所使用。按老舊程度排名前5的開源軟件如下表所示。

  18.png

  (2)開源軟件各版本使用非常混亂

  分析發現,各個項目中開源軟件使用的版本非常混亂,并非使用的都是最新版本。Spring Data是被使用版本最多的開源軟件,有162個版本在被使用。按照被使用版本的數量排序,排名前5的開源軟件情況如下表所示。

  19.png

  總結及建議

  軟件供應鏈已經成為網絡空間攻防對抗的焦點,直接影響關鍵基礎設施和重要信息系統安全。為了應對軟件供應鏈安全挑戰,美國總統拜登在2021年5月12日簽署了“加強國家網絡安全的行政命令”,明確提出要增強美國聯邦政府的軟件供應鏈安全,要求向美國聯邦政府出售軟件的任何企業,不僅要提供軟件本身,還必須提供軟件物料清單(SBOM),明確該軟件的組成成分。行政命令中還要求美國國家標準與技術研究院(NIST)在6個月內發布軟件供應鏈安全指南,并在1年內發布最終指南。該行政命令被認為是迄今為止美國聯邦政府為保護美國軟件供應鏈安全采取的最強勁措施。

  當前,我國在軟件供應鏈安全方面的基礎比較薄弱,亟需從國家、行業、機構、企業各個層面建立軟件供應鏈安全風險的發現能力、分析能力、處置能力、防護能力,整體提升軟件供應鏈安全管理的水平。現代軟件的供應鏈非常復雜,軟件供應鏈安全管理是一個系統工程,需要長期持續的建設。基于奇安信代碼安全實驗室的研究和實踐,我們建議可從以下方面入手開展軟件供應鏈安全相關工作,并在此基礎之上不斷增強和完善。

  1、對國家與行業監管層面的建議:

  制定軟件供應鏈安全相關的政策要求、標準規范和實施指南,建立長效工作機制。

  建立國家級/行業級軟件供應鏈安全風險分析平臺,具備系統化、規模化的軟件源代碼缺陷和后門分析、軟件漏洞分析、開源軟件成分及風險分析等能力,為關鍵基礎設施、重要信息系統用戶提供日常的自查服務,及時發現和處置軟件供應鏈安全風險。

  在產品測評、系統測評等工作中納入軟件供應鏈安全的內容,針對軟件的源代碼、制成品、運行中的軟件系統等進行軟件供應鏈安全的測試和評估。

  2、對軟件最終用戶層面的建議:

  參照監管要求及業內優秀實踐,明確本單位內部軟件供應鏈安全管理的目標、工作流程、檢查內容、責任部門,并賦予責任部門足夠的權力。

  在采購商業貨架軟件時,應充分評估供應商的安全能力,并與供應商簽署安全責任協議,要求供應商提供其軟件產品中所使用的第三方組件/開源組件的清單,并明確要求,一旦這些第三方組件/開源組件出現安全漏洞,供應商需同樣承擔安全責任,提供必要的技術支持。

  在自行開發軟件系統或委托第三方定制開發軟件系統時,應遵循軟件安全開發生命周期管理流程,針對軟件源代碼進行安全缺陷檢測和修復,同時要重點管控開源軟件的使用,建立開源軟件資產臺賬,持續監測和消減所使用的開源軟件的安全風險。

  3、對軟件廠商層面的建議:

  提高安全責任意識,將安全作為產品的基礎屬性來對待,嚴控產品的安全質量。

  建立清晰的軟件供應鏈安全策略,明確本單位內部軟件供應鏈安全管理的目標、工作流程、檢查內容、責任部門,并賦予責任部門足夠的權力。

  嚴格管控上游,尤其重點管控開源軟件的使用,建立開源軟件資產臺賬,建議采用可融入軟件開發流程的開源安全治理工具,持續監測和消減所使用的開源軟件的安全風險。

  嚴控自主開發的代碼質量,建議采用可融入軟件開發流程的軟件源代碼安全分析工具,持續檢測和修復軟件源代碼中的安全缺陷和漏洞。

  建立完善的產品漏洞響應機制,包括產品漏洞信息的收集、漏洞報告渠道的建立和維護、漏洞補丁的開發和發布、客戶側漏洞應急響應和修復支持等。

  


微信圖片_20210517164139.jpg

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产精品人人做人人爽 | 国产精品vvv| 欧美激情区在线播放| 久久夜色撩人精品| 久久精品日韩欧美| 欧美一区二区三区四区在线观看 | 亚洲激情校园春色| 亚洲高清在线| 亚洲福利小视频| 亚洲国产精品免费| 亚洲国产一区二区视频| 亚洲国产欧美日韩精品| 136国产福利精品导航| 1204国产成人精品视频| 亚洲缚视频在线观看| 亚洲国产精品成人| 亚洲欧洲精品一区二区| 亚洲精品日韩在线| 一本色道精品久久一区二区三区| 一本色道久久综合亚洲精品按摩| 99re视频这里只有精品| 9色porny自拍视频一区二区| 亚洲天堂av在线免费| 亚洲欧美在线播放| 久久精品一区二区三区四区| 亚洲破处大片| 99热精品在线观看| 亚洲欧美激情视频在线观看一区二区三区| 亚洲欧美资源在线| 久久国产精品一区二区三区| 久久久另类综合| 欧美99在线视频观看| 欧美激情视频在线播放| 欧美日韩三级| 国产日韩免费| 亚洲成人在线免费| 日韩一区二区精品葵司在线| 在线亚洲精品| 欧美一区二区高清| 亚洲观看高清完整版在线观看| 亚洲国产精品专区久久 | 一本色道久久88综合亚洲精品ⅰ| 中文在线资源观看网站视频免费不卡 | 蜜臀av性久久久久蜜臀aⅴ| 另类亚洲自拍| 欧美乱妇高清无乱码| 国产精品激情av在线播放| 国产午夜精品美女视频明星a级| 一色屋精品视频在线观看网站| 亚洲第一页在线| 在线一区免费观看| 亚洲丰满少妇videoshd| 一区二区成人精品| 欧美主播一区二区三区美女 久久精品人 | 亚洲午夜久久久| 久久国产欧美| 欧美激情一区| 国产精品专区h在线观看| 伊人久久大香线蕉综合热线| 一本大道av伊人久久综合| 欧美一区二区三区视频| 日韩视频在线免费观看| 欧美一区二区日韩| 欧美国产在线电影| 国产精品综合视频| 亚洲国内高清视频| 欧美亚洲视频在线看网址| 99视频精品全部免费在线| 欧美专区亚洲专区| 欧美国产亚洲精品久久久8v| 国产欧美一级| 日韩小视频在线观看| 亚洲第一综合天堂另类专| 亚洲调教视频在线观看| 蜜桃av噜噜一区二区三区| 国产精品一级在线| 一区二区三区在线观看欧美| 亚洲一区二区三区中文字幕| 亚洲激情视频网| 久久精品欧洲| 国产精品免费观看在线| 亚洲韩国日本中文字幕| 欧美中文在线观看国产| 亚洲欧美日韩电影| 欧美日本韩国一区二区三区| 黄色亚洲大片免费在线观看| 亚洲一级网站| 亚洲视频视频在线| 欧美—级高清免费播放| 狠狠色香婷婷久久亚洲精品| 午夜国产精品视频免费体验区| 一二三四社区欧美黄| 欧美大学生性色视频| 国产日韩精品一区观看| 亚洲一区二区三区四区视频| 一区二区三区高清在线| 欧美国产乱视频| 依依成人综合视频| 久久高清一区| 久久久久久9999| 国产乱码精品| 亚洲欧美激情一区二区| 亚洲欧美日韩国产另类专区| 欧美日韩国产成人在线免费| 亚洲国产成人精品久久| 亚洲黄色成人久久久| 久久久久一区二区三区四区| 国产亚洲激情| 欧美在线综合视频| 久久久欧美一区二区| 国内成人在线| 久久福利电影| 久久性天堂网| 国语自产精品视频在线看抢先版结局| 亚洲欧美视频一区| 久久国产福利| 国产午夜亚洲精品不卡| 欧美一级大片在线观看| 欧美一级久久久久久久大片| 国产美女精品人人做人人爽| 亚洲尤物在线| 欧美一区在线视频| 国产日产精品一区二区三区四区的观看方式 | 99综合在线| 亚洲一区二区在线观看视频| 国产精品sm| 亚洲欧美激情一区| 久久精品一区中文字幕| 激情伊人五月天久久综合| 亚洲黄色成人久久久| 欧美激情亚洲综合一区| 日韩视频免费在线观看| 亚洲午夜羞羞片| 国产精品久久久久一区| 午夜精品99久久免费| 久久免费视频观看| 亚洲第一级黄色片| 亚洲精品在线看| 欧美性理论片在线观看片免费| 一区二区三区高清不卡| 欧美一区在线看| 伊人伊人伊人久久| 日韩一级精品| 国产精品视频999| 欧美在线播放视频| 欧美好吊妞视频| 在线综合视频| 久久久夜色精品亚洲| 亚洲欧洲日产国码二区| 亚洲尤物视频网| 国产伦精品一区二区三区四区免费 | 亚洲丰满在线| 欧美人与禽猛交乱配| 亚洲天堂av电影| 久久精品一区蜜桃臀影院 | 欧美日韩一区在线观看| 亚洲欧美精品伊人久久| 久久躁狠狠躁夜夜爽| 最新亚洲激情| 欧美一级理论片| 亚洲第一区色| 午夜日本精品| 在线观看日韩国产| 亚洲在线观看视频| 激情偷拍久久| 亚洲一区日韩| 一区二区在线视频| 亚洲欧美另类国产| 尤物99国产成人精品视频| 亚洲一区二区成人| 狠狠干成人综合网| 亚洲女同精品视频| 激情欧美一区二区| 亚洲欧美日韩国产综合| 激情五月婷婷综合| 亚洲一区二区三区激情| 在线观看视频一区二区| 午夜国产一区| 亚洲黄色精品| 久久久999精品| 一区二区三区视频观看| 美国十次成人| 亚洲欧美日韩国产精品| 欧美精品久久久久久| 欧美一级在线视频| 欧美日韩亚洲综合| 久久国产福利| 国产精品久久久久毛片软件| 亚洲精品免费在线播放| 国产一区二区三区在线播放免费观看 | 亚洲国产成人av好男人在线观看| 欧美日韩在线观看视频| 亚洲第一免费播放区| 国产精品啊啊啊| 最新中文字幕亚洲| 国产主播一区二区三区| 销魂美女一区二区三区视频在线| 亚洲精品视频二区| 女女同性精品视频| 久久精品二区三区|