實時模塊保護的制作方法
【技術領域】
[0001]本發(fā)明的實施例總體上涉及計算機安全和惡意軟件保護,并且更具體地,涉及實時模塊保護。
【背景技術】
[0002]本機操作系統(tǒng)服務可阻止安全軟件在系統(tǒng)的內(nèi)核中安裝任意掛鉤。因而可防止安全軟件過濾電子設備的所有行為,包括惡意軟件的潛在惡意行為。惡意軟件可以包括但不限于,間諜軟件、根程序病毒包(rootkits)、密碼竊取器、垃圾郵件源、網(wǎng)絡釣魚攻擊源、拒絕服務攻擊源、病毒、記錄器、木馬、廣告軟件,或產(chǎn)生惡意行為的任何其他數(shù)字內(nèi)容。
[0003]操作系統(tǒng)的過濾功能可能會受到限制,并且可能僅在由操作系統(tǒng)供應商所決定的時間軸上可用。惡意軟件可與安全軟件在相同的層級處操作和駐留,尤其是在操作系統(tǒng)內(nèi)核中,并從而損害操作系統(tǒng)及安全軟件本身的完整性。
[0004]多種形式的積極(aggressive)內(nèi)核模式惡意軟件篡改用戶模式存儲器以實現(xiàn)惡意任務,例如動態(tài)地注入惡意代碼、修改用戶模式代碼分段(subsect1n)以改變執(zhí)行路徑并重定向到惡意代碼、以及修改用戶模式數(shù)據(jù)結構以使安全軟件失效。此外,一些惡意軟件可通過篡改進程存儲器代碼和數(shù)據(jù)分段以欺騙檢測邏輯來從內(nèi)核攻擊反惡意軟件應用程序及進程。
[0005]內(nèi)核模式根程序病毒包及其他惡意軟件采用各種方法從用戶模式應用程序和內(nèi)核模式設備驅(qū)動程序中隱藏自身的存在。根據(jù)感染所發(fā)生的位置,所使用的技術可以改變。例如,惡意軟件能夠攻擊操作系統(tǒng)的內(nèi)核活動進程列表從而從列表中清除或取消根程序病毒包或其他惡意軟件進程。其他惡意軟件可篡改進程訪問和枚舉函數(shù)的代碼分段。
【附圖說明】
[0006]為了更完整地理解本發(fā)明的實施例及其優(yōu)點,現(xiàn)參考以下與附圖相結合的書面描述,其中:
[0007]圖1是用于保護電子設備避免惡意軟件的系統(tǒng)的示例實施例;
[0008]圖2是用于保護電子設備避免惡意軟件的基于虛擬機監(jiān)視器和基于安全規(guī)則的可配置安全解決方案的系統(tǒng)的示例實施例;
[0009]圖3是用于保護電子設備避免惡意軟件的基于虛擬機監(jiān)視器的方法的示例實施例;
[0010]圖4是用于在電子設備上使用操作系統(tǒng)下層捕獲來調(diào)節(jié)軟件訪問以保護存儲器的系統(tǒng)的示例實施例;
[0011]圖5是存儲器映射的示例實施例的示意圖;
[0012]圖6是用于使用對電子設備的嘗試訪問的操作系統(tǒng)下層捕獲來保護存儲器的方法的示例實施例;
[0013]圖7是用于實時模塊保護的系統(tǒng)的示例操作的示意圖;
[0014]圖8是用于實時模塊保護的方法的示例實施例。
【具體實施方式】
[0015]圖1是用于保護電子設備避免惡意軟件的系統(tǒng)100的示例性實施例。系統(tǒng)100可包括操作系統(tǒng)(“Ο/s”)下層(below-0/S)捕獲代理104,捕獲代理104通信地耦合到觸發(fā)事件處理器108。Ο/S下層捕獲代理104可被配置為捕獲(trap)對電子設備103的資源106的各種嘗試訪問。Ο/S下層捕獲代理104可被配置為創(chuàng)建與所捕獲的嘗試訪問相關聯(lián)的觸發(fā)事件,并將所述觸發(fā)事件發(fā)送給觸發(fā)事件處理器108。觸發(fā)事件處理器108可被配置為查詢一個或多個安全規(guī)則114或保護服務器102,以確定如何處理所述觸發(fā)事件。觸發(fā)事件處理器108還可被配置為評估所述觸發(fā)事件的傾向是惡意軟件或顛覆電子設備103的資源或操作的惡意嘗試的指示。此外,觸發(fā)事件處理器108可被配置為向Ο/S下層捕獲代理104提供是否應當允許或拒絕觸發(fā)事件的確定,或者可被配置為產(chǎn)生另一糾正動作。
[0016]可在比電子設備103中的操作系統(tǒng)更低的功能層級處實現(xiàn)Ο/S下層捕獲代理104。例如,Ο/S下層捕獲代理104可截獲操作系統(tǒng)112、驅(qū)動程序111或應用程序110對資源106的嘗試訪問。Ο/S下層捕獲代理104可在電子設備103的處理器上運行而無需使用操作系統(tǒng)。在一個實施例中,Ο/S下層捕獲代理104可運行于裸機環(huán)境或執(zhí)行層級。此外,Ο/S下層捕獲代理104可運行于由電子設備103的處理器所限定的、比電子設備103的所有操作系統(tǒng)更高的執(zhí)行優(yōu)先級別。例如,在使用保護環(huán)的分級保護域模型的上下文中(其中較小的數(shù)字代表較高的優(yōu)先級),操作系統(tǒng)112可運行于“環(huán)0”,而Ο/S下層捕獲代理104可運行于“環(huán)-1”。驅(qū)動程序111或應用程序110可運行于“環(huán)O”或“環(huán)3”。在處理器的一些實施例中,“環(huán)-1”的概念可被稱為“環(huán)O特權模式”,并且“環(huán)O”的概念可被稱為“環(huán)O非特權模式”。相比“環(huán)O”或“環(huán)O特權模式”,“環(huán)-1”或“環(huán)O特權模式”下的操作可能需要更多的額外開銷和費用。電子設備103的操作系統(tǒng)可運行于環(huán)O。在諸如INTEL處理器的處理器中,“VMX Root”模式可相當于“環(huán)O特權模式”,并且“VMX Non-root”模式可相當于“環(huán) O”。
[0017]Ο/S下層捕獲代理104可對運行于“環(huán)O”或更高的實體透明地操作。因此,無論Ο/S下層捕獲代理104是否存在,都可由操作系統(tǒng)112或另一實體以相同的方式請求對資源106的嘗試訪問。當執(zhí)行所接收的動作時,Ο/S下層捕獲代理104可允許所述請求發(fā)生、可拒絕所述請求,或者可采取其他糾正動作。為了拒絕所述請求,Ο/s下層捕獲代理104可簡單地不把請求發(fā)送給資源106或處理器,或者可向所述請求提供欺騙的或虛假的應答,以使操作系統(tǒng)112相信該動作已經(jīng)發(fā)生。
[0018]通過在“環(huán)-1”、在比電子設備103的相關操作系統(tǒng)更高的優(yōu)先級或低于電子設備103的相關操作系統(tǒng)運行,Ο/S下層捕獲代理104可避免困擾諸如操作系統(tǒng)112的操作系統(tǒng)的大多數(shù)惡意軟件。惡意軟件可欺騙在“環(huán)O”運行的操作系統(tǒng)112或甚至反惡意軟件的軟件,這是因為惡意軟件也可在“環(huán)O”優(yōu)先級運行。然而,如果要執(zhí)行惡意活動,電子設備103上的惡意軟件仍然必須做出對資源106的請求。因而,捕獲鏈接到敏感資源的操作可由在電子設備103中的操作系統(tǒng)的層級以下運行的捕獲代理更好地完成。
[0019]可以任何合適的方式實現(xiàn)Ο/S下層捕獲代理104。在一個實施例中,可在虛擬機監(jiān)視器中實現(xiàn)Ο/s下層捕獲代理104。如針對Ο/S下層捕獲代理104所描述的,這種實施例可在操作系統(tǒng)的層級以下運行。例如,在下面的圖2的描述中的可找到對安全虛擬機監(jiān)視器216的這種實施例的示例的描述。在另一實施例中,可在固件中實現(xiàn)Ο/S下層捕獲代理104。在又一實施例中,可在微代碼中實現(xiàn)Ο/S下層捕獲代理104??稍谶@些實施例的任意適合的組合中實現(xiàn)Ο/S下層捕獲代理104。
[0020]觸發(fā)事件處理器108可由通信地耦合在一起的一個或多個事件處理器或安全代理實現(xiàn)。觸發(fā)事件處理器108和Ο/S下層捕獲代理104可在同一安全代理中實現(xiàn)。在一個實施例中,觸發(fā)事件處理器108可運行于與Ο/S下層捕獲代理相同的優(yōu)先級環(huán)。在另一實施例中,觸發(fā)事件處理器108可運行于與操作系統(tǒng)112、驅(qū)動程序111或應用程序110相同的優(yōu)先級。在又一實施例中,觸發(fā)事件處理器108可由兩個或更多個觸發(fā)事件處理器實現(xiàn),其中至少一個觸發(fā)事件處理器運行于與Ο/S下層捕獲代理相同的優(yōu)先級環(huán),并且至少一個觸發(fā)事件處理器運行于操作系統(tǒng)112、驅(qū)動程序111或應程序用110的層級。通過在Ο/S下層捕獲代理104的層級運行,觸發(fā)事件處理器108可類似地避免“環(huán)O”或“環(huán)3”惡意軟件感染代理本身的問題。然而,與操作系統(tǒng)112、驅(qū)動程序111或應用程序110 —起在“環(huán)O”或“環(huán)3”運行的觸發(fā)事件處理器108可以能夠提供關于對資源106的嘗試訪問的上下文信息,該上下文信息是從“環(huán)-1”代理的角度來看無法獲得的。
[0021]觸發(fā)事件處理器108可以以任何合適的方式實現(xiàn)。在一個實施例中,觸發(fā)事件處理器108可在虛擬機監(jiān)視器或虛擬機監(jiān)視器安全代理中實現(xiàn)。這種實施例可在操作系統(tǒng)的層級以下運行。例如,在下面的圖2的描述中的可找到對安全虛擬機監(jiān)視器216和安全虛擬機監(jiān)視器安全代理217的這種實施例的示例的描述。在另一實施例中,觸發(fā)事件處理器108可全部地或部分地在固件中實現(xiàn)。如針對觸發(fā)事件處理器108所描述的,這種實施例可在操作系統(tǒng)的層級以下運行。在又一實施例中,觸發(fā)事件處理器108可在微代碼中實現(xiàn)。如針對觸發(fā)事件處理器108所描述的,這種實施方式可在低于操作系統(tǒng)的層級以下運行。觸發(fā)事件處理器108可在這些實施例的組合中實現(xiàn)。
[0022]在一個實施例中,觸發(fā)事件處理器108可在多個模塊中實現(xiàn),其中,至少一個這種模塊運行于操作系統(tǒng)以下的層級,并且至少一個這種模塊運行于操作系統(tǒng)之內(nèi)的層級。每個這種模塊均可被配置為彼此進行通信。
[0023]在一個實施例中,操作系統(tǒng)下層捕獲代理104和/或觸發(fā)事件處理器108可在電子設備103的裸露的金屬層運行。操作系統(tǒng)下層捕獲代理104和/或觸發(fā)事件處理器108可運行而無需使用它們與它們被配置為要進行保護的資源106之間的操作系統(tǒng)。資源106可包括處理器、處理器的功能部件、存儲器、諸如數(shù)據(jù)結構的駐留在存儲器中的實體,或者諸如函數(shù)、進程或應用程序的駐留在存儲器中以供由處理器執(zhí)行的實體。資源106可包括包含電子設備103的資源的系統(tǒng)資源。此外,資源106可被指定為受保護的,從而通過例如操作系統(tǒng)下層捕獲代理104、觸發(fā)事件處理器108或任何合適的反惡意軟件機制或模塊的操作進行保護。因此,資源106可包括受保護的系統(tǒng)資源。操作系統(tǒng)下層捕獲代理104和/或觸發(fā)事件處理器108可直接在電子設備103的硬件上運行。操作系統(tǒng)下層捕獲代理104和/或觸發(fā)事件處理器108可不需要使用諸如操作系統(tǒng)112的操作系統(tǒng)來執(zhí)行或獲得對資源106的完全訪問。
[0024]電子設備103上可以存在其他操作系統(tǒng),這些操作系統(tǒng)不參與處在操作系統(tǒng)112、操作系統(tǒng)下層捕獲代理104和觸發(fā)事件處理器108、以及資源106的層級處的多個實體之間的關系。例如,預引導操作系統(tǒng)可安全地啟動電子設備的一些部分,但不參與電子設備在處理來自應用程序110、驅(qū)動程序111和操作系統(tǒng)112模式的對資源106的請求這方面的正常操作。在另一示例中,電子設備103可包含主板組件、插入式板卡、外圍設備或其他組件,這些組件包含它們自己的操作系統(tǒng)和處理器組,以執(zhí)行處于操作系統(tǒng)112、操作系統(tǒng)下層捕獲代理104和觸發(fā)事件處理器108與資源106的層級處的實體之間的關系之外的功能。這些操作系統(tǒng)可為嵌入式操作系統(tǒng)。這些操作系統(tǒng)中的任何一個均可不用于執(zhí)行操作系統(tǒng)下層捕獲代理104和觸發(fā)事件處理器108。此外,這些操作系統(tǒng)中的任何一個均可不訪問由捕獲代理104和觸發(fā)事件處理器108所保護的資源106。
[0025]操作系統(tǒng)112、驅(qū)動程序11或應用呈現(xiàn)110中的每一個可通過任何合適的模塊、可執(zhí)行文件、腳本、邏輯、指令、硬件、軟件、固件或它們的組合來實現(xiàn),以在操作100上運行。
[0026]系統(tǒng)100可包括一個或多個操作系統(tǒng)下層捕獲代理104和一個或多個觸發(fā)事件處理器108的任意組合。可在以下各圖中的對捕獲代理、事件處理器和安全代理的描述中找到對操作系統(tǒng)下層捕獲代理104和觸發(fā)事件處理器108的描述。
[0027]資源106可包括電子設備的任何合適的資源。例如,資源106可包括寄存器、存儲器、控制器或I/o設備。例如,可在對圖2的系統(tǒng)資源214或圖4的虛擬存儲器430或物理存儲器403的描述中找到對資源106的示例實施例的描述。
[0028]安全規(guī)則114可包括任何合適的規(guī)則、邏輯、命令、指令、標志或用于告知Ο/S下層捕獲代理104要捕獲什么動作或用于告知觸發(fā)事件處理器108基于所捕獲的動作來處理事件的其他機制。觸發(fā)事件處理器108可被配置為向Ο/S下層捕獲代理提供安全規(guī)則114中的一個或多個。例如,可在對圖2中的安全規(guī)則222、或安全規(guī)則421或安全規(guī)則408的描述中找到對安全規(guī)則114中的一些或全部的示例實施例的描述。
[0029]內(nèi)核模式和用戶模式實體(例如系統(tǒng)100的應用程序110、驅(qū)動程序111和操作系統(tǒng)112)可以任何合適的方式實現(xiàn)。例如,可在以下對圖2的應用程序210、驅(qū)動程序211和操作系統(tǒng)212或圖4的應用程序410、驅(qū)動程序411和操作系統(tǒng)413的描述中找到對系統(tǒng)100的應用程序110、驅(qū)動程序111和操作系統(tǒng)112的示例實施例的描述。
[0030]電子設備103可以任何合適的方式實現(xiàn),例如計算機、個人數(shù)字助理、電話、移動設備、片上系統(tǒng)、服務器或可配置以解釋和/或執(zhí)行程序指令和/或進程數(shù)據(jù)的任何其他設備。例如,可在以下對圖2的電子設備204或圖4中的電子設備401的描述中找到對電子設備103的示例實施例的描述。
[0031]系統(tǒng)100可在用于捕獲對在電子設備103的操作系統(tǒng)以下的層級處的資源的嘗試訪問的任何合適的系統(tǒng)中實現(xiàn)。系統(tǒng)100也可在用于通過查詢安全規(guī)則以確定所嘗試的訪問是否是惡意的來處理所嘗試的訪問的任何合適的單元中實現(xiàn)。例如,系統(tǒng)100可由下面的圖2-圖8中所描述的系統(tǒng)和方法200、300、400、500、600、700和800實現(xiàn)。
[0032]圖2是用于保護電子設備避免惡意軟件的基于虛擬機監(jiān)視器和基于安全規(guī)則的可配置安全解決方案的系統(tǒng)200的示例實施例。系統(tǒng)200可為系統(tǒng)100的示例實施例,其在虛擬機監(jiān)視器中實現(xiàn)系統(tǒng)100的某些元件。系統(tǒng)200可包括由可配置安全解決方案保護而避免惡意軟件的電子設備204。系統(tǒng)200的可配置安全解決方案可包括在所有操作系統(tǒng)下層運行的安全代理、安全虛擬機監(jiān)視器、基于云的安全代理和Ο/S內(nèi)行為安全代理。0/S下層安全代理和安全虛擬機監(jiān)視器可被配置為防護對電子設備204的系統(tǒng)資源(包括由0/S內(nèi)行為安全代理所使用的資源)的訪問。ο/s下層安全代理可在安全虛擬機監(jiān)視器中運行。基于云的安全代理可被配置為向ο/s下層安全代理和ο/s內(nèi)行為安全代理提供惡意軟件檢測信息,并從安全虛擬機監(jiān)視器和Ο/s內(nèi)行為安全代理接收關于可能與惡意軟件相關聯(lián)的可疑行為的信息。ο/s內(nèi)行為安全代理可被配置為針對在電子設備上運行的惡意軟件的痕跡掃描電子設備204。系統(tǒng)200可包括一個或多個Ο/S下層安全代理,所述一個或多個Ο/S下層安全代理被配置為捕獲對電子設備204的資源訪問的嘗試使用、生成對應于所述嘗試的觸發(fā)事件、查詢關于所述觸發(fā)事件的安全規(guī)則、并且如果有必要則采取關于所述嘗試的糾正動作。
[0033]在一個實施例中,系統(tǒng)200可包括通信地耦合到一個或多個Ο/S內(nèi)安全代理218和安全虛擬機監(jiān)視器(“SVMM”)安全代理217的保護服務器202。SVMM安全代理217可駐留在SVMM 216中。SVMM 216可駐留在電子設備204中并運行在電子設備204上。Ο/S內(nèi)安全代理218和SVMM安全代理217可通信地耦合。保護服務器202、0/S內(nèi)安全代理218、SVMM安全代理217和SVMM 216可被配置為保護電子設備204免遭惡意軟件的感染。
[0034]SVMM安全代理217可以是圖中的觸發(fā)事件處理器108的示例實施例。SVMM 216可以是圖1的Ο/s下層捕獲代理104的示例實施例。
[0035]電子設備204可包括親合到處理器208的存儲器206。電子設備204可包括用于任何合適的目的而在電子設備上執(zhí)行的一個或多個應用呈現(xiàn)210或驅(qū)動程序211。電子設備204可包括操作系統(tǒng)212。操作系統(tǒng)212可被配置為向應用程序210或驅(qū)動程序211提供對電子設備204的系統(tǒng)資源214的訪問。SVMM 216可被配置為截獲操作系統(tǒng)212對系統(tǒng)資源214的這種調(diào)用。SVMM 216和SVMM安全代理217可在操作系統(tǒng)212的層級以下運行。例如,SVMM 216和SVMM安全代理217可以特權模式(例如,“環(huán)-1”直接在處理器208上運行。
[0036]處理器208可包括例如微處理器、微控制器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、或被配置為解釋和/或執(zhí)行程序指令和/或進程數(shù)據(jù)的任何其他數(shù)字電路或模擬電路。在一些實施例中,處理器208可解釋和/或執(zhí)行被存儲在存儲器206中的程序指令和/或進程數(shù)據(jù)。存儲器206可部分地或整體地被配置為應用程序存儲器、系統(tǒng)存儲器、或兩者。存儲器206可包括被配置為持有和/或容納一個或多個存儲器模塊的任何系統(tǒng)、設備或裝置。每個存儲器模塊可包括被配置為將程序指令和/或數(shù)據(jù)保留一段時間的任何系統(tǒng)、設備或裝置(例如,計算機可讀存儲介質(zhì))。用于配置系統(tǒng)200的操作的指令、邏輯或數(shù)據(jù)(例如,對諸如SVMM 216、SVMM安全代理217以及Ο/S內(nèi)安全代理218的組件的配置)可駐留在存儲器206中,以由處理器208執(zhí)行。
[0037]存儲器208可執(zhí)行要由處理器的一個或多個內(nèi)核執(zhí)行的一個或多個代碼指令。處理器內(nèi)核可遵循由代碼指令所指示的指令的程序順序。每個代碼指令可由處理器的一個或多個解碼器來處理。解碼器可生成諸如預先確定格式的固定寬度的微操作這樣的微操作以作為其輸出,或者可生成反映原始代碼指令的其他指令、微指令或控制信號。處理器208還可包括寄存器重命名邏輯和調(diào)度邏輯,其通常分配資源并排列與轉換指令相對應的操作以用于執(zhí)行。在完成由所述代碼指令所指定的操作的執(zhí)行后,處理器208內(nèi)的后端邏輯可使指令退出(retire)。在一個實施例中,處理器208可允許無序執(zhí)行但需要指令有序退出。處理器208內(nèi)的退出邏輯可采取本領域技術人員已知的各種形式(例如,重新排序緩沖器等)。因此在代碼執(zhí)行過程中,至少在由解碼器所生成的輸出、由寄存器重命名邏輯所利用的硬件寄存器和表格以及由執(zhí)行邏輯所修改的任何寄存器方面,處理器208的處理器內(nèi)核30發(fā)生變換。
[0038]保護服務器202可在網(wǎng)絡244上運行。在網(wǎng)絡244上運行的保護服務器202可實現(xiàn)云計算方案。保護服務器202可被配置為與電子設備204的元件進行通信來更新惡意軟件檢測規(guī)則和信息。保護服務器202可被配置為接收關于源自于電子設備204的可疑活動的信息,并確定這種可疑活動是否是惡意軟件感染的指示。操作系統(tǒng)212可包括一個或多個Ο/S內(nèi)安全代理218。Ο/S內(nèi)安全代理218可被配置為從保護服務器202接收監(jiān)視和檢測規(guī)則,例如Ο/S內(nèi)安全規(guī)則220。Ο/S內(nèi)安全代理218可被配置為使用由保護服務器202接收到的Ο/S內(nèi)安全規(guī)則220來監(jiān)視和阻止電子設備上的可疑活動。Ο/S內(nèi)安全代理218可被配置為將檢測到的可疑活動報告給保護服務器202。Ο/S內(nèi)安全代理218可被配置為阻止惡意軟件操作并向保護服務器202報告這種阻止。如果系統(tǒng)200中存在一個以上的0/S內(nèi)安全代理218,則每個Ο/S內(nèi)安全代理218可被配置為執(zhí)行捕獲、證實或與Ο/S內(nèi)安全代理218相關聯(lián)的其他任務的指定部分。這些部分可由操作系統(tǒng)下層安全代理定義。例如,一個Ο/S內(nèi)安全代理218可證實或調(diào)查MOV指令,而另一 Ο/S內(nèi)安全代理218可證實或調(diào)查JMP指令。0/S內(nèi)安全代理218可被配置為確定存儲器中特定頁的生命周期。例如,0/S內(nèi)安全代理218可知道通常由操作系統(tǒng)212所使用的用來分配存儲器的頁的過程和步驟。類似地,0/S內(nèi)安全代理218可知道通常由操作系統(tǒng)212所使用的將應用程序的映像加載到其加載程序中的過程和步驟。這種過程可遵循操作的靜態(tài)模式。因此,0/S內(nèi)安全代理218可被配置為追蹤操作系統(tǒng)212的操作以確定是否遵循了給定的動作標準規(guī)程。0/S內(nèi)安全代理218可與SVMM安全代理217通信,以確定由SVMM安全代理217所捕獲的操作是否生成了由0/S內(nèi)安全代理218所觀察到的對應的預期行為。差異可指示惡意軟件已試圖執(zhí)行在操作系統(tǒng)212的正常操作之外的系統(tǒng)功能。因此,例如0/S內(nèi)安全代理218和SVMM安全代理217可確定所討論的頁是由惡意軟件直接加載到存儲器中,還是由操作系統(tǒng)加載程序加載。這種行為可使得0/S內(nèi)安全代理218或SVMM安全代理217向保護服務器202報告信息,采用更具侵略性的捕獲和檢查,或采取任何其他糾正動作。
[0039]在一個實施例中,0/S內(nèi)安全代理219可被配置為通過將其自身嵌入到操作系統(tǒng)212中而提供上下文信息。例如,0/S內(nèi)安全代理219可被配置為將其自身或子組件注冊(register)為驅(qū)動程序過濾器,并將其自身附接到主驅(qū)動程序來確定該驅(qū)動程序看到或看不到什么。例如,通過作為附接到TFS.SYS的過濾器,0/S內(nèi)安全代理219可被配置為報告操作系統(tǒng)212驅(qū)動程序所看到的文件I/O操作。
[0040]在另一實施例中,0/S內(nèi)安全代理219可被配置為將從操作系統(tǒng)219內(nèi)觀察到的這些信息提供給SVMM安全代理216或其它0/S下層安全代理,以用于與在操作系統(tǒng)下層觀察到的信息進行比較。兩組信息之間的差異可表明存在試圖隱藏其自身的惡意軟件。例如,0/S內(nèi)安全代理219可掛鉤或過濾NDIS.SYS,并監(jiān)視對特