一篇讀懂 ATT & CK 和 CALDERA
概 述
在網絡安全領域,攻擊者可以相對自由和相對無限的運用資源對組織機構隨意發起攻擊;而防守方則處于被動挨打的地位,用有限的資源去對抗無限的安全威脅。基于這種攻防不對稱的情況,防守方始終會被以下問題所困擾:①防御方案是否有效;②能否檢測到APT攻擊;③新的安全產品、安全策略能否有效;④安全工具覆蓋范圍是否有重疊;⑤如何確定安全防御優先級。
一直以來,沒有人能夠很好地回上述的問題,直到MITRE ATT&CK的出現。ATT&CK提供了一種許多組織機構迫切需要的關鍵功能——用一種標準化的方法來開發、組織和使用威脅情報防御策略,實現企業合作伙伴、行業人員、安全廠商以相同的語言進行溝通和交流。
之后,MITRE公司在ATT&CK框架的基礎上開發了開源工具CALDERA。CALDERA是一個網絡安全平臺,旨在輕松實現對手仿真自動化、協助手動紅隊以及事件響應自動化[1]。
因此,本文將對ATT&CK和CALDERA進行一個簡介,并對CLADERA的一些基本功能做一個演示。
ATT&CK
ATT&CK概述
ATT&CK(Adversarial Tactics, Technologys, and Common Knowledge),是由MITRE公司2013年提出的“對抗戰術、技術和常識”知識庫框架。它基于真實世界的攻防數據來描述和分類對抗行為。這個知識庫是由社區驅動的,并且是公開免費、全球可訪問的知識庫[2]。
該知識庫建立的目的是為紅隊、藍隊、廠商、企業等不同組織構建一套通用語言,提供更細粒度、更易共享的戰術、技術、流程、文檔等資源。
對于攻方,ATT&CK能起到對抗模擬、紅隊滲透測試作用,使紅隊更好實施作戰計劃;對于守方則能進行防御差距評估、行為分析研究、威脅情報分析、SOC成熟度評估等行為,更好展開威脅分析和安全防御;研發人員也能借此設計開發出更實戰有效的安全產品,領導更全局掌控攻防態勢。
該框架包含三個技術域[3],即①企業級的Enterprise ATT&CK,包含PRE、Windows、macOS、Linux、云、網絡、容器等平臺;②移動端的Mobile ATT&CK,包括安卓和iOS等平臺;③工控系統的ICS ATT&CK。具體信息如表1所示。
表1. ATT&CK技術域

ATT&CK矩陣
對于每一個技術域,ATT&CK有對應不同的矩陣。矩陣包括戰術、技術、程序,通過ATT&CK Matrix矩陣展示。橫軸代表戰術,核心研究攻擊者的技術目標,提供一個大的行動綱領;縱軸代表技術,指具體的戰術執行(How、What),中間包括程序。戰術、技術、子技術的具體含義如下:
- 戰術(Tactics):表示攻擊過程中的短期戰術目標;
- 技術(Techniques):描述對手實現戰術目標的手段;
- 子技巧(Sub-Techniques):描述對手在比技術更低的級別上實現戰術目標的技術手段。
以Enterprise ATT&CK為例,ATT&CK矩陣如圖1所示。
ATT&CK戰術及緩解措施
ATT&CK戰術共14個,包括偵察、資源開發、初始訪問、執行、持久化、權限提升、防御繞過、憑證獲取、發現橫向移動、搜集、命令控制、數據滲出、影響[4]。戰術僅為作戰行動提供目標綱領,具體行動由戰術中的技術與子技術實現。

圖1. ATT&CK矩陣
ATT&CK當前緩解措施共42項,包括防病毒、審計、代碼簽名、漏洞掃描、應用程序隔離和沙箱、漏洞利用防護、網絡入侵防護、威脅情報計劃、軟件更新、OS配置、加密敏感信息、多因素認證等[5]。
每一項技術和子技術都會有相對應的緩解措施,幫助防御者提高安全防護能力。

圖2. 戰術、技術、緩解措施示意圖
攻擊組織使用某些技術和軟件完成某(幾)種戰術,緩解措施則用于抵御技術攻擊。
如圖2所示,紅隊從矩陣中選取部分戰術并使用相關技術和程序進行對抗模擬和滲透測試。藍隊利用矩陣中的技戰術進行行為分析;評估防御差距;利用提供的緩解措施抵御紅隊攻擊。
CALDERA
CALDERA概述
CALDERA的全稱是:Cyber Adversary Language and Decision Engine for Red Team Automation,即“用于紅隊自動化的網絡對手語言和決策引擎”。它基于MITRE ATT&CK建立,是一種能夠輕松運行自主的違規和模擬練習的網絡安全框架。功能包括自動化紅隊行動、手工紅隊行動、自動化應急響應等。
該框架包含兩個組件,如圖3所示:
- 核心系統:這是框架代碼,由該存儲庫中可用的內容組成。其中包括帶有REST API和Web界面的異步命令和控制(C2)服務器。
- 插件:這些是獨立于核心框架的存儲庫,提供了其他功能。示例包括代理,GUI界面,TTP集合等。

