◆冀俊濤 石磊
基于ATT&CK框架的實戰分析
◆冀俊濤 石磊
(大連理工大學城市學院 遼寧 116000)
本文介紹了ATT&CK框架的攻擊戰術和攻擊技術,具體講解“水坑攻擊”和“Valid Account 攻擊”并且分析戰術的危害。實戰模擬“紅藍對抗”中紅隊的ATT&CK戰術,并總結紅隊滲透攻擊鏈。
APT攻擊;ATT&CK框架;紅藍對抗;ATT&CK 實戰攻擊鏈
伴隨5G、IPv6、人工智能、云計算等新技術的涌入,數以百億的資產設備暴露在未知威脅之下,世界級安全風險呈超指數級倍增。如何利用網絡測繪手段精準、實時、智能的感知網絡空間安全態勢,及時感知威脅、識別定位資產,成為網絡安全防御體系重要一環[3]。
ATT&CK 作為一套反映網絡安全攻擊的知識模型,自2013年提出以來越來越受到安全行業的關注,已逐漸成為網絡攻擊事件分析得新標準,在眾多APT事件分析中得到廣泛的應用。
針對不同APT組織的攻擊技術,以ATT&CK 為載體,著重分析部分活躍且具有代表性的APT組織攻擊策略的整體情況[2]。作為防守一方,需要加強對這些APT常用的攻擊技術的主動防御,優化檢測,阻斷策略,降低APT攻擊的安全風險,從而保護資產免受損失;另一方面對于攻擊一方,ATT&CK這些高頻技術也能使用在對抗模擬、紅隊/滲透測試活動、制定行為分析方案中,為滲透測試工作人員提供技術參考以模擬APT攻擊,檢測當前防御狀況。
在滲透測試中,滲透測試人員可以根據 ATT&CK中的高頻技術對甲方企業進行安全測試,形成安全方案,以加固企業的安全性;在紅藍對抗中,無論是藍方還是紅方都可以使用ATT&CK框架,紅方可以進行網絡釣魚、水坑攻擊等技術,藍方可以利用框架中的技術提前對系統網站做審計工作。
本文具體介紹了ATT&CK框架的攻擊戰術和攻擊技術,實戰模擬“水坑攻擊”、“Valid Account 攻擊”,具體分析在“紅藍對抗”中運用的ATT&CK框架,并且實戰總結ATT&CK框架的攻擊鏈。
在過去的一年中,MITRE ATT&CK 框架在安全行業中廣受歡迎。ATT&CK 是 MITRE 提供的“對抗戰術、技術和常識”框架,是由攻擊者在攻擊企業時會利用的12種戰術和244種企業技術組成的精選知識庫,我們使用 MITER ATT&CK 框架來衡量組織識別,檢測和防止網絡入侵的能力的有效性的價值。
ATT&CK正誕生于對已知APT組織的分析過程中[1]: ATT&CK 發起自MITRE的FMX(Fort Meade experiment)實驗環境,旨在通過攻防對抗數據的采集和分析,提升對APT檢測能力。ATT&CK 歸類的攻擊技術大部分源于公開的APT組織活動,其主要的信息來源包括:威脅情報報告、會議報告、研討會、社交媒體、博客、開源代碼庫、惡意軟件樣本等。
MITRE公司創建的 ATT&CK(對抗策略,技術和常識)框架實質上是基于現實世界觀察結果的對抗技術,策略和程序的百科全書。ATT&CK模型“鞏固并提供了有關網絡攻擊者行為的簡潔,更完整的描述”,將企業框架分類為矩陣,其中根據惡意行為者的目的和技術將技術分為12列,每列包含多項技術,十二項戰術下都有著數量不同的技術存在,每個技術都有自己唯一的id號碼。下面,從攻擊和防御兩個角度去列舉并分析幾項常用的戰術。
ATT&CK for Enterprise包括的戰術有初始化訪問、執行、持久化、權限提升、防御逃避、憑據訪問、發現、橫向移動、收集、命令與控制、數據外傳、影響。這些基于 APT 組織及黑客團伙的披露信息進行分析梳理的詳細信息能夠有效指導實戰化的紅藍對抗,目前已在多個領域得到較好的應用,表1是一些常用戰術的介紹[1]:

