午夜毛片免费看,老师老少妇黄色网站,久久本道综合久久伊人,伊人黄片子

文件可控執(zhí)行的檢測(cè)方法及虛擬機(jī)的制作方法

文檔序號(hào):6372425閱讀:416來源:國(guó)知局
專利名稱:文件可控執(zhí)行的檢測(cè)方法及虛擬機(jī)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及到文件可控執(zhí)行的檢測(cè)技木,特別涉及到一種文件可控執(zhí)行的檢測(cè)方法及虛擬機(jī)。
背景技術(shù)
針對(duì)文件(比如病毒等惡意文件)的可控執(zhí)行,現(xiàn)有技術(shù)中主要使用以下幾種方法實(shí)現(xiàn)虛擬機(jī)方式、沙箱方式、模擬器方式以及HOOK (編程接ロ API調(diào)用技木)方式等。上述虛擬機(jī)方式,是將被執(zhí)行文件放到虛擬機(jī)中執(zhí)行,通過監(jiān)控工具或調(diào)試器監(jiān)控文件的執(zhí)行行為。其最大的問題是虛擬機(jī)對(duì)外部軟硬件環(huán)境要求較多。例如一般PC機(jī)只能運(yùn)行ー個(gè)Vmware (虛擬機(jī)軟件)實(shí)例,且VMware運(yùn)行時(shí)對(duì)內(nèi)存,硬盤的消耗很大;虛擬 機(jī)里需要安裝完整操作系統(tǒng),且如果被執(zhí)行文件為病毒,運(yùn)行后會(huì)破壞虛擬機(jī)內(nèi)操作系統(tǒng),則虛擬機(jī)毎次運(yùn)行完病毒樣本后都需要恢復(fù)快照,因此需要大量磁盤操作,比較耗吋。上述沙箱方式,是在沙箱中運(yùn)行被執(zhí)行文件,其主要的問題是沙箱不是ー個(gè)可靠的隔離環(huán)境,存在惡意代碼逃出模擬環(huán)境,破壞真實(shí)操作系統(tǒng)的風(fēng)險(xiǎn)。上述虛擬器方式,也是虛擬化的一種實(shí)現(xiàn)。其在環(huán)境隔離上很可靠,所執(zhí)行的文件樣本不會(huì)破壞真實(shí)系統(tǒng)。同時(shí)對(duì)外部軟硬件環(huán)境要求不高,可以多實(shí)例,多進(jìn)程運(yùn)行。模擬器里構(gòu)建的運(yùn)行環(huán)境全部模擬,所以也不需要安裝操作系統(tǒng),不需要恢復(fù)快照。但其問題在于指令全部基于模擬,物理處理器(CPU)—秒內(nèi)可以完成的計(jì)算模擬器需要幾十秒甚至上百秒,在速度上和物理處理器相比差距較大,執(zhí)行效率太低。上述HOOK方式,一般情況下可以截獲和控制病毒的API調(diào)用。但是HOOK容易被檢測(cè)出來,以及被破壞掉。

