創(chuàng)建安全云架構(gòu)的五個步驟
在一段簡短的視頻解說和評論中,Snyk首席架構(gòu)師、開發(fā)首家云安全SaaS公司Fugue的創(chuàng)始首席執(zhí)行官Josh Stella,就針對云環(huán)境的攻擊者為何如此容易避開企業(yè)的安全措施向業(yè)務(wù)和安全領(lǐng)導(dǎo)者提供建議,并討論創(chuàng)建固有安全云架構(gòu)的五個關(guān)鍵步驟。
云計算網(wǎng)絡(luò)攻擊不像好萊塢驚悚片中的場景。沒有人會慢慢把湯姆·克魯斯放進預(yù)選目標(biāo)的安全數(shù)據(jù)中心,該中心配備了超靈敏的噪音、溫度和運動探測器,以便他可以竊取特定的文件。
現(xiàn)實生活中的劇本要平淡得多。攻擊者坐在筆記本電腦前,部署自動化技術(shù)掃描互聯(lián)網(wǎng),尋找可利用的漏洞。他們得到的是一個虛擬的目標(biāo)“購物列表”,可以從中選擇,一旦進入云環(huán)境,他們就會利用體系結(jié)構(gòu)的弱點來查找敏感數(shù)據(jù),如個人識別信息(PII),并在幾分鐘內(nèi)提取出來,通常是從對象存儲服務(wù)或數(shù)據(jù)庫快照中提取出來。
聽起來很簡單,很容易防范,但根據(jù)剛剛發(fā)布的2022年版Verizon年度數(shù)據(jù)泄露調(diào)查報告(DBIR),“錯誤配置錯誤的上升始于2018年,主要是由于云數(shù)據(jù)存儲的實施沒有適當(dāng)?shù)脑L問控制……盡管主要云提供商努力使默認配置更加安全(我們對此表示贊賞),但這些錯誤仍然存在?!?/p>
攻擊者無法穿越安全團隊可以使用傳統(tǒng)入侵檢測和預(yù)防解決方案和流程監(jiān)控的傳統(tǒng)網(wǎng)絡(luò)。企業(yè)正試圖用昨天的數(shù)據(jù)中心安全技術(shù)來挫敗今天的云攻擊者,但他們對云威脅的前景還不完全了解。
通常,重點是識別攻擊者可以利用的資源配置錯誤來進入環(huán)境,并分析日志事件以識別可疑活動“危害指標(biāo)”(IOC)。這些可能是身份和訪問管理(IAM)配置中的更改,以提升權(quán)限,關(guān)閉加密以訪問數(shù)據(jù),或記錄以覆蓋個人軌跡。這些都是任何云安全工作所必需的活動,但最終它們還不足以保證云數(shù)據(jù)的安全。錯誤配置只代表了黑客進入云環(huán)境并破壞API控制平面的途徑之一,幾乎每一次重大的云破壞都會發(fā)生這種情況。
花這么多的時間和精力來發(fā)現(xiàn)和消除單一資源的錯誤配置并不能回答“當(dāng)它們通過并進入控制平面時會發(fā)生什么?”因為請放心,他們遲早會的。
沒有一個企業(yè)云環(huán)境不存在錯誤配置。云安全團隊通常每天都會發(fā)現(xiàn)并修復(fù)數(shù)十個或數(shù)百個。僅僅專注于識別IOC以阻止正在進行的攻擊的風(fēng)險更大;在團隊有機會做出響應(yīng)之前,云破壞可能會在幾分鐘內(nèi)發(fā)生。即使有最好的監(jiān)控、分析和警報工具,你也只能指望很快發(fā)現(xiàn)自己被黑客攻擊了。
新的威脅格局
開發(fā)人員和工程師越來越多地使用基礎(chǔ)設(shè)施即代碼(IaC),該代碼針對云提供商的應(yīng)用程序編程接口(API)進行操作,以在其工作時實時構(gòu)建和修改其云基礎(chǔ)設(shè)施,包括安全關(guān)鍵配置。云中的變化是恒定的,每次變化都會帶來錯誤配置漏洞的風(fēng)險,攻擊者可以使用自動檢測快速利用該漏洞。
控制平面是配置和操作云的API表面。例如,您可以使用控制平面來構(gòu)建容器、修改網(wǎng)絡(luò)路由,以及訪問數(shù)據(jù)庫中的數(shù)據(jù)或數(shù)據(jù)庫快照(這是黑客比入侵實時生產(chǎn)數(shù)據(jù)庫更常見的目標(biāo))。換句話說,API控制平面是用于配置和操作云的API集合。
將任何成功的云穿透事件的潛在爆炸半徑最小化,意味著在環(huán)境的架構(gòu)設(shè)計中防止控制平面受損。
安全云架構(gòu)的五個步驟
任何組織都可以采取五個步驟來設(shè)計其云環(huán)境,使其在本質(zhì)上能夠安全地抵御控制平面泄露攻擊:
1、將控制平面泄露風(fēng)險降至最低?,F(xiàn)在是時候?qū)ⅰ霸棋e誤配置”的定義從單一資源錯誤配置擴展到包括架構(gòu)錯誤配置的時候了,這些架構(gòu)錯誤配置涉及多個資源以及它們之間的關(guān)系。
對于現(xiàn)有云環(huán)境,通過分析資源訪問策略和IAM配置來評估任何潛在滲透事件的爆炸半徑,以確定攻擊者可以利用的過度許可設(shè)置進行發(fā)現(xiàn)、移動和數(shù)據(jù)提取。當(dāng)您找到它們時——相信我,您會找到它們的——與您的開發(fā)人員和DevOps團隊合作,在不破壞應(yīng)用程序的情況下消除這些架構(gòu)錯誤配置。這可能需要一些返工來解決現(xiàn)有環(huán)境中的這些漏洞,因此最好在設(shè)計和開發(fā)階段解決體系結(jié)構(gòu)安全問題。
2、采用策略作為云基礎(chǔ)設(shè)施的代碼。策略即代碼(Policy as code,PaC)是一種用機器可以理解的語言表達策略的方法,如開放策略代理、開源標(biāo)準(zhǔn)和云原生計算基礎(chǔ)項目。
在軟件定義的世界中,安全性的角色是領(lǐng)域?qū)<?,他向?gòu)建人員(開發(fā)人員)傳授知識,以確保他們在安全的環(huán)境中工作。不是規(guī)則手冊或清單,而是代碼。記住,是開發(fā)人員在云中構(gòu)建應(yīng)用程序和應(yīng)用程序的基礎(chǔ)設(shè)施。這一切都是通過代碼完成的,因此開發(fā)人員(而不是安全團隊)擁有這個過程。PaC使團隊能夠用編程語言表達安全性和法規(guī)遵從性規(guī)則,應(yīng)用程序可以使用該語言檢查配置的正確性,并識別不需要的條件或不應(yīng)該出現(xiàn)的情況。
使所有云涉眾能夠安全地運行,而不會對規(guī)則是什么以及應(yīng)該如何應(yīng)用規(guī)則產(chǎn)生任何歧義或分歧,這有助于在單一的策略真相來源下協(xié)調(diào)所有團隊,消除解釋和應(yīng)用策略時的人為錯誤,并在軟件開發(fā)生命周期(SDLC)的每個階段實現(xiàn)安全自動化(評估、實施等)。
3、使開發(fā)人員能夠構(gòu)建安全的云環(huán)境。IT團隊提供物理基礎(chǔ)設(shè)施并將其提供給開發(fā)人員的日子一去不復(fù)返了。如今,開發(fā)人員和DevOps工程師使用IaC表達他們想要的基礎(chǔ)設(shè)施并自動提供。
雖然這對于高效的云操作非常有用,但它增加了大規(guī)模傳播漏洞的風(fēng)險。然而,IaC的采用為我們提供了一個前所未有的機會:能夠在部署前檢查基礎(chǔ)設(shè)施安全。有了PaC,我們可以為開發(fā)人員提供在開發(fā)過程中檢查安全性的工具,并指導(dǎo)他們設(shè)計固有的安全環(huán)境,以最大限度地減少控制平面泄露威脅。每個人都可以更快、更安全地移動。
4、使用護欄以防止錯誤配置。無論您在通過IaC檢查和更安全的設(shè)計“擴展”云安全方面有多成功,錯誤配置仍然可能會漏掉,部署后云資源的變異是一個持續(xù)的風(fēng)險。
您應(yīng)該在持續(xù)集成和持續(xù)交付(CI/CD)管道中構(gòu)建自動安全檢查,以自動捕獲部署過程中的錯誤配置,并在構(gòu)建未通過安全檢查時自動失敗。對于敏感度較低的部署,請?zhí)嵝褕F隊注意違規(guī)行為,以便他們可以在必要時進行調(diào)查和補救。由于部署后對云資源的更改非常普遍,因此保持連續(xù)的運行時監(jiān)控以檢測漂移是至關(guān)重要的。確保運行的內(nèi)容反映了創(chuàng)建它的IaC模板,并檢查危險的錯誤配置事件和可能包含漏洞的孤立資源。在所有這些用例中,您采用PaC將繼續(xù)支付紅利。
5、構(gòu)建云安全架構(gòu)專業(yè)知識。企業(yè)云采用率的不斷提高,要求安全專業(yè)人員將注意力從傳統(tǒng)的安全方法(如威脅檢測和監(jiān)控網(wǎng)絡(luò)流量)轉(zhuǎn)移開來,以了解控制平面泄露攻擊是如何工作的,以及如何有效地使用安全架構(gòu)設(shè)計來防止它們。
為了做到這一點,組織需要云安全工程師和架構(gòu)師,他們可以與開發(fā)人員和DevOps團隊密切合作,了解云用例,并幫助在開發(fā)過程中建立安全的設(shè)計原則。
保護云環(huán)境的最終目標(biāo)是在任何成功的初始攻擊滲透事件發(fā)生之前使其變得毫無意義。畢竟,如果攻擊者無法從企業(yè)云環(huán)境中獲得任何資源,誰會在乎攻擊者是否能夠訪問該資源?
讓您的安全團隊學(xué)習(xí)云應(yīng)用程序如何工作,以幫助確保云基礎(chǔ)設(shè)施支持應(yīng)用程序,而不會帶來不必要的風(fēng)險。他們還需要知道如何利用PaC來檢查環(huán)境中更深層次的多資源漏洞,并幫助指導(dǎo)開發(fā)人員設(shè)計和構(gòu)建本質(zhì)上安全的環(huán)境。