?

基于沙箱的惡意文件與APT 攻擊檢測方法改進研究

2022-03-27 11:02張威武朱江馬崢巍王攀趙康
智能物聯技術 2022年5期
關鍵詞:沙箱注冊表容器

張威武,朱江,馬崢巍,王攀,趙康

(1.杭州市公安局,浙江 杭州 310002;2.杭州安恒信息技術股份有限公司,浙江 杭州 310051)

0 引言

隨著互聯網和物聯網的發展,諸如木馬、蠕蟲等惡意軟件已嚴重威脅公民隱私、社會經濟發展甚至是國家安全。其中APT(高級持續性威脅,Advanced Persistent Threat)攻擊的危害也在逐漸擴大。APT 攻擊是有組織的、精心策劃的一系列隱蔽和持續的攻擊過程[1]。APT 攻擊經常使用惡意軟件對系統漏洞進行利用,并使用外部C&C(Control&Command)服務器對攻擊的特定目標進行持續監控和數據竊取。APT 攻擊具有極強的隱蔽性和針對性,所以一旦侵入成功,會對攻擊目標造成非常大的威脅。

由于APT 攻擊往往采取更有針對性的定制手段,會通過對木馬進行“免殺”等處理方式,確保在攻擊過程中逃避主流殺毒軟件的檢測,所以傳統的安全產品如殺毒軟件等,已無法充分應對APT 威脅?;谶@樣的安全形勢,研究快速、準確的惡意文件檢測技術刻不容緩。

目前,人們越來越多地將沙箱技術應用于惡意文件檢測中。沙箱技術[2]主要是通過限制在其中運行的非可信軟件所能訪問的系統資源來保障系統的安全,在沙箱中只能操作有限的系統資源,執行受限制的操作。把可疑文件提交到沙箱中動態模擬運行,不僅可以避免未知惡意行為對真實系統的破壞,還可以對可疑文件的行為信息進行捕獲和分析,從而為惡意文件的檢測提供一種新的方案?;谏诚涞膼阂馕募z測技術能夠對APT 攻擊的各個環節進行檢測,對追蹤木馬、僵尸網絡控制端和發現APT 攻擊意義巨大。

本文提出一種基于容器特性的沙箱隔離機制和沙箱逃逸對抗技術,通過對APT 攻擊全階段多維度分析,引入了基于行為鏈的綜合評分機制,改進惡意文件檢測和APT 攻擊檢測方法,在保證準確度的基礎上,大大提高惡意文件檢測速度和檢出率,降低檢測結果誤報比率。

1 沙箱檢測方法介紹

1.1 檢測方法概述

惡意文件的檢測方法主要包括靜態檢測方法和動態檢測方法兩大類[3]。靜態檢測最早是利用基于特征或啟發式的病毒檢測方法,通過對特征片段計算哈希值,構建指紋庫進行匹配的方式進行檢測。這種檢測方法需要經常更新指紋庫信息,對新樣本不具備檢測能力,檢測的準確性完全依賴指紋庫。隨著技術的發展,目前主流的靜態檢測方法是通過分析文件嵌入的代碼、文件的內容和結構特征,使用統計方法來判斷文件的性質。

靜態檢測方法對于代碼混淆等逃避檢測技術一直缺乏好的解決方案。而動態檢測方法可以通過在虛擬環境中打開樣本文件和監測樣本運行過程中的行為來判定是否屬于惡意文件。動態檢測方法雖然能夠在不用對樣本進行學習的情況下直觀地發現攻擊者的攻擊行為及其攻擊目的,具有較強的健壯性[4],但是該方法通常會消耗大量資源和內存空間,而且會受到反虛擬機技術的對抗,在實際的使用中,往往達不到理想的效果。

