RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

綠盟科技發表於2019-03-11

2019年3月4日,每年一度的RSA資訊保安大會在北美如期舉行,各界網路安全專業人士齊聚舊金山,其“Better”主題詞更展示出資訊保安領域不斷提升自我能力,尋求最優解決方案的美好願望。

今年的議題仍舊涵蓋範圍廣泛,在眾多議題當中,機器學習及AI在資訊保安領域的應用仍然作為一個熱門專題,廣受關注。其中在“利用機器學習提升安全預判的準確性”的相關議題中,微軟的資深專家Bugra Karabey分享的如何把機器學習作為分析工具在安全攻擊分析中的應用切中目前機器學習在安全分析中主要發展方向,他們提出的一個場景“如何使用主成分分析聚類識別安全事件模式”引起我們的關注。

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

他們針對大規模的安全事件庫,構造了一個採用PCA聚類分析進行降維分析模型,形成安全事件資料集並識別潛在威脅,其workflow如上圖所示,其實現主要利用R語言中的ggplot2庫的PCA聚類分析,對安全事件進行分組聚類,形成不同的資料聚類模式或者說是事件之間存在不同的行為模式,在此基礎之上,有經驗的安全分析專家針對這些已經分類的資料集進行風險或威脅的關聯分析,最終從資料中獲得unknown的威脅。

這種分析思路正是基於機器學習的安全分析的最新思路。傳統的基於規則的安全威脅分析是構建於已知資料模型到已知威脅模型的構建過程,面對越來越複雜,越來越隱秘的安全攻擊方式,在需要分析的特徵維度大規模增長的情況下,是有其侷限性的,特別是在“know-unknows”方面的分析上,規則方法上就顯得太單薄了;而透過機器學習構建行為基線識別未知的異常上具備較大的優勢,但單純的機器學習透過各類聚類演算法或者神經網路的迭代學習後形成的基線去檢測出來的異常可能對客戶來說是沒有意義的,也就是沒有清晰的視角去引導客戶說明這樣一個未知的威脅是一個什麼威脅,這也是機器學習特別是聚類分析中得到分析結果的片面性,因此需要將兩者有機的結合起來,才能最終實現安全威脅分析從“know-knowns”階段到“know-unknows”階段的飛躍。

綠盟科技機器學習的應用

和微軟安全分析思路不謀而合的是,我們在過去的一段時間裡,也是在摸索中前行,形成了綠盟科技特有的機器學習+規則關聯分析構建安全威脅分析解決思路。構建出機器學習使能分析引擎-TURING引擎,並提出了將關聯分析框架構建於TURING引擎之上,透過機器學習+規則關聯分析,實現安全威脅智慧推理分析,逐步搭建出我們的安全分析從“know-knows”到“know unknows”的分析平臺。

綠盟科技將推出的TURING引擎,以模糊推理演算法、KCORE演算法、層次聚類演算法、 決策樹演算法、 DBSCAN密度聚類演算法、Kmeans聚類演算法、協同過濾演算法、孤立森林演算法等十幾種機器學習演算法為支撐,基於演算法使能框架,利用對多源資料的自適應迭代學習,實現對主機行為及使用者行為的基線構建,進一步利用構建的行為基線,進行異常行為的檢測及分析。其實現的體系架構如圖所示:

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

機器學習的過程並不是一蹴而就的。業務在使用一段時間後其質點可能在偏移,資料樣本的大小,學習時聚類半徑引數或者梯度設定不合理等都會影響到學習結果(基線)的準確性,導致訓練結果的過擬合(Over-fitting)或者欠擬合(underfitting),因此我們提供互操作手段在學習中調整學習引數的靈敏度、透過信任操作提升學習精準度,不斷迭代深度學習,最終獲得客戶認可的行為基線。

針對應用的場景的不同,我們將TURING引擎演算法庫分為三大部分:

  • 檢測類演算法:透過對歷史資料的學習、得到歷史操作行為習慣和基線,為後續發生的行為做匹配使用;
  • 預測類演算法:透過歷史資料的學習預測未來可能產生的行為,做出相應的預測和預警;
  • 關係圖演算法:透過歷史資料的學習挖掘出資料間的潛在聯絡,如相同程式在網路中的分佈情況判定異常程式、主機訪問關係、使用者訪問關係判定訪問異常等。

