999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于硬件虛擬化的Rootkit技術

2017-03-29 06:56:51李揚周安民張磊陳航
現代計算機 2017年5期
關鍵詞:物理

李揚,周安民,張磊,陳航

(1.四川大學電子信息學院,成都 610065;2.四川無聲信息技術有限公司,成都 610041)

一種基于硬件虛擬化的Rootkit技術

李揚1,周安民1,張磊2,陳航2

(1.四川大學電子信息學院,成都 610065;2.四川無聲信息技術有限公司,成都 610041)

針對當前Windows x64版本的內核保護技術,提出一種基于硬件虛擬化的內核Rootkit技術,該技術利用Intel VT-x硬件虛擬化技術將客戶系統(Guest OS)遷移到VMM之上運行實現Rootkit。借鑒Shadow Walker內存隱藏思想,基于擴展頁表技術對客戶系統的不同內存操作映射不同的物理內存,實現隱藏Rootkit代碼,對內核保護研究有一定的啟發意義。實驗證明該技術穩定性強,能夠繞過內核保護機制實現內核Rootkit。

內核保護;硬件虛擬化;內核Rootkit;擴展頁表

0 引言

無論是對于黑客攻擊研究者還是安全研究人員,內核Rootkit一直是二進制安全研究的熱點。黑客攻擊者利用內核Rootkit技術來隱藏攻擊行為不被操作系統或者反病毒軟件發現(包括文件、網絡端口、注冊表、進程線程等),安全研究人員研究內核Rootkit技術提升反病毒軟件查殺能力和增加內核主動防御軟件的隱蔽性[1-2]。在黑客攻擊者與安全研究人員不斷攻防博弈下,Rootkit技術不斷發展,從用戶態到內核態,從函數內聯掛鉤到直接操縱內核對象(Direct Kernel Object Manipulation)[3]。

由于Windows平臺使用的廣泛性,Windows內核Rootkit一直是攻防雙方研究的重點對象。早期由于微軟對Widnwos內核層面管控不完善,黑客攻擊者通過加載特定功能的驅動模塊就能實現Rootkit功能。在這種背景下,針對Windows系統的內核Rootkit攻擊方法不斷出現,這些Rootkit攻擊方法主要分為兩種,直接修改內核指令流程和直接操縱內核對象,前者通過在正常內核指令中添加鉤子指令(Hook)使指令執行流程發生改變從而過濾特定信息,后者通過直接修改內核內存中指令查詢的內核對象來實現特定功能的Rootkit[4]。為應對這些內核Rootkit對系統內核修改造成的危害,微軟在x64版本的Windows系統中新增了一個內核完整性保護措施:內核補丁保護(Kernel Patch Protection),又稱為PatchGuard,通過循環地對內核中重要內核函數及一些關鍵數據結構進行檢查判斷內核是否被修改,如果被修改則直接引發0x109藍屏[5]。

本文提出一種利用硬件虛擬化技術在x64版本Windows上實現內核Rootkit的技術,通過內存欺騙的方式對抗PatchGuard,以實現內核Rootkit,利用擴展頁表EPT(Extented Page Table)對Guest OS不同的內存操作映射不同的物理內存,從而保證攻擊代碼對內核保護PatchGuard的透明性。

1 硬件虛擬化技術

硬件虛擬化是一種對計算機或則操作系統的虛擬,表現為一個抽象的計算平臺,提升了處理器的使用效率,特別是各種云服務發展的今天,硬件虛擬化被應用到各個領域,但其實在1999年,硬件虛擬化就被IBM實現,運用到Power 5 CPU實現邏輯分區。在Windows平臺下應用硬件虛擬化技術主要包括Intel-VT及AMD-V兩種,本文基于Intel VT-x硬件虛擬化技術實現。

1.1 VMM及其運行模式切換

Intel VT-x硬件虛擬化技術稱為虛擬機擴展(Virtual Machine Extension,VMX),主要包含兩個角色:虛擬機監視器(Virtual Machine Monitor,VMM)和客戶操作系統(Guest OS)。VMM位于VMX root模式,運行在Guest OS下一層比Ring 0權限更大,能夠完全控制硬件資源包括CPU資源、物理內存、中斷管理及I/O控制等,Guest OS位于VMX non-root模式[6],VMM運行模式及權限級別如圖1所示。

圖1 VMM運行模式及權限級別

圖2 VMM與Guest OS的交互