動態檢測方法的關鍵技術之一是沙箱系統。沙箱系統創造一個限制程序行為的執行環境,在該環境內部運行的程序對系統的影響是受控的、可還原的。為了盡可能接近真實環境,沙箱系統一般采用虛擬機實現,在虛擬機中安裝操作系統和軟件,模擬日常辦公和其他業務場景的軟硬件環境[5]。為了充分暴露并檢測不同類型的攻擊行為,沙箱需準備相應的環境。由于惡意文件種類非常多,依賴的執行環境也很多,以Windows 系統為例,沙箱系統需要準備的軟件包括但不限于表1所羅列部分[6]。

表1 沙箱虛擬機常用軟件Table 1 Common software of sandbox virtual machine

一個脆弱和暴露的系統更容易吸引網絡攻擊,沙箱系統應虛擬一個網絡環境用于檢測APT 攻擊和蠕蟲傳播等網絡行為。比如準備Windows 網絡鄰居、域控服務器、Exchange 郵件服務器和基于IIS(Internet Information Server)、Apache 或Nginx 的Web 網站等。沙箱還應在虛擬環境中放置一些Office 和TXT 文檔,以便勒索軟件有目標來執行破壞行為。此外,虛擬機中系統自身的安全措施可以適當關閉或者削弱,比如屏蔽殺毒軟件、關閉UAC(User Account Control)提示、允許Office 宏、關閉瀏覽器安全配置項等。

1.2 沙箱基本架構

沙箱系統的典型架構主要由任務調度模塊、虛擬機、行為監控采集模塊和行為特征分析模塊組成[7],如圖1 所示。

圖1 沙箱典型架構Figure 1 Typical architecture of sandbox

任務調度模塊負責接收檢測任務,將樣本文件傳給虛擬機中的代理程序,再由代理程序打開或執行文件。行為監控采集模塊負責記錄樣本執行時產生的操作行為,包括但不限于文件操作、注冊表操作、進程操作、網絡操作、窗口操作和服務操作等。行為特征分析模塊負責行為日志,根據一定的規則判定樣本的惡意性產出分析報告。

1.3 沙箱檢測步驟

沙箱對文件的主要檢測流程如下:

(1)對文件進行預處理,識別文件格式。對于可執行文件,區分是32 位或者64 位程序,是否依賴DotNet、Java 或者其他環境。對于非可執行文件,選擇最合適的處理軟件打開。比如同樣是Office 文檔,DOC 格式適合用早期的Word 版本打開,而DOCX 可以用新版Word 打開。對于壓縮文件應解壓后對內部文件分別處理。

(2)在虛擬機中執行或者打開文件。在這個階段比較重要的步驟是模擬人工操作,即虛擬機中的代理程序能仿照正常用戶使用鼠標和鍵盤進行一系列操作。特別是對于文檔類型的文件,打開之后自動翻頁查看內容,識別并進一步訪問其中的URL、內嵌文檔或者郵件附件。

(3)采集樣本的行為。通過API 掛鉤、內存取證、網絡抓包等手段,記錄樣本在運行時發生的行為,截取窗口圖像并保存樣本,釋放或者下載結果文件。經過一段時間運行或者樣本進程結束后,停止虛擬機并恢復虛擬機快照。如果虛擬生成了復雜網絡環境且樣本對網絡進行了攻擊,需要恢復這些網絡環境相關的虛擬機。

(4)使用規則匹配識別惡意行為,分析行為日志。規則一般針對可執行文件和非可執行文件兩大類。每條規則有一個分值代表相應惡意行為的可能性和對系統的破壞程度。根據行為的類別對規則進行分組分類,同一組命中規則的分值只取最大的一個,不同組的命中規則按照權重相加。最后計算得到總分,總分越高表明文件是惡意的可能性越大。

(5)對樣本的衍生產物進行檢測。例如將樣本釋放的文件重新投入沙箱檢測,提取行為日志中的IP 和域名至威脅情報庫中進行查詢;待所有的信息匯總后,生成相應的樣本分析報告。

2 改進的輕量級多元融合檢測方法

2.1 多維度APT 分析

