之前介紹了 Richard Bejtlich 和 Robert M. Lee 就 hunting 術語定義進行的博客辯論。這次討論還衍生出了關于 TTPs 和 IOCs 的問題。今天的分享首先回顧 Richard Bejtlich 和 Robert M. Lee 就此話題的討論。然后會再介紹幾篇圍繞痛苦金字塔以及 TTPs 進行討論的文章。
辯論回顧
這個話題始于討論過程中 Robert 向 Richard 提的一個問題:“你會認為匹配TTPs 的檢測不算狩獵嗎”?這是因為 Robert 之前在 NSA Threat Operations Centers (NTOC) 的工作經歷,應用 TTPs 作為分析特征是他們發現未知威脅的其中一種方法。
在回答1這個問題時,Richard 首先引用了 David Bianco 定義的痛苦金字塔(The Pyramid of Pain,簡稱PnP )。痛苦金字塔由 IOCs 組成,同時也用于對IOCs 進行分類組織。TTPs 即 Tactics, Techniques and Procedures(戰術、技術以及步驟)的簡稱,指對手從踩點到數據泄漏以及兩者間的每一步是“如何”完成任務的。TTPs 處于痛苦金字塔的頂尖,屬于一類 IOCs,而之前也介紹過 Richard認為基于 IOCs 的匹配不能算狩獵,因此,他也不認為基于 TTPs 的匹配是狩獵。
對于 TTPs 的理解,Robert 則回應 David Bianco 在痛苦金字塔中使用“指標”(indicator)這一術語,更多是和 Lockheed Martin 網絡殺鏈模型2保持一致。但痛苦金字塔定義的 TTPs 對應到殺鏈中定義的行為指標,似乎存在分歧,因為現實中的 TTPs 并不會像殺鏈模型中的行為指標,一定需要利用原子指標或計算指標進行描述。他具體探討了兩點內容3:
- 隨著術語和思想流派的不斷發展,現今業界幾乎將“指標”與機讀情報(indicator feeds)以及原子和計算形式的指標完全關聯起來。比如 MITRE’s ATT&CK 框架中特別指出,于他們而言,關注戰術和技術(TTP中的TT)對于超越“傳統的 IOCs”非常重要。
- 技術的演進,今天可以實現多數團隊在十年前不一定能夠做到的檢測,比如可以有效分析對手行為(也即TTPs)的威脅分析技術。而這里的 TTPs 不同于殺鏈模型中定義的行為指標4(指計算和原子指標的集合),不需要原子或計算指標進行描述。舉例來說,可以通過分析引擎完成一個常見的安全分析實例:每次匹配條件“將文件 drop 到系統、打開一個網絡端口、產生訪問一個外部IP地址的網絡流量,一旦通信建立就會下載其他文件”,就會產生告警。這個分析可以得出殺鏈模型中就行為指標給出的例子,但并不需要使用行為相關的具體后門 hash、IP 地址或其他指標。如果按照 Richard 的觀點,上述分析條件定義后也是在做“匹配”。但如果是利用分析之外的TTPs、將之作為一種搜索特征去發現新的威脅,那就應該算是狩獵。這里并沒有匹配任何指標,而是使用情報驅動的假設來識別新的威脅。 這正是 Robert 在NTOC所做的工作,也稱之為狩獵。
討論至此,兩人的主要分歧根源在于對 IOC 的定義。Richard 另做了一次考古5,并戲謔自己是歷史學家,幫助大家了解了 IOC 這一術語的起源。
- Mandiant 在“指標”的基礎上,于 2010 年正式定義了失陷指標(IOCs)。而“指標”這一術語則是由Kevin Mandia 不晚于他2003年的事件響應書籍定義,其后在檢測環境中被廣泛引入。(對應之前分享過的《Incident Response & Computer Forensics(第3版)》讀書筆記6,書中定義:失陷指標(Indicators of Compromise,IOC)的生成,是以結構化的方式記錄事件的特征和證物的過程。IOC包含從主機和網絡角度的所有內容,而不僅僅是惡意軟件。它可能是工作目錄名、輸出文件名、登錄事件、持久性機制、IP地址、域名甚至是惡意軟件網絡協議簽名。)
- 2010年1月25日第一份 M-trnds 報告中,針對IOC進行了描述:IOC不僅查找特定的文件和系統信息,還使用詳細描述惡意活動的邏輯語句。
- Mandiant 博客“Combat the APT by Sharing Indicators of Compromise7”中,作者Matt Frazier 介紹了一個基于 XML 語言的 IOC 實例化,并且可以使用免費的 Mandiant 工具讀取和創建IOC。
閱讀自此,我個人更傾向于 Robert 的觀點,TTPs 和行為指標并不能完全對應,前者應該包含后者。也或者說,TTPs 中有一類屬于 IOCs。
痛苦金字塔 & TTP 延伸閱讀
跟隨前面的討論,我重新閱讀了David Bianco 的痛苦金字塔系列博客,一些摘要結合個人理解分享如下:
- David 發表痛苦金字塔8 的初衷:時值 Mandiant 發布著名的 APT 1 報告,David 發現業界眾多跟隨的分析報告以及廠商產品層面的響應,并沒有有效地利用好這份報告的附錄指標。因此,他提出了痛苦金字塔模型,用于對 IOCs 進行分類并描述各類 IOCs 在攻防對抗中的價值。
- TTPs 處于痛苦金字塔塔尖。于攻擊方,TTPs 反映了攻擊者的行為,調整 TTPs 所需付出的時間和金錢成本也最為昂貴。于防守方,基于TTPs 的檢測和響應可能給對手造成更多的痛苦,因此 TTPs 也是痛苦金字塔中對防守最有價值的一類 IOCs。但另一方面,這類 IOCs 更加難以識別和應用,由于大多數安全工具并不太適合利用它們,也意味著收集和應用 TTPs 到網絡防御的難度系數是最高的。
Source: 9
- 在《What Do You Get When You Cross a Pyramid With A Chain?》10中,David 則進一步提出痛苦金字塔如何集成到網絡殺鏈模型中并對其進行補充。具體來說,它可以作為一種指導,幫助了解如何對有限的檢測資源進行優先級排序、以獲取最大的收益。并用踩點階段如何集成痛苦金字塔為例,本質還是講述了攻防雙方對抗的成本博弈。
另外還推薦 Harlan Carvey 的兩篇博客《TTPs》11與《Follow up on TTPs post》12,寫于 2014 年。這兩篇文章基于痛苦金字塔對 TTPs 做了進一步討論,尤其第一篇的評論也不應該錯過,有David Bianco等人的互動討論,非常精彩。一些觀點摘要如下:
- 痛苦金字塔可以視作組織的檢測/響應成熟度衡量指標,越是能建立金字塔往上的能力,越表明 IR 的成熟度,尤其是成熟到可以專注在 TTPs 時,事實上使用的是流程而非簡單地尋找特定數據點。而正因為有了流程,不僅能檢測并響應使用不同 TTPs 的其他威脅,還能知道這些 TTPs 何時發生變化。(是否也可以認為痛苦金字塔可以用于度量情報廠商的能力呢?)
- David 評論中提及 TTPs 的共享,遠不如金字塔下層的指標那么廣泛可獲得,部分原因在于收集 TTPs 的困難,導致很多組織對它們的重視程度更高,這使得他們更不愿意進行共享。另一原因則是,TTPs 較難以自動化方式共享。沒有好的方法來表達 TTPs 中涉及的摘要信息。目前為止(時值2014年),David 見過最好的方式是簡單英文文本,這就使得生產和導入工具變得更加困難。
- Ryan Stillions 則提出關注在金字塔較低級別指標上,實際會給分析師造成痛苦(誤報問題)。這里有一個“上下文重建的成本”,也即分析師工作在痛苦金字塔越低級別,用于重建情景上下文、得出結論等所需的時間就越長。(痛苦金字塔也對應了威脅情報不同應用場景,如適用于安全產品的指標、對安全分析師價值更大的指標。)
最后推薦 Ryan Stillions 的文章《On TTPs》13,發表在 Harlan Carvey 兩篇文章之后,與這次討論也有相關性。文中嚴謹地分享了 TTPs 的原始定義,闡釋這一起源于軍方的概念如何應用于網絡環境以及如何適用于檢測和響應。他對 TTP 做了拆解定義和闡述,對于更好地理解痛苦金字塔是一個不錯的補充。但毋庸置疑的是,痛苦金字塔是一個簡潔、經典、同時可以衍生出諸多含義的威脅情報模型。
Source: 14
隨感
一直以來分享的初衷,主要有感于國外諸多經典讀物的產出路徑如出一轍:國外同仁在實戰經驗的積累過程中,往往會上升到理論高度,形成相應的方法論,并通過社區的各種討論進行完善,最終會進一步促進相關領域的發展。威脅情報領域當前在國內也還處在探索階段,希望業界同仁在實踐中探索積累前行的過程,提供客戶價值和解決方案的同時,也能產出具備理論高度的研究,相信這對整個行業以及市場的成熟也都是有益的。
- https://taosecurity.blogspot.com/2018/11/even-more-on-threat-hunting.html
- https://www.lockheedmartin.com/content/dam/lockheed-martin/rms/documents/cyber/LM-White-Paper-Intel-Driven-Defense.pdf
- http://www.robertmlee.org/threat-hunting-ttps-indicators-and-mitre-attck-bingo/
- https://digital-forensics.sans.org/blog/2009/10/14/security-intelligence-attacking-the-kill-chain
- https://taosecurity.blogspot.com/2018/11/the-origin-of-term-indicators-of.html
- http://www.lxweimin.com/p/c4d7ef14687e
- https://www.fireeye.com/blog/threat-research/2010/01/combat-apt-sharing-indicators-compromise.html
- https://detect-respond.blogspot.com/2013/03/the-pyramid-of-pain.html
- 同上
- http://detect-respond.blogspot.com/2013/03/what-do-you-get-when-you-cross-pyramid.html
- http://windowsir.blogspot.com/2014/04/ttps.html
- http://windowsir.blogspot.com/2014/04/follow-up-on-ttps-post.html
- http://ryanstillions.blogspot.com/2014/04/on-ttps.html
- 同上