VMM root模式與VMM non-root模式的切換如圖2所示,從特權模式到非特權模式的切換被稱為VM遷入(VM Entry),相反的切換稱為VM遷出(VM Exit),這兩種模式的狀態遷移由虛擬機控制結構(Virtual–Machine Control Structure,VMCS)控制。在VMM啟動Guest OS后,當Guest OS在運行過程中,在執行某些指令或則發生某些異常時會觸發#VMEXIT事件而陷入VMM中,此時VMM獲得Guest OS控制權,在VMM對陷入的事件處理后(可以通過對VMCS結構進行配置選擇處理特定的事件),VMM使用VMRESUME指令恢復Guest OS執行。

利用硬件虛擬化實現的VMM與Guest OS模型中,VMM是一個輕量級的虛擬機監視器,VMM將原本在物理處理器中運行操作系統變成客戶操作系統Guest OS,VMM位于Guest OS特權等級Ring 0之下,能夠完全控制Guest OS對各種資源的訪問。但與普通虛擬機客戶機模型不同的是,硬件虛擬化實現的VMM不需要對系統進行完全的抽象,只是當發生特定的事件與異常后VMM才獲得完全控制權,允許Guest OS與本地I/O進行訪問,大大提高了運行的效率。

1.2 虛擬內存及擴展頁表EPT

在硬件虛擬化提供的虛擬模型中,VMM管理物理硬件控制Guest OS對各種資源的訪問,為Guest OS提供運行環境。虛擬內存是計算機系統管理的一種技術,為操作系統提供連續可用的內存,提供虛擬內存到真實物理內存的映射關系,CPU必須通過內存管理單元將虛擬地址(Virtual Address,VA)轉換為物理地址(Physical Address)。在虛擬環境中,VMM管理真實的物理內存即主機物理內存(Host Physical Address, HPA),直接控制著Guset OS對物理內存的訪問,在這種情況下原有的物理地址變成主機物理地址,客戶物理地址與物理內存不再一一對應,客戶物理地址需要通過VMM的虛擬內存管理單元(MMU Virtualization)轉換成HPA,具體轉換關系如圖3所示。

圖3 VMM內存虛擬化

在硬件輔助內存虛擬化技術EPT(Extent Physical Table)出現之前,內存的虛擬化通常采用影子頁表解決,影子頁表是通過軟件方式實現,在多個CPU之間同步頁面數據時存在嚴重的性能問題[6]。從Intel VT-x開始,通過在虛擬地址到物理地址的翻譯機制上增加一層新的翻譯機制即EPT擴展頁表技術,大大提升了虛擬化下的虛擬內存管理的效率。EPT工作在VMMno-root模式下,借助EPT頁表完成GVA到HPA的轉換,EPT的頂級頁表保存在VMCS中,圖4是在EPT擴展頁表開啟下Guest OS線性地址到主機物理地址轉換的過程圖,兩次地址轉換過程都由CPU硬件(CR3和EPT頁表)完成。

圖4 開啟EPT下地址轉換

2 內核Rootkit實現框架

2.1 主要方法和技術

微軟在2005年推出的x64版本的Windows XP及Windows Server 2003第一次引入了PatchGuard內核保護機制,并且在之后的x64 Windows版本中不斷更新完善,PatchGuard通過定期檢查來確保系統內核函數及關鍵結構體不被更改。如果修改被檢測到,Patch-Guard就會開啟錯誤檢查導致系統藍屏關機,但是內核Rootkit不可避免地要修改Windows內核數據。為實現對PatchGuard的內核Rootkit,本文利用基于Intel VT-x的硬件虛擬化技術在Windows系統下層實現一個輕量級虛擬機監控器VMM,借鑒Shadow Walker[8]內核Rootkit內存隱藏方法,對需要修改的內核內存設置EPT頁表,對不同的內存操作定向到不同的物理內存,實現對PatchGuard的透明。

當Rootkit程序初始化時,對需要修改的原始內核內存O設置2個內存拷貝A、B。A拷貝用于讀寫,B拷貝用于執行,對B拷貝中設置INT 3斷點且B拷貝不允許讀寫操作,初始設置對O重定向到B拷貝。當對B拷貝進行讀寫操作時會觸發EPT Violation異常,執行VM-exit控制邏輯使VMM獲得控制權,將操作再次重定向到未修改拷貝A,實現修改內存對PatchGuard的透明。當執行時,直接進入B拷貝,觸發BP異常,VMM獲得控制權然后修改函數邏輯執行Rootkit函數代碼[9]。

2.2 系統框架及實現