僅針對單個文件進行檢測的沙箱在防御APT攻擊方面的能力缺乏優勢。因為APT 攻擊的特點之一是持續時間長久,每個步驟單獨分析雖然有一定的特征,但經過精心的偽裝后,這些惡意行為會混合在大量正常行為之中,建立在規則匹配和打分機制上的沙箱分析引擎往往不會達到告警的閾值,而調低告警閾值容易造成誤報。因此有必要從各個維度對APT 攻擊生命周期中可能的攻擊點進行深層次的分析檢測,并且將某一攻擊階段中發現的攻擊線索進一步作為其他攻擊階段的檢測依據,同時使各攻擊階段的檢測結論深度關聯,形成確定性更高的攻擊證據,以準確發現隱蔽的APT 攻擊。

多維度APT 分析首先需要主動監控網絡流量,對常見的網絡應用層協議數據包(如HTTP,SMTP,POP3,IMAP,FTP,SMB 和DNS 等)做流量采集,將從中提取出的傳輸文件放入沙箱檢測。然后提取流量的元數據(包括五元組、域名、URL、郵箱地址、文件名、文件Hash、文件大小、時間戳、數據包大小、協議相關控制命令等)保存到數據庫中;每次沙箱生成檢測報告后都將報告中的文件Hash、域名、IP 地址等數據和歷史累積的流量元數據進行關聯,構成跨時域的多個行為鏈。最后設計一種基于行為鏈匹配的記分機制,根據APT 攻擊生命周期各個階段的攻擊行為特征去匹配行為鏈,對每個階段匹配的程度進行打分,行為鏈的總分作為判斷APT 攻擊是否成立的依據。

典型的APT 攻擊分為初步入侵、建立據點、木馬回連、提權、內部勘測、橫向擴散、竊取數據共7個階段[8]。相應的檢測內容包括:

(1)在初步入侵攻擊階段,進行網絡資產掃描、郵件釣魚攻擊和惡意文件投遞等檢測;

(2)在建立據點攻擊階段,進行文件下載和釋放、持久化、Webshell 植入等檢測;

(3)在木馬回連攻擊階段,進行C2 IP/URL、DGA(Domain Generation Algorithm)生成域名、自簽名數字證書、偽裝協議和蔽信道傳輸等檢測;

(4)在提權攻擊階段,進行漏洞利用和密碼破解等檢測;

(5)在內部勘測攻擊階段,進行內網拓撲掃描、ARP(Address Resolution Protocol)欺騙、網絡代理和端口轉發等檢測;

(6)在橫向擴散攻擊階段,進行內網密碼暴力破解、已知遠程溢出攻擊、網絡鄰居共享文件等檢測;

(7)在竊取數據攻擊階段,進行文件搜索和遍歷、隱蔽信道傳輸、異常流量大小和時間等檢測。

檢測到可疑的攻擊行為發生頻率越高、持續時間越久、涉及數據量越大則認為惡意的程度越強,相應的評分也越負面。利用行為鏈記分機制,各個行為涵蓋的階段越全面、行為之間的聯系點越多則誤報可能性越低。

2.2 沙箱隔離機制

沙箱必須依賴虛擬機提供完善的隔離環境,但虛擬機占用的系統資源很多,尤其是內存消耗至少2GB,新版本操作系統如Windows10 則需要4GB以上的內存空間。資源占用條件限制了一臺服務器上可部署的虛擬機總數。

為了保證檢測環境的純凈性,每個虛擬機一次只檢測一個樣本文件,檢測完畢都要恢復虛擬機快照,還原沙箱到初始狀態。惡意樣本檢測所需安裝的各種軟件加上操作系統自身,需要的磁盤空間在40GB 以上。虛擬機配置的虛擬硬盤和虛擬內存越大,恢復快照速度越慢。虛擬機恢復快照是I/O 密集型操作,磁盤I/O 速度限制使得快照恢復時間需要5~10s。當多個虛擬機同時恢復快照時,磁盤I/O瓶頸尤其嚴重,每次恢復快照消耗的時間可能長達20s,而每個樣本的分析時間一般也只有20~30s。服務器資源限制使得沙箱系統檢測樣本的速度可能不足以處理每天截獲的大量可疑文件和APT 攻擊。雖然通過增加硬件資源、提高硬件性能可以緩解該問題,但也會增加額外成本。而且無論硬件條件怎樣提高,為了檢測一個可能1MB 大小都不到的樣本文件,卻消耗整個虛擬機系統的資源,此情況亟待改進。

