超三分之一外部攻擊通過(guò)利用漏洞進(jìn)行 第三方軟件風(fēng)險(xiǎn)顯著增加
當(dāng)前,應(yīng)用軟件大多數(shù)基于開(kāi)源的框架,開(kāi)源框架的源代碼、疊加的自研源代碼。都需要進(jìn)行安全漏洞測(cè)試。企業(yè)的軟件開(kāi)發(fā)比以往任何時(shí)候都更加依賴(lài)開(kāi)源項(xiàng)目,也因此需要管理組件和第三方供應(yīng)商中的漏洞帶來(lái)的風(fēng)險(xiǎn)。
FORRESTER安全與風(fēng)險(xiǎn)會(huì)議分析師在Forrester安全與風(fēng)險(xiǎn)2021會(huì)議上建議,公司需要采取措施將供應(yīng)鏈中第三方軟件帶來(lái)的風(fēng)險(xiǎn)降至最低。在過(guò)去幾年里,供應(yīng)鏈攻擊已顯著增長(zhǎng)。
開(kāi)源軟件漏洞引發(fā)安全問(wèn)題
隨著外部攻擊越來(lái)越多地通過(guò)第三方軟件中的漏洞(例如開(kāi)源項(xiàng)目或第三方供應(yīng)商的漏洞)引發(fā)擔(dān)憂(yōu)。
根據(jù)Forrester對(duì)530個(gè)安全決策的調(diào)查,超過(guò)三分之一 (35%) 的外部攻擊是通過(guò)利用漏洞進(jìn)行的,而另外三分之一 (33%) 來(lái)自對(duì)第三方服務(wù)或軟件制造商提供的軟件漏洞進(jìn)行破壞。由此可見(jiàn),在軟件開(kāi)發(fā)期間加強(qiáng)對(duì)代碼中安全漏洞的檢測(cè)及修復(fù),可以大大有效避免漏洞利用引起的網(wǎng)絡(luò)攻擊。
Forrester高級(jí)分析師Alla Valente表示,如果公司不采取措施解決這個(gè)問(wèn)題,第三方風(fēng)險(xiǎn)的增長(zhǎng)可能會(huì)破壞企業(yè)應(yīng)用程序的安全性。
她表示,我們面臨很多第三方風(fēng)險(xiǎn),而且還在不斷升級(jí)。部分原因是當(dāng)前第三方的數(shù)量比以往任何時(shí)候都多。
安全法規(guī)促使企業(yè)重視軟件安全
隨著全球不同國(guó)家政府機(jī)構(gòu)開(kāi)始起草安全軟件指南,這個(gè)問(wèn)題將在2022年變得更加重要。
例如,拜登政府在5月簽署了一項(xiàng)行政命令,要求國(guó)家標(biāo)準(zhǔn)與技術(shù)研究所(NIST)為聯(lián)邦承包商起草指導(dǎo)方針,以更好地保護(hù)軟件安全。這些指導(dǎo)方針包括為政府的產(chǎn)品提供軟件材料清單,并證明開(kāi)發(fā)人員構(gòu)建環(huán)境的安全性。NIST已經(jīng)制定了保護(hù)物聯(lián)網(wǎng)設(shè)備和軟件安全的指導(dǎo)原則草案。
我國(guó)的《關(guān)鍵基礎(chǔ)設(shè)施保護(hù)條例》、《數(shù)據(jù)安全法》、等保2.0等政策也明確表示了在軟件安全、數(shù)據(jù)安全等各個(gè)方面企業(yè)應(yīng)準(zhǔn)備的工作和承擔(dān)的相應(yīng)責(zé)任。
開(kāi)源軟件包漏洞難確定
“大多數(shù)開(kāi)發(fā)人員只是連接到一個(gè)存儲(chǔ)庫(kù),然后下載他們正在使用的任何軟件包的最新軟件版本,但這些軟件包是否存在漏洞,或者每個(gè)人是否都在使用相同的版本?” Forrester首席分析師Condo表示,如果不關(guān)注此類(lèi)問(wèn)題,公司只是在推遲安全問(wèn)題。
開(kāi)源軟件的不一致性質(zhì)仍然是一個(gè)關(guān)鍵問(wèn)題。雖然主要的軟件包通常管理良好,但許多企業(yè)最終使用的包(通常是通過(guò)更常見(jiàn)的組件的依賴(lài)關(guān)系)管理得不太好,可能存在漏洞。
盡管開(kāi)源軟件項(xiàng)目平均修復(fù)漏洞的時(shí)間顯著下降(從2011年的371天下降到2021年的28天),但主要生態(tài)系統(tǒng)托管的軟件包數(shù)量顯著增長(zhǎng),根據(jù)軟件安全公司Sonatype發(fā)布的一份報(bào)告,去年增長(zhǎng)了20%。
Condo表示,公司需要深入研究在軟件開(kāi)發(fā)中所依賴(lài)的軟件包,并確定它們是否構(gòu)成安全問(wèn)題。他說(shuō):“了解你真正依賴(lài)的是什么真的很重要。哪里是最薄弱的環(huán)節(jié),這些問(wèn)題會(huì)在哪里出現(xiàn),我們應(yīng)該使用專(zhuān)有包或策劃好的東西?!?/p>
AI/ML因素
隨著越來(lái)越多的企業(yè)追求基于人工智能和機(jī)器學(xué)習(xí)(AI/ML)的分析,他們也面臨著類(lèi)似的問(wèn)題。AI/ML代表了開(kāi)源問(wèn)題的一個(gè)特定方面,因?yàn)殚_(kāi)源項(xiàng)目中編碼了大量的算法。分析師Valente表示,企業(yè)應(yīng)確定這些組件是否對(duì)其業(yè)務(wù)構(gòu)成風(fēng)險(xiǎn)。
“組織正在利用人工智能和機(jī)器學(xué)習(xí),問(wèn)題不在于他們是否會(huì)使用人工智能和機(jī)器學(xué)習(xí),而是他們是否會(huì)購(gòu)買(mǎi)或構(gòu)建它,”Valent表示?!叭绻麄兇蛩阗?gòu)買(mǎi)ML或AI模型,在很多情況下它是開(kāi)源的,甚至商業(yè)軟件也有75%到90%是開(kāi)源的。”
提前發(fā)現(xiàn)問(wèn)題降低成本
企業(yè)需要在軟件開(kāi)發(fā)的早期關(guān)注安全問(wèn)題。Condo表示,確定開(kāi)源依賴(lài)項(xiàng)帶來(lái)安全問(wèn)題并將其排除在外,比試圖在部署后關(guān)閉軟件中發(fā)現(xiàn)的安全問(wèn)題要便宜得多。
同樣要注意的是,在自研代碼中存在的安全漏洞一樣需要及時(shí)檢測(cè)靜態(tài)代碼安全和修正缺陷。數(shù)據(jù)顯示,在軟件測(cè)試、發(fā)布階段糾正缺陷的成本是編碼階段發(fā)現(xiàn)并糾正缺陷的成本的15-90倍,如果在交付用戶(hù)之后才發(fā)現(xiàn)并解決缺陷,這個(gè)數(shù)字將達(dá)到50-200倍。因此,在編碼實(shí)現(xiàn)階段發(fā)現(xiàn)并解決盡可能多的缺陷,能夠極大降低缺陷管理成本,據(jù)相關(guān)統(tǒng)計(jì)數(shù)字估計(jì),這個(gè)成本至少可以降低1/3。
Condo表示,在軟件開(kāi)發(fā)初期不夠關(guān)注靜態(tài)代碼及開(kāi)源組件的安全,就會(huì)制造更多的技術(shù)債務(wù)和安全問(wèn)題,將不得不以更昂貴的方式處理下游問(wèn)題。安全應(yīng)該成為整個(gè)軟件開(kāi)發(fā)鏈的一部分,諸如如何更安全的開(kāi)發(fā)軟件、保護(hù)API安全和數(shù)據(jù)安全,并建立安全相應(yīng)機(jī)制。
參讀鏈接:
https://www.darkreading.com/application-security/third-party-software-risks-grow-but-so-do-solutions