表1 ATT&CK模型戰術及重點技術表
攻擊者使用魚叉式附件,如果腳本執行成功,那么攻擊者就可以采用下一步技術實現對電腦的掌控。防御者可以控制管理員權限的使用、電子郵件和Web 瀏覽器保護、賬戶監視和控制。
無論攻擊者通過惡意軟件、勒索軟件還是 APT 攻擊等手段,為了能成功攻入主機最終都會選擇”執行”戰術。防御者在惡意軟件運行的時候有機會阻止或者檢測他,都有可能成功防住。但值得注意的是,并不是所有的惡軟都可以使用殺毒軟件輕松找到可執行文件,這些惡軟可能被做了免殺加殼甚至自動備份隱藏。
言歸正傳,在ATT&CK的所有戰術中,持久化是最有戰略意義的戰術之一,也是我們最應該關注的戰術之一。如果企業在終端上發現惡意軟件并將其刪除,很有可能它還會重新出現。這可能是因為有漏洞還未修補,但也可能是因為攻擊者已經在此或網絡上的其他地方建立了持久化。
利用系統漏洞達到Root 級訪問權限可以說是攻擊者的核心目標之一了,權限提升有Windows系統漏洞利用、第三方軟件漏洞等一些技術,應對此類攻擊戰術辦法是審計日志記錄,當攻擊者采用某些技術時,它們將留下蛛絲馬跡,暴露他們的目的。
“發現”戰術可以說是整個ATT&CK 框架中最難以防御的策略,可以說是“防不勝防啊”。
攻擊者利用某個漏洞進入系統后,無論是為了收集信息還是繼續為了下一步攻擊尋找突破點,通常都會嘗試在網絡內橫向移動。
ATT&CK在各種日常環境中都很有價值,ATT&CK的四個主要應用場景,即威脅情報、檢測與分析、模擬紅藍對抗,以及評估與工程。開展任何防御活動時,可以應用 ATT&CK分類法,參考攻擊者及其行為。最后我們模擬”紅藍對抗”實戰分析出ATT&CK框架的攻擊鏈。
我們從上面ATT&CK 戰術及重點技術表選取一個具有代表性的技術斤進行探討,根據技術使用熱度、流行趨勢,我們選取幾個常用的技術進行探討,例如”Valid Account”,”水坑攻擊”[5]。
(1)Valid Account 攻擊
攻擊者會使用漏洞獲取憑證訪問的權限技術竊取一個特定用戶或服務賬號的用戶名密碼或憑證,或者是通過社會工程學偵查獲得特定用戶或服務賬戶的用戶名密碼或證書,從而獲得初始訪問的權限。
Valid Account 攻擊入侵分析,通過其他手段獲取的郵箱賬號可以作為持久化的一種手段,可以直接登錄到系統,然后新建一個隱藏賬號來實現持久化。
(2)水坑攻擊
攻擊者通過攻陷受害者日常瀏覽的網站,一旦受害者瀏覽該網站,就會成為攻擊的目標。水坑攻擊已經成為APT攻擊的一種常用手段,相比于魚叉連接、附件攻擊,水坑攻擊根據隱蔽性,受害者往往警惕性較低,難以覺察網站異常。且攻擊的網站往往屬于第三方網站,并不在防御體系內,大大提升了檢測的難度。
紅隊(Red Team)即安全團隊最大化模仿真實世界里的入侵事件,包括入侵者的戰術技術流程,檢驗藍隊(Blue Team)的威脅檢測及應急響應效率,幫助企業提高安全建設及安全運營能力。在紅藍對抗中,攻擊方可以進行滲透測試、APT 攻擊、零日漏洞、武器開發等去尋找目標系統不足、藍隊技術和管理不足、提高企業安全建設能力,也可以進一步利用 ATT&CK 框架中的戰術組成自己的攻擊鏈。
紅隊技術指導:ATT&CK 框架包含了 266 種攻擊技術描述,模擬紅隊可以借鑒其中部分技術進行特定戰術目的的專項測試或綜合場景測試。在開展內網信息收集專項測試時,可以通過參考并復現“發現”、“收集”戰術目的下的攻擊技術,對內網暴露的攻擊面逐一測試;在開展模擬場景演練時,可以挑選不同的戰術目的制定模擬攻擊流程,從矩陣中選擇相關技術實施。以典型的紅隊釣魚攻擊場景為例,紅隊高頻攻擊技術:釣魚攻擊 ->運行 payload 命令 -> 本地持久化 -> 獲取命令&控制通道 -> 權限提升 -> 橫向滲透 -> 拿下域控權限。
基于 ATT&CK 框架,ATT&CK 實戰攻擊鏈主要包含以下七個步驟[4]:
3.2.1確認目標
第一步是要確定要檢測的對抗行為目標和優先級,優先檢測攻擊者最常使用的 TTP,并解決最常見的、最常遇到的威脅技術,這會對組織機構的安全態勢產生最廣泛的影響。擁有強大的威脅情報能力后,組織機構就可以了解需要關注哪些 ATT&CK 戰術和技術。
3.2.2收集數據
攻擊者可以使用技術將未知的RAT 加載到合法的進程(例如explorer.exe)中,然后使用 cmd.exe 命令行界面通過遠程 Shell 與系統進行交互。攻擊者可能會在很短的時間內采取一系列行動,并且幾乎不會在任何部件中留下痕跡讓網絡防御者發現。
3.2.3過程分析
行為分析——旨在檢測某種特定對抗行為,例如創建新的Windows 服務。情景感知——旨在全面了解在給定時間,網絡環境中正在發生什么事情。異常值分析——旨在分析檢測到非惡意行為,這類行為表現異常,包括檢測之前從未運行過的可執行文件,或者標識網絡上通常沒有運行過的進程。
3.2.4構建場景
MITRE 的對抗模擬方法不同于這些傳統方法,其目標是讓紅隊成員執行基于特定或許多已知攻擊者的行為和技術,以測試特定系統或網絡的防御效果。
(1)場景規劃
場景規劃應該足夠詳細,足以指導紅隊驗證防御能力,但也應該足夠靈活,可以讓紅隊在演習期間根據需要調整其行動,以測試藍軍可能未曾考慮過的行為變化。
(2)場景示例
①為紅隊確定一個特定的最終目標。例如,獲得對特定系統、域賬戶的訪問權,或收集要滲透的特定信息。
②假設已經入侵成功,讓紅隊訪問內部系統,以便于觀察滲透后的行為。紅隊可以在環境中的一個系統上執行加載程序或RAT,模擬預滲透行為,并獲得初始立足點,而不考慮先前的了解、訪問、漏洞利用或社會工程學等因素。
③紅隊必須使用 ATT&CK 模型中的“發現”技術來了解環境并收集數據,以便進一步行動。
④紅隊橫向移動,直到獲得目標系統、賬戶、信息為止。
(3)場景實現
上述場景示例的具體實現步驟如下所示[4]:
①模擬攻擊者通過白隊提供的初始訪問權限后,獲得了“執行”權限。以下內容可以表示攻擊者可以使用通用的、標準化的應用層協議(如 HTTP、HTTPS、SMTP 或 DNS)進行通信,以免被發現。例如表2中的應用戰術。

