新四季網

一種可疑代碼分析方法及裝置的製作方法

2023-06-01 23:12:21 1

專利名稱:一種可疑代碼分析方法及裝置的製作方法
技術領域:
本發明涉及計算機安全技術領域,尤其涉及一種可疑代碼分析方法及裝置。
背景技術:
可疑代碼行為分析環境在理論上是一種虛擬執行環境,而這一個虛擬執行環境的建立的理論依據就是虛擬機(virtual machine, VM)技術。 傳統的虛擬機技術,就是所謂的硬體級虛擬機,它的理論原理是對硬體進行虛擬化,向運行在其上的VM提供接口 ,每個VM上運行一個獨立的GuestOS,每個GuestOS都認為自己獨立運行在硬體之上。硬體級虛擬機的設計與實現都非常複雜,並且每一種虛擬機的具體實現方案都有所不同,比如VmWare, Microsoft Virtual PC,但是它們的大體思路是一樣的,就是對硬體進行虛擬化,其中最重要的部分是CPU虛擬化,內存虛擬化和設備虛擬化。 但是硬體級虛擬機的設計與實現是非常困難的,涉及到的技術領域也非常廣,因此到現在為止,能夠實現硬體級虛擬機的只有少數幾個大公司和幾個研究機構;硬體級虛擬機對資源佔用很大,原因之一是指令的執行依靠VMM的轉化,第二是缺頁中斷需要VMM處理,第三是1/0操作也要V匪參與,此外CPU調度算法的優劣,1/0調度算法的優劣也是決定因素之一。 為了解決硬體級虛擬機上述兩個問題,另外一種被稱作作業系統級虛擬機產生了 。這種虛擬機對系統調用進行虛擬化,對運行其上的應用程式提供一個虛擬執行環境,並且提供相當程度的隔離。所有的作業系統VM都共享主機0S的內核組件,包括硬體抽象層,設備驅動,OS kernel (作業系統內核)和OS Executive,和系統啟動所需的組件。每個新VM啟動的作業系統環境和主機0S當時的環境是一致的。這樣,VM啟動的時延,初始化所需要的資源都是很少的,VM在運行的時候對主機OS造成的負擔也是很小的,因為它採用的是命名空間虛擬化技術。 作業系統級的虛擬機的優勢就是,設計與實現比較簡單,運行時負擔比較小,並且能夠提供進程間的隔離,因此在許多方面都有應用。 在實現本發明的過程中,發明人發現現有技術中至少存在如下問題由於作業系統級虛擬機是依賴作業系統的,所以有大部分作業系統內核是不能夠被修改的,而系統某些程序或是組件是緊密依賴與這些內核結構的,所以作業系統級的虛擬機不能完全的提供虛擬化;由於不能完全提供虛擬化,直接利用現有的作業系統級虛擬機來分析可疑代碼的行為是不合適的;利用這種理論實現的系統大部分只提到了如何將VM APP(指虛擬機中運行的進程)限制在VM中,而沒有詳細說明如何防止VM APP對主機系統的幹擾。

發明內容
本發明實施例提供一種可疑代碼分析方法及裝置,實現對可疑代碼的行為採集與分析在虛擬執行環境中進行,並且提供良好的隔離效果,避免可疑代碼對主機進程造成破壞。 本發明實施例提供一種可疑代碼分析方法,包括 創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主機系統的常用進程;
將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執行環境創建 的進程; 將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼虛擬執行
環境創建的虛擬的文件系統或虛擬的註冊表; 記錄可疑代碼運行時的行為特徵並保存為日誌文件; 將所述日誌文件通過命名管道發送至所述主機系統進行分析,所述命名管道對於
所述代碼虛擬執行環境中的可疑代碼是不可見的。 本發明實施例提供一種可疑代碼分析裝置,包括 虛擬執行環境創建模塊,用於創建代碼虛擬執行環境,所述代碼虛擬執行環境創 建主機系統的常用進程; 重定向模塊,用於將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛 擬執行環境創建的進程,將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述 代碼虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表; 行為記錄模塊,用於記錄可疑代碼運行時的行為特徵並保存為日誌文件; 管道通信模塊,用於將所述日誌文件通過命名管道發送至所述主機系統進行分
析,所述命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的。 本發明實施例通過創建所述代碼虛擬執行環境,在可疑代碼對主機系統進行操作
後,將記錄的可疑代碼的日誌文件通過命名管道發送至所述主機系統進行分析,由於這個
命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的,可避免可疑代碼不能通過
這個命名管道對主機系統的進程造成影響。


