近八成軟件存開(kāi)源漏洞 供應(yīng)鏈需全生命周期安全防護(hù)
2021-06-02
來(lái)源:網(wǎng)絡(luò)安全應(yīng)急技術(shù)國(guó)家工程實(shí)驗(yàn)室
2020年12月13日,全球最著名的網(wǎng)管軟件供應(yīng)商SolarWinds遭遇高度復(fù)雜的供應(yīng)鏈攻擊,包括美國(guó)關(guān)鍵基礎(chǔ)設(shè)施、軍隊(duì)、政府在內(nèi)的18000+企業(yè)客戶,可任由攻擊者完全操控,這件事再度敲響了軟件供應(yīng)鏈安全的警鐘。
“‘企業(yè)自主開(kāi)發(fā)代碼缺陷密度達(dá)10.13個(gè)/千行’、‘開(kāi)源項(xiàng)目源代碼缺陷密度達(dá)14.22個(gè)/千行’、‘存在開(kāi)源軟件漏洞的項(xiàng)目占比達(dá)77.5%’……這一個(gè)個(gè)數(shù)據(jù)的背后,無(wú)不透露出軟件供應(yīng)鏈存在著巨大的安全隱患。”
軟件供應(yīng)鏈面臨巨大安全危機(jī)
為應(yīng)對(duì)軟件供應(yīng)鏈安全挑戰(zhàn),5月12日,美國(guó)總統(tǒng)拜登簽署了“加強(qiáng)國(guó)家網(wǎng)絡(luò)安全的行政命令”,明確提出要加強(qiáng)軟件供應(yīng)鏈安全,要求向聯(lián)邦政府出售軟件的任何企業(yè)不僅提供應(yīng)用程序,而且還必須提供軟件物料清單 (即軟件的各項(xiàng)組件)。
從近幾年的網(wǎng)絡(luò)攻擊趨勢(shì)來(lái)看,軟件(包括固件)尤其是較為流行的軟件供應(yīng)鏈,正在成為黑客實(shí)施供應(yīng)鏈攻擊的重要突破口,而且此類攻擊往往能夠“突破一點(diǎn),打擊一片”,危害性極大,甚至很多網(wǎng)絡(luò)安全軟件自身都存在供應(yīng)鏈風(fēng)險(xiǎn)。
“軟件供應(yīng)鏈可劃分為開(kāi)發(fā)、交付、運(yùn)行三個(gè)大的環(huán)節(jié),每個(gè)環(huán)節(jié)都可能會(huì)引入供應(yīng)鏈安全風(fēng)險(xiǎn)從而遭受攻擊,上游環(huán)節(jié)的安全問(wèn)題會(huì)傳遞到下游環(huán)節(jié)并被放大。”
開(kāi)源軟件的源代碼缺陷則更加密集。開(kāi)軟項(xiàng)目的缺陷密度達(dá)到了14.22個(gè)/千行,其中高危缺陷密度則為0.72個(gè)/千行。眾所周知,開(kāi)源軟件是軟件開(kāi)發(fā)最基礎(chǔ)的原材料,位于軟件供應(yīng)鏈的源頭,且應(yīng)用及其廣泛。其自身的安全狀況,直接影響最終軟件的安全性。
近8成軟件項(xiàng)目引入了開(kāi)源軟件漏洞
針對(duì)2188個(gè)企業(yè)軟件項(xiàng)目的檢測(cè)結(jié)果顯示,所有軟件項(xiàng)目均使用了開(kāi)源軟件,平均每個(gè)項(xiàng)目使用開(kāi)源軟件數(shù)量達(dá)135個(gè);其中被使用最多的開(kāi)源軟件出現(xiàn)在了581個(gè)項(xiàng)目中,滲透率達(dá)到了26.6%。
在所有被檢測(cè)的項(xiàng)目中,平均每個(gè)項(xiàng)目存在52.5個(gè)開(kāi)源軟件漏洞。其中,存在開(kāi)源軟件漏洞的項(xiàng)目1695個(gè),占比77.5%;存在高危開(kāi)源軟件漏洞的項(xiàng)目1559個(gè),占比71.3%;存在超危開(kāi)源軟件漏洞的項(xiàng)目1319個(gè),占比60.3%。
值得關(guān)注的是,影響面最大的開(kāi)源軟件漏洞(Spring FrameWork漏洞)出現(xiàn)在973個(gè)項(xiàng)目中,滲透率高達(dá)44.5%。這也就是說(shuō),一旦該漏洞被攻擊者利用,將影響近半數(shù)的企業(yè)軟件,波及的企業(yè)數(shù)量更加不計(jì)其數(shù)。
與此同時(shí),攝像頭、路由器等智能聯(lián)網(wǎng)設(shè)備也未能幸免,針對(duì)聯(lián)網(wǎng)設(shè)備固件中引用的開(kāi)源軟件及其漏洞進(jìn)行分析。86.4%的設(shè)備的最新固件存在至少一個(gè)老舊開(kāi)源軟件漏洞,漏洞最多的固件存在74個(gè)老舊開(kāi)源軟件漏洞。更有甚者,2014年曝出的“心臟滴血”漏洞,仍然存在于5.3%的最新設(shè)備中。
供應(yīng)鏈安全應(yīng)成為數(shù)字化的底板
在當(dāng)前軟件供應(yīng)鏈安全基礎(chǔ)較薄弱的形勢(shì)下,軟件供應(yīng)鏈安全應(yīng)成為信息系統(tǒng)安全的底板工程,亟需建立安全與軟件供應(yīng)鏈全生命周期深度融合、全面覆蓋的安全體系,來(lái)保障軟件從開(kāi)發(fā)、交付到運(yùn)行的全過(guò)程、全生命周期安全。
其中,針對(duì)軟件成分及其風(fēng)險(xiǎn)的分析,是軟件供應(yīng)鏈安全的基礎(chǔ)和關(guān)鍵部分,建議作為軟件供應(yīng)鏈安全工作開(kāi)展的首要事。用戶在采購(gòu)商業(yè)貨架軟件、自行開(kāi)發(fā)軟件系統(tǒng)或委托第三方定制開(kāi)發(fā)軟件系統(tǒng)時(shí),應(yīng)對(duì)軟件源代碼、二進(jìn)制代碼中所包含的開(kāi)源軟件成分及其安全風(fēng)險(xiǎn)進(jìn)行充分的了解,形成開(kāi)源軟件成分清單,并持續(xù)跟蹤這些開(kāi)源軟件的安全風(fēng)險(xiǎn)情報(bào)。