Linux 系統內置了容器化技術,這是一種進程級的資源隔離[9]。容器在提供隔離的同時,還通過共享這些資源節省開銷,這意味著容器比真正的虛擬化開銷要小得多。如果在虛擬機中運行若干個容器,每個容器負責檢測一個樣本文件,既避免了樣本行為之間相互干擾,又充分利用了系統資源,從而提高整體檢測效率。然而,如表2 所示,Windows系統目前沒有與Linux 功能相當的原生容器?,F有的Windows 原生容器只能在Windows10 及以上版本的系統上使用,容器內支持的應用僅限于部分控制臺程序和服務,不能滿足樣本檢測的需要。Linux容器應用軟件Docker 雖然有Windows版,但其使用的Hyper-V 虛擬機不滿足輕量化要求。因此,要實現隔離程度高、兼容性好、比虛擬機輕量的Windows 容器,需要著眼于編寫內核驅動程序來擴展系統功能。具體來說,可以通過文件過濾驅動、注冊表過濾驅動和網絡過濾驅動分別實現文件、注冊表和網絡的隔離[10]。

表2 Windows 和Linux 原生容器對比Table 2 Comparison of Windows and Linux native containers

2.2.1 文件隔離系統

通過Windows 系統提供的Minifilter 驅動框架開發文件過濾驅動,可以接管應用程序和操作系統的所有文件操作。實現文件系統隔離的關鍵方法是文件操作重定向。圖2 為文件操作重定向圖示。

如圖2 所示,當應用程序對文件的操作涉及到文件名稱、文件內容、文件大小和文件時間等屬性的變化時,文件過濾驅動攔截該操作,然后復制文件到容器的隔離目錄(C:Containeridfs),最后將操作重定向到新文件上。經過操作重定向,應用程序實際打開和修改的是隔離目錄下的文件副本。下一次應用程序打開文件時,文件過濾驅動發現該文件在容器對應位置上存在副本,直接進行重定向文件操作。整個重定向過程對于應用程序來說是透明的,應用程序仍然認為自己正常操作了原始位置的文件。

圖2 文件操作重定向Figure 2 File operation redirection

當應用程序刪除文件時,不允許真正刪除容器外的文件,因此可以采取標記刪除的方式。如圖3所示,文件過濾驅動判斷要刪除的文件是實際存在的,就在容器內對應位置創建一個特殊的標記刪除文件。該文件的創建時間被設置為一個特殊的時間點,文件過濾驅動讓刪除操作直接返回,不執行實際的刪除過程。

圖3 文件標記刪除Figure 3 File mark deletion

文件改名操作和文件刪除類似,先復制文件到容器內改成新名稱,再在原文件對應的位置創建標記刪除文件。當應用程序再次打開文件時,文件過濾驅動讀取容器內文件的創建時間屬性,發現是一個標記刪除文件,就向應用程序返回表示“文件不存在”的錯誤碼。文件被標記刪除不是永久的狀態,當創建或者文件改名時,如果新文件的名稱與標記文件相同,則用新文件覆蓋標記文件。

目錄查詢如圖4 所示,文件過濾驅動必須合并容器外和容器內兩個目錄的查詢結果。首先按照文件名稱排序條目,然后再依次對比。當容器內外存在同名文件(如A.doc)時,只顯示容器內的該條目;對不同名稱的文件或目錄(如1.txt 和2.txt、DirXxx和DirYyy)疊加條目;遇到標記刪除文件(如B.pdf)時忽略該條目。

圖4 目錄查詢合并Figure 4 Directory Query Merge

