[01] HEVD 双机调试环境搭建

span::selection, .CodeMirror-line > span > span::selection { background: #d7d4f0; }.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection { background: #d7d4f0; }.cm-searching {background: #ffa; background: rgba(255, 255, 0, .4);}.cm-force-border { padding-right: .1px; }@media print { .CodeMirror div.CodeMirror-cursors {visibility: hidden;}}.cm-tab-wrap-hack:after { content: ""; }span.CodeMirror-selectedtext { background: none; }.CodeMirror-activeline-background, .CodeMirror-selected {transition: visibility 0ms 100ms;}.CodeMirror-blur .CodeMirror-activeline-background, .CodeMirror-blur .CodeMirror-selected {visibility:hidden;}.CodeMirror-blur .CodeMirror-matchingbracket {color:inherit !important;outline:none !important;text-decoration:none !important;}.CodeMirror-sizer {min-height:auto !important;}
-->
span::selection, .cm-s-base16-dark .CodeMirror-line > span > span::selection { background: rgba(48, 48, 48, .99); }.cm-s-base16-dark .CodeMirror-line::-moz-selection, .cm-s-base16-dark .CodeMirror-line > span::-moz-selection, .cm-s-base16-dark .CodeMirror-line > span > span::-moz-selection { background: rgba(48, 48, 48, .99); }.cm-s-base16-dark .CodeMirror-gutters { background: #151515; border-right: 0px; }.cm-s-base16-dark .CodeMirror-guttermarker { color: #ac4142; }.cm-s-base16-dark .CodeMirror-guttermarker-subtle { color: #505050; }.cm-s-base16-dark .CodeMirror-linenumber { color: #505050; }.cm-s-base16-dark .CodeMirror-cursor { border-left: 1px solid #b0b0b0; }.cm-s-base16-dark span.cm-comment { color: #8f5536; }.cm-s-base16-dark span.cm-atom { color: #aa759f; }.cm-s-base16-dark span.cm-number { color: #aa759f; }.cm-s-base16-dark span.cm-property, .cm-s-base16-dark span.cm-attribute { color: #90a959; }.cm-s-base16-dark span.cm-keyword { color: #ac4142; }.cm-s-base16-dark span.cm-string { color: #f4bf75; }.cm-s-base16-dark span.cm-variable { color: #90a959; }.cm-s-base16-dark span.cm-variable-2 { color: #6a9fb5; }.cm-s-base16-dark span.cm-def { color: #d28445; }.cm-s-base16-dark span.cm-bracket { color: #e0e0e0; }.cm-s-base16-dark span.cm-tag { color: #ac4142; }.cm-s-base16-dark span.cm-link { color: #aa759f; }.cm-s-base16-dark span.cm-error { background: #ac4142; color: #b0b0b0; }.cm-s-base16-dark .CodeMirror-activeline-background { background: #202020; }.cm-s-base16-dark .CodeMirror-matchingbracket { text-decoration: underline; color: white !important; }
-->
li {list-style-type:decimal;}.wiz-editor-body ol.wiz-list-level2 > li {list-style-type:lower-latin;}.wiz-editor-body ol.wiz-list-level3 > li {list-style-type:lower-roman;}.wiz-editor-body li.wiz-list-align-style {list-style-position: inside; margin-left: -1em;}.wiz-editor-body blockquote {padding: 0 12px;}.wiz-editor-body blockquote > :first-child {margin-top:0;}.wiz-editor-body blockquote > :last-child {margin-bottom:0;}.wiz-editor-body img {border:0;max-width:100%;height:auto !important;margin:2px 0;}.wiz-editor-body table {border-collapse:collapse;border:1px solid #bbbbbb;}.wiz-editor-body td,.wiz-editor-body th {padding:4px 8px;border-collapse:collapse;border:1px solid #bbbbbb;min-height:28px;word-break:break-word;box-sizing: border-box;}.wiz-editor-body td > div:first-child {margin-top:0;}.wiz-editor-body td > div:last-child {margin-bottom:0;}.wiz-editor-body img.wiz-svg-image {box-shadow:1px 1px 4px #E8E8E8;}.wiz-hide {display:none !important;}
-->

0x00 前言

近期开始学习Windows内核漏洞,参考了很多博客和其他资料,决定还是边学习边分享整个分析的过程。新手上路,如有错误,欢迎指正。

整个学习主要以HEVD(HackSysExtremeVulnerableDriver)这个项目为主,它一个存在漏洞的内核的驱动,里面存在多个漏洞,通过ControlCode控制漏洞类型,这个项目的驱动里几乎涵盖了内核可能存在的所有漏洞,从最基础的栈溢出,到池溢出,释放后重用等等类型,是一个非常好的项目。

实验环境:Win10专业版+VMware Workstation 15 Pro+Win7 x86 sp1

实验工具:VS2015+Windbg+KmdManager+DbgViewer

0x01 搭建双机调试环境

配环境是真的辛苦,不过丝毫马虎不得,不然影响后面的工作呀。

VMware+win7

首先去官方网站下载VMware产品,按提示安装即可,如需序列码,网上序列号即可。

完成后,双击打开,是这样的:

接着需要去下载win7镜像,注意区分版本。

配置虚拟机,当有了镜像和虚拟环境以后,直接参考教程即可,这里不再赘述。

成功启动,又见到了我们熟悉的界面:

Windbg

内核调试,离不开Windbg,那么首先需要下载安装SDK,直接官网下载安装即可。

安装完成后,需要配置虚拟机和主机串口,进行通信才能进行调试,借鉴前人经验,很快我们就可配置完成。

配置完成后,当我们打开调试模式后,windbg显示如下,及说明配置成功。

tips:安装完成后,可以保存快照,这样大大加速每次虚拟机开机效率。<wiz_code_mirror>

1

tips:安装完成后,可以保存快照,这样大大加速每次虚拟机开机效率。

编译驱动程序

我们需要安装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,有需要的可以点击下载

提取码:kooc

后面将开始对内核常见漏洞类型进行分析和学习,冲鸭!

原文地址:https://www.cnblogs.com/huity35/p/11203303.html

时间: 2024-10-07 23:57:16

[01] HEVD 双机调试环境搭建的相关文章

双机调试环境搭建[win7+Windbg+VirtualKD]

0x01  工具: VirtualKD Windbg VM-win7 0x02  环境 VirtualKD 中的 target 拖进虚拟机中.运行 vminstall.exe 确定后重启 运行 vmmon64.exe 开启监视并配置 Windbg 路径       选择 Windows 7 [VirtualKD] [启动调试程序] 0x03  配置符号表 [File] => [Symbol File Path] SRV*c:\mysymbol* http://msdl.microsoft.com

Android Studio 1.01 + BlueStacks 开发调试环境搭建之旅

首先让我缓口气,太累了,弄了大半天,一堆的问题啊,不过主要是Android Studio本身的问题,用BlueStacks调试倒是很简单. 1.下载Android Studio 安装,打开Android Studio,创建新项目,遇到了第一个麻烦: Android Studio一直处于building "project xxx" gradle project info界面,久等十几分钟依然没反应. 问题原因:感谢天朝伟大的〇〇〇,Android Studio无法下载gradle-2.2

内核调试之双机调试环境的搭建

前言 在进行内核学习/编程之前需要创建属于自己的双机调试环境.通过不断的查阅资料和亲身实验,总结了使用Visual Studio 2017或windbg进行调试的经验. 内核调试需要使用一台计算机用于调试,另一台计算机用于使用调试器来调试之前的计算机.为了能在同一台计算机上进行内核调试,通常使用虚拟机来运行被调试的计算机.另外使用虚拟机运行被调试的机器,会比较安全,因为虚拟机可以随便的使用,无需担心调试过程中导致的系统损坏.而调试器所在的计算机通常使用物理机. 为了简单叙述,我们将设置分成两个部

HI3518E平台ISP调试环境搭建

海思的SDK提供了ISP调试的相关工具,降低了IPC的ISP调试的难度.初次搭建ISP调试环境,记录一下. SDK版本:Hi3518_MPP_V1.0.A.0 硬件平台:HI3518E_OV9732 工具包:PQ_TOOL     (Hi3518E_V100R001C01SPC0A0\01.software\pc\PQ_TOOL) 文件说明:Hi3518_ITTB_MPP2_V1.0.A.0_B030.tgz 设备端工具 : PQTools_V3.7.5.zip PC端工具 环境搭建步骤: (1

EAS客户端调试环境搭建

客户端调试环境搭建说明 适用场景:在现场跟踪问题或者在研发内部跟踪定位测试环境的问题时,开发人员需要快速搭建一个可供调试的环境以供分析问题,以下说明可供开发人员在需要时使用,注意该方式只支持客户端调试,服务端调试配置方式类似(链接远程jvm调试端口即可),但由于服务器不能随便启动停止,在现场应用客户端调试更为普遍一些. 环境要求 在进行以下工作前需要安装一个eclipse反编译插件,可以从网上下载. 安装完毕后注意配置以下参数设置: 详细配置 安装完毕接下来按照以下步骤配置环境即可 新建一个ja

Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建

Solr4.8.0源码分析(4)之Eclipse Solr调试环境搭建 由于公司里的Solr调试都是用远程jpda进行的,但是家里只有一台电脑所以不能jpda进行调试,这是因为jpda的端口冲突.所以只能在Eclipse 搭建Solr的环境,折腾了一小时终于完成了. 1. JDPA远程调试 搭建换完成Solr环境后,对${TOMCAT_HOME}/bin/startup.sh 最后一行进行修改,如下所示: 1 set JPDA_ADDRESS=7070 2 exec "$PRGDIR"

MyBatis —— 调试环境搭建

MyBatis  —— 调试环境搭建 1. 依赖工具 Maven Git JDK IntelliJ IDEA 2. 源码拉取 从官方仓库 https://github.com/mybatis/mybatis-3 Fork 出属于自己的仓库.为什么要 Fork ?既然开始阅读.调试源码,我们可能会写一些注释,有了自己的仓库,可以进行自由的提交. 使用 IntelliJ IDEA 从 Fork 出来的仓库拉取代码. 本文使用的 MyBatis 版本为 3.5.0-SNAPSHOT . 3. 调试 M

rocketmq那些事儿之本地调试环境搭建

上一篇文章中我们已经介绍过rocketmq的集群环境搭建,然而在源码的学习中我们还需要进行本地的调试和问题的定位查找,毕竟还是在本地方便些,今天就说一说如何进行源码的本地调试 下载编译 对于rocketmq源码部分的学习,我们当然要先去官网将源码下载到本地,这里笔者使用的是4.5.2版本,从github上官网上下载: https://github.com/apache/rocketmq rocketmq版本:4.5.2 使用clean install编译,这里最好跳过test,要不太慢了 编译完

VT 调试环境搭建

Windows内核分析索引目录:https://www.cnblogs.com/onetrainee/p/11675224.html VT 调试环境搭建 调试方法: VmWare + win7x64 + windbg + IDA64位 一.虚拟机配置 1.打开win7的虚拟机文件,找到一个 .vmx 文件,在后面加上下面几句话,之后保存,启动虚拟机. debugStub.listen.guest64.remote = "TRUE" monitor.debugOnStartGuest64