在對演算法的使用的時候,並沒有特別嚴格清晰的使用邊界,需要根據具體情況,選擇合適的演算法。以異常登入行為識別為例,我們則是採用了以登入行為質心,提取當前行為多個屬性作為其演算法特徵維度,採用DBSCAN演算法對登入行為進行聚類,對於特徵維度中語義型特徵,我們採用語義相似度演算法構建字典的方式,解決了語義相關性問題,實現語義型特徵完全離散化下的歐式距離的量化過程。並最終實現登入行為相似度的聚類過程。

在實驗室的測試中,我們取得了良好的測試效果。同時,我們以某客戶的真實環境為實驗局,在資料樣本有限的情況下,發現暴力破解、密碼洩露及高頻次異常提權等各種異常行為,得到客戶對分析結果的認可。

基於以上能力,綠盟科技推出的TURING引擎具有以下幾大優勢:

  • 透過聚類及相似度模型構建已知可信行為庫,透過海量資料篩選出可能和已知的攻擊行為或者攻擊特徵相關的新生威脅,彌補規則對複雜場景構建的短板
  • 對於不斷更新及偏移的業務模型,自動進行迭代學習過程,有效降低日常對規則不斷調整的工作量,提升應對複雜安全場景檢測的靈活性
  • 內建支援的異常行為識別如非法檔案上傳行為識別、安插後門非法程式識別、非法檔案下載識別、許可權提升行為識別、異常登入行為識別、異常登入行為識別及非法檔案刪改識別等,涵蓋使用者在資料洩露、資料破壞或者APT攻擊中形成的行為鏈中關鍵異常行為,並從主機或者使用者視角關聯關聯這些關鍵行為鏈,可以有效識別各類主機及使用者的重大安全威脅場景。
  • 利用多達十幾種的演算法庫,支援安全分析人員互動式選擇資料來源、選擇分析的特徵維度、選擇特定演算法進行迭代學習,實現基線構建。
  • 透過多種演算法的交叉驗證及引入多演算法的決策機制,提升安全威脅場景的檢測準確率,有效降低威脅誤報率
  • 支援跨平臺部署,實現面向不同產品分析的應用。

對於基於TURING引擎檢測出來的異常行為,進一步利用綠盟科技已經推出的基於Flink的安全威脅關聯分析框架,實現以主機視角或者使用者視角對各類安全威脅場景的時序關聯,形成客戶可辨識的使用者安全威脅場景及主機安全威脅場景。

TURING分析引擎支援的業務場景

目前TURING引擎內建支援的安全分析場景包括資料洩露場景、資料破壞場景、使用者異常訪問、內網業務程式訪問關係異常、便攜儲存裝置檢測及敏感檔案外拷、隱秘通道外傳、及各類APT攻擊場景的識別,包括Target信用卡資訊洩露、挖礦佔用計算資源、震網攻擊、極光行動、水坑攻擊等。下面就TURING引擎支援的安全分析場景進行簡要的說明。

1、內網資料洩露/資料破壞場景

在傳統的安全邊界防護已經完備的情況下,一直以來困擾企業客戶的安全問題就是企業內網的橫向攻擊、資料洩密及資料破壞場景無法有效檢測。

綠盟科技提供的TURING引擎可以利用原始的歷史資料提供的使用者資訊、IP地址段資訊、時段資訊、檔案型別、檔案大小、檔案路徑等,透過一系列機器學習演算法構建使用者的檔案上傳/下載/刪改的基線,基於基線進行檢測併產生異常,再利用關聯分析框架以使用者視角呈現某使用者是否在進行資料的竊取或資料破壞;以主機視角呈現某一主機正在遭受資料被竊取或者被破壞。

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

2、內網程式訪問關係

內網的橫向攻擊常常是由於內網中某臺主機已經被攻陷的情況下,被安裝了非法後門軟體,非法後門軟體發起一系列橫向攻擊、非法外聯、藉助於隱秘通道外聯,或者進行比特幣挖礦導致CPU消耗異常等。