2.2.2 注冊表隔離

實現注冊表隔離的方法與文件系統隔離類似,通過注冊表過濾驅動接管應用程序和操作系統的所有注冊表操作。不同之處在于注冊表使用的磁盤空間比較小,可以將整個注冊表復制一份放在容器內,所有的注冊表操作一律重定向到容器內。刪除、改名和枚舉鍵值等操作不需要考慮標記刪除問題,直接對注冊表的副本進行操作即可。

Windows 存儲注冊表的文件叫做蜂巢(Hive),存儲系統配置的蜂巢文件位于C:WindowsSystem32config 目錄下,存儲用戶配置的蜂巢文件位于C:Users 各個用戶名目錄下。這些文件受到操作系統的保護無法直接被復制,但可以調用API(RegSaveKey)將注冊表指定位置的所有鍵值保存為一個蜂巢文件,然后使用API(RegLoadKey)將蜂巢文件加載到注冊表的另一個位置(如HKEY_USERS),成為容器專用的注冊表。

2.2.3 網絡隔離

虛擬機支持創建多個虛擬網卡,但與Linux 容器不同的是,Windows 系統沒有設計網絡名字空間隔離,不能限制應用軟件及其使用的協議棧唯一綁定在某個虛擬網卡上。替代方案是通過網絡過濾驅動(如WFP,Windows Filtering Platform)將應用程序與IP 地址綁定,使得一個容器內的應用程序所有網絡套接字都綁定在單個IP上,而不是原本的所有IP 地址(0.0.0.0)上。此方案可以保證不同容器的應用程序能夠使用相同的本地端口(比如監聽80 端口)而又互不干擾。

沙箱的行為采集模塊一般部署在虛擬機之外的Host 系統上,由于有了IP 綁定,根據IP 地址就可以分辨來自不同容器的網絡行為。

2.3 加強逃逸對抗

除了占用資源過多,沙箱使用虛擬機的另一個問題是虛擬機環境與真實環境存在一些差別,一些惡意文件或者APT 攻擊會利用這種差別逃避沙箱檢測。例如虛擬機提供的虛擬顯卡和虛擬硬盤等設備的廠商名稱一般是虛擬化軟件公司的名稱,程序可以通過各種API 查詢硬件設備的廠商屬性發現自身運行在虛擬機之上。

除了利用環境信息差異,惡意文件還可以通過長時間休眠來逃避檢測。沙箱每天需要檢測大量的樣本,而分配給每個樣本的檢測時間是有限的,超過時間,樣本分析就會終止。如果在檢測過程中惡意文件一直休眠不產生攻擊行為,沙箱無法分析特征行為,則不能判定該樣本的惡意程度。

所有逃避沙箱檢測的情況統稱為沙箱逃逸。隨著沙箱技術的普遍應用,惡意文件的逃逸手段愈發豐富。表3 比較了開源沙箱Cuckoo[11]和虛擬機檢測工具al-khaser[12]的逃逸對抗情況,并給出解決方法。

從表3 可以看出,Cuckoo 沙箱的逃逸對抗能力十分欠缺,僅考慮了樣本檢測父進程是否為explorer.exe 和鼠標位置是否變化等情況。由于沙箱不是調試器,al-khaser 檢測調試器對沙箱無效,這實際上不屬于Cuckoo 逃逸對抗能力。改進的對抗逃逸方法包括兩類,一類是修改虛擬機配置,比如修改MAC 地址、磁盤大小和CPU 數量;另一類是通過掛鉤API 和COM 接口的方式修改對軟硬件的查詢結果。其中,CPU 數量從一核增加到兩核,直接導致虛擬機資源消耗翻倍。由于樣本檢測CPU數量的方法多種多樣,遠不止表3 中列舉的幾種,因此不適合采用掛鉤的方法對抗。理想的解決方案是使用容器技術充分利用虛擬機資源,使得虛擬機即使配置了四核CPU 也不會浪費。

