初探網絡安全智能決策

2020-07-21
引言
事件響應是企業網絡安全團隊的重要工作內容之一。安全設備每天會產生海量告警,安全分析人員需要找出高危告警,并對這些告警進行分析和追蹤溯源,做出合適的處置操作。事件響應的復雜性和專業性導致了低時效性。在日益復雜的網絡環境中,分析人員決策結果的合理性也往往存疑。因此根據當前網絡環境做出快速的、合理的決策是每個安全公司需要思考的問題。本文以自動駕駛領域的決策方法做類比,介紹在網絡安全領域做出智能決策的大體路線、條件約束和研究問題。
一、背景
網絡安全已經逐漸滲透到生活的方方面面,其重要性已逐漸凸顯。就目前的網絡防御手段而言,大體逃不過兩種方式,一是在軟件開發階段引入各種規范,加強系統的安全性,減少攻擊面;二是通過縱深防御的方式在網絡的各個層面加強安全性,如:加密、訪問控制、防火墻、入侵檢測等等。然而這種靜態的防御方式已經滿足不了日益復雜的網絡環境。
一方面人工防護手段如軟件測試、滲透測試、補丁部署、安全事件分析等等,這些手段的時效性較低,跟不上攻擊者的攻擊速度;另一方面企業龐雜的網絡環境和設備產生的海量數據,人力已無法詳盡分析,做出的決策往往有局限性。因此現代企業需要更高級的防護手段。為了解決上述防護手段的時效性和人力的局限性問題,我們提出安全智能決策的概念,期望自動化實現事件響應的流程,提高時效性,并使用大數據分析的手段對當前網絡進行建模分析,做出更加合理的決策。
安全智能決策的目標為根據當前的網絡環境以及歷史經驗,在一定時間內,實現對當前事件的響應。
做出決策的過程與對事件的認知息息相關。在認知理論中,人的認知系統包含兩個子系統,如圖1所示:子系統1是直覺系統,主要負責快讀、無意識、非語言的認知,比如當人被問到一個問題的時候,可能下意識的或者說習慣性的回答,這就屬于子系統1的范疇,深度學習主要就在做子系統1的事情;子系統2是邏輯分析系統,代表認知智能,是有意識的、帶邏輯、規劃、推理以及可以語言表達的系統,人在通過子系統2處理問題的時候,往往要收集相關數據、進行邏輯分析和推理,最終做出決策。
圖1、人類認知的兩個子系統[3]
符合上述的決策流程且已經落地并逐漸成熟的行業,自動駕駛當屬一例。圖2為典型無人駕駛車輛的系統架構[15],從技術角度看,現階段的單車智能可以簡單的理解為環境感知、決策規劃和控制執行三大模塊。
第一個模塊為環境感知模塊,該模塊作為其他部分的基礎,是實現自動駕駛的前提條件,起著人類駕駛員“眼睛” “耳朵”的作用。感知技術是利用攝像機、激光雷達、毫米波雷達、超聲波等車載傳感器,以及V2X和5G網絡等獲取汽車所處的交通環境信息和車輛狀態信息等多源信息,為自動駕駛汽車的決策規劃進行服務;
第二個模塊為決策規劃模塊,該模塊綜合環境及車信息,使無人車產生安全、合理的駕駛行為,指導運動控制系統對車輛進行控制,行為決策系統是狹義的決策系統,其根據感知層輸出的信息合理決策出當前車輛的行為,并根據不同的行為確定軌跡規劃的約束條件,指導軌跡規劃模塊規劃出合適的路徑、車速等信息,發送給控制層;
第三模塊為控制執行模塊,該模塊是自動駕駛汽車行駛的基礎,包括車輛的縱向控制和橫向控制??v向控制,即車輛的驅動與制動控制,是指通過對油門和制動的協調,實現對期望車速的精確跟隨,橫向控制,即通過方向盤角度的調整以及輪胎力的控制,實現自動駕駛汽車的路徑跟蹤。不難看出,決策規劃模塊通過融合對環境的理解、車輛自身狀態的了解將決策步驟一步步分解,從而最終指導汽車做出合理的行駛動作,該模塊也是體現無人駕駛汽車智能化的核心所在。
圖2、典型無人駕駛車輛系統架構
從自動化程度看,國際汽車工程師協會(SAE International)將汽車的自動化程度分為6級[1],如圖2所示:0級代表了所有駕駛操作都是人類負責的車輛;1級包含基礎駕駛協助,如防抱死制動系統;2級包含高級協助,如風險最小化縱向控制(通?;诳刂评碚搧碛嬎愦嬖陲L險的狀態集合);3級代表有條件的自動化,必要時候無人車需要人控制;4級表示無人車能在某些環境下可以完全自動化;5級則是完全自動化。根據自動駕駛公司Momenta的報道[2],該公司目前已經實現L4級自動駕駛。
圖3、自動駕駛的SAE-J3016分級標準
類比自動駕駛的自動化程度,在網絡安全領域,大量的安全產品(如蜜罐、IDPS、威脅情報等)極大地提高了我們對安全的感知能力,即自動駕駛中的“感知”模塊;另一方面,自從2017年Gartner提出持續自適應風險與信任評估(Continuous Adaptive Risk and Trust Assessment, CARTA)技術[4]以來,CARTA作為新一代網絡安全的戰略方法而備受矚目,在CARTA技術框架中,很重要的一點就是“自適應響應”, SOAR(Security Orchestration,Automationand Response)在這種背景下被提出,通過編寫Playbook腳本,將傳統需要人工進行的響應操作自動化,完成了“控制”模塊的功能。“感知”和“控制”模塊都有對應的產品出現,而“決策”領域的研究還處于初級階段。
總結來說,目前安全產品中已經有SOAR完成“駕駛操作”,有各種感知產品完成“周邊監控”,只是缺乏智能決策部分對網絡防御系統進行“接管”,姑且可以認為網絡安全防御的自動化程度已經或者即將到達L3水平,因此不難得出結論:L4水平的安全智能決策已初具落地條件。
二、安全智能決策 vs自動駕駛決策
自動駕駛與網絡安全領域存在極大的相似性,兩者對于安全和實時性的要求都比較高,同樣需要根據環境和要求的不同做出相應決策。本部分以自動駕駛領域的技術路線為引導,探討安全智能決策的大體框架,并且分析兩者的差異。
決策規劃模塊不僅僅是目前自動駕駛領域的智能化體現,也是實現L5級自動駕駛的主要瓶頸。實際上,決策規劃模塊的架構層次被研究多年,不同機構對其分解也略有不同,根據[16]的總結,2000年后的主要機構和公司在決策規劃層上所采取的架構層次如圖4所示,不難發現,不論如何進行分類,其架構層次基本符合“戰略+戰術+操作”的邏輯,在本文中,我們采用[10]中所采用的對決策規劃模塊細粒度的劃分方法,如圖5所示,這三個層次分別為:
· 全局路徑規劃(routeplanning),在接收到一個給定目的地后,結合地圖信息生成全局路徑。
· 行為決策層(behaviorallayer),在接受到全局路徑后,結合從環境感知模塊得到的環境信息(其他車輛,行人,障礙物和路上的交通規則信息),做出具體的行為決策(如變道超車,轉彎等)。在一些文獻中,該層有時候也被稱為“behavioral planning”
· 運動規劃(motion planning),根據具體的行為決策,規劃生成滿足特定約束條件(如車輛動力學約束、乘客舒適性)的軌跡,該軌跡作為控制與執行模塊的輸入決定車輛最終的行駛路徑。
圖4、決策規劃模塊的架構層次總結
圖5、決策規劃模塊分層[10]
總結下來,自動駕駛領域中決策功能在領域內被稱之為決策規劃模塊,典型的分類方法將其分解為3層,分別行使在“戰略+戰術+操作”上的決策,詳細見圖6。
圖6、自動駕駛中的決策規劃模塊分解
類似于自動駕駛,如果將其整體流程看作一種自動化網絡防御體系的話,其中安全智能決策同樣為核心功能,如圖7所示,安全智能決策需要在對環境感知的基礎上,如:IDPS感知網絡側威脅,EDR感知終端側威脅,威脅情報在云端提供全網威脅感知,根據當前的網絡環境,確定防護策略,最終交由執行模塊去執行相應的策略。安全智能決策模塊與網絡環境的交互模型如圖8所示。
圖7 、安全智能決策與自動駕駛決策關系對照圖
圖8,安全智能決策模塊與網絡環境的交互模型
雖然網絡安全和自動駕駛兩個領域在大方向上相似,但是細節上還有很多不同的地方,這些不同會對安全智能決策的落地產生較大影響,主要有以下幾點:
1. 在環境感知上。自動駕駛領域借助人工智能技術、精確定位技術,已經可以非常準確地捕捉車輛自身和周邊環境信息,而這種精準感知技術也是做出決策與規劃的重要依據,然而在網絡安全領域,雖然我們有眾多的網絡防護設備,但是對網絡環境的觀察能力依然存在不足,安全設備誤報漏報的現象依然十分普遍,這與安全本身這種“攻防博弈”的本質是分不開的,因此從理論上來說,該問題無解,這對決策提出了較大挑戰。
2. 在決策與規劃上。由于攻防博弈的存在,網絡安全領域的動態性更大,隨著各種新技術的興起,如5G、物聯網等,網絡安全的場景更加復雜,對應的動作空間和狀態空間更大,任務分解更為復雜和困難,這一點同樣對決策提出了挑戰。
3. 數據采集上。自動駕駛可以進行大量模擬采取數據,而且數據的也可以打出明確的標簽,數據在質量和數量上都有保證,但是安全領域中,真正的攻擊往往極少,也缺乏標簽,真正有質量的數據很難獲取,數據驅動的方式很難落地。
4. 因此,自動駕駛對安全智能決策有一定的借鑒意義,但仍需要專業領域內的定制化處理。
三、安全智能決策功能解耦
3.1名詞解析
何為安全智能決策?我們將該問題分解為3個名詞“安全”、“智能”和“決策”。
“安全”指的是在網絡安全領域,因此“安全智能決策”也可稱為“網絡安全智能決策”。
“智能”這個詞很寬泛,在網絡安全中,我們認為智能體現在能夠綜合各方面的因素,給出更全面的判斷,具備“快速處理”和“自主學習”這兩種能力,例如:當一個網絡設備產生告警后,可以根據告警的產生原因、可能造成的影響、被攻擊資產的重要性、攻擊者能力等因素全面刻畫該告警的風險值,進而對該告警進行快速處理,并且學習本次事件的處理經驗。
“決策”實際上與智能科學息息相關,參考[17]決策的表述:“智能科學在這兩個方面均取 得了長足的進步與發展。一方面,以機器學習,計算機視覺和語言為代表的學科分支,極大的提高了機器預測與推理的準度與精度,提高了思考能力;另一方面,以搜索、博弈和強化學習為代表的學科分支,以認知與推理為輸入進行建模,優化智能體的決策,從而提高了行動能力”,我們可以知道機器學習解決認知、推理問題,“決策”以這些認知和推理為輸入,進行行動。
總結來說,安全智能決策的定義為:在網絡安全場景下,對告警或事件進行深入認知和推理,綜合方面信息的進而采取相應動作的過程。
3.2安全智能決策整體框架
提出框架之前,我們來看看針對安全事件的處理方式。一般來說,遇到安全設備產生的告警后,安全人員首先會對告警進行詳細的評估,判斷是否為真正的網絡攻擊。如果是真正的攻擊就要采取相關的措施,根據攻擊者攻擊目標重要程度的不同,采取的響應動作也不盡相同。處理完當前攻擊事件后,需要進行攻擊溯源,找出攻擊者和攻擊路徑,并且對受害主機采取相應的恢復操作。最后,會對攻擊事件進行記錄總結,在防護設備添加對應規則。
上述操作其實就是事件響應的一般流程,可以看到,事件響應實際上可以分解為兩部分:1. 緩解當前攻擊造成的損失;
2. 完成事后補救。實際上,要做出相對完善的決策,對于事件的評估和一定的預測也是非常重要的,例如,在自動駕駛中,做出當前汽車的動作之前,還要預判行人和其他汽車的運動軌跡,這一點往往是事件響應中缺失的一環。在網絡安全中,將來狀態的影響非常重要,很多高級威脅也是在后期實施破壞性操作,因此,對于將來事件的預測或者說潛在風險的評估對于決策來說必不可少。安全智能決策從總體功能上來說基于事件響應卻高于事件響應,包含事件預測功能。
總結來說,安全智能決策包含事件響應的操作具體有:
1. 攻擊理解,判斷攻擊正在進行還是網絡已經被攻陷,如果是正在進行,則需要進行攻擊緩解,如果網絡已經被攻陷,如:攻擊者正在進行隱私數據回傳,那么在切斷通信的同時,還需要進行攻擊溯源,找出被感染的機器,修補漏洞,清除木馬;
2. 執行策略,根據攻擊理解的結果,結合當前網絡環境、防御成本等因素,確定最終要執行的動作。
更進一步,由于事件響應對于告警的處理是不完善的,事件響應中獲得的經驗一般是固定成防護設備的規則,但是當這樣的經驗逐步累加之后,攻擊模式便可以構建了,如MITRE公司提出的ATT&CK模型,洛克希德-馬丁公司提出的Kill-Chain模型等,并且借助深度學習強大的預測能力,針對一些攻擊,我們可以預測攻擊者下一步的攻擊方式和攻擊目標,從而進行主動防御,我們將之稱為攻擊預測。攻擊預測和攻擊溯源統稱為攻擊推理,其中攻擊溯源為前向推理,攻擊預測為后向推理。
綜上所述,安全智能決策部分的功能解耦如圖10所示,其中圓形代表數據模塊,方形代表功能模塊,實線代表正向數據流,虛線代表反向數據流。
安全智能決策模塊首先對待處理的告警或事件進行攻擊理解,借助已有的知識庫了解當前攻擊的階段、嚴重程度等等,借助原始日志和全流量等數據進行攻擊溯源,得到更多被感染的機器,并且利用提前建立的預測模型,預測下一次攻擊事件的類型和嚴重程度,通過攻擊理解模塊,可以獲取對當前攻擊事件的完整刻畫,包括當前事件、由當前事件引起的其他事件已經將來可能發生的事件,即得到戰略層面的信息;
行動決策模塊接收攻擊理解模塊對當前攻擊的攻擊刻畫,結合當前環境信息、決策目標、決策知識庫做出防護策略,如:對IP192.168.0.1進行封堵,及戰術層面的決策;動作執行模塊則需要根據實際的機器、網絡等給出具體可行的操作,如,IP為192.168.0.2的IPS機器對192.168.0.1的DNS報文進行封堵。
最后具體的行動由SOAR來完成,完成相應的動作后,需要利用一定手段對動作的有效性進行評估,評估的結果會影響智能決策模塊作出下一步的決策行動。另外整個決策模塊全程需要各種類型的攻擊知識庫做支持,如:ATT&CK模型,Kill-Chain模型,CVE漏洞庫等等。
圖9、安全智能決策功能結構圖
值得一提的是,要實現上述功能,不光需要各種決策算法支撐,還需要很多外部條件,我們把外部條件分為兩種:靜態外部條件和動態外部條件。靜態外部條件包括攻擊者的有關知識庫和決策知識庫,根據MITRE公司的ATT&CK模型,攻擊者的攻擊往往遵從一定的框架,所使用的漏洞也往往被各種漏洞庫所收集,這些信息供決策系統對攻擊者有系統認知,另一方面,決策算法需要決策知識庫去學習各種不同環境下對應的處置操作,而動態外部條件為企業自身所處的環境,如:對資產的重要性評估,脆弱性評估等,這些信息提供決策系統對保護對象的系統認知。
3.3核心決策算法
該部分為上一小節中的行動決策模塊,決策的基礎建立在對攻擊的理解能力、自身的脆弱性評估兩方面上,在某些特定場景下,決策的最終目標也可以作為輸入的一部分,我們稱之為“決策目標”,根據這些信息,我們可以計算出當前攻擊在特定網絡中的整體風險,結合決策目標和決策知識庫,行動決策會給出具體的防護策略。
決策算法,可簡單可復雜,隨問題的復雜程度而定,由于在網絡安全中,我們無法做到對環境信息的100%感知,總有威脅我們無法發現,因此決策算法遇到的最大困難是在存在感知不確定性,由于不確定性的存在,決策算法往往也是各行各業做出決策的核心瓶頸所在。決策算法一般有如下4類:
l 有限狀態機模型
有限狀態機模型是決策算法中最常用的模型,通過定義不同的狀態,構造狀態之前的轉移關系,再構建有限的有向聯通圖將這些狀態和轉移關系聯系起來,從而可以根據狀態的遷移反應式的生成決策動作。
有限狀態機模型簡單、易行,是無人駕駛領域目前最廣泛的行為決策模型,但是該類模型忽略了環境的動態性和不確定性,當場景特征較多、狀態的劃分和管理比較復雜時,往往難以勝任。
l 決策樹模型
該模型與狀態機模型類似,也是通過當前的狀態屬性值反應式地選擇不同的動作,不同是該類模型將狀態和控制邏輯固化到了樹形結構中,通過自動向下的“輪詢”機制進行策略搜索。該類模型需要針對每個場景定義決策策略,當狀態空間、行為空間較大時,控制邏輯會比較復雜,同時也無法考慮各種不確定性因素。
l 基于知識的推理決策模型
基于知識的推理決策模型由“場景特征-動作”之間的映射關系來模仿行為決策過程,該類模型將決策知識存儲在知識庫或者神經網絡中,決策知識主要表現為規則、案例或場景特征到動作的映射關系,該模型通過“查詢”機制從知識庫或者訓練過的網絡結構中推理出決策動作。
該類模型對于先驗知識、訓練數據的依賴性較大,需要對各種決策知識進行精心梳理、管理和更新,雖然使用神經網絡可以節省部分問題,但是缺點也很明顯:1.其數據驅動的機制導致對數據依賴性大,2.可解釋性差,在實際系統中無法進行追溯,難以發現問題的根本原因。
l 基于價值的決策模型
根據最大效用理論,基于效用/價值的決策模型的基本思想是依據選擇準則在多個備選方案中選擇出最優的動作,為了評估每個動作的好壞程度,該類模型定義了價值函數,根據某些準則屬性定量地評估策略符合任務目標的程度,對于網絡安全而言,這些屬性準則可以是安全性、經濟成本、人力成本等等,也可以是組合策略,這也是前文所述的“決策目標”的設定原因。
四、已有工作
經過第3小節對安全智能決策功能的分析可以發現,總體上,安全智能決策要實現從攻擊理解到最終響應策略確定的一整套流程,我們整理了一些典型工作供讀者參考。
當前事件理解:[5]關聯攻擊告警,將關聯結果映射到ATT&CK模型,提供對攻擊的高層認知。
攻擊推理:[6]利用深度學習的方法預測下一步攻擊事件,[9]通過分析機器上的二進制文件預測下一步可能被攻擊的機器,[7]對終端數據構造圖結構進行攻擊路徑還原。
有效性評估:[8]一書中涉及到防御行為有效性評估的方法。
行動決策:根據前一小節的介紹,行動決策在自動駕駛領域有較多成型算法,如基于部分可觀馬爾可夫過程(POMDP)的行為決策模型[11],基于價值函數的行為決策模型[12],使用博弈論模型解決多智能體參與的復雜環境中的決策問題[13],基于深度強化學習的動作生成方法[14]。
五、總結
本文以自動駕駛為例,分析安全智能決策研究的可行性和必要性,提出安全智能決策研究的總體框架,該框架大部分的研究工作已在同步進行,如有興趣,可持續關注綠盟科技的官方公眾平臺動態。
參考文獻:
[1] 淺談機器學習在自動駕駛中的應用.https://www.aminer.cn/research_report/5cf6211900eea1f1d521d75d?download=false
[2] Momenta發布L4級自動駕駛MSD,兩條腿戰略雛形形成.https://www.momenta.cn/article/46.html
[3] Yoshua Bengio在NeuIPS 2019的報告.https://drive.google.com/file/d/1zbe_N8TmAEvPiKXmn6yZlRkFehsAUS8Z/view
[4] Gartner 2020年10大戰略技術趨勢分析.https://www.gartner.com/smarterwithgartner/gartner-top-10-strategic-technology-trends-for-2020/
[5] Milajerdi, Sadegh M., et al. "Holmes: real-time apt detection through correlation of suspicious information flows." 2019 IEEE Symposium on Security and Privacy (SP). IEEE, 2019.
[6] Shen, Yun, et al. "Tiresias: Predicting security events through deep learning." Proceedings of the 2018 ACM SIGSAC Conference on Computer and Communications Security. 2018.
[7] Hassan, Wajih Ul, Adam Bates, and Daniel Marino. "Tactical Provenance Analysis for Endpoint Detection and Response Systems." Proceedings of the IEEE Symposium on Security and Privacy. 2020.
[8] Jajodia, Sushil, et al., eds. Adversarial and Uncertain Reasoning for Adaptive Cyber Defense: Control-and Game-theoretic Approaches to Cyber Security. Vol. 11830. Springer Nature, 2019.
[9] Bilge, Leyla, Yufei Han, and Matteo Dell'Amico. "Riskteller: Predicting the risk of cyber incidents." Proceedings of the 2017 ACM SIGSAC Conference on Computer and Communications Security. 2017.
[10] Paden B, Cap M, Yong S Z, et al. A Survey of Motion Planning and Control Techniques for Self-Driving Urban Vehicles[J]. IEEE Transactions on Intelligent Vehicles, 2016, 1(1): 33–55.
[11] Bai, Haoyu, et al. "Intention-aware online POMDP planning for autonomous driving in a crowd." 2015 ieee international conference on robotics and automation (icra). IEEE, 2015.
[12] Wei, Junqing, et al. "A behavioral planning framework for autonomous driving." 2014 IEEE Intelligent Vehicles Symposium Proceedings. IEEE, 2014.
[13] Martin, Andrea. "Interactive Motion Prediction using Game Theory." (2013).
[14] Vitelli, Matt, and Aran Nayebi. Carma: A deep reinforcement learning approach to autonomous driving. Tech. rep. Stanford University, 2016.
[15] 熊璐,康宇宸,張培志,朱辰宇,余卓平. 無人駕駛車輛行為決策系統研究[J]. 汽車技術,2018(08):1-9.[16] 陳永尚. 智能汽車城區復雜交通情景的駕駛行為決策方法研究[D].吉林大學,2019.[17] 唐平中,朱軍,俞揚,湯斯亮. 動態不確定條件下的人工智能[J]. 中國科學基金,2018,32(03):266-270.