利用綠盟科技提供的TURING引擎,基於伺服器及主機提供的程式執行日誌資訊等,利用機器學習演算法,構建程式執行基線及和周邊關係基線等,當任何非法程式啟動駐留,並試圖進行相應的內網橫向攻擊,非法外聯,透過非法程式構建隱秘通道外傳,或者是挖礦導致的CPU異常佔用,都可以利用TURING引擎檢測出來。

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

3、APT攻擊場景-挖礦佔用計算資源

近年來,隨著區塊鏈經濟的快速發展,圍繞虛擬數字貨幣的病毒和木馬十分常見。挖礦病毒肆虐,對計算資源造成巨大浪費,嚴重影響正常業務的展開。由於該種攻擊追究成本高,且無需投入大量成本即可獲得利潤,目前逐漸劫持計算資源的“挖礦”行為,有愈演愈烈的趨勢。挖礦攻擊行為鏈主要表現為:首先利用弱口令等漏洞登入至伺服器,然後進行非法提權操作,在提權成功後,從遠端伺服器下載惡意指令碼並執行產生異常進行,而挖礦過程將導致大量的計算資源被佔用,並在此基礎上收集周邊網路資訊,將指令碼擴散到周邊機器。

TURING引擎則可以將關鍵的異常行為鏈捕獲:異常登入à非法提權à非法上傳à異常程式àCPU佔用異常等,並以使用者視角呈現完整的異常行為鏈

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

4、APT攻擊場景-震網攻擊

震網(Stuxnet),指一種蠕蟲病毒。它的複雜程度遠超一般電腦駭客的能力。這種震網(Stuxnet)病毒於2010年6月首次被檢測出來,是第一個專門定向攻擊真實世界中基礎(能源)設施的“蠕蟲”病毒,比如核電站,水壩,國家電網。

“震網”病毒利用了微軟Windows作業系統之前未被發現的4個漏洞。“震網”病毒透過內部人員的隨身碟進入內網系統,利用相關漏洞順利滲透到內部專用網路中,並在內網交叉傳播。這也正是傳統攻擊的弱項。

攻擊行為鏈主要表現為:首先利用郵件入侵工程人員外網計算機,然後自動檢測隨身碟插入,並將惡意程式碼複製到其中,當隨身碟插入到內網電腦時,觸發MS10-046漏洞,感染內網計算機,並在內網間傳播。

TURING引擎可以將震網攻擊關鍵的異常行為鏈捕獲:隨身碟插拔à隨身碟檔案複製à異常檔案上傳à異常程式à異常檔案上傳à其他主機異常程式等,並以使用者視角呈現完整的異常行為鏈

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

5、APT攻擊場景-極光行動

極光行動或歐若拉行動是2009年12月中旬發生的一場有組織的網路攻擊。其背景為Google的一名僱員點選即時訊息中的一條惡意連結,最後引發了一系列事件導致這個搜尋引擎巨人的網路被滲入數月,並且造成各種系統的資料被竊取。這次攻擊以Google和其它大約20家公司為目標,它是由一個有組織的網路犯罪團體精心策劃的,目的是長時間地滲入這些企業的網路並竊取資料。

針對類似於極光行動這樣的攻擊過程,TURING引擎可以將攻擊的關鍵異常行為鏈捕獲:非法上傳à異常程式執行à程式異常外聯à異常登入等行為,並以使用者或主機視角呈現出完整的異常攻擊行為鏈,方便安全分析員進一步的分析並採取響應。

RSA 2019觀察:機器學習演算法分析引擎 助力安全威脅推理分析

結束語

目前我們把機器學習應用於安全分析場景中是一次有益的嘗試,隨著AI技術快速發展,機器學習及神經網路技術在安全分析領域的應用,我們相信後續更多的AI技術將被應用到資訊保安領域,但我們始終要記得的是,AI及其基礎的機器學習演算法既不是魔杖,也不是水晶球,我們不能把安全分析的所有能力都完全寄託在人工智慧演算法上,只有將其和安全專家的經驗有效的相結合,才能最終迸發出它智慧的光芒。

相關文章