比起傳統利用已公開之未修補漏洞或可程式邏輯控制器(PLC)漏洞而發動的開放原始碼軟體供應鏈攻擊,次世代軟體供應鏈攻擊更加險惡,因為惡意行動者不再等待漏洞公開,而是主動出擊,將惡意程式碼注入至全球供應鏈所依賴的開放原始碼專案中。
編譯/酷魯
當前次世代供應鏈攻擊最常見的威脅,包括「誤植域名」(Typosquatting)社交工程攻擊與「品牌劫持(brand-jacking)攻擊,以及與 Typosquatting 名稱十分相似的 Slopsquatting 攻擊,它是當前最新形式的「相依鏈濫用」(Dependency Chain Abuse,DCA)攻擊。
最讓企業談虎色變的,莫過於揭開網路風險潘朵拉盒子的生成式 AI(GenAI),隨著 GenAI 與機器學習在企業軟體開發營運(DevOps)中達到關鍵規模,這種前所未有的安全風險正全面重塑網路安全威脅的格局。全新 Slopsquatting 攻擊即為利用 GenAI 在生成程式碼時所產生「幻覺」(hallucination)而發起的新型攻擊。
上游軟體供應鏈攻擊年增 430%
如今全新的次世代供應鏈攻擊駭客正將攻擊焦點往上瞄準到軟體開發的源頭,主動貢獻程式碼到開放原始碼專案中,並在專案維護人員毫無察覺的情況下植入惡意程式碼,並隨著開放原始碼套件,進而傳播到全球軟體供應鏈之中。
當前最泛濫常見的次世代軟體供應鏈攻擊莫過於誤植域名與品牌劫持攻擊,它們是以目前流行的雲端通訊平台 Discord 名義命名並建立的假冒 JavaScript 套件管理系統(Node Package Manager,NPM),使用者一旦加以安裝,便會自動啟動反向 shell 連線(reverse shell)。換言之,該惡意套件被安裝後會立即啟動後門,讓攻擊者完全接管系統。
[ 加入 CIO Taiwan 官方 LINE 、 Facebook 與 IG,與全球CIO同步獲取精華見解 ]
這類新型攻擊手法之所以在網上橫行,最主要的原因包括,想要區分成千上萬個志工開發者所貢獻開放原始碼專案何者善意何者惡意?極其困難。再者,許多開放原始碼專案本身又依賴其他數百、上千個開放原始碼專案作為相依套件,其中可能已含有已知漏洞。
更何況開放原始碼使用規模與相依套件數量龐大,導致難以在每個新版本釋出時即時評估其品質與安全性。最可惡的是,惡意行動者濫用了開放原始碼社群奉行的「共享信任」精神,這讓社群使用者更加防不勝防。
軟體供應鏈管理方案商 Sonatype 於 2020 年發布的《軟體供應鏈現況報告》指出,上游軟體供應鏈攻擊的年增幅高達 430%。從那時開始,光是在 NPM 生態系中,就發現了超過 12,000 個可疑或惡意套件。
DevOps 生態系成為主要攻擊目標
當前駭客運用 GenAI 來強化/優化惡意軟體的開發已不是新聞,隨著 GenAI 的技術日益普及化也為當前次世代供應鏈帶來更迫切的新威脅:AI 供應鏈攻擊。雲端原生網路安全方案供應商 ExtraHop 預測,進入 2025 年,針對開放原始碼與專屬 AI 供應鏈攻擊將大幅上升,並成為企業最重大的安全威脅之一。
換言之,隨著 Log4j 和 XZ Utils 等開放原始碼工具曝露出嚴重的漏洞,威脅行動者將更積極地鎖定 AI 開發生態系統背後所仰賴的基礎軟體、版本控制系統與資料庫架構。
在分析 AI 供應鏈的攻擊面時,DevOps 生態系被視為攻擊者的主要目標。隨著企業全面擁抱 GenAI,並要求開發者以極高速度推出創新應用,攻擊者也將會增加針對模型庫(model zoo)、協作式原始碼儲存庫以及持續整合/持續部署(CI/CD)資源的釣魚攻擊活動。
根據開發安全營運(DevSecOps)平台商 GitLab 去年下旬針對全球 5,000 位軟體 DevSecOps 專業人員所做的調查指出,高達 78% 的受訪者表示,目前已在軟體開發中使用 AI,或計劃在未來兩年內導入。在 AI 驅動的 DevOps 環境中,有 66% 的受訪者表示,他們現在發布軟體的速度是 2023 年的兩倍。
此外,67% 的受訪者也表示,他們處理的程式碼中有「超過 1/4 來自開放原始碼程式碼庫」。然而目前只有 20% 的組織會使用軟體材料清單(SBOM)來紀錄其軟體元件的組成。
AI 採用的極速成長,以及對開放原始碼程式碼庫的高度依賴,已對企業 DevOps 安全帶來前所未見的風險。網路安全方案商 SentinelOne 在 2024 的研究揭露,網路犯罪團體 NullBulge 發動一波主要針對軟體供應鏈的攻擊,透過在 GitHub 與 Hugging Face 等公共儲存庫中植入惡意程式碼,引導受害者匯入惡意函式庫,或透過遊戲與建模軟體使用的模組包(mod pack)進行感染。
CI/CD 成為 AI 供應鏈最大弱點
AI 供應鏈涵蓋了開發者用來建立與優化企業 AI 應用的各種基礎資源,包含核心程式碼庫(例如 TensorFlow、PyTorch)、互動式運算應用程式(例如 Jupyter Notebooks、Google Colab)、資料基礎建設工具(例如 Snowflake、Hadoop)、向量嵌入資料庫(如 Pinecone)、版本控制平台(如 GitHub、GitLab)、自動化流程工具、CI/CD 工具、文件平台,以及其他相關資源。
其中,CI/CD 可能是 AI 供應鏈中最易被攻破的節點,甚至可說是所有 DevOps 工作流程中最脆弱的一環。對此,駭客攻擊的目標包括在 CI/CD 應用中植入惡意程式碼以竊取資訊、透過竊取程式碼取得智財等商業機密,或發動阻斷服務(DoS)攻擊使應用程式無法運作。
據 2024 年 10 月Sonatype 的研究指出,過去一年中,共有超過 512,847 個惡意套件被記錄,年增幅達 156%,再再凸顯威脅行動者將攻擊目標全面轉向軟體 CI/CD 工作流程與開放原始碼供應鏈。總之,這些資安缺口導致新一波次世代供應鏈攻擊的出現,這類攻擊繞過現有防禦機制,直接針對開發者本身。
極盡所能利用軟體相依性弱點
全新 Slopsquatting 相依鏈濫用攻擊的一大特點莫過於,極盡所能地利用軟體之間的相依關係,以及人們對程式碼儲存庫普遍存在的隱性信任。這反應出一個被眾人忽視但卻被這個全新攻擊大加利用的事實:大多數開發團隊通常會將重點放在修補自身程式碼庫中的漏洞,但如今最隱晦、也最常被忽視的威脅,往往來自開發者自身控制的範圍之外。
[推薦閱讀:作業系統(OS)安全 ]
根據一項學術研究顯示,大型語言模型(LLM)在推薦套件或程式碼庫名稱時,約有 20% 的機率會產生幻覺式錯誤。也因為如此,在開發者越來越依賴 AI 協助生成程式碼的同時,攻擊者也在同步發展出新的攻擊手法,例如會在公共註冊表中使用虛構名稱的 typosquatting 與 slopsquatting 攻擊。最終,一場潛藏於表面之下的供應鏈危機正悄然成形。
slopsquatting 的出現,凸顯了企業建立安全「軟體工件管理(artifact management)」制度的迫切性,這包括所有開發過程中所產生的副產品,例如原始碼、設定檔與文件等,組織必須清楚了解自己所使用的軟體工件內容為何。
(本文授權非營利轉載,請註明出處:CIO Taiwan)
