容器云安全挑戰(zhàn)和攻防應(yīng)對

云原生環(huán)境下和傳統(tǒng)以安全域劃分實現(xiàn)安全管控的方法有所不同。網(wǎng)絡(luò)安全域劃分限制了云原生的彈性和擴展性能力。云原生消除了這種硬網(wǎng)絡(luò)邊界,通過軟件來定義邊界和網(wǎng)絡(luò),對網(wǎng)絡(luò)安全能力、身份認(rèn)證和權(quán)限管控提出了更高的要求。

本文來自twt企業(yè)IT社區(qū)。

引言

由于容器在隔離和安全性方面存在的天然缺陷,隨著安全攻防的演練和安全意識的提升,容器的弱安全性和分布式復(fù)雜性成為容器企業(yè)級應(yīng)用的阻礙,容器云采用面臨著安全挑戰(zhàn)。如何使企業(yè)在云原生時代具備容器安全防護(hù)能力是推進(jìn)容器云企業(yè)級應(yīng)用的一個重要方面。

一、容器云安全特點

云原生環(huán)境下和傳統(tǒng)以安全域劃分實現(xiàn)安全管控的方法有所不同。網(wǎng)絡(luò)安全域劃分限制了云原生的彈性和擴展性能力。云原生消除了這種硬網(wǎng)絡(luò)邊界,通過軟件來定義邊界和網(wǎng)絡(luò),對網(wǎng)絡(luò)安全能力、身份認(rèn)證和權(quán)限管控提出了更高的要求。容器云作為云原生應(yīng)用的部署運維平臺,居于云原生技術(shù)架構(gòu)的中心。容器的彈性、生命周期短、輕量和數(shù)量眾多、故障自愈(異常重啟遷移)等也使容器安全具備動態(tài)、敏捷迭代、更大攻擊面、難以跟蹤等特點。

1.動態(tài)難跟蹤

采用容器最核心的是用其按需彈性伸縮的能力,所以也使容器云環(huán)境持續(xù)在動態(tài)變化中。容器云環(huán)境中容器可能不斷地被創(chuàng)建和銷毀、自我復(fù)制、從一臺節(jié)點遷移到另外一臺節(jié)點等。這和傳統(tǒng)服務(wù)器上部署一個或幾個固定的應(yīng)用或組件是不一樣的,管理方式也面臨著挑戰(zhàn),安全的防護(hù)意識和手段也需要變革。動態(tài)變化的容器安全除了通過安全左移盡可能消除安全漏洞外,也需要將傳統(tǒng)通過防火墻、黑白名單等靜態(tài)安全防護(hù)方式轉(zhuǎn)變?yōu)槎喾N手段的實時檢測和防護(hù)。

2.敏捷迭代

輕量的容器適合承載微服務(wù)化應(yīng)用,以支持應(yīng)用快速變更、敏捷迭代、彈性可擴展性等需求。采用DevOps化的應(yīng)用發(fā)布非常頻繁,可能是傳統(tǒng)應(yīng)用發(fā)布方式的幾倍、幾十倍甚至幾百倍等。容器安全漏洞往往通過快速發(fā)布一個修復(fù)了漏洞的新的版本來替換,而不是為容器安裝補丁。提升了業(yè)務(wù)服務(wù)的迭代速度。

3.更大的攻擊面

云原生架構(gòu)體系涉及的技術(shù)和組件眾多,容器云平臺自身也擁有眾多的開源組件,這勢必會帶來很多潛在的風(fēng)險,比如操作系統(tǒng)內(nèi)核漏洞、操作系統(tǒng)組件漏洞、log4j漏洞、Jackson Json漏洞、k8s漏洞、SpringCloud漏洞等。另外,很多企業(yè)的鏡像都是來自于互聯(lián)網(wǎng),這些鏡像往往本身就存在很多漏洞,有的甚至被注入木馬;微服務(wù)化使鏡像和容器的數(shù)量成倍的增加,也就使暴露的漏洞數(shù)量成倍增加;容器云大二層網(wǎng)絡(luò)模式更暴露了大量的業(yè)務(wù)IP,帶來了更大的攻擊面。

4.更多風(fēng)險來源

由于鏡像來源于不同的地方,特別是很多企業(yè)供應(yīng)商眾多,開發(fā)人員數(shù)量龐大,很多基礎(chǔ)鏡像來源不明,可能存在很多風(fēng)險,鏡像掃描雖然可以消除大部分漏洞,但一些經(jīng)過處理隱藏的文件可能難以被探測到。另外由于容器云平臺存在更大的攻擊面,其潛在風(fēng)險就可能數(shù)倍增加。

容器云安全特點也使容器云平臺的建設(shè)和運營面臨著安全防護(hù)意識和安全防護(hù)方式的挑戰(zhàn)。

二、容器云安全挑戰(zhàn)

1.安全防護(hù)意識挑戰(zhàn)

