上一章節(jié)中,我們討論了開(kāi)展紫隊(duì)演練工作所面臨的一些挑戰(zhàn)以及紫隊(duì)的類型。在這一章節(jié),我會(huì)接著上一章的討論,繼續(xù)闡述幾種不常見(jiàn)的紫隊(duì)類型。
當(dāng)場(chǎng)抓住測(cè)試
當(dāng)場(chǎng)抓住測(cè)試是一個(gè)“紅隊(duì)”術(shù)語(yǔ)的游戲,紅隊(duì)要接受被當(dāng)場(chǎng)抓住。在當(dāng)場(chǎng)抓住測(cè)試期間,評(píng)估人員打算故意被藍(lán)隊(duì)抓住。這類紫隊(duì)測(cè)試側(cè)重于評(píng)估的各個(gè)階段,原因不同,反應(yīng)也不同。測(cè)試從紅隊(duì)被發(fā)現(xiàn)之前的評(píng)估部分作為開(kāi)始,紅隊(duì)行動(dòng)中被發(fā)現(xiàn)的點(diǎn),以及被確定后的評(píng)估部分。我參加過(guò)這種紫隊(duì)演練活動(dòng),發(fā)現(xiàn)它對(duì)客戶組織非常有用。如前所述,這種類型的測(cè)試可能會(huì)導(dǎo)致團(tuán)隊(duì)之間的沖突。
當(dāng)場(chǎng)抓住測(cè)試當(dāng)然可以手動(dòng)完成,也可以通過(guò)自動(dòng)化完成。在這樣的活動(dòng)中,評(píng)估人員會(huì)慢慢地暴露他們的諜報(bào)技術(shù),直到他們笨手笨腳的讓藍(lán)隊(duì)抓住他們所做的事情。在這個(gè)關(guān)頭,紫隊(duì)的工作可以沿著兩條路中的一條進(jìn)行。藍(lán)隊(duì)找到紅隊(duì)后,停止了紫隊(duì)的活動(dòng),并與紅隊(duì)一起重建在紅隊(duì)被發(fā)現(xiàn)之前發(fā)生的事情以及為什么沒(méi)有被早點(diǎn)抓到?;蛘?,藍(lán)隊(duì)通知紅隊(duì)成員他們監(jiān)控到的情況,紅隊(duì)慢慢開(kāi)始加強(qiáng)他們的諜報(bào)技術(shù)并隱藏自己,直到他們變得無(wú)法被藍(lán)隊(duì)區(qū)分是否合法活動(dòng)。作為一個(gè)持久的紫隊(duì)演練,這兩個(gè)步驟在藍(lán)隊(duì)學(xué)習(xí)和改進(jìn)監(jiān)控并識(shí)別紅隊(duì)活動(dòng)的過(guò)程中,會(huì)不斷重復(fù)。這種方法的一個(gè)問(wèn)題是,它不是一種標(biāo)準(zhǔn)化的、可重復(fù)的或可防御的方法來(lái)改進(jìn)藍(lán)隊(duì),并且可能不適用于所有組織。
另一種進(jìn)行當(dāng)場(chǎng)抓住測(cè)試的方法是借助道德黑客諜報(bào)技術(shù)實(shí)現(xiàn)自動(dòng)化。在這種當(dāng)場(chǎng)抓住測(cè)試的過(guò)程中,大部分人為因素被去除,演練結(jié)果中更多的是對(duì)組織已經(jīng)具備的預(yù)防和監(jiān)測(cè)能力的評(píng)估。
我第一次看到這個(gè)技術(shù)是由一個(gè)非常大的企業(yè)的紅隊(duì)成員實(shí)現(xiàn)的。在我們提升了對(duì)目標(biāo)數(shù)據(jù)中心里面幾乎所有設(shè)備的訪問(wèn)權(quán)限之后,我們開(kāi)始執(zhí)行自動(dòng)化的當(dāng)場(chǎng)抓住測(cè)試。諜報(bào)技術(shù)的作用是為工具選擇執(zhí)行點(diǎn)。一些目標(biāo)是在同一個(gè)數(shù)據(jù)中心內(nèi)選擇的,一些則是在數(shù)據(jù)中心之間進(jìn)行通信的,還有一些是在DMZ和目標(biāo)范圍內(nèi)的其他管理子網(wǎng)中選擇的。我們安裝的工具中有一組攻擊性的安全攻擊活動(dòng),有多種不同的復(fù)雜程度。比如包括向SSH用戶添加密鑰、持久化二進(jìn)制文件或腳本、創(chuàng)建用戶以及其他此類操作。這些活動(dòng)是按從最不可能被發(fā)現(xiàn)到最可能被發(fā)現(xiàn)的順序執(zhí)行的,并且同時(shí)在每個(gè)設(shè)備上執(zhí)行。在完成這些工具的執(zhí)行之后,我們與藍(lán)隊(duì)合作,以確定是哪些行為命中了他們的監(jiān)控規(guī)則,哪些行為被阻止了,以及觸發(fā)了哪些警報(bào)。這使得藍(lán)隊(duì)成員能夠清楚地了解自己的防守能力。在某些情況下,他們認(rèn)為他們會(huì)100%的對(duì)已發(fā)現(xiàn)攻擊操作發(fā)出警報(bào),但由于配置不當(dāng)?shù)木W(wǎng)絡(luò)監(jiān)聽(tīng)和其他問(wèn)題,他們但監(jiān)控并沒(méi)有發(fā)現(xiàn)某些攻擊操作。
這種當(dāng)場(chǎng)抓住的測(cè)試可以和藍(lán)隊(duì)一起進(jìn)行,藍(lán)隊(duì)提前提供他們的監(jiān)控和防御規(guī)則,紅隊(duì)輸入被防御裝置捕獲的測(cè)試動(dòng)作。這種策略提供了補(bǔ)救需求的即時(shí)圖像,因?yàn)槿绻瘓?bào)被遺漏,它們將直接與藍(lán)隊(duì)認(rèn)為正在失敗的活動(dòng)相關(guān)。另一種選擇是讓紅隊(duì)提出攻擊行動(dòng),在交戰(zhàn)結(jié)束時(shí)將其納入?yún)R報(bào)中,并與藍(lán)隊(duì)一起審查,以便他們能夠調(diào)整自己的能力來(lái)應(yīng)對(duì)此類攻擊行動(dòng)。這也允許采取從最高危到最低危的補(bǔ)救順序,因?yàn)殄e(cuò)過(guò)的極其危險(xiǎn)或明顯的攻擊活動(dòng)應(yīng)作為優(yōu)先事項(xiàng)處理。
前兩種慣用的當(dāng)場(chǎng)抓住測(cè)試方法主要針對(duì)基于簽名的安全操作,在這些操作中,有機(jī)藍(lán)隊(duì)識(shí)別出已知操作中應(yīng)該記錄或應(yīng)該阻斷的弱點(diǎn)。我和一位同行討論過(guò)的一個(gè)新思路是使用機(jī)器學(xué)習(xí)自動(dòng)測(cè)試組織的監(jiān)控裝置。這顯然偏離了這本書(shū)的主題,但我覺(jué)得這與其他當(dāng)場(chǎng)抓住測(cè)試的紫隊(duì)的概念一樣值得提及。從本質(zhì)上講,一個(gè)工具安裝在組織和互聯(lián)網(wǎng)的不同位置,該工具監(jiān)聽(tīng)并了解組織的基線網(wǎng)絡(luò)流量。在此基礎(chǔ)上,它所做的與啟發(fā)式監(jiān)控軟件所做的事情恰恰相反。它開(kāi)始發(fā)送自己的流量,并慢慢變得更笨。隨著工具發(fā)送的流量開(kāi)始越來(lái)越不像網(wǎng)絡(luò)基線,不同復(fù)雜度的監(jiān)控軟件應(yīng)該識(shí)別不同點(diǎn)的異常流量。如果他們的啟發(fā)式或甚至基于簽名的流量監(jiān)控被配置為能夠捕獲他們希望捕獲的內(nèi)容,那么在網(wǎng)絡(luò)流的關(guān)鍵點(diǎn)放置和執(zhí)行這樣的工具可以允許組織獲得事實(shí)性的理解。
七擒七縱
當(dāng)場(chǎng)抓住測(cè)試更側(cè)重于改進(jìn)或識(shí)別藍(lán)隊(duì)方法中的差距。抓住并釋放是一種紫隊(duì)演練,旨在測(cè)試紅隊(duì)行動(dòng)的彈性,以及藍(lán)隊(duì)識(shí)別和跟蹤紅隊(duì)活動(dòng)的能力。在這種紫隊(duì)演練中,紅隊(duì)會(huì)被抓住。當(dāng)這種情況發(fā)生時(shí),紅隊(duì)被告知他們所采取的行動(dòng)中已經(jīng)被藍(lán)隊(duì)發(fā)現(xiàn)的信息,然后在藍(lán)隊(duì)開(kāi)始積極嘗試隔離他們的工具并將他們踢出網(wǎng)絡(luò)之前,給紅隊(duì)隊(duì)員們一小段時(shí)間。通知并捕獲或防御活動(dòng)之間的時(shí)間量應(yīng)與系統(tǒng)記錄的紅隊(duì)操作所觸發(fā)的監(jiān)控裝置中的警報(bào)所需的時(shí)間和分析人員注意到它從而啟動(dòng)事件響應(yīng)所花費(fèi)的時(shí)間相關(guān)。抓住并釋放中的“捕獲”可以是模擬警報(bào),也可以是藍(lán)隊(duì)對(duì)紅隊(duì)活動(dòng)的真實(shí)識(shí)別。這種評(píng)估中的“釋放”是給紅隊(duì)留出時(shí)間,以減輕被抓獲的行動(dòng),并繼續(xù)堅(jiān)持滲透網(wǎng)絡(luò)。
這樣做的好處是,紅隊(duì)可以進(jìn)行任何裁員和提高應(yīng)變能力的活動(dòng),以試圖在組織中保持立足點(diǎn)。此外,藍(lán)隊(duì)可以進(jìn)行真實(shí)的事件響應(yīng),其中他們積極嘗試清除網(wǎng)絡(luò)中的攻擊者,因?yàn)楣粽咧缿?yīng)急響應(yīng)已經(jīng)啟動(dòng)了。在所有討論過(guò)的紫隊(duì)活動(dòng)中,這種類型的紫隊(duì)活動(dòng)允許紅隊(duì)和藍(lán)隊(duì)培養(yǎng)創(chuàng)造力并改進(jìn)他們的流程。同樣,在一個(gè)有紅隊(duì)和藍(lán)隊(duì)的組織中,這種情況更可能發(fā)生。不過(guò),我認(rèn)為這是一種非常有益的紫隊(duì)演練方式,它充分實(shí)踐了攻擊模擬的概念以及對(duì)組織應(yīng)急響應(yīng)的評(píng)估。
七擒七縱測(cè)試也強(qiáng)調(diào)了紅隊(duì)、藍(lán)隊(duì)、紫隊(duì)和進(jìn)攻安全的一個(gè)非常有價(jià)值的觀點(diǎn)。被抓住并不意味著威脅已經(jīng)被擊敗。通常情況下,當(dāng)演練還在進(jìn)行時(shí),在藍(lán)隊(duì)告訴我們他們抓住了我們,那么在演練已經(jīng)結(jié)束時(shí),我就會(huì)參與匯報(bào)或?qū)υ挕膫€(gè)人經(jīng)驗(yàn)來(lái)看,在活動(dòng)發(fā)生后的數(shù)小時(shí)甚至數(shù)天內(nèi)都會(huì)發(fā)出行動(dòng)警報(bào),而且?guī)缀踉谌魏吻闆r下,僅捕獲該活動(dòng)并不能阻止攻擊者的存在。如果藍(lán)隊(duì)發(fā)現(xiàn)我在主機(jī)上執(zhí)行了一個(gè)有風(fēng)險(xiǎn)的特權(quán)提升漏洞,然后發(fā)現(xiàn)我在主機(jī)上挖掘信息,但他們?cè)谖覉?zhí)行這個(gè)漏洞兩小時(shí)后,在我已經(jīng)停止與該機(jī)器交互一個(gè)多小時(shí)后才發(fā)現(xiàn)了我,那并不完全意味著我被打敗了。我可能已經(jīng)跳轉(zhuǎn)到了幾個(gè)其他主機(jī)。我敦促防御性和進(jìn)攻性安全從業(yè)人員理解,在評(píng)估和實(shí)際活動(dòng)中,如果后續(xù)的事件響應(yīng)無(wú)法擊潰組織中的攻擊者,那么捕捉到一個(gè)攻擊動(dòng)作是無(wú)用的。當(dāng)一個(gè)藍(lán)隊(duì)暗示,因?yàn)樗麄冏サ搅四硞€(gè)攻擊行為,所以評(píng)估并不復(fù)雜,或者后來(lái)紅隊(duì)的行動(dòng)是無(wú)聲的,結(jié)果是不相關(guān)的,那么這是非常令人沮喪的。我一次又一次地遇到過(guò)這種情況,但都沒(méi)有抓住重點(diǎn)。對(duì)于組織來(lái)說(shuō),這是一個(gè)很好的用來(lái)學(xué)習(xí)自身局限性的機(jī)會(huì),并實(shí)踐組織對(duì)攻擊者的事件響應(yīng),與真正的黑客不同,它不會(huì)向公眾泄露數(shù)據(jù)和漏洞。
樂(lè)于助人的黑客
最不具有對(duì)抗性和最容易實(shí)施的紫隊(duì)活動(dòng)是在攻擊性安全評(píng)估之后、補(bǔ)救和緩解調(diào)查結(jié)果期間發(fā)生的事情。無(wú)論是作為一種有目的的紫隊(duì),還是簡(jiǎn)單地將演練結(jié)果報(bào)告提升到一個(gè)更高的級(jí)別,攻擊者對(duì)補(bǔ)救和緩解策略的輸入都是非常寶貴的。此輸入可確保防御者以擊敗攻擊而不是模擬攻擊者的方式修正演練所發(fā)現(xiàn)的安全問(wèn)題。這也有助于有效地確定演練發(fā)現(xiàn)的安全問(wèn)題清單的優(yōu)先次序和處理順序。在參與紫隊(duì)演練活動(dòng)時(shí),我目睹了許多這樣的例子:客戶的安全人員想出了解決安全問(wèn)題的想法,阻止了紅隊(duì)進(jìn)行的模擬攻擊,但沒(méi)有解決問(wèn)題的根源。這類似于治療癥狀而不是治療感染的原因。以下是我遇到的真實(shí)例子,在這些例子中,安全人員提出的最初的解決方案針對(duì)的是一種癥狀,而不是我們最終與他們合作實(shí)施的旨在治療病因的方案。
有兩個(gè)類似的例子都涉及到目標(biāo)組織中使用的安全產(chǎn)品,這些安全產(chǎn)品在演練過(guò)程中被紅隊(duì)用于在整個(gè)企業(yè)組織中橫向移動(dòng)。其中一個(gè)是基于 Linux 的企業(yè)配置管理軟件,它集中管理組織的大部分工作。另一個(gè)是由服務(wù)器集中管理的Windows端點(diǎn)防病毒軟件。在Linux軟件中,憑證重用允許遠(yuǎn)程訪問(wèn),內(nèi)核權(quán)限提升允許紅隊(duì)在配置管理服務(wù)器上站穩(wěn)腳跟。從那時(shí)起,紅隊(duì)就可以對(duì)企業(yè)進(jìn)行更改,例如安裝后門、更改密碼和其他操作,所有這些操作都為每個(gè)托管節(jié)點(diǎn)提供了特權(quán)訪問(wèn)。在Windows主機(jī)上,在一臺(tái)計(jì)算機(jī)上復(fù)制一個(gè)半特權(quán)用戶帳戶可以讓評(píng)估人員將注意力轉(zhuǎn)向防病毒管理服務(wù)器。從那里,紅隊(duì)能夠“解密”本地存儲(chǔ)的防病毒網(wǎng)絡(luò)控制臺(tái)的密碼,一旦驗(yàn)證了密碼,紅隊(duì)就能夠以系統(tǒng)權(quán)限在域中的所有計(jì)算機(jī)上執(zhí)行二進(jìn)制文件,包括域控制器。在這兩個(gè)例子中,在匯報(bào)的時(shí)候,客戶安全人員提出了一些緩解措施,這些措施只集中在問(wèn)題的癥狀上。對(duì)于Linux問(wèn)題,安全人員建議升級(jí)內(nèi)核版本并更改相關(guān)的用戶憑據(jù)。對(duì)于Windows問(wèn)題,安全人員建議將防病毒軟件升級(jí)到最新版本,這樣可以更好地隱藏 web 控制臺(tái)密碼。對(duì)于這兩個(gè)例子,紅隊(duì)評(píng)估人員建議改變組織安全態(tài)勢(shì)的真正弱點(diǎn)。在這兩種情況下,一個(gè)非常強(qiáng)大的管理工具應(yīng)該與其他機(jī)器“隔離開(kāi)來(lái)”,并且還應(yīng)該使用它自己的身份驗(yàn)證(特定于管理軟件機(jī)器本身)。像這種特權(quán)機(jī)器的分離才是真正的問(wèn)題;其他漏洞只允許評(píng)估人員訪問(wèn)它們。這并不是說(shuō)安全人員的建議不應(yīng)該被執(zhí)行;那些方案也很重要。但是,紅隊(duì)的攻擊思維提出了額外的建議來(lái)阻止一般的攻擊,而不是特定的攻擊路徑。
一個(gè)更簡(jiǎn)單的例子是組織內(nèi)有一個(gè)嚴(yán)格的Linux數(shù)據(jù)中心。紅隊(duì)通過(guò)在一臺(tái)機(jī)器上獲得root權(quán)限訪問(wèn)并重用同一個(gè)root帳戶訪問(wèn)所有其他Linux服務(wù)器來(lái)拿下整個(gè)數(shù)據(jù)中心的權(quán)限。安全團(tuán)隊(duì)只是簡(jiǎn)單地禁用了root 到SSH的能力,阻斷了紅隊(duì)使用的攻擊路徑。在與藍(lán)隊(duì)成員進(jìn)一步的情況介紹中,紅隊(duì)告訴他們,他們可以使用另一個(gè)用戶遠(yuǎn)程登錄,并在本地的每個(gè)命令行窗口中“切換到root”,以安裝他們需要的任何工具,因?yàn)閞oot帳戶密碼在每臺(tái)機(jī)器上都保持不變。紅隊(duì)建議禁止使用SSH的用戶切換到root,或者在不同的服務(wù)器上更改root憑據(jù),以防止憑據(jù)重用。
最后一個(gè)例子說(shuō)明了藍(lán)隊(duì)和紅隊(duì)給出的緩解建議之間的區(qū)別,以及兩者作為紫隊(duì)工作的好處。這個(gè)例子涉及到二進(jìn)制文件的執(zhí)行。在一個(gè)簡(jiǎn)短的發(fā)言中,紅隊(duì)強(qiáng)調(diào)了在攻擊過(guò)程中,他們能夠使用Windows機(jī)器上的計(jì)劃任務(wù)執(zhí)行一個(gè) .exe 工具。防守者提出,他們將為使用scheduled tasks 工具啟動(dòng)新的。exe 二進(jìn)制文件時(shí)編寫一個(gè)簽名。同樣,這個(gè)解決方案是值得的,但它只解決了某個(gè)特定的攻擊方法,而不是根本原因。紅隊(duì)與安全人員合作,幫助他們理解這一問(wèn)題,他們可以簡(jiǎn)單地編寫一個(gè)。dll并通過(guò)調(diào)度rundll.exe來(lái)執(zhí)行,甚至可以使用另一個(gè)文件擴(kuò)展名,如。tlb。所以潛在的問(wèn)題是,計(jì)劃任務(wù)被允許使用系統(tǒng)上下文來(lái)啟動(dòng)二進(jìn)制文件。這個(gè)例子也順便說(shuō)明了紅隊(duì)與藍(lán)隊(duì)一起合作可以減輕威脅本身。
不管是哪一個(gè)例子,都應(yīng)該清楚的是,當(dāng)組織的安全人員以及具有攻擊性的評(píng)估人員共同制定補(bǔ)救和緩解行動(dòng)的策略時(shí),這是極其有益的。紫隊(duì)的執(zhí)行方式只受想象力的限制,每個(gè)組織的實(shí)施都應(yīng)該探索利用這一概念的最佳方式,以改善組織的整體安全狀況,提高藍(lán)隊(duì)和紅隊(duì)成員的技能,更好地了解彼此的思維。
總結(jié)
本章討論了紫隊(duì)的概念、面臨的挑戰(zhàn)以及紫隊(duì)演練活動(dòng)的一些不同類型。各種紫隊(duì)類型的獨(dú)特優(yōu)點(diǎn)和缺點(diǎn)也都涵蓋在其中,以突出使用它們的最佳情況?,F(xiàn)實(shí)生活場(chǎng)景鞏固了本章所傳達(dá)的信息。