發(fā)明內(nèi)容
本發(fā)明的主要目的為提供一種文件可控執(zhí)行的檢測(cè)方法,可提升文件檢測(cè)的效率以及穩(wěn)定性。本發(fā)明提出一種文件可控執(zhí)行的檢測(cè)方法,包括建立虛擬操作系統(tǒng)環(huán)境;在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境;調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。優(yōu)選地,所述初始化包括虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。優(yōu)選地,所述建立虛擬操作系統(tǒng)環(huán)境的步驟包括初始化虛擬環(huán)境的全局描述符表或中斷描述表、調(diào)試寄存器、控制寄存器、段寄存器以及快速系統(tǒng)調(diào)用相關(guān)的模式寄存器。優(yōu)選地,所述設(shè)定范圍包括
處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍。優(yōu)選地,所述通過處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令的步驟之前還包括設(shè)定物理處理器的指令執(zhí)行權(quán)限,以及,創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制。優(yōu)選地,所述調(diào)用包括抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令時(shí),根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。本發(fā)明還提出一種文件可控執(zhí)行的虛擬機(jī),包括
控制調(diào)用模塊,用于建立虛擬操作系統(tǒng)環(huán)境;執(zhí)行切換模塊,用于在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境;執(zhí)行記錄模塊,用于調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。優(yōu)選地,所述初始化包括虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。優(yōu)選地,所述控制調(diào)用模塊還用于初始化虛擬環(huán)境的全局描述符表或中斷描述表、調(diào)試寄存器、控制寄存器、段寄存器以及快速系統(tǒng)調(diào)用相關(guān)的模式寄存器。優(yōu)選地,所述設(shè)定范圍包括處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍。優(yōu)選地,所述虛擬機(jī)還包括權(quán)限設(shè)定模塊,用于設(shè)定物理處理器的指令執(zhí)行權(quán)限,以及,創(chuàng)建內(nèi)存的分級(jí)頁表
管理機(jī)制。優(yōu)選地,所述調(diào)用包括抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令時(shí),根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。本發(fā)明通過建立虛擬的操作系統(tǒng)環(huán)境供樣本文件運(yùn)行,使用物理處理器執(zhí)行樣本文件的指令,并預(yù)先設(shè)置硬件設(shè)備的指令執(zhí)行范圍,使得該樣本文件的運(yùn)行安全可控;同時(shí),消耗較少資源,具有較高執(zhí)行效率。


