[01] HEVD 双机调试环境搭建
Posted huity35
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[01] HEVD 双机调试环境搭建相关的知识,希望对你有一定的参考价值。
[01] HEVD 双机调试环境搭建
0x00 前言
近期开始学习Windows内核漏洞,参考了很多博客和其他资料,决定还是边学习边分享整个分析的过程。新手上路,如有错误,欢迎指正。
整个学习主要以HEVD(HackSysExtremeVulnerableDriver)这个项目为主,它一个存在漏洞的内核的驱动,里面存在多个漏洞,通过ControlCode控制漏洞类型,这个项目的驱动里几乎涵盖了内核可能存在的所有漏洞,从最基础的栈溢出,到池溢出,释放后重用等等类型,是一个非常好的项目。
![技术图片](https://image.cha138.com/20210718/a2e88323b52d4851822c1ebc2b80457f.jpg)
![技术图片](index_files/087b828b-8496-4847-a898-68b3f4a67b97.png)
实验环境:Win10专业版+VMware Workstation 15 Pro+Win7 x86 sp1
实验工具:VS2015+Windbg+KmdManager+DbgViewer
0x01 搭建双机调试环境
配环境是真的辛苦,不过丝毫马虎不得,不然影响后面的工作呀。
VMware+win7
![技术图片](index_files/028a82b2-9eea-47cd-b77e-156cb3910009.png)
![技术图片](https://image.cha138.com/20210718/d2e5a08627be44e0876d46491c00a37e.jpg)
完成后,双击打开,是这样的:
![技术图片](https://image.cha138.com/20210718/1c66529437bd4594b60c65cd98466bd8.jpg)
![技术图片](index_files/2fab7326-4d63-4e26-ac39-e4c811b158da.png)
![技术图片](index_files/dd4fe779-8c25-4e1e-8e02-d60147f5cdf6.png)
![技术图片](https://image.cha138.com/20210718/8bf118758f084f4b91ead85aa149a87c.jpg)
成功启动,又见到了我们熟悉的界面:
![技术图片](https://image.cha138.com/20210718/63823b0ba61b490daab71c33ea4d3bdd.jpg)
![技术图片](index_files/c7c69034-4ad5-4d51-a67c-59a41172dcd7.jpg)
Windbg
![技术图片](https://image.cha138.com/20210718/9a3a9cfdfb1b4ec0858da7bd90a20556.jpg)
![技术图片](index_files/e22f4605-591a-4852-a0af-ba36f46f007c.png)
安装完成后,需要配置虚拟机和主机串口,进行通信才能进行调试,借鉴前人经验,很快我们就可配置完成。
配置完成后,当我们打开调试模式后,windbg显示如下,及说明配置成功。
![技术图片](https://image.cha138.com/20210718/fdb64a74921b4fa681a61e9c72950eb3.jpg)
![技术图片](index_files/0ca4b477-0324-4bc0-b1e8-2e1a43e7f151.png)
<wiz_code_mirror>
1
tips:安装完成后,可以保存快照,这样大大加速每次虚拟机开机效率。
编译驱动程序
我们需要安装Visual Studio 2015以及最新的SDK。还要安装Windows驱动程序工具包(WDK)。具体安装步骤可参考教程,安装完成后,下载项目。解压,打开Driver中的HEVD.sln文件,如下:
![技术图片](https://image.cha138.com/20210718/6ad9ac56a8cd490990f05d6acf18578f.jpg)
![技术图片](index_files/7876a1bd-1fbe-42b8-96c6-12162cc7542c.png)
编译前,需要设置项目属性:
右键-属性-C/C++ - 警告等级 设置为等级3(/W3)
将警告视为错误 改为 否(/WX-)
-代码生成 -安全检查 改为 禁用安全检查(/GS-)
-链接器 - 将连接器警告视为错误 改为 否(/WX:NO)
-Driver Settings - Target OS Version 改为Windows 7
然后编译,如下所示,即生成驱动文件。
![技术图片](https://image.cha138.com/20210718/15da6be38e41456e8b8ede92dbf4f777.jpg)
![技术图片](index_files/6308941f-e02a-4871-a390-625051f0e9bb.png)
多说一点,我第一次操作时,发现了编译不能成功,出现如下错误:
error : Invalid argument <HEVD.crt> for property <TestCertificate>.
经过长时间的查找资料,最终发现了解决方案,感谢海歌也疯狂的方法!
0x02 关于工具:
很多人都在用OSRLoader,我个人使用的是KmdManger和DbgViewer,有需要的可以点击下载。
提取码:kooc
![技术图片](https://image.cha138.com/20210718/42b00719ef6346ef9be68834cb8c3853.jpg)
![技术图片](index_files/1a40d9b3-5bef-4840-ab29-6fa2185f75cc.jpg)
后面将开始对内核常见漏洞类型进行分析和学习,冲鸭!
![技术图片](https://image.cha138.com/20210718/a4e153745a424cc8983a7c762600595e.jpg)
![技术图片](index_files/0.49390582760032653.png)
以上是关于[01] HEVD 双机调试环境搭建的主要内容,如果未能解决你的问题,请参考以下文章