做者:huity
出處:http://www.javashuo.com/article/p-zhbwonss-ha.html
版權:本文版權歸做者全部。文章在看雪、博客園、我的博客同時發佈。
轉載:歡迎轉載,但未經做者贊成,必須保留此段聲明;必須在文章中給出原文鏈接;不然必究法律責任。html
0x00 前言
近期開始學習Windows內核漏洞,參考了不少博客和其餘資料,決定仍是邊學習邊分享整個分析的過程。新手上路,若有錯誤,歡迎指正。
整個學習主要以HEVD(HackSysExtremeVulnerableDriver
)這個項目爲主,它
一個存在漏洞的內核的驅動,裏面存在多個漏洞,經過ControlCode控制漏洞類型,這個項目的驅動裏幾乎涵蓋了內核可能存在的全部漏洞,從最基礎的棧溢出,到池溢出,釋放後重用等等類型,是一個很是好的項目。
實驗環境:Win10專業版+VMware Workstation 15 Pro+Win7
x86 sp1
實驗工具:VS2015+Windbg+KmdManager+DbgViewer
0x01 搭建雙機調試環境
配環境是真的辛苦,不過絲毫馬虎不得,否則影響後面的工做呀。
VMware+win7
首先去
官方網站
下載VMware產品,按提示安裝便可,如需序列碼,網上序列號便可。
完成後,雙擊打開,是這樣的:
配置虛擬機,當有了鏡像和虛擬環境之後,直接
參考教程
便可,這裏再也不贅述。
成功啓動,又見到了咱們熟悉的界面:
Windbg
內核調試,離不開Windbg,那麼首先須要下載安裝SDK,直接
官網下載
安裝便可。
安裝完成後,須要配置虛擬機和主機串口,進行通訊才能進行調試,借鑑前人經驗,很快咱們就可配置完成。
配置完成後,當咱們打開調試模式後,windbg顯示以下,及說明配置成功。
編譯驅動程序
咱們須要安裝Visual Studio 2015以及最新的SDK。還要安裝Windows驅動程序工具包(WDK)。具體安裝步驟可參考教程,安裝完成後,下載項目。解壓,打開Driver中的HEVD.sln文件,以下:
編譯前,須要設置項目屬性:
右鍵-屬性-C/C++ - 警告等級 設置爲等級3(/W3)
將警告視爲錯誤 改成 否(/WX-)
-代碼生成 -安全檢查 改成 禁用安全檢查(/GS-)
-連接器 - 將鏈接器警告視爲錯誤 改成 否(/WX:NO)
-Driver Settings - Target OS Version 改成Windows 7
而後編譯,以下所示,即生成驅動文件。
多說一點,我第一次操做時,發現了編譯不能成功,出現以下錯誤:
error : Invalid argument <HEVD.crt> for property <TestCertificate>.
通過長時間的查找資料,最終發現瞭解決方案,感謝
海歌也瘋狂的方法!
0x02 關於工具:
不少人都在用OSRLoader,我我的使用的是KmdManger和DbgViewer,有須要的能夠點擊下載。git
提取碼:kooc
後面將開始對內核常見漏洞類型進行分析和學習,衝鴨!