相對于傳統(tǒng)網(wǎng)絡(luò)分域安全管控,云原生的大一統(tǒng)網(wǎng)絡(luò)模式模糊了安全邊界概念。如果要實現(xiàn)容器云平臺的彈性伸縮、自由擴展能力,在網(wǎng)絡(luò)層和資源層就不能有那么多限制,網(wǎng)絡(luò)邊界不能劃分的太細(xì)。當(dāng)前由于攻防演練等要求,企業(yè)內(nèi)部物理網(wǎng)絡(luò)安全域有劃分的越來越小的趨勢,導(dǎo)致很多公司在不同的安全域安裝容器云集群,也使集群數(shù)量倍增,但每個集群都不大,資源有限,做不到合理彈性;另外需要在眾多的防火墻上配置端口訪問權(quán)限,使容器云管理變的復(fù)雜化,使業(yè)務(wù)訪問效率和交互性能下降。

QQ截圖20221020133834.png

筆者分享過容器云安全意識所面臨的挑戰(zhàn),需要認(rèn)識到傳統(tǒng)網(wǎng)絡(luò)安全和云原生安全的不同,盡可能減少風(fēng)險接觸面;同時需要認(rèn)識到架構(gòu)發(fā)展的趨勢,以融合架構(gòu)逐步引領(lǐng)單體豎井架構(gòu)轉(zhuǎn)型,實現(xiàn)企業(yè)級復(fù)用;通過安全等基礎(chǔ)設(shè)施自服務(wù)化來賦能研發(fā)和業(yè)務(wù)團(tuán)隊,促進(jìn)企業(yè)DevOps組織團(tuán)隊的建設(shè)和優(yōu)化,從而協(xié)調(diào)生產(chǎn)關(guān)系適應(yīng)生產(chǎn)力的發(fā)展。

只有想不到,沒有做不到。安全意識的提升和變革是最難的。特別這么多年固有的思維方式,以及變革可能帶來的不穩(wěn)定和風(fēng)險,都會阻礙新方式和方法的采用。

2.安全防護(hù)方式挑戰(zhàn)

容器云安全防護(hù)方式也不同于傳統(tǒng)網(wǎng)絡(luò)安全的被動防御,需要從被動轉(zhuǎn)換為主動防護(hù),從靜態(tài)檢測轉(zhuǎn)變?yōu)榻换ナ綑z測。容器在帶來彈性可擴展性等便利的同時,也封裝了內(nèi)部邏輯,對很多人來說是一個“黑盒”,如果僅采用傳統(tǒng)的鏡像文件靜態(tài)掃描,很難發(fā)現(xiàn)容器運行時的危險操作。

QQ截圖20221020133834.png

容器云主動的防護(hù)方式,首先可以利用安全左移思想,將安全隱患盡可能消除在開發(fā)階段。但安全左移不是說不重視容器運行時環(huán)境,運行時的安全措施一點也不能少。安全左移重要的一點是提升研發(fā)的安全意識,減少引入不必要的漏洞。其次,安全能力可以作為一種基礎(chǔ)設(shè)施,提供安全自服務(wù)能力,賦能應(yīng)用研發(fā)和運維團(tuán)隊,降低安全應(yīng)用門檻。比如說,容器pod運行時危險命令執(zhí)行、敏感目錄掛載、異常流量或異常訪問等可以通過權(quán)限管控直接讓應(yīng)用研發(fā)和應(yīng)用運維人員可見,這樣也可以快速定位問題。

面對云原生環(huán)境下和傳統(tǒng)網(wǎng)絡(luò)環(huán)境下并存的容器云環(huán)境安全挑戰(zhàn),不少的企業(yè)和組織也提供了很多的方案、很多的安全框架及安全模型。在安全攻防應(yīng)對上,當(dāng)前Att&CK框架比較受關(guān)注。

三、ATT&CK框架

ATT&CK框架由美國研究機構(gòu)MITRE在2013年提出的,它將已知攻擊者的行為匯總為戰(zhàn)術(shù)和技術(shù)的結(jié)構(gòu)化列表,相對全面的呈現(xiàn)了攻擊者在進(jìn)行網(wǎng)絡(luò)攻擊時所采取的行為和技術(shù),對于企業(yè)進(jìn)行安全攻防建設(shè)具有非常重要的參考價值。(讀者有興趣可以搜索“ATT&CK”以獲取更多更深入的內(nèi)容。)

ATT&CK也對比了眾多的報告,列出了攻擊者最常用的攻擊手段,另外Red Canary也基于客戶環(huán)境發(fā)生的惡意事件的分析提出了供給者常用的攻擊手段,結(jié)合兩項分析結(jié)果,可以看到常用的攻擊技術(shù)有PowerShell、腳本執(zhí)行、命令行界面、注冊表Run Keys/啟動文件夾、偽裝、混淆文件或信息、憑據(jù)轉(zhuǎn)儲等。我們在建設(shè)容器云平臺的時候,就要求禁用命令行操作,不提供終端工具,所有的操作通過平臺界面完成,這樣可以有效的進(jìn)行操作審計,規(guī)避誤操作等問題。

QQ截圖20221020133834.png

四、容器云安全攻防應(yīng)對

