在企業資安防護的領域,對於進階持續性威脅(APT)這類惡意程式的關注,起於2010年的Stuxnet,2011年的Duqu,以及2012年的Gauss、Flame、miniFlame,至今已發展出將近70種APT,面對未來勢必不斷演化、變種的進階威脅,我們該怎麼辦?

認識進階威脅的樣貌,才能對症下藥

卡巴斯基實驗室(Kasperskay Lab)威脅研究副總裁Timur Biyachuev指出,企業若要妥善因應個種進階威脅,首先要了解這類威脅的性質差異。因為,依照不同攻擊階段及目的,進階威脅本身可區分為多個類型,並非每一種都會立即造成傷害。

例如,有些程式會負責收集資料,或是策略準備,有些是傳遞指令或攻擊彈頭,有些負責快速執行,有些是掩蓋攻擊動作,不造成任何驚擾。

若以攻擊步驟來看,進階威脅處於完成攻擊準備、傳遞攻擊彈頭的階段時,系統可能運用非惡意軟體來進行加密與隱藏式傳輸;在橫向移動(lateral movement)的階段,攻擊程序可能隱藏在正常的活動當中,就算趁機擷取帳號密碼,系統往往也無法發現異常,因為並未冒犯到任何保護機制;而在最終破壞與離開攻擊目標的階段,惡意程式往往也會懂得隱藏自身的蹤跡、抹除相關事件記錄,甚至留下一個後門。

除此之外,我們對於進階威脅的掌握與了解程度,也有所不同,Timur Biyachuev認為,可分為下列三種:完全已知的威脅、部分已知的威脅、未知的威脅,所以,因應這些威脅的方式也不能一概而論。

舉例來說,面對完全已知的威脅,我們可以運用預防系統的概念,可運用端點防護系統的產品,達到事前避免威脅的效果,過程可做到全自動化進行;若是處理部分已知的威脅,則需要運用偵測系統的概念,需混合使用自動化偵測與手動檢查的方式來找出威脅;因應未知的威脅時,要用到威脅獵捕(Threat Hunting)的概念,會以手動操作的部份為主。而處理後兩者的資安產品搭配上,就需要用到進階威脅偵測與服務的解決方案。

在進階威脅開始傳遞到攻擊目標之際,若要做到先期預防,Timur Biyachuev認為,還有三個時機可以好好把握,那就是在端點電腦的記憶體遭到操控之後,首先,是正準備利用系統或應用程式漏洞滲入的階段,其次是接踵而來的殼層程式碼(Shell Code)執行階段,第三則是之後的攻擊彈頭初始執行階段。我們皆可運用所謂的自動預防漏洞利用(Automatic Exploit Prevention,AEP)的機制,來提供相關保護。

採用多層式機器學習技術,讓防護能夠變得更精準

在現行的端點與網路安全系統當中,各家廠商早已陸續導入多層式防護,以卡巴斯基本身的產品為例,總共有7層的控管把關,首先是特徵碼、遮罩、雜湊值的比對,提供最快速、最可靠的惡意軟體偵測技術;第2是啟發式掃描,主要根據雙位元碼與指令碼模擬器執行程式碼的記錄而成,可對抗網頁威脅;第3是典型的例行偵測,可讓資安廠商的專家寫入程式碼、並傳至用戶端,可搭配勒索軟體的解密器與合法封裝的拆解器;第4是在用戶端採行可普遍適用的機器學習模型,協助預防偵測未知威脅的失準,可因應特徵碼資料庫無法更新長達兩個月以上的情況。

第5是雲端偵測,運用資安廠商從所有用戶端收集的威脅數據,來因應新出現的威脅,以及降低誤判率;第6是基於執行記錄的啟發式掃描,以及自動預防漏洞濫用行為(AEP)──前者可直接針對「現行犯」來進行偵測與防禦,能在可疑處理程序造成影響之前,先行備份資料,並且透過自動復原的方式,「中和(neutralize)」已知惡意軟體的衝擊;第7是運用執行記錄來進行深度學習,也就是,利用檔案的即時行為分析,建立深度學習模型,以便透過最小量的指令分析,即可偵測檔案是否帶有惡意,就算模型很久沒有更新,這種作法還是能提供高偵測率。

除了上述7種層次的防護,Timur Biyachuev表示,他們近期又發展出多層次的機器學習技術(Multilayered Machine Learning)能在雲端和用戶端,針對檔案的執行前及執行後的階段,進行大數據、機器學習與專家的分析。

在處理過程當中,卡巴斯基也會運用多種技術,像是決策樹的合奏(Decision Tree ensemble)、局部性敏感雜湊(Locality sensitive hashing)。

除此之外,他們還有許多特有的技術,像是適應性異常控制(Adaptive Anomalies Control)、目標式攻擊分析器(Targeted Attack Analyzer),以及進階沙箱。


Advertisement

更多 iThome相關內容