網(wǎng)絡(luò)殺傷鏈真的已過(guò)時(shí)嗎?
網(wǎng)絡(luò)殺傷鏈?zhǔn)怯陕蹇讼5隆ゑR丁公司在十多年前提出的。其基本思想是,攻擊者進(jìn)行偵察以發(fā)現(xiàn)漏洞,開發(fā)漏洞利用程序進(jìn)入系統(tǒng),安裝惡意軟件連接到控制服務(wù)器(C2),橫向移動(dòng)找到目標(biāo)并盜取數(shù)據(jù)。防御者則根據(jù)這些步驟設(shè)置檢測(cè)和防護(hù)機(jī)制以阻止攻擊。
但這個(gè)框架并不完善,從設(shè)計(jì)出來(lái)的時(shí)候,就不適用于許多種攻擊方法。例如一些直接的攻擊,像非法訪問(wèn)公開的數(shù)據(jù)庫(kù)、DDoS攻擊,或是一些幾乎看不到或根本看不到攻擊者在做什么的第三方攻擊。到了現(xiàn)在,縱深防御和零信任時(shí)代,這個(gè)框架更是變得無(wú)關(guān)緊要。
殺傷鏈正在失去價(jià)值
主要是因?yàn)樵S多攻擊類型會(huì)跳過(guò)這七個(gè)上步驟中的某些環(huán)節(jié)。例如,勒索軟件攻擊包括惡意軟件安裝和橫向移動(dòng),但除非攻擊者進(jìn)行二次勒索,否則可以跳過(guò)拖走數(shù)據(jù)的步驟。
再比如,一個(gè)不安全的API可以允許攻擊者將其所訪問(wèn)的所有數(shù)據(jù)虹吸出來(lái),API正在為一種常用的攻擊載體,因?yàn)榭梢灾苯哟虼┫到y(tǒng),那些針對(duì)邊界和區(qū)域的層層防護(hù)如同虛設(shè)。
最后,攻擊者也可以利用金錢跳過(guò)殺傷鏈的環(huán)節(jié)。例如,他們可以在黑市上購(gòu)買被盜的憑證,并使用這些憑證訪問(wèn)公司基礎(chǔ)設(shè)施。典型的,利用一些從暗網(wǎng)上買來(lái)的云端或K8s的憑證,悄悄地用受害者的計(jì)算資源挖礦。
最常見的一步到位攻擊,從不安全或安全性差的AWS存儲(chǔ)桶中竊取數(shù)據(jù)。今年1月,Bonobos男裝店的整個(gè)客戶數(shù)據(jù)庫(kù),約70GB的個(gè)人信息被泄露。該公司在云中存儲(chǔ)了一個(gè)備份文件,但沒有正確的保護(hù)措施。這些數(shù)據(jù)可以通過(guò)互聯(lián)網(wǎng)直接訪問(wèn),黑客無(wú)需殺傷鏈的大部分步驟,如武器化、交付、安裝或指揮與控制。
去年秋天Emetic專門針對(duì)AWS存儲(chǔ)桶的一份調(diào)查顯示,研究人員抽樣調(diào)查的AWS環(huán)境中有70%以上的機(jī)器暴露在互聯(lián)網(wǎng)上,并有被入侵并執(zhí)行勒索軟件的風(fēng)險(xiǎn)。事實(shí)上,網(wǎng)絡(luò)犯罪分子不斷演變的商業(yè)模式是殺傷鏈逐漸失去防御價(jià)值的一個(gè)重要原因。也就是說(shuō),不同的攻擊者專注于自己的專業(yè)領(lǐng)域,然后將結(jié)果出售給他人,不再是由多個(gè)鏈接步驟組成的單一攻擊。
供應(yīng)鏈攻擊顛覆殺傷鏈
針對(duì)第三方合作伙伴的攻擊令殺傷鏈毫無(wú)意義,通過(guò)入侵第三方以獲得進(jìn)入目標(biāo)企業(yè)的權(quán)限,典型的如2013年Target事件,是因?yàn)槠淇諝庹{(diào)節(jié)系統(tǒng)供應(yīng)商被入侵。更近一些的供應(yīng)鏈安全事件,如SolarWinds。
入侵可以完全發(fā)生在第三方環(huán)境。例如,第三方服務(wù)提供商可以訪問(wèn)財(cái)務(wù)數(shù)據(jù)、人事記錄、敏感IP或客戶信息。如果對(duì)第三方?jīng)]有可見性,就會(huì)造成很大的安全盲點(diǎn)。
隨著API、云應(yīng)用和系統(tǒng)整合的趨勢(shì),針對(duì)第三方的攻擊已成常態(tài)。從業(yè)務(wù)方面來(lái)看,能夠跨企業(yè)邊界將數(shù)據(jù)和服務(wù)連接在一起,無(wú)疑會(huì)有很大的益處。但同時(shí),安全問(wèn)題往往被忽略。
攻擊者是圖形思考而不是鏈路思考
標(biāo)準(zhǔn)的網(wǎng)絡(luò)殺傷鏈會(huì)讓人誤解,即認(rèn)為攻擊者在入侵目標(biāo)時(shí)會(huì)遵循一組特定的步驟。但這與事實(shí)相差甚遠(yuǎn),攻擊者是沒有固定規(guī)則的。相反,攻擊者會(huì)嘗試任何有效的方法。成功的網(wǎng)絡(luò)攻擊與其說(shuō)是從偵察到目標(biāo)的一條直線,不如說(shuō)更像一棵樹,或者像一張圖形,有節(jié)點(diǎn)和邊。邊是攻擊者從一個(gè)節(jié)點(diǎn)到另一個(gè)節(jié)點(diǎn)的路徑,但邊有多條,并非一條單一的鏈路。
超越殺傷鏈的ATT&CK
明顯可以看出殺傷鏈不足之處的一個(gè)方法是,與MITRE ATT&CK框架做比較。ATT&CK非常詳細(xì),包括攻擊者可能采取的200多個(gè)不同類型的TTP(戰(zhàn)術(shù)、技術(shù)與步驟)。它囊括了攻擊者所使用的方法,堪稱攻擊活動(dòng)的百科全書。尤其是許多基于殺傷鏈的思路很難發(fā)現(xiàn)的攻擊方法,如上文中所講的S3存儲(chǔ)桶攻擊、拒絕服務(wù)攻擊和供應(yīng)鏈攻擊。
真實(shí)的情況是,有多種殺傷鏈(攻擊路徑),而不是只有一條。而且,ATT&CK也不是完美的,攻擊者總是會(huì)想出新的攻擊方法。但是有一點(diǎn),至少目前許多入侵成功的事件,都是由于未能針對(duì)ATT&CK框架中現(xiàn)有的TTP進(jìn)行保護(hù)。換句話說(shuō),如果我們對(duì)MITRE框架中所有的內(nèi)容都做出了相應(yīng)防護(hù),那么即使是在使用零日漏洞的情況下,也很難造成巨大的損失。
結(jié)合了殺傷鏈和ATT&CK特點(diǎn)的“統(tǒng)一殺傷鏈”會(huì)加更有效。首先,它比傳統(tǒng)殺傷鏈更加深入、細(xì)化,再者還具備了關(guān)注攻擊者行動(dòng)順序的特性。最后,它會(huì)不斷更新和修訂,包括緩解和檢測(cè),以緊密跟上不斷變化的威脅。
零信任應(yīng)對(duì)新型攻擊
在適應(yīng)新的攻擊方法時(shí),零信任是一個(gè)不錯(cuò)的理念?!俺掷m(xù)驗(yàn)證,永遠(yuǎn)懷疑”是當(dāng)下網(wǎng)絡(luò)安全領(lǐng)域的流行語(yǔ)。似乎只要不信任,就能解決一切問(wèn)題。但從目前的落地情況來(lái)看,理論不錯(cuò),實(shí)踐很難。盡管如此,至少零信任理念有助于企業(yè)擺脫殺傷鏈背后的邊界或說(shuō)城堡防御的傳統(tǒng)方法。
眾所周知,邊界防御的弱點(diǎn)在于,突破即自由。用一個(gè)形象的比喻來(lái)說(shuō),就是外面是堅(jiān)硬厚實(shí)的盔甲,里面是柔軟脆弱的身體。
零信任則不然。每個(gè)應(yīng)用程序、每個(gè)數(shù)據(jù)節(jié)點(diǎn)都擁有自己的“盔甲”。從而讓攻擊者無(wú)法獲得立足點(diǎn),進(jìn)而不能實(shí)施橫向移動(dòng),并進(jìn)入信息系統(tǒng)的核心。
殺傷鏈依然還有價(jià)值
雖然殺傷鏈已經(jīng)不適用于當(dāng)今的攻擊環(huán)境,但也依然有著一定的價(jià)值,比如在進(jìn)行威脅建模時(shí)就非常有用。
仍然用上文中的S3存儲(chǔ)桶舉例。從攻擊者的角度來(lái)思考,如何發(fā)現(xiàn)存儲(chǔ)桶中的敏感數(shù)據(jù),又將如何實(shí)施入侵,并最終獲取數(shù)據(jù)?這就是威脅建模,了解風(fēng)險(xiǎn)在哪里,潛在的脆弱在哪里,攻擊者又如何實(shí)施每一步,這就是威脅建模。然后采取相應(yīng)的安全措施,確保攻擊者不能順利的完成這些步驟,而殺傷鏈模型則有助于完成這一過(guò)程。
現(xiàn)在的許多攻擊方法,尤其是第三方攻擊,殺傷鏈的確已不適用。但攻擊者仍然需要建立C2,橫向移動(dòng)和拖走數(shù)據(jù),殺傷鏈仍然是分析這些威脅的有效框架。安全團(tuán)隊(duì)需要擴(kuò)展他們的傳統(tǒng)模型,如將供應(yīng)商或源代碼被入侵的模型包括在內(nèi)。