表3 沙箱逃逸對抗情況Table 3 Sandbox escape countermeasures

3 實際效果測試

3.1 檢測速度對比

使用容器技術改進Cuckoo 沙箱后,在普通PC上實際測試了一個樣本集(黑白樣本共26447 個)。虛擬機的資源分配、檢測時長和容器數量如表4 所示。虛擬機使用不同數量容器時的資源占用如圖5、圖6 和圖7 所示。

圖5 CPU 平均使用率對比Figure 5 Comparison of average CPU utilization

圖6 磁盤IO 使用率對比Figure 6 Comparison of disk IO usage

圖7 內存使用范圍對比Figure 7 Comparison of memory usage range

表4 虛擬機和容器配置Table 4 Virtual machine and container configuration

如圖8 所示為檢測速度對比。從圖8 可以看出,容器技術能顯著提高檢測速度。在Windows 7使用1 個容器時平均每個樣本檢測時間約20s,比不使用容器節省了10s 左右的恢復快照時間。由于Windows 10 相比Windows 7 系統消耗資源更多,恢復容器更慢,所以同等條件下Windows 10 檢測速度更慢。對比PC1、PC2、PC3 的檢測速度和PC4、PC5、PC6 的檢測速度可以看出,虛擬機使用容器數量越多,每小時樣本檢測數量越大。

圖8 檢測速度對比Figure 8 Comparison of detection speed

但是檢測速度和容器數量不是按比例增長的。隨著檢測樣本數量增多,樣本運行時磁盤I/O 資源競爭越來越嚴重,為保證樣本檢測的完整性,使用12 個容器時平均每個樣本檢測時間需增加到35s左右。對比PC5 和PC6 的檢測速度可以看出,繼續增加容器數量對整體檢測速度提升較小。并且從圖5、圖6、圖7 中可以看出,PC5 和PC6 虛擬機的資源使用率遠大于其他虛擬機,考慮到需要維持虛擬機的穩定運行,我們認為表4 中的Windows10 虛擬機配置5 個容器為最優配置。

3.2 檢測效果對比

通過加強Cuckoo 沙箱的逃逸對抗,并采取多維度APT 分析方法后,在普通PC 上實際測試一個樣本集。其中黑白文件樣本共26447個,模擬APT攻擊8次,樣本詳情見表5。

表5 實測樣本集Table 5 Measured sample set

圖9 和圖10 分別對比了改進前后沙箱的檢出率和誤報率??梢钥闯?,加強逃逸對抗對可執行文件和非可執行文件的檢出率都有提高,分別提升了19.2%和9.8%。此改進對可執行文件的提升幅度更大,是因為可執行的樣本能夠采取的逃逸手段種類更多,使用了逃逸手段的樣本占比更高。改進后可執行文件的誤報率略微提升,經過分析是由于某些白樣本也使用WMI 查詢軟硬件信息被誤認為是逃逸行為導致的。

圖9 檢測效果對比Figure 9 Comparison of test results

圖10 誤報率對比Figure 10 Comparison of false alarm rate

在APT 攻擊檢測方面,檢出率也有所提高。經過詳細分析發現,改進前的沙箱能夠檢出APT 攻擊前三個階段初步入侵、建立據點和木馬回連出現的惡意文件。但是有些惡意行為只有在特定條件下才發生,比如查詢網絡時間為特定日期、查詢當前系統IP/MAC 地址為特定值等,容易逃避沙箱檢測。此時沙箱僅僅能檢出部分可疑行為,如持久化和網絡請求,但不足以判定樣本為惡意文件。改進后的沙箱加入了行為鏈的綜合評分機制,能夠發現之前遺漏的惡意文件,成功產生告警。其余沒有檢出的APT 攻擊是因為采取了無文件攻擊方式或者漏洞利用方式,不在規則涵蓋范圍,致使沙箱缺失可檢測的目標。

4 總結與討論

4.1 研究總結

