
大家好,我是來(lái)自Aqua的工程師陳宇,今天主要想跟大家一起討論下關(guān)于多云安全的問(wèn)題。
具體的分享內(nèi)容,我將從下面幾個(gè)問(wèn)題展開(kāi):
- 什么是多云?
- 針對(duì)多云場(chǎng)景出現(xiàn)的安全運(yùn)維方面的問(wèn)題有哪些?
- 如何利用好的工具和方法解決這些問(wèn)題?

什么是多云,怎么去定位多云場(chǎng)景?
多云安全是云和安全之間的一個(gè)交叉領(lǐng)域,是這兩個(gè)領(lǐng)域之間交叉的一個(gè)新的細(xì)分。同時(shí),這兩個(gè)行業(yè)有一個(gè)很大特點(diǎn),就是它非常能夠造詞!有非常非常多的新的名詞在每年涌現(xiàn)出來(lái),說(shuō)明這個(gè)行業(yè)非常欣欣向榮,蓬勃發(fā)展。
但是,也會(huì)帶來(lái)一個(gè)不好的問(wèn)題,它會(huì)使得每一個(gè)人對(duì)一些相同的詞有不同的認(rèn)知。所以,我們今天來(lái)說(shuō)說(shuō)這個(gè)Scope究竟是什么?

今天的多云場(chǎng)景,按照大多數(shù)理解來(lái)講,多云就是多個(gè)公有云。數(shù)據(jù)中心全部是在云上,例如有一部分在AWS,有一部分在阿里云,這是一個(gè)典型的多云場(chǎng)景。
提到多云,大多數(shù)時(shí)候指的是云基礎(chǔ)架構(gòu),這是介于基礎(chǔ)架構(gòu)的技術(shù)特性。如果一個(gè)基礎(chǔ)架構(gòu)具備一些原生云的特性,這種基礎(chǔ)架構(gòu)就是一個(gè)云基礎(chǔ)架構(gòu)。原生云的能力例如多租戶、按需擴(kuò)展、無(wú)中斷部署、高彈性、高可用等,像AWS,AirCloud,騰訊云確實(shí)是云,但多云場(chǎng)景下其實(shí)也有幾個(gè)不同的分支。

第一個(gè)分支:公有云,沒(méi)有線下的數(shù)據(jù)中心,所有數(shù)據(jù)中心的基礎(chǔ)架構(gòu)全部都在公有云上。
第二個(gè)分支:一部分?jǐn)?shù)據(jù)在公有云上,一部分?jǐn)?shù)據(jù)在線下的私有云上。