根據主要方法和技術,設計的內核Rootkit系統框架執行邏輯如圖5所示。

圖5 內核RootKit總體流程設計

Rootkit程序以Windows內核驅動的形式存在,當Rootkit被加載后執行初始化操作,執行VMM初始化遷移原系統使之成為Guest OS系統運行在VMX nonroot模式,Rootkit程序作為VMM運行在VMM-root模式,然后分配EPT頁面設置頁面拷貝及重定向等,完成初始化操作后執行VMMRESUME指令Guest OS恢復執行,VMM等待VM-exit事件發生后Guest OS陷入VMM。

當Guest OS對需要修改的內存區域執行讀寫操作時,由于已經設置了EPT entry到拷貝B且拷貝B被設置為不可讀寫,導致EPT vilolation異常觸發VM Exit 使Guest OS陷入VMM,VMM將EPT entry設置為拷貝A并設置MTF位(通過設置MTF位可以使讀寫執行完后Guest OS重新觸發VM Exit),在Guest OS執行完讀寫操作后會再次觸發MTF VM Exit,VMM重新設置EPT Entry為拷貝B回到初始狀態。

當Guest OS在執行需要修改的內存區域時,直接進入拷貝B執行,由于已經在拷貝B中設置了INT 3斷點,導致BP異常觸發VM Exit使Guest OS陷入VMM,VMM通過檢查Guest OS寄存器RIP的值是否為需要修改的函數地址進行處理,如果是需要修改的函數地址則直接修改RIP地址為RootKit函數地址,過濾相應的信息,否則正常執行后返回。

3 實驗結果

實驗環境如表1所示。

表1

實驗以進程隱藏為驗證,通過內核Hook內核函數NtQuerySystemInformation隱藏進程InstDrv.exe[10]。當執行到原始NtQuerySystemInformation內存區域時,觸發VM Exit使VMM獲得控制權,VMM修改當前RIP值為HookNtQuerySystemInformation,使得代碼執行流程進入Rootkit函數。在HookNtQuerySystemInformation函數中執行原始函數后在SYSTEM_PROCESS_INFORMATION鏈表信息中摘除關于InstDrv.exe的進程信息,達到內核進程信息隱藏,實驗效果如圖6所示。

在實驗中未觸發PatchGurad而導致藍屏,可以得出本方案能夠較好地在基于x64架構的Windows系統下實現內核Rootkit,在內核進程鏈表中摘除了需要隱藏的“InstrDrv.exe”進程信息,達到了內核進程隱藏的目的且實現了Rootkit代碼對內核保護PatchGuard的透明性。

圖6 虛擬化RootKit隱藏進程效果

4 結語

通過引入硬件虛擬化技術,本文提出并實現了基于硬件虛擬化的Rootkit技術方法,利用EPT擴展頁面技術對需要修改的內存不同操作重定位到不同主機物理內存,實現Rootkit代碼對內核保護機制PatchGuard的透明性。該方法充分利用底層硬件虛擬化技術實現內存,對于Rootkit和系統保護技術研究具有一定的啟發意義。

[1]Symantec Corporation.Windows rootkit overview[EB/OL].[2014-12-10].http://www.symantec.com/avcenter/reference/windows.rootkit. overview.pdf

[2]Hoglund G,Butler J.Rootkits:Subverting the Windows Kernel[M].USA:Addison-Wesley Professional,2007.

[3]易再堯,黃本雄,孫建華.一種基于虛擬化哈佛體系結構的Rootkit技術[J].微電子學與計算機,2010,27(4):129-132.

[4]張瑜,劉慶中,李濤,等.Rootkit研究綜述[J].電子科技大學學報,2015(4):563-578.

[5]Ahmed I,Iii G G R,Zoranic A,et al.Integrity Checking of Function Pointers in Kernel Pools via Virtual Machine Introspection[M]. Information Security.Springer International Publishing,2015.

[6]凌沖,孫樂昌,劉京菊,等.一種硬件虛擬化技術的Rootkit及其檢測[J].西安科技大學學報,2010,30(1):86-91.

[7]李勇,郭玉東,王曉睿,等.基于EPT的內存虛擬化研究與實現[J].計算機工程與設計,2010,31(18):4101-4104.

[8]Sparks S,Butler J,Sparks S,et al.Shadow Walker:Raising The Bar For Windows Rootkit Detection[J].Phrack,2005.