ATT&CK框架有數(shù)百種攻擊技術(shù),并且可能隨著技術(shù)應(yīng)用和發(fā)展而不斷開發(fā)出新的技術(shù),作為容器云安全攻守的守方,該如何應(yīng)對?知己知彼,是安全應(yīng)對的第一步。

1.知己知彼

容器云安全攻防應(yīng)對中,知己首先要對容器云上的相關(guān)資產(chǎn)進(jìn)行梳理。容器云平臺自身可能實現(xiàn)了部分能力,但往往并沒有全面梳理資產(chǎn),很多資產(chǎn)不可見。比如說每個容器創(chuàng)建了多少進(jìn)程,如果看不到,就無從監(jiān)控和應(yīng)對。容器云平臺安全首先要對容器相關(guān)的資產(chǎn)從不同的視角進(jìn)行梳理,做到可見、可管理。

知彼是要對攻擊者的手段有所了解。ATT&CK的戰(zhàn)術(shù)和技術(shù)框架給我們了一個非常好的參考。通過ATT&CK框架可以了解到哪種戰(zhàn)術(shù)有哪些技術(shù)手段,從而根據(jù)自己的資產(chǎn)和技術(shù)能力選擇合適的架構(gòu)和方案。

2.選擇合適的架構(gòu)和方案

筆者在規(guī)劃容器云安全架構(gòu)時,定義了縱向分層、橫向分段的安全網(wǎng)格方案(可參考:《基于容器特點和傳統(tǒng)網(wǎng)絡(luò)安全能力進(jìn)行容器云安全規(guī)劃設(shè)計》),對容器云平臺不同點的安全問題更有針對性地采取合適的安全措施。其實這和ATT&CK的戰(zhàn)術(shù)和技術(shù)框架有點類似。安全涉及方方面面,既需要整體的規(guī)劃實現(xiàn)協(xié)作關(guān)聯(lián)、也需要每一個點實實在在的防護(hù)措施。比如說,鏡像漏洞問題,既需要在開發(fā)階段選擇安全的基礎(chǔ)鏡像和構(gòu)建安全合規(guī)的服務(wù)鏡像,通過安全掃描,滿足合規(guī)要求才能上傳鏡像庫。但如果不按要求繞過流程直接上傳鏡像到鏡像庫,甚至直接上傳鏡像到容器節(jié)點,可能會帶來一些風(fēng)險。因此在不同的點位都需要安全檢查:代碼安全檢查、流水線鏡像安全檢查、鏡像倉庫鏡像檢查、節(jié)點鏡像檢查、容器運行時鏡像檢查等。

容器云安全分層中,可以把業(yè)務(wù)服務(wù)、租戶用戶的訪問控制和k8s層的認(rèn)證授權(quán)關(guān)聯(lián)起來,明確層次之間映射的關(guān)系。很多人不在k8s層創(chuàng)建ServiceAccount,直接用Apiserver的admin賬號,這會存在隱患。有Apiserver的admin權(quán)限,就可以查看集群內(nèi)所有的資產(chǎn)和資源,也就失去了通過命名空間進(jìn)行隔離的意義,所有的服務(wù)都可能被泄露。

3.選擇合適的應(yīng)對技術(shù)

通過安全網(wǎng)格劃分,可以有針對性地選擇合適技術(shù),提升安全能力,增強檢測和應(yīng)對能力。容器云平臺有眾多的開源組件和服務(wù),攻擊面龐大,比如說網(wǎng)絡(luò)、主機節(jié)點、存儲,容器運行時,鏡像,編排及組件安全,應(yīng)用、數(shù)據(jù)等。針對ATT&CK框架每項攻擊技術(shù)MITRE也提供了應(yīng)對方法Shield防御技術(shù),比如說”進(jìn)程發(fā)現(xiàn)“,可以通過隱藏主動防御進(jìn)程和進(jìn)程誘餌來吸引攻擊者,獲得攻擊者信息以便進(jìn)一步采取措施。

4.持續(xù)演練、總結(jié)和改進(jìn)

攻擊的手段層出不窮,只有熟悉攻擊的手段和方法,持續(xù)的監(jiān)控和響應(yīng),才能構(gòu)建堅實的防御。有條件的情況下可以嘗試不斷進(jìn)行攻防演練,總結(jié)不足,持續(xù)的改進(jìn)完全弱點,才能不斷地增強安全能力。有時候可能牽一發(fā)而動全身,所以也往往不愿意去動它。但這種隱患會一直存在,很難說在某個時刻會帶來損失。因此,最好的的方法是持續(xù)去發(fā)現(xiàn)安全問題,并修復(fù)這些問題。

云原生時代,在利用容器的優(yōu)勢的同時,容器云安全面臨著眾多的挑戰(zhàn)。認(rèn)識到容器云的安全特點并選擇合適的技術(shù)架構(gòu)、方法和手段來持續(xù)增強容器云安全能力,應(yīng)對潛在安全風(fēng)險和攻擊行為,也是采用容器云平臺需要重點考慮的一個方面。

THEEND

最新評論(評論僅代表用戶觀點)

更多
暫無評論