為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現 有技術描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是 本發明的一些實施例,對於本領域普通技術人員來講,在不付出創造性勞動性的前提下,還 可以根據這些附圖獲得其他的附圖。 圖1是本發明實施例一可疑代碼分析方法的流程示意圖;
圖2是本發明實施例二可疑代碼分析方法的流程示意圖;
圖3是本發明實施例一可疑代碼分析裝置的結構示意圖;
圖4是本發明實施例二可疑代碼分析裝置的結構示意圖。
具體實施例方式
為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施方式, 對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施方式
僅僅用以解釋本發 明,並不用於限定本發明。 請參考圖l,為本發明實施例一可疑代碼分析方法的流程示意圖,其步驟包括
4
步驟S10 :創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主機系統的常用 進程。 首先,啟動可疑代碼行為採集分析環境程序(MCVEE. EXE),並初始化可疑代碼行為 採集分析環境。所述初始化過程包括加載各功能模塊,所述功能模塊可包括文件模塊、注 冊表模塊、內核對象模塊和管道通信模塊。 所述文件模塊用於對代碼虛擬執行環境中運行的進程虛擬出一個文件系統,使得 代碼虛擬執行環境中的進程都運行於這個虛擬的文件系統上,從而保護主機文件系統不被 可疑代碼破壞。 所述註冊表模塊用於對代碼虛擬執行環境中運行的進程虛擬出一個註冊表系統, 使得代碼虛擬執行環境中的進程都運行於這個虛擬的註冊表系統上,從而保護主機註冊表 系統不被可疑代碼破壞。 所述內核對象模塊用於對代碼虛擬執行環境中運行的進程虛擬出 一個內核對象 的命名空間,保護代碼虛擬執行環境中的內核對象不被主機系統進程所幹擾,提高代碼虛 擬執行環境與主機系統的隔離度。 所述管道通信模塊用於限制主機進程和代碼虛擬執行環境中的進程之間進行通 信,只允許主機進程和代碼虛擬執行環境中的進程利用一個特定的命名管道進行通信。這 個命名管道對於代碼虛擬執行環境中的可疑代碼是不可見的,並只被代碼虛擬執行環境進 程本身所使用,這個命名管道可以用於把代碼虛擬執行環境中的日誌文件安全的傳送到主
機系統中。 所述文件模塊、註冊表模塊和內核對象模塊構造出一個代碼虛擬執行環境,所述 代碼虛擬執行環境創建主機系統的常用進程,比如E鄧lorer. exe進程等,鑑於可疑代碼通 常通過進程名來確定一個進程,因此所述代碼虛擬執行環境啟動的常用進程不必是真正在 主機上的進程,而是一個同名的假進程。 所述功能模塊還可包括網絡模塊或清理模塊,所述網絡模塊用於實現代碼虛擬執
行環境中的進程的網絡傳輸功能,並把屬於主機系統和代碼虛擬執行環境的網絡數據高效
的分流;所述清理模塊用於在採集分析完可疑代碼後,關閉代碼虛擬執行環境,清理代碼虛
擬執行環境所創建的虛擬文件系統、虛擬註冊表系統、虛擬內核對象等。 所述網絡模塊包括IP位址生成模塊、行為記錄接口模塊和數據分流模塊,所述IP
地址生成模塊用於在所述代碼虛擬執行環境啟動時獲得一個可用的不同於主機IP位址的
IP位址(虛假IP),所述代碼虛擬執行環境中所有的進程進行網絡通信時都使用這個IP地
址,可使主機與所述代碼虛擬執行環境的網絡行為相互獨立。 當所述代碼虛擬執行環境中的進程需要發送數據時,將所述代碼虛擬執行環境中 的進程的網絡數據用IP位址生成模塊獲得的IP位址進行封裝,進程操作之後被所述行為 記錄接口模塊處理,若這個操作是要被記錄在日誌文件的操作,那麼行為記錄接口按照用 戶的設置把這個行為記錄下來,然後交給下一步,否則,直接發送所述封裝的數據包。
當網絡上的數據包發送給所述代碼虛擬執行環境中的進程時,數據包首先交給所 述數據分流模塊進行處理,若數據包屬於主機系統,則直接把數據包轉給主機系統,進程操 作之後被所述行為記錄接口模塊處理,若這個操作是要被記錄在日誌文件的操作,那麼行 為記錄接口按照用戶的設置把這個行為記錄下來,然後交給下一步,否則,直接把數據包交給所述代碼虛擬執行環境中的進程,由此實現數據的分流。 步驟S12 :將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執行 環境創建的進程。 可疑代碼啟動後可能對主機系統中的常用進程(如E鄧lorer. exe)進行操作,為 避免可疑代碼經常對這些進程進行操作和破壞,所以需要將這些操作重定向到所述代碼虛 擬執行環境創建的常用進程上,同時方便所述代碼虛擬執行環境對所述可疑代碼的行為進 行檢測和分析。 步驟14 :將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼 虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表。 這裡的重定向只是將可疑代碼對主機系統的文件系統或註冊表的操作進行重定 向,對於可疑代碼對主機系統的內核對象的操作則不做重定向,直接允許其操作,因為操作 系統級虛擬機不是運行於最底層,因此需要用到大量的主機作業系統的內核結構與內核對 象。 步驟16 :所述代碼虛擬執行環境記錄可疑代碼運行時的行為特徵並保存為日誌 文件。 可疑代碼對主機系統的常用進程、主機系統的文件系統或註冊表的操作重定向到
所述代碼虛擬執行環境創建的進程、虛擬的文件系統或虛擬的註冊表後,可疑代碼對重定
向的對應進程、虛擬的文件系統或虛擬的註冊表進行操作,所述代碼虛擬執行環境記錄可
疑代碼運行時的行為特徵並保存為日誌文件;具體實現時可提供一個行為記錄的接口 ,用
戶可以根據自己的行為分析程序的需要,通過這個行為記錄接口,設置需要記錄的特徵以
及日誌文件的相關配置,將可疑代碼運行時的行為特徵並保存為日誌文件便於後續分析。
步驟18 :將所述日誌文件通過命名管道發送至所述主機系統進行分析,所述命名
管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的,並只被所述代碼虛擬執行環境
中的進程本身所使用,所以可疑代碼不能通過這個命名管道對主機系統的進程造成影響。 本發明實施例通過創建所述代碼虛擬執行環境,在可疑代碼對主機系統操作後,
將記錄的可疑代碼的日誌文件通過命名管道發送至所述主機系統進行分析,由於這個命名
管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的,可避免可疑代碼不能通過這個
命名管道對主機系統的進程造成影響。 請參考圖2,為本發明實施例二可疑代碼分析方法的流程示意圖,其步驟包括
步驟20 :創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主機系統的常用進 程。 首先,啟動可疑代碼行為採集分析環境程序(MCVEE. ExE),並初始化可疑代碼行為 採集分析環境。所述初始化過程包括加載各功能模塊,所述功能模塊可包括文件模塊、注 冊表模塊、內核對象模塊和管道通信模塊。 所述文件模塊、註冊表模塊、內核對象模塊構造出一個代碼虛擬執行環境,所述代 碼虛擬執行環境創建主機系統的常用進程,比如E鄧lorer. exe進程等,鑑於可疑代碼通常 通過進程名來確定一個進程,因此所述代碼虛擬執行環境啟動的常用進程不必是真正在主 機上的進程,而是一個同名的假進程。 所述管道通信模塊用於限制主機進程和代碼虛擬執行環境中的進程之間進行通信,只允許主機進程和代碼虛擬執行環境中的進程利用一個特定的命名管道進行通信。這 個命名管道對於代碼虛擬執行環境中的可疑代碼是不可見的,並只被代碼虛擬執行環境進 程本身所使用,這個命名管道可以用於把代碼虛擬執行環境中的日誌文件安全的傳送到主 機系統中。 所述功能模塊還可包括網絡模塊或清理模塊,所述網絡模塊用於實現代碼虛擬執
行環境中的進程的網絡傳輸功能,並把屬於主機系統和代碼虛擬執行環境的網絡數據高效
的分流;所述清理模塊用於在採集分析完可疑代碼後,關閉代碼虛擬執行環境,清理代碼虛
擬執行環境所創建的虛擬文件系統、虛擬註冊表系統、虛擬內核對象等。 步驟21 :啟動可疑代碼,所述可疑代碼對主機系統的進程進行操作。 可疑代碼啟動後,對主機系統中的進程、文件系統、註冊表或內核進行操作。 步驟22 :禁止非所述代碼虛擬執行環境的進程對所述代碼虛擬執行環境的操作。 對於非所述代碼虛擬執行環境的進程對所述代碼虛擬執行環境的操作,比如主機
系統運行的應用程式,禁止其對所述代碼虛擬執行環境的進程進行的操作,從而可以做到
主機系統進程的操作不影響到代碼虛擬執行環境的運行。 步驟S23 :將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執行 環境創建的進程。 可疑代碼啟動後可能對主機系統中的常用進程(如E鄧lorer. exe)進行操作,為 避免可疑代碼經常對這些進程進行操作和破壞,所以需要將這些操作重定向到所述代碼虛 擬執行環境創建的常用進程上,同時方便所述代碼虛擬執行環境對所述可疑代碼的行為進 行檢測和分析。 步驟24 :將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼 虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表。 這裡的重定向只是將可疑代碼對主機系統的文件系統或註冊表的操作進行重定 向,對於可疑代碼對主機系統的內核對象的操作則不做重定向,直接允許其操作,因為操作 系統級虛擬機不是運行於最底層,因此需要用到大量的主機作業系統的內核結構與內核對 象。 步驟25 :所述代碼虛擬執行環境記錄可疑代碼運行時的行為特徵並保存為日誌 文件。 可疑代碼對主機系統的常用進程、主機系統的文件系統或註冊表的操作重定向到
所述代碼虛擬執行環境創建的進程、虛擬的文件系統或虛擬的註冊表後,可疑代碼對重定
向的對應進程、虛擬的文件系統或虛擬的註冊表進行操作,所述代碼虛擬執行環境記錄可
疑代碼運行時的行為特徵並保存為日誌文件;具體實現時可提供一個行為記錄的接口 ,用
戶可以根據自己的行為分析程序的需要,通過這個行為記錄接口,設置需要記錄的特徵以
及日誌文件的相關配置,將可疑代碼運行時的行為特徵並保存為日誌文件便於後續分析。
步驟26 :將所述日誌文件通過命名管道發送至所述主機系統進行分析,所述命名
管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的,並只被所述代碼虛擬執行環境
中的進程本身所使用,所以可疑代碼不能通過這個命名管道對主機系統的進程造成影響。
步驟27 :限制所述代碼虛擬執行環境中的可疑代碼進程獲取主機系統中的進程
信息,可保護主機系統的進程不被可疑代碼進程破壞。
7
本發明實施例可先允許所述代碼虛擬執行環境中的可疑代碼進程獲取主機系統 的進程信息的行為,再從返回結果中去掉那些不屬於所述代碼虛擬執行環境中進程的內容。 步驟28 :限制所述代碼虛擬執行環境中的可疑代碼進程發消息給主機系統中的 進程,還可同時限制主機中的進程發消息給所述代碼虛擬執行環境中的進程,從而使主機 系統與所述代碼虛擬執行環境更好的隔離開。 本發明實施例通過創建所述代碼虛擬執行環境,禁止非所述代碼虛擬執行環境的 進程對所述代碼虛擬執行環境的操作,可避免主機系統進程的操作影響到代碼虛擬執行環 境的運行;同時在可疑代碼對主機系統操作後,將記錄的可疑代碼的日誌文件通過命名管 道發送至所述主機系統進行分析,由於這個命名管道對於所述代碼虛擬執行環境中的可疑 代碼是不可見的,可避免可疑代碼不能通過這個命名管道對主機系統的進程造成影響,另 外通過限制所述代碼虛擬執行環境中的可疑代碼進程獲取主機系統中的進程信息及限制 所述代碼虛擬執行環境中的可疑代碼進程發消息給主機系統中的進程可使主機系統與所 述代碼虛擬執行環境更好的隔離開。 請參考圖3,為本發明實施例一可疑代碼分析裝置的結構示意圖,所述可疑代碼分 析裝置包括虛擬執行環境創建模塊40、重定向模塊60、行為記錄模塊80及管道通信模塊 100。 所述虛擬執行環境創建模塊40,用於創建代碼虛擬執行環境,所述代碼虛擬執行 環境創建主機系統的常用進程。所述虛擬執行環境創建模塊40首先啟動可疑代碼行為採 集分析環境程序(MCVEE.EXE),並初始化可疑代碼行為採集分析環境。所述初始化過程包 括加載各功能模塊,所述功能模塊可包括文件模塊、註冊表模塊、內核對象模塊和管道通 信模塊。 所述文件模塊、註冊表模塊、內核對象模塊構造出一個代碼虛擬執行環境,所述代 碼虛擬執行環境創建主機系統的常用進程,比如E鄧lorer. exe進程等,鑑於可疑代碼通常 通過進程名來確定一個進程,因此所述代碼虛擬執行環境啟動的常用進程不必是真正在主 機上的進程,而是一個同名的假進程。 所述管道通信模塊用於限制主機進程和代碼虛擬執行環境中的進程之間進行通 信,只允許主機進程和代碼虛擬執行環境中的進程利用一個特定的命名管道進行通信。這 個命名管道對於代碼虛擬執行環境中的可疑代碼是不可見的,並只被代碼虛擬執行環境進 程本身所使用,這個命名管道可以用於把代碼虛擬執行環境中的日誌文件安全的傳送到主
機系統中。 本發明實施例中初始化過程中加載的功能模塊還包括網絡模塊,用於完成所述代 碼虛擬執行環境中進程的網絡數據傳輸功能,並把屬於主機系統和所述代碼虛擬執行環境 的網絡數據高效的分流。所述網絡模塊包括IP位址生成模塊、行為記錄接口模塊和數據分 流模塊,所述IP位址生成模塊用於在所述代碼虛擬執行環境啟動時獲得一個可用的不同 於主機IP位址的IP位址(虛假IP),所述代碼虛擬執行環境中所有的進程進行網絡通信時 都使用這個IP位址,可使主機與所述代碼虛擬執行環境的網絡行為相互獨立。
當所述代碼虛擬執行環境中的進程需要發送數據時,將所述代碼虛擬執行環境中 的進程的網絡數據用IP位址生成模塊獲得的IP位址進行封裝,進程操作之後被所述行為記錄接口模塊處理,若這個操作是要被記錄在日誌文件的操作,那麼行為記錄接口按照用 戶的設置把這個行為記錄下來,然後交給下一步,否則,直接發送所述封裝的數據包。
當網絡上的數據包發送給所述代碼虛擬執行環境中的進程時,數據包首先交給所 述數據分流模塊進行處理,若數據包屬於主機系統,則直接把數據包轉給主機系統,進程操 作之後被所述行為記錄接口模塊處理,若這個操作是要被記錄在日誌文件的操作,那麼行 為記錄接口按照用戶的設置把這個行為記錄下來,然後交給下一步,否則,直接把數據包交 給所述代碼虛擬執行環境中的進程,由此實現數據的分流。 所述重定向模塊60,用於將可疑代碼對主機系統的常用進程的操作重定向到所述 代碼虛擬執行環境創建的進程,將可疑代碼對主機系統的文件系統或註冊表的操作重定向 到所述代碼虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表。 可疑代碼啟動後可能對主機系統中的常用進程(如E鄧lorer. exe)進行操作,為 避免可疑代碼經常對這些進程進行操作和破壞,所述重定向模塊60將這些操作重定向到 所述代碼虛擬執行環境創建的常用進程上。 另外,所述重定向模塊60隻是將可疑代碼對主機系統的文件系統或註冊表的操 作進行重定向,對於可疑代碼對主機系統的內核對象的操作則不做重定向,直接允許其操 作,因為作業系統級虛擬機不是運行於最底層,因此需要用到大量的主機作業系統的內核 結構與內核對象。 所述行為記錄模塊80,用於記錄可疑代碼運行時的行為特徵並保存為日誌文件。
可疑代碼對主機系統的常用進程、主機系統的文件系統或註冊表的操作重定向到所述代碼
虛擬執行環境創建的進程、虛擬的文件系統或虛擬的註冊表後,可疑代碼對重定向的對應
進程、虛擬的文件系統或虛擬的註冊表進行操作,所述行為記錄模塊80記錄可疑代碼運行
時的行為特徵並保存為日誌文件;具體實現時可提供一個行為記錄的接口,用戶可以根據
自己的行為分析程序的需要,通過這個行為記錄接口,設置需要記錄的特徵以及日誌文件
的相關配置,將可疑代碼運行時的行為特徵並保存為日誌文件便於後續分析。 所述管道通信模塊100,用於將所述行為記錄模塊80記錄的日誌文件通過命名管
道發送至所述主機系統進行分析,所述命名管道對於所述代碼虛擬執行環境中的可疑代碼
是不可見的,並只被所述代碼虛擬執行環境中的進程本身所使用,所以可疑代碼不能通過
這個命名管道對主機系統的進程造成影響。 本發明實施例通過所述虛擬執行環境創建模塊40創建所述代碼虛擬執行環境, 在可疑代碼對主機系統操作後,所述管道通信模塊100將記錄的可疑代碼的日誌文件通過 命名管道發送至所述主機系統進行分析,由於這個命名管道對於所述代碼虛擬執行環境中 的可疑代碼是不可見的,可避免可疑代碼不能通過這個命名管道對主機系統的進程造成影 響。 請參考圖4,為本發明實施例二可疑代碼分析裝置的結構示意圖,其與圖3中可疑 代碼分析裝置相似,其包括虛擬執行環境創建模塊40、重定向模塊60、行為記錄模塊80及 管道通信模塊IOO,還可包括一個可疑代碼啟動模塊50、訪問控制模塊70、分析模塊90、進 程信息限制模塊120或消息限制模塊140。 所述虛擬執行環境創建模塊40用於創建代碼虛擬執行環境,所述代碼虛擬執行 環境創建主機系統的常用進程。
9
所述可疑代碼啟動模塊50,用於啟動可疑代碼,所述可疑代碼對主機系統操作,所
述操作包括可疑代碼對主機系統的常用進程、文件系統、註冊表或內核對象的操作。 所述重定向模塊60,用於將可疑代碼對主機系統的常用進程的操作重定向到所述
代碼虛擬執行環境創建的進程,將可疑代碼對主機系統的文件系統或註冊表的操作重定向
到所述代碼虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表。 可疑代碼啟動後可能對主機系統中的常用進程(如E鄧lorer. exe)進行操作,為 避免可疑代碼經常對這些進程進行操作和破壞,所述重定向模塊60將這些操作重定向到 所述代碼虛擬執行環境創建的常用進程上。 另外,所述重定向模塊60隻是將可疑代碼對主機系統的文件系統或註冊表的操 作進行重定向,對於可疑代碼對主機系統的內核對象的操作則不做重定向,直接允許其操 作,因為作業系統級虛擬機不是運行於最底層,因此需要用到大量的主機作業系統的內核 結構與內核對象。 所述訪問控制模塊70,用於禁止非所述代碼虛擬執行環境的進程對所述代碼虛擬 執行環境的操作。 對於非所述代碼虛擬執行環境的進程對所述代碼虛擬執行環境的操作,比如主機
系統運行的應用程式,所述訪問控制模塊70禁止其對非所述代碼虛擬執行環境的進程進
行的操作,從而可以做到主機系統進程的操作不影響到代碼虛擬執行環境的運行。 所述行為記錄模塊80,用於記錄可疑代碼運行時的行為特徵並保存為日誌文件。
可疑代碼對主機系統的常用進程、主機系統的文件系統或註冊表的操作重定向到所述代碼
虛擬執行環境創建的進程、虛擬的文件系統或虛擬的註冊表後,可疑代碼對重定向的對應
進程、虛擬的文件系統或虛擬的註冊表進行操作,所述行為記錄模塊80記錄可疑代碼運行
時的行為特徵並保存為日誌文件;具體實現時可提供一個行為記錄的接口,用戶可以根據
自己的行為分析程序的需要,通過這個行為記錄接口,設置需要記錄的特徵以及日誌文件
的相關配置,將可疑代碼運行時的行為特徵並保存為日誌文件便於後續分析。 所述管道通信模塊100,用於將所述行為記錄模塊80記錄的日誌文件通過命名管
道發送至所述主機系統進行分析,所述命名管道對於所述代碼虛擬執行環境中的可疑代碼
是不可見的,並只被所述代碼虛擬執行環境中的進程本身所使用,所以可疑代碼不能通過
這個命名管道對主機系統的進程造成影響。 所述分析模塊90,用於接收所述管道通信模塊100發送的日誌文件進行可疑代碼 分析。 所述進程信息限制模塊120,用於限制所述代碼虛擬執行環境中的可疑代碼進程
獲取主機系統中的進程信息,可保護主機系統的進程不被可疑代碼進程破壞。 所述消息限制模塊140,用於限制所述代碼虛擬執行環境中的可疑代碼進程發消
息給主機系統中的進程,還可同時限制主機中的進程發消息給所述代碼虛擬執行環境中的
進程,從而使主機系統與所述代碼虛擬執行環境更好的隔離開。 本發明實施例通過創建所述代碼虛擬執行環境,所述訪問控制模塊70禁止非所 述代碼虛擬執行環境的進程對所述代碼虛擬執行環境的操作,可避免主機系統進程的操作 影響到代碼虛擬執行環境的運行;同時在可疑代碼對主機系統操作後,所述管道通信模塊 100將記錄的可疑代碼的日誌文件通過命名管道發送至所述主機系統進行分析,由於這個命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的,可避免可疑代碼不能通過 這個命名管道對主機系統的進程造成影響;另外通過所述進程信息限制模塊120限制所述 代碼虛擬執行環境中的可疑代碼進程獲取主機系統中的進程信息及所述消息限制模塊140 限制所述代碼虛擬執行環境中的可疑代碼進程發消息給主機系統中的進程可使主機系統 與所述代碼虛擬執行環境更好的隔離開。 本領域普通技術人員可以理解實現上述實施例方法中的全部或部分步驟是可以 通過程序來指令相關的硬體來完成,所述程序可以存儲於一計算機可讀取存儲介質中,所 述存儲介質為ROM/RAM、磁碟、光碟等。 以上所述,僅為本發明較佳的具體實施方式
,但本發明的保護範圍並不局限於此, 任何熟悉本技術領域的技術人員在本發明揭露的技術範圍內,可輕易想到的變化或替換, 都應涵蓋在本發明的保護範圍之內。因此,本發明的保護範圍應該以權利要求的保護範圍 為準。
1權利要求
一種可疑代碼分析方法,包括創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主機系統的常用進程;將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執行環境創建的進程;將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表;記錄可疑代碼運行時的行為特徵並保存為日誌文件;將所述日誌文件通過命名管道發送至所述主機系統進行分析,所述命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的。
2. 如權利要求1所述的方法,其特徵在於所述方法還包括 禁止非所述代碼虛擬執行環境的進程對所述代碼虛擬執行環境的操作。
3. 如權利要求1所述的方法,其特徵在於所述創建代碼虛擬執行環境後還包括步驟啟動可疑代碼,所述可疑代碼對主機系統進行操作。
4. 如權利要求1所述的方法,其特徵在於所述命名管道只被所述代碼虛擬執行環境 中的進程本身所使用。
5. 如權利要求1所述的方法,其特徵在於還包括限制所述代碼虛擬執行環境中的可 疑代碼進程獲取主機系統中的進程信息。
6. 如權利要求1所述的方法,其特徵在於還包括限制所述代碼虛擬執行環境中的可 疑代碼進程發消息給主機系統中的進程。
7. —種可疑代碼分析裝置,包括虛擬執行環境創建模塊,用於創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主 機系統的常用進程;重定向模塊,用於將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執 行環境創建的進程,將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼 虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表;行為記錄模塊,用於記錄可疑代碼運行時的行為特徵並保存為日誌文件; 管道通信模塊,用於將所述日誌文件通過命名管道發送至所述主機系統進行分析,所 述命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的。
8. 如權利要求7所述的裝置,其特徵在於還包括訪問控制模塊,用於禁止非所述代碼 虛擬執行環境的進程對所述代碼虛擬執行環境的操作。
9. 如權利要求7所述的裝置,其特徵在於還包括可疑代碼啟動模塊,用於啟動可疑代 碼,所述可疑代碼對主機系統進行操作。
10. 如權利要求7所述的裝置,其特徵在於所述命名管道只被所述代碼虛擬執行環境 中的進程本身所使用。
11. 如權利要求7所述的裝置,其特徵在於還包括進程信息限制模塊,用於限制所述 代碼虛擬執行環境中的可疑代碼進程獲取主機系統中的進程信息。
12. 如權利要求7所述的裝置,其特徵在於還包括消息限制模塊,用於限制所述代碼 虛擬執行環境中的可疑代碼進程發消息給主機系統中的進程。
全文摘要
本發明實施例提供一種可疑代碼分析方法,包括創建代碼虛擬執行環境,所述代碼虛擬執行環境創建主機系統的常用進程;將可疑代碼對主機系統的常用進程的操作重定向到所述代碼虛擬執行環境創建的進程;將可疑代碼對主機系統的文件系統或註冊表的操作重定向到所述代碼虛擬執行環境創建的虛擬的文件系統或虛擬的註冊表;記錄可疑代碼運行時的行為特徵並保存為日誌文件;將所述日誌文件通過命名管道發送至所述主機系統進行分析,所述命名管道對於所述代碼虛擬執行環境中的可疑代碼是不可見的。本發明實施例還提供一種可疑代碼分析裝置,本發明實施例可避免可疑代碼對主機系統的進程造成影響。
文檔編號G06F21/22GK101727348SQ20081021647
公開日2010年6月9日 申請日期2008年10月10日 優先權日2008年10月10日
發明者張小松, 杜歡, 楊玉奇, 白皓文, 陳廳, 顧凌志 申請人:成都市華為賽門鐵克科技有限公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