圖3. CALDERA整體架構
此外,還有幾個名詞需要明確:①Ability:一段具體的功能程序(TTPs);②Adversary(Profile):一系列Ability的結合;③Operation:針對特定組(group)特定Adversary的實現;④Agent:代理。具體關系如圖4所示。

圖4. Ability、adversary、operation、agent的關系
CALDERA服務器上包含Ability、adversary、operation和各種有用的插件,而通過將代理(Agent)部署到不同平臺的機器上,可以對目標機器完成攻擊模擬的實現和緩解措施的測試。
CALDERA Server部署
CALDERA Server開源于GitHub,可使用git clone直接部署于任何Linux發行版或者macOS系統上。除此之外,要求雙核及以上CPU和大于8GB內存,并安裝Python3.7+、pip3和Golang1.17+。
環境準備完成后終端輸入如下命令即可啟動CALDERA Server:
- git clone https://github.com/mitre/caldera.git --recursive
- cd caldera
- pip3 install -r requirements.txt
- python3 server.py –insecure
打開瀏覽器輸入http://$(ServerIP): 8888即可訪問CALDERA Server。$(ServerIP)替換為安裝CALDERA Server機器的IP。紅隊藍隊賬戶名分別為red、blue,密碼均為admin
CALDERA代理部署
CALDERA代理部署,共有sandcat、ragdoll、Manx三種代理可選。本文以sandcat為例,其余兩種參考sandcat執行。
1.Linux和macOS
Linux各發行版和macOS操作步驟基本一致,以Ubuntu系統為例。首先需要在OS上安裝curl:
sudo apt install curl
此后登錄caldera server,選擇側邊欄的Agent,選擇代理和平臺類型。將app.contact.http改為server IP,復制下端代碼至目標機器終端執行,即可在目標機器建立代理。如圖5所示。
2.Windows
關閉Windows Defender實時防護,其他參考Linux agent部署。
若Win11的Windows Defender無法打開,PowerShell管理員運行如下命令:

圖5. 代理部署
CALDERA Operations
Operations選項能自定義攻擊劇本并對劇本進行執行。操作步驟見圖6如下:① 選擇operation標簽;② 點擊“Create Operation”創建operation;③ 選擇相關選項,開始operation。

圖6. Operations操作步驟
CALDERA插件
CLADERA的插件為CALDERA提供了豐富的功能。本文以兩個常用插件Access和Compass為例。
1.Access
Access提供了CALDERA的Ability中所有功能的單項實現。通過使用Access可以從數據庫中為任何具有任意Ability的代理分配任務。這對于執行初始訪問攻擊特別有用。要做到這一點,需要在目標機器部署一個代理,并使用pre-ATT&CK或初始化Access策略來分配任務,指向任何目標。用戶還可以遠程部署代理并將其用作代理來執行初始Access攻擊。具體操作見圖7所示。

圖7. Access使用步驟
2.Compass
Compass是一個基于網絡的工具,用于注釋和探索ATT&CK矩陣。它可以用于可視化防守覆蓋范圍、紅/藍團隊規劃、檢測技術的頻率等。它可以為任何Adversary生成一個layer文件,用戶可以將其覆蓋在Compass提供的矩陣上,或在矩陣中創建一個Adversary,然后上載layer文件以生成用于操作的Adversary。具體界面如圖8所示。

圖8. Compass操作界面
結 語
ATT&CK通過用一種標準化的方法來開發、組織和使用威脅情報防御策略,實現了企業合作伙伴、行業人員、安全廠商以相同的語言進行溝通和交流,提供了更細粒度、更易共享的戰術、技術、流程、文檔等資源。而開源軟件CLADERA基于MITRE ATT&CK的資源,建立了一個對紅藍雙方都簡單易用的攻防模擬平臺,能夠輕松運行自主的違規和模擬練習。
本文對于ATT&CK和CLADERA的基本功能和架構進行了一些簡單介紹,并演示了如何使用CALDERA的一些功能。但是受限于文章篇幅和學識有限,只能對二者進行簡單介紹,更多深入的功能和認知還需要再實踐中探索學習。也歡迎各位讀者共同探討交流。
參考文獻
1.CALDERA. GitHub - mitre/caldera: Automated Adversary Emulation Platform
2.MITRE ATT&CK. https://attack.mitre.org/
3.ATT&CK MATRICES. Matrix - Enterprise | MITRE ATT&CK?
4.ATT&CK TACTICS. Tactics - Enterprise | MITRE ATT&CK?
5.ATT&CK MITIGATIONS. Mitigations - Enterprise | MITRE ATT&CK?


