本文在傳統沙箱惡意文件檢測基礎上,融合了基于容器特性的沙箱隔離機制和沙箱逃逸對抗技術,通過對APT 攻擊全階段多維度分析,引入基于行為鏈的綜合評分機制,提出了一種改進的惡意文件和APT 攻擊檢測方法,大大提高了惡意文件檢測速度和檢出率,降低了檢測結果誤報比率。該方法的特點是:

(1)采集網絡流量數據,提取其中的文件數據放入沙箱分析,并且記錄流量元數據形成歷史數據庫。針對樣本檢測報告和元數據進行關聯分析,根據APT 攻擊的各個階段行為特征來匹配行為鏈并給予評分。在實際測試中,本方法成功檢出了前期由于惡意行為特征不明顯導致漏檢的樣本,極大地降低了誤報率。

(2)在Windows 系統上實現輕量級的容器,隔離樣本使用的文件、注冊表和網絡資源對象,使得多個樣本能夠在一個虛擬機內互不干擾地同時運行。實現容器隔離的關鍵方法是資源訪問重定向,利用驅動程序接管樣本對資源對象的操作,如果樣本試圖修改資源,則復制或者新建資源對象到容器專屬的名字空間中,并把操作重定向到新的資源對象上。實測結果顯示,一個虛擬機同時運行5~12 個容器且在同樣的硬件條件下,沙箱整體檢測速度提升6 倍以上。

(3)針對沙箱逃逸越來越普遍的情況,通過分析虛擬機檢測工具al-khaser 的檢測手段,有針對性地加強Cuckoo 沙箱的逃逸對抗。主要的對抗手段有兩類:一是修改虛擬機配置使得虛擬機配置與真實系統更加接近;二是對于不適合直接修改的配置則掛鉤API 或者COM 接口,修改查詢請求的結果。實測表明,加強逃逸對抗對于可執行文件和非可執行文件的檢出率分別提高20%和10%。

4.2 未來展望

Windows 容器技術充分利用了虛擬機系統資源,能夠在有限的成本控制下大幅度提升沙箱整體檢測速度。但是由于容器的隔離程度不如虛擬機,遇到無法隔離的情況需要退化到傳統的檢測方式。例如,容器不適合隔離內核直接進行的資源操作,如果樣本自帶驅動程序,沙箱應該在捕獲到樣本試圖加載驅動程序時終止分析,并把該樣本交由沒有容器的虛擬機重新檢測。

缺乏逃逸對抗的沙箱檢出率一般不超過50%,加強逃逸對抗是沙箱提高檢出率的重要途徑。本文提出的改進方法對虛擬機環境檢測逃逸手段具有很強的針對性,效果顯著。但是沒有涵蓋其他類型的逃逸手段,比如樣本根據操作系統的區域和語言、IP 地址歸屬地、網絡時間等信息有條件地執行。對抗條件執行可以采取靜態分析和動態分析結合的手段,引入字符串模糊匹配和符號執行等技術,主動識別出樣本的運行條件,并相應地模擬環境屬性。

針對APT 攻擊,采取APT 行為鏈匹配和評分方式解決了單個文件檢測時告警閾值設置不夠敏感的問題。沙箱采集的APT 攻擊階段行為越多,歷史積累的元數據越豐富,檢測效果越明顯。比較實測效果可以得出結論,對于無文件和0day 等攻擊的檢測依然存在疏漏。因此應考慮多種采集手段結合,比如將采集點部署到PC 終端上,更加全面地覆蓋APT 攻擊過程。

惡意文件和APT 攻擊層出不窮,檢測手段也必須與時俱進。希望本文的研究,能夠對物聯網絡安全和APT 檢測技術作出一定的貢獻。

猜你喜歡
沙箱注冊表容器
容器倒置后壓力壓強如何變
難以置信的事情
Removing a stone
巧用沙箱檢測文件安全
更上一層樓 用好注冊表編輯器
文件檢測方法及沙箱
注冊表的便捷用法
基于函數注入的沙箱攔截識別方法
取米
注冊表編輯器也玩“失憶”
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合