接下來(lái),我們討論下第二個(gè)問(wèn)題,在多云的場(chǎng)景之下,我們會(huì)遇到什么樣的問(wèn)題?在講之前,有兩種場(chǎng)景,一種是純公有云,一種是公有云和私有云的混合云,我們?cè)谟懻摰臅r(shí)候把這兩種場(chǎng)景分開(kāi)來(lái)看。
第一種場(chǎng)景:純公有云,沒(méi)有一個(gè)用戶,沒(méi)有線下的數(shù)據(jù)中心,所有的基礎(chǔ)架構(gòu)全部都在公有云上。
一部分在AWS,一部分在阿里云。這時(shí)候可以看到很多表象上安全運(yùn)維的問(wèn)題,例如問(wèn)題響應(yīng)速度慢,實(shí)施安全措施復(fù)雜度高等問(wèn)題。背后的原因究竟是什么呢?一個(gè)是不同的云服務(wù)商在某一些技術(shù)的實(shí)現(xiàn)性上,它的技術(shù)棧是不一樣的,導(dǎo)致了企業(yè)內(nèi)部的一些既有的的標(biāo)準(zhǔn)沒(méi)有辦法在這些不同的云廠商上實(shí)現(xiàn)統(tǒng)一標(biāo)準(zhǔn)的完整落地。坦白說(shuō),這個(gè)問(wèn)題很難解決,但是又對(duì)安全十分的重要。
安全是一個(gè)非常難以量化的過(guò)程,這也是它的一個(gè)痛點(diǎn)。現(xiàn)在做安全更多的實(shí)現(xiàn)的方法是面加點(diǎn)的管理方法。面指的是攻擊面,降低攻擊面可以有效降低風(fēng)險(xiǎn),但如果把攻擊面降到最低,那正常的業(yè)務(wù)可能就沒(méi)法展開(kāi)。安全和業(yè)務(wù)之間是互相拉扯的關(guān)系。
安全事情做的越多,業(yè)務(wù)效率就越容易受到影響。所以現(xiàn)在把攻擊面降到一個(gè)可控的標(biāo)準(zhǔn)之下,再把暴露出來(lái)的攻擊面當(dāng)做一個(gè)一個(gè)的點(diǎn)去解決,這也是目前采用的最安全的一種治理辦法。
一般來(lái)講,企業(yè)內(nèi)部都會(huì)有一套跟自己實(shí)際情況相匹配的基線標(biāo)準(zhǔn)。這套基線標(biāo)準(zhǔn)的訂立非常麻煩,因?yàn)樗枰\(yùn)營(yíng),需要運(yùn)維,需要安全team三方拉扯來(lái)產(chǎn)生一個(gè)基線配置的結(jié)果。這套基線的標(biāo)準(zhǔn)一旦訂立下來(lái)之后,未來(lái)在業(yè)務(wù)擴(kuò)容和業(yè)務(wù)新上線的的過(guò)程之中,要做的事情就很簡(jiǎn)單,只要follow之前定制好的基線,就能保證新上線的應(yīng)用或是新擴(kuò)展出來(lái)的的基礎(chǔ)架構(gòu)的攻擊面都是可控的。
但是這個(gè)過(guò)程非常麻煩,當(dāng)出現(xiàn)多云環(huán)境之后,另一個(gè)問(wèn)題就出現(xiàn)了。同一套標(biāo)準(zhǔn)在一個(gè)單云環(huán)境下容易落實(shí),但公有云和公有云之間對(duì)于某一些技術(shù)的實(shí)現(xiàn)上有差異,會(huì)導(dǎo)致在某一個(gè)云上可以實(shí)現(xiàn)的一些安全方式放到另一個(gè)云上去實(shí)現(xiàn),會(huì)出現(xiàn)問(wèn)題。
舉個(gè)例子:
有位客戶在AWS上定了一個(gè)標(biāo)準(zhǔn),因?yàn)榭蛻羰褂檬茿WS的kubernetes的EKS服務(wù),在EKS服務(wù)上,應(yīng)用是分不同的等級(jí)的,有一類應(yīng)用,二類應(yīng)用,三類應(yīng)用。
隨著應(yīng)用等級(jí)的提升,應(yīng)用等級(jí)的級(jí)別越低,安全程度反而越高,他們定了一個(gè)標(biāo)準(zhǔn),對(duì)于一類應(yīng)用,要做到的安全級(jí)別是做到容器級(jí)的微隔離。但客當(dāng)戶選擇另外一家云廠商做遷移的時(shí)候發(fā)現(xiàn),一類應(yīng)用遷移上去之后,沒(méi)有辦法做到容器級(jí)的隔離。
這個(gè)時(shí)候訂立好的標(biāo)準(zhǔn)在另一個(gè)云上無(wú)法實(shí)施。這其實(shí)是在多云場(chǎng)景下會(huì)遇到的問(wèn)題。各個(gè)云廠商有一些通用性的標(biāo)準(zhǔn),但是在技術(shù)的實(shí)踐上有差別,一套統(tǒng)一的管理標(biāo)準(zhǔn)很難去落地,這就是我們現(xiàn)在公有云上存在的一些問(wèn)題。

在私有云和公有云的混合云的狀態(tài)下,以上說(shuō)到的問(wèn)題全部存在。除此之外,還有一些其他的問(wèn)題也就是公有云上的責(zé)任共擔(dān)的問(wèn)題。
公有云的責(zé)任是共擔(dān)的,當(dāng)出現(xiàn)安全問(wèn)題的時(shí)候,要去看發(fā)生這個(gè)問(wèn)題的責(zé)任究竟是什么,是由用戶的責(zé)任導(dǎo)致?還是由公有云的廠商的責(zé)任導(dǎo)致?最終再確定這個(gè)責(zé)任究竟在哪一方。
當(dāng)然,責(zé)任的邊界并不一樣,這是在多云場(chǎng)景下比較頭疼的問(wèn)題。那么,我們可以怎么去解決呢?

首先,如果要去構(gòu)建多云環(huán)境下的安全,有一些經(jīng)驗(yàn)上的建議。
如果要在混合云、多云狀態(tài)下做安全,可以選擇的工具分為三個(gè)大類。
第一大類,一些傳統(tǒng)的vendorr所提供的安全方案,例如防火墻,IPS等。傳統(tǒng)vendor比較擅長(zhǎng)在線下數(shù)據(jù)中心去搭建架構(gòu)。
第二大類,公有云廠商提供自己相應(yīng)的安全方案。AWS,阿里,騰訊都有自己的安全管控方案。相比于第一種方式,這種方案最大的優(yōu)勢(shì)在于可以利用到公有云自己的后臺(tái)。
第三大類,比較新興的云vendor。現(xiàn)在這個(gè)領(lǐng)域,所能看見(jiàn)的的分支基本上是分為五個(gè):CWPP、CSPM、CASB、SSPM(針對(duì)SaaS服務(wù)的配置檢查)以及CDN。