圖I是本發(fā)明文件可控執(zhí)行的檢測(cè)方法一實(shí)施例中的步驟流程示意圖;圖2是本發(fā)明文件可控執(zhí)行的檢測(cè)方法一實(shí)施例中虛擬機(jī)的結(jié)構(gòu)示意圖;圖3是本發(fā)明文件可控執(zhí)行的檢測(cè)方法一實(shí)施例中針對(duì)API的截獲和處理的結(jié)構(gòu)示意圖;圖4是本發(fā)明文件可控執(zhí)行的虛擬機(jī)一實(shí)施例中的結(jié)構(gòu)示意圖;圖5是本發(fā)明文件可控執(zhí)行的虛擬機(jī)一實(shí)施例中的另ー結(jié)構(gòu)示意圖。本發(fā)明目的的實(shí)現(xiàn)、功能特點(diǎn)及優(yōu)點(diǎn)將結(jié)合實(shí)施例,參照附圖做進(jìn)ー步說明。
具體實(shí)施例方式應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。參照?qǐng)D1,提出本發(fā)明ー種文件可控執(zhí)行的檢測(cè)方法ー實(shí)施例。該方法可包括步驟S11、建立虛擬操作系統(tǒng)環(huán)境;步驟S12、在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境;步驟S13、調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。鑒于現(xiàn)有技術(shù)文件可控執(zhí)行中需安裝完整操作系統(tǒng)消耗較大資源;或,創(chuàng)建軟硬件模擬環(huán)境導(dǎo)致全部指令基于模擬,而使得執(zhí)行效率低下;以及,在文件執(zhí)行過程中出現(xiàn)
安全問題等。本發(fā)明通過建立虛擬的操作系統(tǒng)環(huán)境供樣本文件運(yùn)行,使用物理處理器(CPU)執(zhí)行樣本文件的指令,并預(yù)先設(shè)置硬件設(shè)備(比如CPU、主外存儲(chǔ)器等)的指令執(zhí)行范圍,使得該樣本文件的運(yùn)行安全可控;同時(shí),消耗較少資源,具有較高執(zhí)行效率。本實(shí)施例中,虛擬機(jī)可通過控制調(diào)度模塊創(chuàng)建虛擬的操作系統(tǒng)環(huán)境,為樣本文件提供運(yùn)行環(huán)境,方便對(duì)該樣本文件的行為進(jìn)行監(jiān)控以及記錄等。該控制調(diào)度模塊還可控制微型內(nèi)核模塊進(jìn)行初始化操作。該初始化可包括虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。上述微型內(nèi)核模塊可根據(jù)控制調(diào)度模塊的控制,初始化虛擬環(huán)境的GDT (全局描述符表)/IDT (中斷描述表)、調(diào)試寄存器、控制寄存器、段寄存器以及SYSENTER (快速系統(tǒng)調(diào)用)相關(guān)的模式寄存器等信息;還包括樣本文件格式化解析以及樣本文件進(jìn)程初始化等。該虛擬機(jī)可在初始化吋,修改CPU的GDT/IDT/CR3等關(guān)鍵寄存器,實(shí)現(xiàn)執(zhí)行環(huán)境的切換,使得樣本文件可直接運(yùn)行在物理處理器上,相較于在模擬器上運(yùn)行,性能有很大改善。本實(shí)施例中的虛擬化的技術(shù),實(shí)現(xiàn)了一個(gè)進(jìn)程級(jí)虛擬機(jī),不需要安裝操作系統(tǒng)。該虛擬機(jī)只運(yùn)行進(jìn)程代碼,對(duì)內(nèi)存等資源的消耗很少,普通個(gè)人電腦(PC機(jī))即可同時(shí)運(yùn)行多個(gè)實(shí)例。樣本文件(比如病毒等)執(zhí)行時(shí)對(duì)虛擬機(jī)環(huán)境執(zhí)行權(quán)限受限,比如只有讀權(quán)限,而將可能造成破壞的寫操作被模擬或者重定向,因此也不需要恢復(fù)快照。如此,虛擬機(jī)可以連續(xù)運(yùn)行大量樣本文件,處理能力提升很多。在初始化后,上述微型內(nèi)核模塊可將樣本文件在虛擬操作系統(tǒng)環(huán)境中運(yùn)行,并將將樣本文件的指令在物理處理器上執(zhí)行。并可在樣本文件運(yùn)行之前,設(shè)置硬件設(shè)備的指令執(zhí)行范圍,使得硬件設(shè)備只可在設(shè)置范圍內(nèi)執(zhí)行樣本文件的指令,為樣本文件提供隔離的運(yùn)行環(huán)境。本實(shí)施例中該虛擬機(jī)在運(yùn)行樣本文件時(shí),對(duì)樣本文件使用的CPU和內(nèi)存都有效隔離,使得惡意行為和運(yùn)行故障都只影響虛擬的環(huán)境,外部環(huán)境對(duì)病毒不可見,也不會(huì)造成破壞。上述設(shè)定范圍可包括處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍等。比如,設(shè)定物理處理器的指令執(zhí)行權(quán)限,使物理處理器不可執(zhí)行可能危害硬件設(shè)備本身的指令;以及,創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制,使得只可在設(shè)定的內(nèi)存區(qū)域內(nèi)執(zhí)行樣本文件的讀寫指令等,為樣本文件運(yùn)行提供隔離的內(nèi)存環(huán)境。上述調(diào)用可包括抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令時(shí),根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。
參照?qǐng)D2,為本實(shí)施例虛擬機(jī)的結(jié)構(gòu)示意圖;該虛擬操作系統(tǒng)環(huán)境為控制調(diào)度模塊所創(chuàng)建,樣本文件可在該虛擬操作系統(tǒng)環(huán)境中運(yùn)行,該虛擬操作系統(tǒng)環(huán)境與實(shí)際操作系統(tǒng)之間通過該微型內(nèi)核模塊進(jìn)行通訊,該微型內(nèi)核模塊與虛擬操作系統(tǒng)環(huán)境之間通過中斷調(diào)用通訊。參照?qǐng)D3,為本實(shí)施例虛擬機(jī)中針對(duì)API的截獲和處理的結(jié)構(gòu)示意圖;本實(shí)施例虛擬機(jī)中,API (Application Programming Interface,應(yīng)用程序編程接ロ)可使用模板來實(shí)現(xiàn),每個(gè)API都對(duì)應(yīng)ー個(gè)系統(tǒng)調(diào)用。例如INT 0X80,此中斷會(huì)被微型內(nèi)核模塊抓到,并可將該調(diào)用信息提交到控制調(diào)用模塊;該控制調(diào)用模塊即可記錄該次API調(diào)用。另外,該控制調(diào)用模塊可以根據(jù)策略,修改API的調(diào)用參數(shù)和返回值,從而控制API的執(zhí)行。上述虛擬機(jī)中運(yùn)行樣本文件時(shí),樣本文件使用的DLL(Dynamic Link Library ,云力態(tài)鏈接庫)模塊都由虛擬機(jī)生成,代碼可見,從本質(zhì)上解決了調(diào)用截獲的問題;生成的模擬API函數(shù)入口代碼和真實(shí)API入口代碼一致,從而解決了被檢測(cè)的問題。
參照?qǐng)D4,提出本發(fā)明ー種文件可控執(zhí)行的虛擬機(jī)20—實(shí)施例。該虛擬機(jī)20可包括控制調(diào)用模塊21、執(zhí)行切換模塊22以及執(zhí)行記錄模塊23 ;該控制調(diào)用模塊21,用于建立虛擬操作系統(tǒng)環(huán)境;該執(zhí)行切換模塊22,用于在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境;該執(zhí)行記錄模塊23,用于調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。鑒于現(xiàn)有技術(shù)文件可控執(zhí)行中需安裝完整操作系統(tǒng)消耗較大資源;或,創(chuàng)建軟硬件模擬環(huán)境導(dǎo)致全部指令基于模擬,而使得執(zhí)行效率低下;以及,在文件執(zhí)行過程中出現(xiàn)安全問題等。本發(fā)明通過建立虛擬的操作系統(tǒng)環(huán)境供樣本文件運(yùn)行,使用物理處理器(CPU)執(zhí)行樣本文件的指令,并預(yù)先設(shè)置硬件設(shè)備(比如CPU、主外存儲(chǔ)器等)的指令執(zhí)行范圍,使得該樣本文件的運(yùn)行安全可控;同時(shí),消耗較少資源,具有較高執(zhí)行效率。本實(shí)施例中,虛擬機(jī)20可通過控制調(diào)度模塊創(chuàng)建虛擬的操作系統(tǒng)環(huán)境,為樣本文件提供運(yùn)行環(huán)境,方便對(duì)該樣本文件的行為進(jìn)行監(jiān)控以及記錄等。該控制調(diào)度模塊還可控制微型內(nèi)核模塊進(jìn)行初始化操作。該初始化可包括虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。上述微型內(nèi)核模塊可根據(jù)控制調(diào)度模塊的控制,初始化虛擬環(huán)境的GDT (全局描述符表)/IDT (中斷描述表)、調(diào)試寄存器、控制寄存器、段寄存器以及SYSENTER (快速系統(tǒng)調(diào)用)相關(guān)的模式寄存器等信息;還包括樣本文件格式化解析以及樣本文件進(jìn)程初始化等。該虛擬機(jī)20可在初始化吋,修改CPU的GDT/IDT/CR3等關(guān)鍵寄存器,實(shí)現(xiàn)執(zhí)行環(huán)境的切換,使得樣本文件可直接運(yùn)行在物理處理器上,相較于在模擬器上運(yùn)行,性能有很大改善。上述執(zhí)行切換模塊22以及執(zhí)行記錄模塊23可設(shè)置于微型內(nèi)核模塊中。本實(shí)施例中的虛擬化的技術(shù),實(shí)現(xiàn)了一個(gè)進(jìn)程級(jí)虛擬機(jī)20,不需要安裝操作系統(tǒng)。該虛擬機(jī)20只運(yùn)行進(jìn)程代碼,對(duì)內(nèi)存等資源的消耗很少,普通個(gè)人電腦(PC機(jī))即可同時(shí)運(yùn)行多個(gè)實(shí)例。樣本文件(比如病毒等)執(zhí)行時(shí)對(duì)虛擬機(jī)20環(huán)境執(zhí)行權(quán)限受限,比如只有讀權(quán)限,而將可能造成破壞的寫操作被模擬或者重定向,因此也不需要恢復(fù)快照。如此,虛擬機(jī)20可以連續(xù)運(yùn)行大量樣本文件,處理能力提升很多。參照?qǐng)D5,上述虛擬機(jī)20還包括權(quán)限設(shè)定模塊24,用于設(shè)定物理處理器的指令執(zhí)行權(quán)限,以及,創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制。該權(quán)限設(shè)定模塊24也可設(shè)置于微型內(nèi)核模塊中。在初始化后,上述微型內(nèi)核模塊可將樣本文件在虛擬操作系統(tǒng)環(huán)境中運(yùn)行,并將將樣本文件的指令在物理處理器上執(zhí)行。并可在樣本文件運(yùn)行之前,設(shè)置硬件設(shè)備的指令執(zhí)行范圍,使得硬件設(shè)備只可在設(shè)置范圍內(nèi)執(zhí)行樣本文件的指令,為樣本文件提供隔離的運(yùn)行環(huán)境。本實(shí)施例中該虛擬機(jī)20在運(yùn)行樣本文件時(shí),對(duì)樣本文件使用的CPU和內(nèi)存都有效隔離,使得惡意行為和運(yùn)行故障都只影響虛擬的環(huán)境,外部環(huán)境對(duì)病毒不可見,也不會(huì)造成破壞。
上述設(shè)定范圍可包括處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍等。比如,設(shè)定物理處理器的指令執(zhí)行權(quán)限,使物理處理器不可執(zhí)行可能危害硬件設(shè)備本身的指令;以及,創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制,使得只可在設(shè)定的內(nèi)存區(qū)域內(nèi)執(zhí)行樣本文件的讀寫指令等,為樣本文件運(yùn)行提供隔離的內(nèi)存環(huán)境。上述調(diào)用可包括抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令時(shí),根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。參照?qǐng)D2,為本實(shí)施例虛擬機(jī)20的結(jié)構(gòu)示意圖;該虛擬操作系統(tǒng)環(huán)境為控制調(diào)度模塊所創(chuàng)建,樣本文件可在該虛擬操作系統(tǒng)環(huán)境中運(yùn)行,該虛擬操作系統(tǒng)環(huán)境與實(shí)際操作系統(tǒng)之間通過該微型內(nèi)核模塊進(jìn)行通訊,該微型內(nèi)核模塊與虛擬操作系統(tǒng)環(huán)境之間通過中斷調(diào)用通訊。參照?qǐng)D3,為本實(shí)施例虛擬機(jī)20中針對(duì)API的截獲和處理的結(jié)構(gòu)示意圖;本實(shí)施例虛擬機(jī)20中,API可使用模板來實(shí)現(xiàn),每個(gè)API都對(duì)應(yīng)ー個(gè)系統(tǒng)調(diào)用。例如INT 0X80,此中斷會(huì)被微型內(nèi)核模塊抓到,并可將該調(diào)用信息提交到控制調(diào)用模塊21 ;該控制調(diào)用模塊21即可記錄該次API調(diào)用。另外,該控制調(diào)用模塊21可以根據(jù)策略,修改API的調(diào)用參數(shù)和返回值,從而控制API的執(zhí)行。上述虛擬機(jī)20中運(yùn)行樣本文件時(shí),樣本文件使用的DLL模塊都由虛擬機(jī)20生成,代碼可見,從本質(zhì)上解決了調(diào)用截獲的問題;生成的模擬API函數(shù)入口代碼和真實(shí)API入口代碼一致,從而解決了被檢測(cè)的問題。以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,并非因此限制本發(fā)明的專利范圍,凡是利用本發(fā)明說明書及附圖內(nèi)容所作的等效結(jié)構(gòu)或等效流程變換,或直接或間接運(yùn)用在其他相關(guān)的技術(shù)領(lǐng)域,均同理包括在本發(fā)明的專利保護(hù)范圍內(nèi)。
權(quán)利要求
1.一種文件可控執(zhí)行的檢測(cè)方法,其特征在于,包括 建立虛擬操作系統(tǒng)環(huán)境; 在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境; 調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。
2.根據(jù)權(quán)利要求I所述的文件可控執(zhí)行的檢測(cè)方法,其特征在于,所述初始化包括 虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。
3.根據(jù)權(quán)利要求I或2所述的文件可控執(zhí)行的檢測(cè)方法,其特征在于,所述建立虛擬操作系統(tǒng)環(huán)境的步驟包括 初始化虛擬環(huán)境的全局描述符表或中斷描述表、調(diào)試寄存器、控制寄存器、段寄存器以及快速系統(tǒng)調(diào)用相關(guān)的模式寄存器。
4.根據(jù)權(quán)利要求I或2所述的文件可控執(zhí)行的檢測(cè)方法,其特征在于,所述設(shè)定范圍包括 處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍。
5.根據(jù)權(quán)利要求3所述的文件可控執(zhí)行的檢測(cè)方法,其特征在于,所述通過處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令的步驟之前還包括 設(shè)定物理處理器的指令執(zhí)行權(quán)限,以及創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制。
6.根據(jù)權(quán)利要求I或2所述的文件可控執(zhí)行的檢測(cè)方法,其特征在于,所述調(diào)用包括 抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令吋,根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。
7.一種文件可控執(zhí)行的虛擬機(jī),其特征在于,包括 控制調(diào)用模塊,用于建立虛擬操作系統(tǒng)環(huán)境; 執(zhí)行切換模塊,用于在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境; 執(zhí)行記錄模塊,用于調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。
8.根據(jù)權(quán)利要求7所述的文件可控執(zhí)行的虛擬機(jī),其特征在于,所述初始化包括 虛擬操作系統(tǒng)環(huán)境的初始化、將樣本文件初始化和/或樣本文件的進(jìn)程初始化。
9.根據(jù)權(quán)利要求7或8所述的文件可控執(zhí)行的虛擬機(jī),其特征在于,所述控制調(diào)用模塊還用于 初始化虛擬環(huán)境的全局描述符表或中斷描述表、調(diào)試寄存器、控制寄存器、段寄存器以及快速系統(tǒng)調(diào)用相關(guān)的模式寄存器。
10.根據(jù)權(quán)利要求7或8所述的文件可控執(zhí)行的虛擬機(jī),其特征在于,所述設(shè)定范圍包括 處理器的指令執(zhí)行權(quán)限和/或主存儲(chǔ)器或外存儲(chǔ)器的讀寫范圍。
11.根據(jù)權(quán)利要求10所述的文件可控執(zhí)行的虛擬機(jī),其特征在于,所述虛擬機(jī)還包括 權(quán)限設(shè)定模塊,用于設(shè)定物理處理器的指令執(zhí)行權(quán)限,以及創(chuàng)建內(nèi)存的分級(jí)頁表管理機(jī)制。
12.根據(jù)權(quán)利要求7或8所述的文件可控執(zhí)行的虛擬機(jī),其特征在于,所述調(diào)用包括 抓取樣本文件的系統(tǒng)調(diào)用指令,并記錄該次調(diào)用;在執(zhí)行所述系統(tǒng)調(diào)用指令吋,根據(jù)預(yù)設(shè)策略修改API的調(diào)用參數(shù)和返回值,控制API的執(zhí)行。
全文摘要
本發(fā)明揭示了一種文件可控執(zhí)行的檢測(cè)方法及虛擬機(jī)。該檢測(cè)方法可包括建立虛擬操作系統(tǒng)環(huán)境;在初始化后,將樣本文件的執(zhí)行切換至建立的虛擬操作系統(tǒng)環(huán)境;調(diào)用處理器在設(shè)定范圍內(nèi)執(zhí)行所述樣本文件的指令,并記錄所述樣本文件的行為。本發(fā)明通過建立虛擬的操作系統(tǒng)環(huán)境供樣本文件運(yùn)行,使用物理處理器執(zhí)行樣本文件的指令,并預(yù)先設(shè)置硬件設(shè)備的指令執(zhí)行范圍,使得該樣本文件的運(yùn)行安全可控;同時(shí),消耗較少資源,具有較高執(zhí)行效率。
文檔編號(hào)G06F21/00GK102779250SQ201210222810
公開日2012年11月14日 申請(qǐng)日期2012年6月29日 優(yōu)先權(quán)日2012年6月29日
發(fā)明者曹亮, 謝飛, 高小明 申請(qǐng)人:騰訊科技(深圳)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1