[9]Satoshi,Tanda.Monitoring&Controlling Kernel-mode Events by HyperPlatform[EB/OL].https://recon.cx/2016/resources/slides/RECON-0xA-HyperPlatform-Satoshi.pdf.

[10]王雷,凌翔.Windows Rootkit進程隱藏與檢測技術[J].計算機工程,2010,36(5):140-142.

A Rootkit Based on Hardware Virtualization

LI Yang1,ZHOU An-min1,ZHANG Lei2,CHEN Hang2
(1.College of Electronics and Information Engineering,Sichuan University,Chengdu 610065; 2.Sichuan Silence Information Technology Co.,Ltd.Chengdu 610041)

To bypass the Kernel Patch Protection of Windows x64,puts forward a kernel Rootkit technology based on hardware virtualization,which migrates the Guest OS to VMM to achieve kernel Rootkit by Intel VT-x hardware virtualization technology.Inspired by the Shadow Walker,uses the EPT technology to hide rootkit code by mapping different physical memory to different Guest OS memory operations,it has some enlightening significance to the study of kernel protection.Experiments show that the method is robust and can bypass the Kernel Patch Protection and achieve kernel Rootkit.

Kernel Patch Protection;Hardware Virtualization;Kernel Rootkit;EPT

1007-1423(2017)05-0021-05

10.3969/j.issn.1007-1423.2017.05.006

李揚(1992-),男,四川綿陽人,碩士研究生,研究方向為信息安全

2016-12-01

2017-02-06

周安民(1963-),男,四川成都人,碩士導師,研究員,研究方向為信息安全保護技術

猜你喜歡
物理
物理中的影和像
只因是物理
井岡教育(2022年2期)2022-10-14 03:11:44
高考物理模擬試題(五)
高考物理模擬試題(二)
高考物理模擬試題(四)
高考物理模擬試題(三)
留言板
如何打造高效物理復習課——以“壓強”復習課為例
處處留心皆物理
我心中的物理
主站蜘蛛池模板: 亚洲无码电影| 欧美成人免费一区在线播放| 四虎影视8848永久精品| 欧美精品色视频| 亚洲系列中文字幕一区二区| 真实国产乱子伦视频| 国产主播喷水| 人妻丰满熟妇AV无码区| 超碰aⅴ人人做人人爽欧美| 亚洲男人的天堂在线观看| 欧美区国产区| 亚洲第一精品福利| jizz在线免费播放| 99热这里只有精品2| 久久国产免费观看| 亚洲欧美极品| 亚洲欧美一区在线| 国产18在线| 露脸真实国语乱在线观看| 91无码国产视频| 国产96在线 | h网站在线播放| 国产一二视频| 老司机aⅴ在线精品导航| 日韩小视频在线观看| 久久久久夜色精品波多野结衣| 成人午夜天| 国产成人8x视频一区二区| 国产成人精品亚洲77美色| 2021国产v亚洲v天堂无码| 91青草视频| 亚洲国产精品日韩av专区| 国产特一级毛片| 18禁高潮出水呻吟娇喘蜜芽| 午夜国产精品视频黄 | 啪啪永久免费av| 99热这里只有精品久久免费| 欧美成人综合视频| 青青网在线国产| 精品一区二区三区视频免费观看| 91蝌蚪视频在线观看| 国产福利小视频在线播放观看| 黄片一区二区三区| 欧美一级在线播放| 日本不卡在线播放| 欧美日在线观看| 国产精品无码久久久久久| 第九色区aⅴ天堂久久香| 亚洲无码高清免费视频亚洲| 国产一级毛片高清完整视频版| 91精品国产91久久久久久三级| 狠狠v日韩v欧美v| 婷五月综合| 成人福利在线免费观看| 久久综合色天堂av| 国产91av在线| av尤物免费在线观看| 这里只有精品在线播放| av尤物免费在线观看| 久久国产免费观看| 在线观看亚洲成人| 伊人成人在线视频| 在线观看网站国产| 欧美精品啪啪一区二区三区| 色成人亚洲| 婷婷综合缴情亚洲五月伊| 国产97区一区二区三区无码| 深爱婷婷激情网| 九九久久精品国产av片囯产区| 婷婷综合缴情亚洲五月伊| 色天天综合| 国产三级视频网站| 国产第二十一页| 亚洲成人高清无码| 97视频在线精品国自产拍| 国产国产人成免费视频77777| 国产精品无码久久久久AV| 日本不卡在线| 国产精品v欧美| 热热久久狠狠偷偷色男同| 四虎永久免费地址在线网站| 欧美日韩v|