表2 命令與控制戰術
②建立連接后,通過下表3執行戰術啟動反彈 shell 命令界面:

表3 執行戰術
③通過命令行界面執行“執行”戰術并且通過下表4的”發現”戰術對目標內網進行信息收集:

表4 發現戰術
④表5中的戰術是基于 ATT&CK 的建議措施,以建立持久性或通過提升權限來建立持久性。

表5 持久化&提升權限戰術
⑤如果獲得了憑據并且通過下表6中的“發現”技術對系統有了全面的了解,就可以嘗試橫向移動來實現該方案的主要目標了。

表6 橫向移動戰術
⑥根據使用上文提到的技術,繼續橫向移動,獲取并滲透目標敏感信息。建議使用表7的ATT&CK 戰術來收集和提取文件:

表7 收集與滲透戰術
3.2.5模擬威脅
在制定好對抗模擬方案和分析方案之后,就該使用情景來模擬攻擊者了。首先,讓紅隊模擬威脅行為并執行由白隊確定的技術。
3.2.6調查攻擊
一旦在給定的網絡競賽中紅隊發起了攻擊,藍隊要盡可能發現紅隊的所作所為。

圖1 實驗攻擊鏈
3.2.7評估表現
藍隊和紅隊活動均完成后,白隊將協助團隊成員進行分析,將紅隊活動與藍隊報告的活動進行比較。這可以進行全面的比較,藍隊可以從中了解他們在發現紅隊行動方面取得了多大程度上的成功。圖1就是上述實驗攻擊鏈的匯總圖。
對網絡中的黑客攻擊的檢測和防御是當前網絡安全事件的難點,我們基于ATT&CK知識庫和通過分析ATT&CK在實戰中技術的運用,為APT攻擊和平常的黑客攻擊檢測和防御提供新的防御思路,也為“紅藍對抗”提供了新的攻擊思路,為網絡安全技術的提高提供了幫助。本文所提出的“紅藍對抗”,“水坑攻擊”只是ATT&CK中技術的冰山一角。
根據以上探討,總結出基于ATT&CK 框架的”紅藍對抗”滲透攻擊鏈:
確定目標-收集數據-過程分析-構建場景-模擬威脅-調查攻擊-評估表現。
其中構建場景是其中的關鍵攻擊鏈:
ATT&CK:初始訪問戰術->命令與控制戰術->執行戰術->發現戰術->持久化戰術->橫向移動戰術->滲透戰術
[1]MITRECorporation《. The MITRECorporation《M ITRE ATT&CK: Design and Philosophy》,2020.
[2]《ATT&CK? Your CTI with Lessons Learned fr om Four Years in the Trenches》,2020.
[3]黃寧.云計算環境下網絡安全態勢感知技術研究[D]. 西安:西安工程大學,2018.
[4]必達實驗室.《持續風險檢測體系實踐--基于ATT&C K的APT高頻技術分析》,2020.
[5]安恒信息.《滲透攻擊紅隊百科全書》.