從零開始聊一聊態勢感知
*本文作者:Yale1024,本文屬 FreeBuf 原創獎勵計劃,未經許可禁止轉載。
0×01
2016年4月19日,習近平總書記在網路安全與資訊化工作座談會上的講話:
網路安全和資訊化是相輔相成的。安全是發展的前提,發展是安全的保障,安全和發展要同步推進。要樹立正確的網路安全觀,加快構建關鍵資訊基礎設施安全保障體系,全天候全方位感知網路安全態勢,增強網路安全防禦能力和威懾能力。
在15年阿里的安全峰會上道哥提到態勢感知,國人才開始瞭解到態勢感知,直至習大大在“4.19”上正式談到,國內的乙方的對態勢感知這一塊才下了大投入進行研發。
在談態勢感知之前,先來看個小故事。
0×02
魏文王問扁鵲:“子昆弟三人其孰最善為醫?”
扁鵲曰:“長兄最善,中兄次之,扁鵲最為下。”
魏文王曰:“可得聞邪?”
扁鵲曰: “長兄於病視神,未有形而除之,故名不出於家。中兄治病,其在毫毛,故名不出於閭。若扁鵲者,鑱血脈,投毒藥,副肌膚,閒而名出聞於諸侯。”
——《史記·鶡冠子》
這篇文言文我們小時候都學過,看不懂的話可以查下翻譯。大意即國王問扁鵲為什麼最出名?
扁鵲答說:“我長兄治病,是治病於病情發作之前。由於一般人不知道他事先能剷除病因,所以他的名氣無法傳出去,只有我們家的人才知道。我中兄治病,是治病於病情初起之時。一般人以為他只能治輕微的小病,所以他的名氣只及於本鄉里。而我扁鵲治病,是治病於病情嚴重之時。一般人都看到我在經脈上穿針管來放血、在面板上敷藥等大手術,所以以為我的醫術高明,名氣因此響遍全國。”
病情分為病前,病中,病後。同樣,安全,也分為事前,事中,事後。這次要談的態勢感知就屬於事前,事中這一階段。
0×03
想一下扁鵲的大哥是如何能夠在病人發病前就能夠剷除病因的?這種事前判斷的能力一定是基於大量治療病人的經驗的。同樣,態勢感知所要求的先驗知識也是來自以往的安全事件處置經驗以及相應的特徵,而為了更高效率地整合以往的經驗,則需要深度學習,資料探勘等技能的加持。
扁鵲的二哥治病則是在病剛發生的時候,這時候將病治好,還需要能夠判斷病情接下來會發生的情況,是加重還是自愈,會從陰性轉為陽性,亦或反之。同樣,態勢感知也有相當一部分的工作是在安全事件剛發生,比如黑客剛拿到一臺主機的許可權,態勢感知就應該能預判斷黑客後續的操作–提升許可權,橫向移動等,判斷可能發生的行為後就需要採取措施,如隔離、斷網等。
可以說,態勢感知做的就是大哥、二哥的活。
有了這個通俗的例子打基礎後,我們再看看嚴格的定義。
早在20世紀80年代,美國空軍就提出了態勢感知的概念,覆蓋感知、理解和預測三個層次。90年代,態勢感知的概念開始被逐漸被接受,並隨著網路的興起而升級為“網路態勢感知(Cyberspace Situation Awareness,CSA)”,是指在大規模網路環境中對能夠引起網路態勢發生變化的安全要素進行獲取、理解、顯示以及最近發展趨勢的順延性預測,而最終的目的是要進行決策與行動。
(1)態勢感知是瞭解當前的狀態,包括狀態識別與確認(攻擊發現),以及對態勢感知所需資訊來源和素材的質量評價。
(2)態勢理解則包括瞭解攻擊的影響、攻擊者(對手)的行為和當前態勢發生的原因及方式。簡單可概括為:損害評估、行為分析(攻擊行為的趨勢與意圖分析)和因果分析(包括溯源分析和取證分析)。
(3)態勢預測則是對態勢發展情況的預測評估,主要包括態勢演化(態勢跟蹤)和影響評估(情境推演)
0×04
概念很早就有了,為什麼產品卻在近幾年才落地呢?傳統的思維裡,只要買了防火牆,IDS等,就可以高枕無憂了。可是現在學習攻擊手段的成本越來越低,攻擊方式日趨多樣化,攻擊技術專業化(APT等),做攻防對抗研究產出的新技術不停地更迭,在現在技術背景下,最主要的一點是,會用AI的方法做攻擊,而AI只是擁有規則集,餵給它的只是資料,它是無法理解某種攻擊手段的背後究竟是有什麼樣的考慮的,以至於最終會機械演化出什麼結果我們其實是很難預測的(《哥德爾、艾舍爾、巴赫書:集異璧之大成》的作者侯世達在前段時間接受媒體採訪時也表達過類似觀點,其著作《表象與本質》也也相當篇幅的討論)。在傳統安全領域,無論是主動的威脅發現和安全防護還是被動的入侵檢測,這些基於經驗積累的靜態規則技術,總是處於被動挨打的境地,無論是精心的加密混淆還是沒有補丁的零日攻擊,大多可以輕鬆繞過現有的防護體系。這也就意味著,傳統的安全產品無法實現高度的安全防護。也正是基於這一點的考慮,個人認為,接下來將會是下一代防火牆和態勢感知平臺這兩款產品的表演時間。以毒攻毒,用AI的方法來對抗AI。
在傳統的防禦思維裡,我們會在安全事件發生之後去取證,溯源,可是對客戶造成的損失已經無法彌補,所以我們需要的在事件發生中,甚至發生前去感知到,進一步有針對性地進行防禦。
為什麼態勢感知平臺可以做到呢?因為平臺背後的專家們能夠在以前的安全事件中溯源獲取經驗,包括各種攻擊手段的特徵如可執行檔案的行為,異常的流量等;在大量資料中提取出特徵,這一工作在大資料相關技術發展之前是很難實現的,而現在可以用大資料的方法處理以前積累起來的資料;可以和其他傳統產品打通介面,通過各種資料多維度地進行準備分析,包括刻畫攻擊者畫像、攻擊路線等。甚至,通過畫像的分析,態勢感知平臺可以分析出攻擊伺服器的是一個指令碼小子,還是APT組織,如果是指令碼小子,那就由他弄好了,也不會造成什麼危害,如果是APT,則需要應急響應了。當然這些規則一方面需要專家根據經驗得出,一方面由AI來學習得出。
可見,態勢感知是一門交叉的技術,需要有傳統安全能力的支援,又需要有現代的方法進行分析、感知、預判。
具體而言需要用到哪些技術呢?
0×05
主流的態勢感知產品支撐技術都是相近的,一般而言,態勢感知產品定位為客戶的安全大腦,是一個檢測、預警、響應處置的大資料安全分析平臺。其以全流量分析為核心,結合威脅情報、行為分析建模、UEBA、失陷主機檢測、圖關聯分析、機器學習、大資料關聯分析、視覺化等技術,對全網流量實現全網業務視覺化、威脅視覺化、攻擊與可疑流量視覺化等,幫助客戶在高階威脅入侵之後,損失發生之前及時發現威脅。(摘自我司對態勢感知產品的描述)
解釋下一些關鍵名詞及其技術。
建模、圖關聯分析等涉及到演算法層面,講一些和沒講一樣,講多了,在這一篇文章裡也說不完,我後續會專門在演算法層面在寫一篇。
全流量分析,是做很多安全產品的基礎工作,因為再高階的攻擊,都會留下網路痕跡,哪怕做了混淆,或者故意模仿正常訪問,但是在大資料的建模分析下一切都會現身。為了進行流量分析,首先需要拿到流量。通過旁路映象的方法獲取網路流量,並針對已知網路協議實時解碼、元資料提取(非常用的或者私有的協議需大量資源進行分析,有時也會由於回話祕鑰的問題無法解開,而且由於出現頻率也不高,很多產品並沒有做這一步),此時可以做兩方面的工作,一是通過深度的網路會話關聯分析、資料包解碼分析、載荷內容還原分析、特徵分析和日誌分析,還原黑客的kill chain,對網路安全事件進行精準的定性分析,二是快速提取多維度的網路元資料進行異常行為建模,為後續異常資料探勘、分析、取證建立扎實的基礎。分析之後,還要儲存起來,方便查詢檢索及關聯回溯分析,實現從線索挖掘到整個攻擊過程的完整覆盤,為安全事件的準確響應提供依據。
威脅情報,主要從四個方面判斷質量,相關性,及時性,精確性,決策性,這一塊筆者接觸的也不多,也不清楚我司的產品是如何處理這一塊的,但是如果是我做的話會考慮直接從這一細分領域企業那兒接過來,或者體量較大的乙方自身在業內是有十餘年甚至數十年的積累的,也可以選擇開源威脅情報如open-threat-exchange。
UEBA,即使用者實體行為分析,與它常常一起出現的還有SIEM,SoC。先來說下UEBA,主要用於解決以下問題:賬號失陷檢測,主機失陷檢測,資料洩漏檢測,內部使用者濫用,提供事件調查的上下文等。
技術架構一般如上,可見UEBA在第一步是資料驅動的,需要從產品、日誌得到支援,然後是規則驅動,接下來是演算法驅動,最後才能儘可能準確刻畫出使用者畫像。再說說UEBA和SIEM的關係,SIEM即安全資訊及事件管理,主要是提供一種統一的路徑方法來綜合處理資料及關聯分析。由於資料量及複雜度增加,SIEM的管理能力到了天花板,這才有了UEBA。UEBA 為SIEM 資料添加了背景資訊和分析,併為實體組織的事件提供風險評分,使分析師能夠確定最高風險的優先順序。隨著技術的發展,UEBA又作為子集融合進了態勢感知產品。
視覺化,其實是為了方便客戶瞭解旗下資產安全情況而做的,將一些複雜的資料圖形化使之更容易的感知。可以直觀展示企業在全網範圍內的資產安全狀況、最新待處理威脅、風險事件、安全事件趨勢等,並運用安全評分、趨勢圖、柱狀圖、分佈圖等直觀圖形,實現視覺化展示。同時結合平臺所收集、加工、分析後的多維資料直觀檢視結果,方便安全運維人員及時發現、處理威脅,從而幫助客戶有效洞察企業所面臨的外部威脅和內部脆弱性風險,也極大的提高了安全運維團隊的監測、管理、處置安全事件的效率。
這樣子處理的初衷是對的,在統計資產時清晰明瞭,做出的報表也比較好看。但是現在幾乎每家的態勢感知平臺都會加上Biubiu圖,這在安全研究員眼裡是比較難理解的一件事。
這種打來打去的圖估計初學網路安全的人都在Norse Corporation見過,這種圖對於引起甲方購買的慾望,瞭解安全態勢確實是足夠的,但是應用於態勢感知系統我個人認為是有些過了。一來乙方設計的biubiu圖受限於資源,蜜罐的部署並不足夠支撐來顯示實際的網路狀況;二來實際中沒有足夠的證據支撐是無法表明攻擊的det,source以及攻擊手段的,沒有這些,biubiu圖也就圖一樂而已,並沒有實際價值。
另一點想吐槽的地方就是給態勢打分:
這種類似xx管家評估電腦安全程度的方法我認為照搬在態勢感知中是不可行的,因為態勢感知是實時變化而且是多維度的,很難去量化。
這算是我吐槽的兩點。
0×06
有了這些技術的支撐,落地的態勢感知產品功能都是相近的,最大的差異應該就是銷售策略了,一些乙方針對伺服器架在自己雲上的甲方,態勢感知產品是免費的;一些乙方也是免費,不過,要想發揮態勢感知的功能必須要與乙方其他的安全產品打通藉口,也其實也是變相的捆綁銷售;一些乙方就是收費的了。
好吧,扯遠了,回來繼續聊落地後的態勢感知產品具體有哪些功能。
先將基本都有的功能,包括:
態勢感知模組:圖形化感知,威脅情報,週報日報
分析模組:日誌歸併,關聯分析,影象刻畫,攻擊鏈分析,情報關聯,預警
感測模組:探針,與其他安全產品的介面
典型的架構如圖(下圖為某企業態勢感知產品宣傳圖之一,與上文提到的在層次劃分上有細小差異,基本模組就是如下):
下圖的功能是主流態勢感知產品都具備的。
此外,一些公司會加入掃描器的功能,包括主機的檢測,網站應用的檢測等;一些公司還會加入沙盒的功能,用於動態分析。這些功能,我認為是不必要的,如果按照這種開發思路,那其實所有的傳統安全產品都能納入應用分析層的子系統中,態勢感知成了大雜燴,未來可能只存在態勢感知這一款安全產品了,這當然是不現實的。
0×07
背鍋宣告:本文系本人胡言亂語,所有看法與所在公司無關,文中透露出的本人技術水平也與公司無關,希望各位大佬手下留情。
圖片版權宣告:部分圖片來源於我司及各大公司關於自家態勢感知產品的宣傳資料,為避免廣告嫌疑,不再指出來源。
參考
1.Endsley MR (1988) Design and evaluation for situation awareness enhancement [C]. In: Proceeding of the 32nd human factors society annual meeting.Human Factors and Ergonomics Society, Santa Monica, pp 97–101
2.Barford P, Chen Y, Goyal A et al (2005) Employing honey nets for network situational awareness [C]. In: Proceedings of the fourth workshop on hot topics in networks. Springer, Berlin, pp 71–102
3.席榮榮,雲曉春,金舒原等.網路安全態勢感知研究綜述.《計算機應用》,2012
4. http://bbs.sangfor.com.cn/forum.php?mod=forumdisplay&fid=101
5. https://www.mitre.org/capabilities/cybersecurity/situation-awareness
6. https://en.wikipedia.org/wiki/Security_awareness
7. https://www.researchgate.net/publication/256932621_Network_Security_Situational_Awareness
*本文作者:Yale1024,本文屬 FreeBuf 原創獎勵計劃,未經許可禁止轉載。