令人不寒而栗的是,攻擊者如何獲得團隊的信任,并精確地插入后門以避免被發現。誠然,許多第三方供應鏈攻擊可能更加粗暴,使用簡單的暴力手段,但這些庫被攻陷代表了安全管理人員面臨的新挑戰,尤其是因為它們結合了三種獨立的趨勢:第三方供應鏈攻擊的增加,將惡意軟件隱藏在復雜的開源軟件工具中,以及使用第三方庫作為GenAI軟件模型和工具的潛在攻擊向量,讓我們分別分析這些項目。
供應鏈、第三方庫和GenAI的風險
近年來,供應鏈攻擊總體上有所增加。Sonatype 2022年的報告發現,惡意軟件組件導致供應鏈攻擊增加了七倍。最新的Verizon數據泄露調查報告發現,與去年的數據相比,這些攻擊有了巨大的增長。Verizon呼吁企業“開始尋找更好的方法”來選擇第三方軟件供應商,“以免忽視供應鏈中的最薄弱環節”。
供應鏈問題現在已經永久融入了現代軟件的編寫和修改方式。應用程序每天甚至每小時都在使用新代碼進行改進,這使得安全軟件更難快速識別和修復任何編碼錯誤,這意味著舊的、更加手動的錯誤檢查方法注定會落后,無法徹底彌補漏洞。
但我們不能僅僅責怪第三方供應商,因為攻擊者利用了當今軟件供應鏈日益復雜的特點。Contrast Security的聯合創始人兼CTO Jeff Williams表示,“這是一個需要軟件行業多年才能解決的問題。與現代軟件供應鏈相比,制藥或制造供應鏈的復雜性簡直相形見絀。字面上說,創建軟件的每一個環節都可能引入惡意軟件和漏洞。”他告訴記者,“你使用的每一塊軟件都依賴于成百上千的人,其中任何一個人都有途徑將惡意軟件引入你的代碼,這還不算找到并利用漏洞的黑客。”
再加上使用開源軟件的復雜性和依賴性。XZ Utils庫攻擊只是最近一系列類似攻擊中的最新一次,這些攻擊利用了開源社區成員的信任,比如libxmlsec庫,它是多個ManageEngine工具的一部分,起源于Apache Santuario項目。2023年底,黑客發現了一個關鍵漏洞,Zoho花了幾個星期才確認并修補。如果放任不管,它將提供一種遠程執行代碼并授予各種服務器管理訪問權限的方法。
即使是常見的JavaScript框架,比如jQuery、React等,也不能免于庫濫用和攻擊。2019年的一篇博客文章指出,所有Michael Howard的客戶在被調查時都大量依賴不安全的JavaScript庫。ReversingLabs的創始人兼CEO Mario Vuksan最近在公司博客中寫道,“結果很明顯:軟件供應鏈攻擊正在增加,每次攻擊的連鎖反應越來越大。”
跟蹤應用程序安全性的Veracode在其最新分析中指出,超過70%的應用程序包含至少一個開源漏洞,這一比例多年來幾乎沒有變化。
最后,還要考慮惡意代碼在供應鏈中如何影響企業現在普遍使用的GenAI模型。在本月的Build大會上,微軟安全專家Mark Russinovich談到了多種在GenAI模型中投毒或添加惡意軟件的方法,這也是第三方軟件供應鏈攻擊的另一種形式,這將成為防御者需要理解并制定各種保護措施的另一個難題。
降低第三方庫風險的方法
有許多技術可以用來降低第三方庫的風險。Veracode的CTO兼聯合創始人Chris Wysopal告訴記者,他希望軟件開發人員更加主動,“投資于找到并修復其軟件供應鏈中的漏洞的正確工具,并立即進行修復,政府也必須承認開源軟件對國家安全的潛在風險。”這是一種常見的呼聲,早在他以黑客代號Weld Pond聞名并在國會作證時,他就提出過這一觀點。
隨著軟件的復雜性增加,依賴的組件也越來越多,要檢測編碼錯誤變得越來越困難,無論這些錯誤是無意的還是惡意添加的,因為攻擊者試圖隱藏他們的惡意軟件。
有一些方法可以幫助標記和消除這些不安全的庫。2023年6月,網絡安全和基礎設施安全局(CISA)發布了一系列關于如何改進開發框架和編碼管道以防止第三方攻擊的建議。雖然該機構提到了第三方代碼促進快速開發和部署的好處,但需要有一些控制措施,比如更好和加密更強的帳戶憑據和限制不受信任的庫等。
“任何單個開發人員都不應該在沒有另一個開發人員審查和批準更改的情況下提交代碼,”該機構在報告中寫道。這是XZ Utils被攻陷的問題之一,單個開發人員獲得了團隊的信任,能夠獨立進行修改。一種方法是將傳統的第三方風險管理程序與可以尋找并消除這些漏洞的專業顧問結合起來,例如PwC和ReversingLabs自動化工具的聯合努力。
開源社區也沒有靜止不動。本月早些時候,開源安全基金會推出了一種名為Siren的工具,提供了一種讓軟件開發人員和安全研究人員分享戰術、技術和程序以及與網絡攻擊相關的妥協指標的方法,它將提供一個早期預警系統,實時更新可能影響軟件供應鏈的新興威脅。
此外,GitHub列出了三個可以專門掃描代碼中已知漏洞的開源項目,包括RetireJS、Retire-html-parser和Lokori。第一個項目以Chrome擴展的形式出現,每當您訪問一個有漏洞的庫時,它會從瀏覽器窗口內進行掃描。還有其他商業掃描工具,可以在你的代碼開發管道和工作流程中動態檢查編碼錯誤。
安全產品本身無法解決問題
然而,如果沒有企業安全管理人員和應用程序開發人員進行一些重大程序轉變,所有這些工具都將無效。Howard在2019年的博客中寫了一些建議,包括了解正在使用哪些庫并跟蹤發現的任何漏洞。“你們企業中的某個人需要跟蹤這些,這是他們工作的一部分!”
Sysdig在其最近發布的《網絡安全監管時代的實用云安全指南》報告中提出了一系列流程改進建議。“如果企業尚未正式化其開發生命周期,應當這樣做。部分內容包括建立和標準化構建和發布流程。一般的經驗法則是,特定的技術棧會導致一個構建管道。如果你的企業構建許多應用程序和系統,預計這個數量會顯著增加。根據企業中開發的歷史以及它在新技術方面的發展方向,你的管道數量可能會達到幾十甚至上百。一些實體稱其為‘安全軟件構建工廠’,但這是確保交付足夠安全的必要條件。”
今年早些時候,記者調查了幾位安全專家,以提出管理第三方風險的最佳實踐。其中一些直接適用于軟件供應鏈,例如讓執行團隊特別關注第三方風險,保持對第三方軟件供應商的持續和準確的普查,并進行分類以找到最重要的供應商進行評估和跟蹤。
Wysopal說:“我們必須共同努力,強化我們的數字基礎設施,并防止未來由開源漏洞帶來的威脅,這是對開源軟件用戶的一個重大警示。”
企業網D1net(hfnxjk.com):
國內主流的to B IT門戶,同時在運營國內最大的甲方CIO專家庫和智力輸出及社交平臺-信眾智(www.cioall.com)。同時運營19個IT行業公眾號(微信搜索D1net即可關注)。
版權聲明:本文為企業網D1Net編譯,轉載需在文章開頭注明出處為:企業網D1Net,如果不注明出處,企業網D1Net將保留追究其法律責任的權利。