9月16日,美國網(wǎng)絡(luò)安全公司Tenable的研究人員發(fā)文稱,其發(fā)現(xiàn)了名為“CloudImposer”的遠(yuǎn)程代碼執(zhí)行(RCE)漏洞,攻擊者可能利用該漏洞劫持影響GCP(Google Cloud Composer,谷歌云平臺上的一項托管式工作流程編排服務(wù))的內(nèi)部軟件依賴項。
云中的供應(yīng)鏈攻擊
具體來說,該漏洞用于編排軟件管道,但它也影響了Google服務(wù)App Engine和Cloud Function。Tenable稱,該漏洞造成了一種稱為依賴關(guān)系混淆的場景,該技術(shù)幾年前就已發(fā)現(xiàn),但時至今日依然被云平臺提供商廣泛誤解。
2021年,安全研究員Alex Birsan首次發(fā)現(xiàn)了依賴項混淆攻擊——當(dāng)攻擊者創(chuàng)建惡意軟件包,為其提供與合法內(nèi)部包相同的名稱,并將其發(fā)布到公共存儲庫時,依賴項混淆攻擊就會開始。
“當(dāng)開發(fā)人員的系統(tǒng)或構(gòu)建過程錯誤地拉取惡意包而不是預(yù)期的內(nèi)部包時,攻擊者就會獲得對系統(tǒng)的訪問權(quán)限。”Tenable高級安全研究員Liv Matan在分析中解釋道,“這種攻擊利用了開發(fā)人員對包管理系統(tǒng)的信任,并可能導(dǎo)致未經(jīng)授權(quán)的代碼執(zhí)行或數(shù)據(jù)泄露。”
他補(bǔ)充說:“令人驚訝和擔(dān)憂的是,即使是像Google這樣的領(lǐng)先的技術(shù)供應(yīng)商,也缺乏對如何防止依賴關(guān)系混淆的認(rèn)識。不幸的是,這種類型的依賴關(guān)系可以被利用在云中執(zhí)行供應(yīng)鏈攻擊,這些攻擊‘比本地攻擊的危害要大得多’。”
“例如,云服務(wù)中的一個惡意包可以部署到數(shù)百萬用戶并造成傷害。”Matan觀察到。因此,從本質(zhì)上講,GCP中的一個錯誤命令可能會在無數(shù)云部署中產(chǎn)生連鎖反應(yīng),使攻擊者能夠訪問客戶的企業(yè)云環(huán)境。
有風(fēng)險的文檔導(dǎo)致缺陷
Tenable稱,該漏洞的第一個跡象是關(guān)于GCP和Python軟件基金會的Google文檔,該文檔在云部署中引入了依賴關(guān)系混淆的可能性。研究人員進(jìn)一步挖掘發(fā)現(xiàn),Google本身對GCP應(yīng)用了相同的風(fēng)險實施建議,從而引入了漏洞。
具體來說,Google建議想要在GCP服務(wù)App Engine、Cloud Function和Cloud Composer服務(wù)中使用私有Python包的用戶使用所謂的“–extra-index-url”參數(shù)。
“除了應(yīng)用程序或用戶打算從中安裝私有依賴項的指定私有注冊表之外,此參數(shù)還查找公共注冊表(PyPI),”Matan解釋說,“這種行為為攻擊者進(jìn)行依賴關(guān)系混淆攻擊打開了大門。”
研究人員推斷,有“眾多GCP客戶”遵循了Google的風(fēng)險實施建議,并最終發(fā)現(xiàn)Google在自己的內(nèi)部服務(wù)中安裝私有軟件包時,也采用了自己的建議。
具體來說,Tenable研究人員發(fā)現(xiàn),Google使用有風(fēng)險的–extra-index-url參數(shù)來安裝公共注冊表中缺少的私有代碼包,允許攻擊者將惡意包上傳到公共注冊表,并接管管道。
Google修復(fù)和其他緩解措施
據(jù)Tenable稱,研究人員負(fù)責(zé)任地向Google披露了文檔和Cloud Imposer RCE漏洞,后者迅速做出響應(yīng)并采取行動。
具體來說,谷歌修復(fù)了Google Cloud Composer中存在的漏洞,該漏洞在從私有注冊表安裝私有包時使用了“–extra-index-url”參數(shù)。
Google還檢查了易受攻擊的軟件包實例的校驗和,并通知Tenable,據(jù)Google所知,沒有證據(jù)表明Cloud Imposer曾被利用過。
Google還確認(rèn),雖然Tenable發(fā)現(xiàn)的漏洞利用代碼在Google的內(nèi)部服務(wù)器中運行,但它很可能不會在客戶環(huán)境中運行,因為它無法通過集成測試。
此外,Google修復(fù)了有風(fēng)險的文檔,現(xiàn)在建議GCP客戶使用“–index-url”參數(shù)替代“–extra-index-url”參數(shù),并且這家科技巨頭已經(jīng)采納了Tenable的建議,建議GCP客戶使用GCP Artifact Registry的虛擬存儲庫來安全地控制Python包管理器的搜索順序。
GCP客戶應(yīng)分析其軟件包安裝過程的環(huán)境,以防止違規(guī),特別是在Python中搜索–extra-index-url參數(shù)的使用,以確保他們不易受到依賴項混淆攻擊。
Matan總結(jié)道:“云提供商和云客戶將負(fù)責(zé)任的安全實踐相結(jié)合,可大大減輕與云供應(yīng)鏈攻擊相關(guān)的風(fēng)險。”
來源|Tenable官網(wǎng)、Dark Reading
編譯|鄭惠敏
審核|張羽翔