為什么必須防止供應(yīng)鏈攻擊?
SolarWinds的攻擊持續(xù)在網(wǎng)絡(luò)安全世界產(chǎn)生影響。在外行人眼中,這種形式的網(wǎng)絡(luò)攻擊就像毒氣,逐漸傳播及其影響是巨大。
供應(yīng)鏈攻擊保護(hù)
這次攻擊證明是一個(gè)巨大的警鐘,并引起企業(yè)對(duì)軟件供應(yīng)鏈攻擊的廣泛關(guān)注。鑒于威脅行為者已迅速將這種相同的方法應(yīng)用于其他供應(yīng)鏈,這一點(diǎn)變得尤為重要。
事實(shí)上,他們似乎通過(guò)瞄準(zhǔn)擁有強(qiáng)大網(wǎng)絡(luò)系統(tǒng)的公司而找到訣竅。因此,2021年出現(xiàn)了一個(gè)關(guān)鍵的增長(zhǎng)攻擊載體:“網(wǎng)絡(luò)供應(yīng)鏈攻擊”。
是什么為供應(yīng)鏈攻擊提供契機(jī)?
讓我們從源頭開(kāi)始找尋,看看JavaScript在web上的主導(dǎo)地位。JavaScript是網(wǎng)絡(luò)的“語(yǔ)言”。據(jù)估計(jì),世界上97%的網(wǎng)站使用javascript——包括所有財(cái)富500強(qiáng)公司的網(wǎng)站。
20年前,網(wǎng)絡(luò)主要由靜態(tài)網(wǎng)站組成,幾乎沒(méi)有任何功能,但這種情況很快就改變了。自從JavaScript開(kāi)源社區(qū)在2009年開(kāi)始維護(hù)自己的權(quán)利以來(lái),我們見(jiàn)證了開(kāi)源項(xiàng)目的爆炸式增長(zhǎng),社區(qū)發(fā)布了數(shù)以百萬(wàn)計(jì)的可重用代碼塊(模塊或包),這些代碼塊可以被不同的項(xiàng)目輕松共享。這個(gè)生態(tài)系統(tǒng)的后續(xù)發(fā)展提高了所有應(yīng)用程序的開(kāi)發(fā)速度——網(wǎng)絡(luò)、移動(dòng)和桌面。
在這樣一個(gè)炙手可熱的領(lǐng)域,公司尋求依靠同行評(píng)審的第三方模塊來(lái)縮短產(chǎn)品開(kāi)發(fā)時(shí)間,而不是在內(nèi)部開(kāi)發(fā)每一段代碼。因此,使用第三方代碼成為web開(kāi)發(fā)的標(biāo)準(zhǔn)。
與此同時(shí),網(wǎng)絡(luò)變得越來(lái)越有價(jià)值和復(fù)雜。靜態(tài)的網(wǎng)站變成了動(dòng)態(tài)的頁(yè)面,最終形成了今天成熟的數(shù)字服務(wù),如網(wǎng)上銀行、電子商務(wù)和流媒體。市場(chǎng)營(yíng)銷(xiāo)、用戶體驗(yàn)和商業(yè)工具的數(shù)字服務(wù)供應(yīng)鏈的增長(zhǎng)也推動(dòng)了這種快速轉(zhuǎn)變。這些公司沒(méi)有使用自己的聊天機(jī)器人、分析工具或CRM工具,而是從第三方購(gòu)買(mǎi)了這些服務(wù),并將它們直接集成到自己的網(wǎng)站上。
難怪,如今平均有超過(guò)三分之二的網(wǎng)站代碼來(lái)自第三方。這就是安全問(wèn)題出現(xiàn)的地方。在網(wǎng)站的上下文中,第三方代碼的每一段都與內(nèi)部開(kāi)發(fā)的任何剩余代碼具有完全相同的權(quán)限。因此,如果聊天機(jī)器人工具突然決定開(kāi)始捕捉并泄露購(gòu)物者的信用卡信息到電子商務(wù)網(wǎng)站,沒(méi)有什么可以阻止它。這是網(wǎng)絡(luò)供應(yīng)鏈攻擊的本質(zhì)——破壞第三方服務(wù)提供商,將惡意代碼注入到實(shí)際服務(wù)中,并因此將其傳播到每個(gè)使用它的網(wǎng)站。
公司不僅無(wú)法控制這一點(diǎn),而且他們也無(wú)法實(shí)際了解這些攻擊。這就是為什么像Magecart這樣的攻擊通常會(huì)連續(xù)數(shù)月保持活躍。
什么是最好的防守?
在評(píng)估供應(yīng)鏈安全和評(píng)估供應(yīng)鏈管理實(shí)踐時(shí),不同國(guó)家都實(shí)施了相關(guān)的法規(guī),并加強(qiáng)在軟件供應(yīng)鏈安全方面的關(guān)注。但處理 Web 供應(yīng)鏈攻擊需要深入了解第三方代碼的使用情況。
第三方代碼將繼續(xù)存在。它嵌入在Web開(kāi)發(fā)的核心結(jié)構(gòu)中,并且仍然是競(jìng)爭(zhēng)產(chǎn)品開(kāi)發(fā)中最有價(jià)值的資產(chǎn)之一。但是,如果公司學(xué)會(huì)安全地集成外部源代碼,就有可能減輕外部源代碼內(nèi)在的風(fēng)險(xiǎn)。
這將要求安全和開(kāi)發(fā)團(tuán)隊(duì)盡可能減少代碼依賴性,并實(shí)施技術(shù)來(lái)為他們提供對(duì)其網(wǎng)站客戶端上運(yùn)行的所有代碼的行為的可見(jiàn)性和控制(即,在瀏覽器或終端上發(fā)生的一切) -用戶設(shè)備)。
這將需要安全和開(kāi)發(fā)團(tuán)隊(duì)盡可能地減少代碼依賴,同時(shí)通過(guò)SCA開(kāi)源軟件成分分析工具及SAST靜態(tài)代碼檢測(cè)等代碼安全檢測(cè)工具來(lái)提高代碼的安全性,并控制所有在他們網(wǎng)站的客戶端上運(yùn)行的代碼的行為(例如,發(fā)生在瀏覽器或最終用戶設(shè)備上的一切)。
如果公司要控制其網(wǎng)絡(luò)供應(yīng)鏈,為了最大限度地提高安全級(jí)別,公司需要在運(yùn)行時(shí)持續(xù)監(jiān)控每個(gè)用戶會(huì)話是否有惡意行為的跡象。
這也正是DevSecOps背后的想法,軟件行業(yè)的真正范式轉(zhuǎn)變,旨在將安全性穩(wěn)健地集成到現(xiàn)代應(yīng)用程序開(kāi)發(fā)和部署中。作為全球推動(dòng)更安全供應(yīng)鏈的一部分,DevSecOps可以在整個(gè)軟件開(kāi)發(fā)生命周期中植入安全控制。這些做法當(dāng)然可以幫助企業(yè)重新獲得我們已經(jīng)提到的對(duì)其網(wǎng)站供應(yīng)鏈的可見(jiàn)性和控制權(quán)。
SolarWinds 供應(yīng)鏈攻擊無(wú)疑激怒了許多重要的企業(yè)。另一方面,它引起全球?qū)浖?yīng)鏈的關(guān)注和重視。今天,我們正處于一個(gè)關(guān)鍵時(shí)刻,防止這些攻擊是觸手可及的,而不這樣做的代價(jià)太高,不容忽視。
參讀鏈接:
https://www.helpnetsecurity.com/2021/12/01/supply-chain-attacks-protection/