由于這兩個(gè)領(lǐng)域本身非常接近,所以Gartner也把這兩個(gè)領(lǐng)域完全合并在一起,出了一個(gè)新的領(lǐng)域,叫CNAPP。所以CNAPP它不是一個(gè)新名詞!它其實(shí)就是CWPP和CSPM的一個(gè)合并。
那么,在CSPM和CWPP這些領(lǐng)域內(nèi)如何去做安全建設(shè)呢?

先來(lái)看CSPM的的范疇,CSPM最主要目的是做公有云上安全的配置檢查。因?yàn)楣性粕咸峁┝撕芏喟踩玣eature,例如AWS、 硬盤加密、數(shù)據(jù)庫(kù)加密等。
它提供的這些安全feature,最終是否用好是用戶自己的責(zé)任,因?yàn)闆](méi)有配置完成而導(dǎo)致的安全問(wèn)題,是應(yīng)該由用戶自身去負(fù)責(zé)的,這也是有CSPM領(lǐng)域出現(xiàn)的一個(gè)重要原因。

CSPM的檢查的最大特點(diǎn)在于它是無(wú)需借助Agent完成,因?yàn)镃SPM檢查的是管理平面,不應(yīng)該跟數(shù)據(jù)打交道。整個(gè)的過(guò)程對(duì)于用戶來(lái)講是一個(gè)透明的無(wú)安裝的過(guò)程。這也是CSPM現(xiàn)在的一個(gè)基本方向。

第二塊,大家對(duì)于CWPP的定義一直比較模糊,什么屬于CWPP,這個(gè)Workload代表的是什么?Workload其實(shí)是一種云的基礎(chǔ)資源。
云的基礎(chǔ)資源經(jīng)過(guò)幾代不同的演化,發(fā)生了一些變化。最早的云基礎(chǔ)資源可能會(huì)使用一些虛機(jī)。在前幾年,我們會(huì)更多的使用Container,kubernetes服務(wù),ECS服務(wù)或者Azure上的ACI服務(wù)都屬于Container服務(wù)。在未來(lái),大家會(huì)更多的接觸到Serverless服務(wù)。
Serverless服務(wù)比如說(shuō)AWS Lambda,Azure Function這些也會(huì)變,這也是Workload的一部分,所以,CWPP涵蓋的部分是從虛機(jī)開(kāi)始,一直到Serverless結(jié)束,這些都屬于CWPP所涵蓋的保護(hù)范圍。

關(guān)于CWPP如何做保護(hù)?這個(gè)里面所包括的東西太多,暫不展開(kāi)來(lái)講,因?yàn)樗ê芏喔鶦I/CD、kubernetes、主機(jī)底層打交道的內(nèi)容。

要實(shí)現(xiàn)安全保護(hù),有哪些工具可以去選擇?
A路線是開(kāi)源組建的路線,比如說(shuō)CSPM的開(kāi)源組件cloudsploit,針對(duì)IaC的安全檢查的組件trivy,在GitHub上可以看到應(yīng)該是一萬(wàn)兩千star得分,還是相當(dāng)高的。這些是針對(duì)CSPM比較好的組件。
針對(duì)CWPP的開(kāi)源組件,比較出名的有Falco。Aqua tracee新出的Tetragon是在數(shù)據(jù)的平面借助eBPF做觀測(cè)非常好用的組件,都是開(kāi)源的。大家有興趣的話也可以去測(cè)試使用,在GitHub上都能找到它的使用和源碼。

B路線是商業(yè)套件,選擇比較多,像Aqua自身其實(shí)也有商業(yè)套件,還有很多廠商都會(huì)有。

最后,在選擇商業(yè)套件或開(kāi)源套件的時(shí)候,最需要注意的是關(guān)于成本。
衡量成本時(shí),購(gòu)買成本是所有的成本里面最低的,之后還有相應(yīng)的維護(hù)成本或集成成本,以上所有的成本加在一起才是選擇套件的總成本。
這兩條路線的選擇本身沒(méi)有對(duì)與錯(cuò),只有適合不適合,如果本身的安全團(tuán)隊(duì)能力比較強(qiáng),完全可以去使用開(kāi)源套件,非常好用。如果希望更多的精力focus在業(yè)務(wù)安全上,可以去選用商業(yè)的一些套件,看企業(yè)自身的實(shí)際情況去選擇。
獲取完整版PPT,請(qǐng)?zhí)顚憜?wèn)卷:
https://wenjuan.feishu.cn/m?t=svCwWH1yEyDi-67t2&mode=sidebar-semi
視頻回放鏈接:
火線沙龍第26期——安全→云安全 →多云安全
https://www.bilibili.com/video/BV1VF411F7o6/
火線安全平臺(tái):https://www.huoxian.cn/
火線Zone社區(qū):https://zone.huoxian.cn/?sort=newest