零信任是新一代網(wǎng)絡(luò)安全架構(gòu),主張所有資產(chǎn)都必須先經(jīng)過身份驗(yàn)證和授權(quán),然后才能與另一資產(chǎn)通信。
NIST白皮書總結(jié)了零信任的幾種實(shí)現(xiàn)方式。其中,SDP技術(shù)是用于實(shí)現(xiàn)南北向安全的(用戶跟服務(wù)器間的安全),微隔離技術(shù)是用于實(shí)現(xiàn)東西向安全的(服務(wù)器跟服務(wù)器間的安全)。微隔離是零信任架構(gòu)的重要組成部分。
NIST給出的基于微隔離技術(shù)實(shí)現(xiàn)的零信任架構(gòu)如下圖。圖中業(yè)務(wù)系統(tǒng)服務(wù)器上安裝了agent,數(shù)據(jù)資源前面安裝了網(wǎng)關(guān)。兩者都受到管理平臺(tái)的統(tǒng)一管理。
從架構(gòu)圖上可以看到,微隔離技術(shù)就是把服務(wù)器之間做了隔離,一個(gè)服務(wù)器訪問另一個(gè)服務(wù)器的資源之前,首先要認(rèn)證身份。
業(yè)務(wù)系統(tǒng)先通過agent做身份認(rèn)證。認(rèn)證通過后,網(wǎng)關(guān)才會(huì)放行業(yè)務(wù)系統(tǒng)去獲取數(shù)據(jù)資源。否則,會(huì)被網(wǎng)關(guān)攔截。
2、微隔離有什么好處
如果黑客已經(jīng)攻進(jìn)了一個(gè)服務(wù)器,那么他就可以利用這個(gè)服務(wù)器做跳板,進(jìn)一步攻擊網(wǎng)絡(luò)中的其他服務(wù)器。
微隔離可以阻止這種來自內(nèi)部的橫向攻擊。微隔離通過服務(wù)器間的訪問控制,阻斷勒索病毒在內(nèi)部網(wǎng)絡(luò)中的蔓延,降低黑客的攻擊面。
這正好符合了零信任的原則:
?。?)假設(shè)已經(jīng)被攻破
?。?)持續(xù)驗(yàn)證,永不信任
(3)只授予必須的最小權(quán)限
下面舉個(gè)例子??纯础坝小焙汀皼]有”微隔離的情況下,黑客的打擊面分別是多大。
假設(shè)一個(gè)網(wǎng)絡(luò)中有9個(gè)服務(wù)器,其中2個(gè)web服務(wù)是暴露在互聯(lián)網(wǎng)上的。
?。?)先看只有一個(gè)防火墻,服務(wù)器間完全沒有隔離的情況。
(2)再看看加上一層內(nèi)網(wǎng)的防護(hù)的情況。一般來說,這層防護(hù)可能是防火墻或者ADC。(ADC可以理解為帶有部分安全功能的負(fù)載)
(3)最后來看一下微隔離的情況。服務(wù)器之間做了訪問控制。例如web服務(wù)器只能訪問他對應(yīng)的應(yīng)用服務(wù)器。應(yīng)用服務(wù)器只能訪問他對應(yīng)的數(shù)據(jù)庫。
總結(jié)一下可以得到這個(gè)表格。
從這個(gè)表格里可以看出幾個(gè)問題:
(1)微隔離對黑客從內(nèi)部開始攻擊的場景特別有效,能大幅降低攻擊面
?。?)攻擊面是不可能降低到0的,微隔離在所有場景中都能將攻擊面降低到一個(gè)可接受的程度,但不是絕對防御。
有個(gè)很好的比喻,微隔離有點(diǎn)像疫情時(shí)期的口罩。面對疫情,單靠每棟大廈門口的體溫檢測是不夠的。很容易有無癥狀的感染者混入大廈。面對這種情況,最有效的手段是每個(gè)人都帶上口罩,互相隔離。
就像黑客攻擊和勒索病毒,它們很容易繞過防火墻的檢測。但是只要每個(gè)服務(wù)器都做了微隔離,那么威脅就不會(huì)大規(guī)模擴(kuò)散。
3、以前為什么沒有微隔離
其實(shí)微隔離的理念很簡單易懂,但是管控太細(xì),會(huì)帶來復(fù)雜性問題。太復(fù)雜管不過來,就容易出差錯(cuò),反而帶來壞處。
例如,IT部門要了解數(shù)據(jù)流,要理解系統(tǒng)之間的溝通機(jī)制,要了解通信的端口、協(xié)議、方向。數(shù)據(jù)流梳理不清就貿(mào)然隔離,會(huì)導(dǎo)致正常業(yè)務(wù)的停擺。
所以,很多企業(yè)只是分隔了外網(wǎng)和內(nèi)網(wǎng),就像上面的單層防護(hù)模型。有些企業(yè)會(huì)做分區(qū),區(qū)域之間做隔離。但這些區(qū)域也往往很大。
微隔離理念在業(yè)界很早就已經(jīng)形成,只是缺乏基礎(chǔ)技術(shù)來更好的支撐。直到SDN、容器等等虛擬化、自動(dòng)化技術(shù)的出現(xiàn)。過去只能靠硬件防火墻路由規(guī)則來做的事,現(xiàn)在可以方便地用軟件定義,自適應(yīng)來輕松實(shí)現(xiàn)。
有了這些基礎(chǔ)技術(shù),微隔離才終于得以從理論進(jìn)入實(shí)踐。
4、怎么實(shí)現(xiàn)微隔離
微隔離有多種實(shí)現(xiàn)方式,企業(yè)可以根據(jù)自身需要進(jìn)行選擇。
(1) 基于agent客戶端實(shí)現(xiàn)微隔離。
這種模式需要每個(gè)服務(wù)器的操作系統(tǒng)上裝一個(gè)agent。Agent調(diào)用主機(jī)自身的防火墻或內(nèi)核自定義防火墻來做服務(wù)器間的訪問控制。這種模式就是本文最前面介紹的NIST的用微隔離實(shí)現(xiàn)零信任的模式。
圖中右側(cè)紅方塊是管理平臺(tái),負(fù)責(zé)制定策略,收集信息。
優(yōu)勢:與底層無關(guān),支持容器,支持多云。
缺點(diǎn):必須在每個(gè)服務(wù)器上安裝agent客戶端。有人會(huì)擔(dān)心資源占用問題,擔(dān)心影響現(xiàn)有業(yè)務(wù)。
(2)基于云原生能力實(shí)現(xiàn)微隔離。
使用云平臺(tái)基礎(chǔ)架構(gòu)中虛擬化設(shè)備自身的防火墻功能來做訪問控制。
優(yōu)點(diǎn):隔離功能與基礎(chǔ)架構(gòu)都是云提供的,所以兩者兼容性更好,操作界面也類似。
缺點(diǎn):無法跨越多個(gè)云環(huán)境進(jìn)行統(tǒng)一管控。
(3)基于第三方防火墻實(shí)現(xiàn)微隔離。
利用現(xiàn)有的防火墻做訪問控制。
優(yōu)勢:網(wǎng)絡(luò)人員很熟悉,有入侵檢測、防病毒等功能。
缺點(diǎn):防火墻本身跑在服務(wù)器上,缺少對底層的控制。
5、實(shí)施微隔離的關(guān)鍵步驟
微隔離對現(xiàn)有業(yè)務(wù)系統(tǒng)的影響非常大。所以微隔離的實(shí)施應(yīng)該格外謹(jǐn)慎,最好是分階段實(shí)施。
?。?)可視化
識別信息在公司中的流動(dòng)方式,知道有哪些數(shù)據(jù)流流經(jīng)你的路由網(wǎng)關(guān),標(biāo)識應(yīng)用間的連接和依賴性,建立整體架構(gòu)的可視化流量拓?fù)鋱D。
?。?)專注高優(yōu)先級目標(biāo)
了解每個(gè)主機(jī)的攻擊面,從關(guān)鍵應(yīng)用開始隔離。應(yīng)該使用白名單策略,保持默認(rèn)拒絕。
(3)策略模型
不是針對網(wǎng)絡(luò)結(jié)構(gòu)(例如,vlan、子網(wǎng)、區(qū)域或IP地址等)創(chuàng)建策略,而是基于應(yīng)用、角色、標(biāo)簽、分組來定義策略。制定能以最少數(shù)量提供最大覆蓋面的規(guī)則集。
?。?)避免中斷
邀請業(yè)務(wù)負(fù)責(zé)人和利益相關(guān)者一起參與詳細(xì)設(shè)計(jì)。
基于可視化視圖流建立分隔的網(wǎng)絡(luò),確定哪里應(yīng)該部署微隔離,以及如何在不引發(fā)生產(chǎn)中斷的情況下部署。
?。?)里程碑
設(shè)置能反映階段性進(jìn)展的里程碑和度量指標(biāo)。及時(shí)測試每個(gè)階段的成果。
?。?)持續(xù)監(jiān)控安全事件
監(jiān)控端口掃描行為、針對防火墻的攻擊,監(jiān)控流量變化是否異常。
(7)自動(dòng)化
建立專門團(tuán)隊(duì)監(jiān)視和更新策略,并盡可能往維護(hù)過程中引入自動(dòng)化,確保安全策略隨著環(huán)境的變化而適應(yīng)。
維護(hù)一組REST API,與業(yè)務(wù)流程工具集成,增強(qiáng)補(bǔ)救能力。與SIEM集成,實(shí)現(xiàn)安全事件的自動(dòng)響應(yīng)。
6、評價(jià)微隔離的效果
實(shí)施了微隔離之后,可以從以下幾方面檢驗(yàn)微隔離是否真正發(fā)揮效果。
?。?)攻擊面有沒有縮小了。就像本文第二節(jié)的例子一樣,可以算一算各種場景下,黑客的攻擊面到底是多少。
?。?)性能是否有降低。
?。?)模擬攻擊行為,看是否能被監(jiān)測到。
7、總結(jié)
東西向的訪問控制是零信任模型中的重要一環(huán),微隔離是實(shí)現(xiàn)東西向安全的有效手段。微隔離的實(shí)施是最具挑戰(zhàn)的地方,用好了就是銅墻鐵壁,用不好可能反而變成給自己設(shè)置的陷阱。