[發明專利]基于Xen虛擬化環境的內核級rootkit檢測和處理方法有效
| 申請號: | 201410103002.3 | 申請日: | 2014-03-19 |
| 公開(公告)號: | CN103886259A | 公開(公告)日: | 2014-06-25 |
| 發明(設計)人: | 陳興蜀;任益;張磊;陳林;曾雪梅 | 申請(專利權)人: | 四川大學 |
| 主分類號: | G06F21/56 | 分類號: | G06F21/56 |
| 代理公司: | 成都信博專利代理有限責任公司 51200 | 代理人: | 卓仲陽 |
| 地址: | 610065 四川*** | 國省代碼: | 四川;51 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 xen 虛擬 環境 內核 rootkit 檢測 處理 方法 | ||
1.一種基于Xen虛擬化環境的內核級rootkit檢測和處理方法,所述Xen虛擬化環境包括管理域、虛擬機監控器和半虛擬化的客戶機,其特征在于,管理域包括控制模塊,虛擬機監控器包括安全鏈表維護模塊、檢測模塊和敏感信息備份模塊,半虛擬化的客戶機包括運行時維護模塊和rootkit處理模塊;還包括
步驟1:在客戶機啟動過程中,內核敏感數據初始化完成,沒有用戶進程運行和內核模塊加載時,敏感信息備份模塊對內核中的敏感信息進行備份,包括
客戶機初始化時,客戶機發起超級調用HYVERVISOR_set_trap_table向虛擬機監控器注冊虛擬機中斷描述符表;
虛擬機監控器調用do_set_trap_table函數進行虛擬機中斷描述符表注冊;
在do_set_trap_table函數中,添加敏感信息備份模塊,敏感信息備份模塊通過copy_from_guest函數讀取內核敏感信息,對內核中的敏感信息進行備份;所述內核中的敏感信息包括系統調用表、中斷描述表、系統調用處理例程頭部和敏感系統調用頭部;
步驟2:客戶機內核模塊通過應用層工具進行加載時,運行時維護模塊收集正在被加載內核模塊的信息,進行安全鏈表更新操作,包括
應用程序進行內核模塊加載,觸發內核的sys_init_module系統調用,在sys_init_module函數進一步調用load_module函數進行模塊加載,運行時維護模塊通過對sys_init_module函數與load_module函數的劫持,收集被加載內核模塊的信息,調用超級調用向安全鏈表維護模塊傳遞內核模塊信息并發起安全鏈表更新請求;所述被加載內核模塊的信息包括內核模塊名稱與內核模塊控制結構體在內存中的位置;
安全鏈表維護模塊檢查安全鏈表更新請求的合法性,如果合法則獲取運行時維護模塊所傳遞的內核模塊信息并進行安全鏈表更新操作,如果不合法,則忽略此請求;
步驟3:客戶機內核模塊加載成功后,運行時維護模塊同步建立用戶視圖,并收集用戶視圖和內核視圖信息,觸發超級調用,陷入虛擬機監控器,與安全鏈表提供的安全鏈表視圖交叉對比進行rootkit檢測,包括
運行時維護模塊通過call_usermodehelper調用用戶態程序lsmod產生用戶態視圖文件;運行時維護模塊根據用戶態視圖文件在內核中分配內存,重構用戶視圖Vu;運行時維護模塊收集用戶視圖Vu和內核視圖Vk的信息,觸發超級調用向檢測模塊發起檢測請求;
檢測模塊進行隱藏性檢測,如果存在內核模塊E,其出現在Vk中卻不在Vu中,則E為rootkit,查詢安全鏈表中E的信息,記錄到檢測記錄中;如果存在內核模塊e,其出現在安全鏈表視圖Vs中卻不在Vk中,則e為rootkit,將e的信息記錄到檢測記錄中;
步驟4:檢測模塊進行內核敏感信息攻擊性檢測,包括
檢測模塊讀取客戶機當前的IDT表信息,與虛擬機監控器中的敏感信息備份進行對比,查看客戶機的IDT表內容是否被篡改;如果被篡改,則當前所加載內核模塊為rootkit,檢測模塊恢復被篡改的內容并記錄下此rootkit具體的攻擊到檢測記錄中;
檢測模塊檢測系統調用處理例程的頭部是否被篡改,檢測系統調用處理例程中call指令后的系統調用表地址是否被篡改;如果被篡改則當前所加載內核模塊為rootkit,檢測模塊恢復被篡改的內容并記錄下此rootkit具體的攻擊到檢測記錄中;
檢測模塊檢測敏感系統調用的頭部是否被篡改,以及其在系統調用表中的地址是否正確;如果被篡改則當前所加載內核模塊為rootkit,檢測模塊恢復被篡改的內容并記錄下此rootkit具體的攻擊到檢測記錄中;
步驟5:在管理域對客戶機中的rootkit進行處理,包括
通過控制模塊,查看虛擬機監控器中的檢測記錄,獲取到客戶機當前遭受rootkit攻擊的情況,根據攻擊情況,發出出信息恢復或rootkit卸載的處理命令;
控制模塊通過通信區域傳遞處理命令;
rootkit處理模塊監控通信區域的變化,當新的命令到達時,rootkit處理模塊獲取命令,分析命令,根據命令對rootkit進行處理,包括rootkit信息恢復:通過讀取安全鏈表中的信息,在客戶機內核中將rootkit缺失的鏈表信息進行恢復;以及rootkit卸載:利用客戶機中的應用層工具實現對rootkit的卸載。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于四川大學,未經四川大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410103002.3/1.html,轉載請聲明來源鉆瓜專利網。





