[發明專利]虛擬機內核的保護方法及裝置有效
| 申請號: | 201510980458.2 | 申請日: | 2015-12-23 |
| 公開(公告)號: | CN106909437B | 公開(公告)日: | 2021-01-29 |
| 發明(設計)人: | 萬榮飛;陳興蜀 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F9/455 | 分類號: | G06F9/455 |
| 代理公司: | 北京同立鈞成知識產權代理有限公司 11205 | 代理人: | 楊貝貝;黃健 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 虛擬機 內核 保護 方法 裝置 | ||
1.一種虛擬機內核的保護方法,其特征在于,包括:
截獲應用程序發起的系統調用函數;
根據虛擬機原始內核基地址與影子內核基地址的偏移值,將所述系統調用函數指向影子內核,根據所述影子內核中的影子系統服務描述表SSDT確定所述系統調用函數在影子內核中對應的入口地址;
其中,所述影子內核構建于所述虛擬機原始內核的非分頁池中,所述影子內核為根據所述虛擬機原始內核的鏡像文件構建的可執行內核代碼。
2.根據權利要求1所述的方法,其特征在于,所述截獲應用程序發起的系統調用函數之前,所述方法還包括:
構建所述影子內核。
3.根據權利要求2所述的方法,其特征在于,所述構建所述影子內核,包括:
將所述虛擬機原始內核的文件進行復制以獲取鏡像文件;
將所述鏡像文件按照可執行格式文件映射到所述虛擬機原始內核的非分頁池中,以形成影子內核初始代碼;
根據所述鏡像文件所映射的地址以及影子內核基地址,對所述影子內核初始代碼中的待重定向數據進行修復,并獲取修復后的待重定向數據;
將所述修復后的待重定向數據中SSDT對應的數據和影子中斷描述表IDT對應的數據進行備份,以獲取影子IDT和所述影子SSDT;
將所述修復后的待重定向數據重定向到所述虛擬機原始內核,以獲取目標重定向數據,并將所述目標重定向數據中的SSDT和IDT替換為所述影子SSDT和所述影子IDT。
4.根據權利要求3所述的方法,其特征在于,所述將所述虛擬機原始內核的文件進行復制以獲取鏡像文件之前,所述方法還包括:
在所述虛擬機原始內核的非分頁池中申請緩沖區,其中,所述影子內核構建于所述緩沖區中。
5.根據權利要求4所述的方法,其特征在于,所述根據所述鏡像文件所映射的地址以及影子內核基地址,對所述影子內核初始代碼中的待重定向數據進行修復,以獲取修復后的待重定向數據,包括:
根據公式Dactual-Dactual_imagebase=Ddefault-Ddefault_imagebase將所述影子內核初始代碼中的待重定向數據進行修復,以獲取修復后的待重定向數;
其中,Ddefault為所述待重定向數據的地址,Dactual_imagebase為所述緩沖區的首地址,Ddefault_imagebase為所述影子內核基地址,Dactual為所述修復后的待重定向數的地址。
6.根據權利要求1-5任一所述的方法,其特征在于,所述將所述系統調用函數指向影子內核之后,還包括:
攔截所述應用程序對所述虛擬機原始內核中的SSDT的讀寫操作。
7.根據權利要求3-5任一所述的方法,其特征在于,所述影子SSDT包括:系統調用函數的標識和在影子內核中入口地址的對應關系;相應地,
所述根據所述影子內核中的影子SSDT確定所述系統調用函數在影子內核中對應的入口地址,包括:
根據所述影子SSDT中系統調用函數的標識和在影子內核中入口地址的對應關系,確定所述系統調用函數在影子內核中對應的入口地址。
8.根據權利要求1-5任一所述的方法,其特征在于,所述方法還包括:
截獲虛擬機中斷處理函數;
根據原始內核基地址與影子內核基地址的偏移值,將所述中斷處理函數指向所述影子內核,根據所述影子內核中的影子IDT確定所述中斷處理函數在影子內核中對應的入口地址。
9.根據權利要求8所述的方法,其特征在于,所述將所述中斷處理函數指向所述影子內核之后,還包括:
攔截所述應用程序對虛擬機原始內核中的IDT的讀寫操作。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201510980458.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:包裝盒(8)
- 下一篇:蠟印布包裝盒(2016043)





