安芯網盾CTO姚紀衛解析記憶體保護技術與行為檢測如何發生“化學反應”?

安芯網盾發表於2022-09-16

近日,“記憶體安全關鍵技術發展趨勢與應用實踐技術研討會”順利舉行,安芯網盾CTO姚紀衛進行了以“記憶體保護技術在攻擊行為鏈檢測中的應用”為主題的精彩分享。

一、基於行為鏈的檢測技術是如何發展而來的?

當前,針對威脅或攻擊的檢測技術有5種,分別是特徵碼查殺技術、啟發式防毒、主動防禦、AI防毒和攻擊行為鏈檢測。

特徵碼和啟發式是較早期的檢測技術,針對已知威脅有較高的檢出率,但是隨著現在的高階威脅和惡意攻擊者越來越多、攻擊手段越來越先進,傳統技術出現了一些侷限性,比如存在較嚴重的滯後性;主動防禦和AI檢測技術也對威脅檢出有一定效果,但是檢測依據比較單一,在B端對誤報處理比較困難。

現在,基於攻擊行為鏈的檢測技術是威脅檢測的主流思路。基於行為鏈的檢測技術是不依賴特徵碼檢測系統後門,而是根據各種行為(如程式行為、網路行為、檔案行為)資料,並對這些資料進行分析,最終發現威脅並告警和響應。目前雖然行業內每個廠商採用的技術並不完全相同,但是大家都開始意識到基於行為檢測的重要性,這種思路和EDR、XDR也有相似之處。

為什麼要做基於行為鏈的檢測?

· 現在惡意程式碼海量增加,特徵數量龐大,且傳統檢測方式滯後性明顯;

· 大規模攻擊、APT攻擊湧現,攻擊免疫和繞過能力顯著增強,啟發式檢測力不從心; 

· 一些AI檢測演算法,無法很好處理誤檢問題,影響實際應用; 

· 惡意程式碼製作呈現組織化、職業化、不惜代價化,使得惡意程式碼目標性、對抗性、隱藏性增強

透過分析現有檢測技術和攻擊行為後發現,無論惡意程式碼怎樣變形或繞過,所表現出來的行為都是很收斂的,數量極少。尤其在核心層監控,並不是所有介面惡意樣本都會使用,而且API介面數量也只有幾百到一千條左右。如果能把攻擊者使用的會給客戶機器造成破壞的敏感行為收集並組合成行為庫,做基於行為的檢測,是一條很好的思路。既能避免傳統基於特徵檢測總要升級的問題,也能大大提升樣本檢出率。

但是,基於行為檢測也面臨以下幾個問題:

· 系統越來越封閉,監控廣度受限; 

· 單行為點告警為主,多點聯動欠缺; 

· 行為顆粒細化不夠,豐滿度欠缺; 

· 告警多,虛警多,影響使用者體驗; 

· IOA、特徵化,需要頻繁升級。 

“即便基於行為檢測存在一些弊端,我們也還是要去克服,並且要把整個行為關聯起來,組合成行為攻擊鏈。”

二、記憶體保護技術在基於行為攻擊鏈中的應用

威脅和攻擊發生時存在攻擊時序,會有一些敏感行為,比如下載、聯網、傳東西、讀取文件甚至加密,這會組成一系列動作,對系統造成危害。

同樣,我們在檢測時也有檢測時序,要力爭把攻擊的行為點全都捕獲到,這就涉及很多監控點。捕獲到惡意行為後,在結合系統上下文進行關聯分析,這樣就能知道那個程式發生了哪些危險動作,並判斷哪些程式是惡意的。

安芯網盾CTO姚紀衛解析記憶體保護技術與行為檢測如何發生“化學反應”?

記憶體保護技術在基於行為攻擊鏈中的應用,主要有有兩種檢測思路: 

1. 基於記憶體訪問行為監控的漏洞攻擊識別技術

系統上有核心,核心上跑了很多業務和程式,記憶體保護產品會透過4種技術,根據不同場景捕獲漏洞,判斷攻擊行為: 

· 基於記憶體虛擬化的記憶體訪問監控技術,發現異常記憶體執行行為。如把存放資料的記憶體當程式碼去執行,就會被認為是異常的。 

· 基於硬體除錯暫存器的監控技術。 

· 基於記憶體斷點的監控技術,監控漏洞shellocode固定訪問點位和路徑。 

· 基於Hook記憶體相關API的監控技術,監控記憶體屬性修改等行為。 

最後結合系統或程式上下文分析,排除部分誤報,包括部分正常軟體行為後判斷存在漏洞攻擊。

2. 基於程式執行行為監控的惡意程式碼識別技術

從應用層、系統層、核心層三個層面進行監控:

· 記憶體層監控記憶體訪問,發現記憶體或漏洞利用攻擊; 

· 系統層用NGAV技術監控少數CPU指令,如惡意程式碼防範(Rootkit、Bootkit、挖礦、勒索)和入侵檢測(Perl、反彈shell)。要抓儘量多的行為,避免抓的行為少而導致檢出率低,誤報高的情況; 

· 應用層透過RASP技術、無檔案攻擊動態防護技術、應用層系統行為監控等技術,檢測記憶體馬攻擊、Webshell後門、中介軟體漏洞利用攻擊、無檔案攻擊、系統行為採集 

三、為什麼要從記憶體保護技術出發?

記憶體保護技術的核心原理是所有威脅和攻擊無論如何偽裝逃避安全軟體的檢測,它最終要造成危害都必定會在記憶體中“展現”和執行。在馮氏計算機體系結構中,任何資料或程式碼都需要經過CPU進行運算執行,都需要經過記憶體進行儲存。所以,理論上在CPU和記憶體這一層面實現的安全防護方案可以有效防護所有威脅。

安芯網盾自成立以來一直深耕記憶體安全,主要從4個方面考慮: 

從端點安全攻防技術角度出發。記憶體安全產品應用的場景主要是主機和終端,首先考慮的是在這些端點上的攻防技術。 

依賴記憶體訪問行為監控和程式執行行為監控。更多的是關心程式在記憶體上有什麼樣的訪問動作,比如讀、寫或者執行。 

基於記憶體訪問行為集和程式執行行為集,做行為關聯分析來識別威脅。採集不同作業系統上的程式行為,並和CPU上下文相結合進行分析。 

符合行業標準發展需求,有效填補防禦體系空白。17859、十四五規劃等政策標準都提到了對記憶體的保護。


相關文章