`
yexin218
  • 浏览: 971003 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

Vmware+Windbg调试示例

阅读更多

Vmware+Windbg调试环境配置,请参考VMware+Windgb+Win7内核驱动调试。测试程序来自《内核安全编程》第一个例子。

///
/// @file first.c
/// @author crazy_chu
/// @date2008-11-1
/// 

#include <ntddk.h>
	
// Unload function
VOID DriverUnload(PDRIVER_OBJECT driver)
{
	// Do nothing just print one sentence
	DbgPrint("Our driver is unloading¡­\r\n");
}

// DriverEntry¡£
NTSTATUS DriverEntry(PDRIVER_OBJECT driver, PUNICODE_STRING reg_path)
{
#if DBG
       _asm int 3//break point
#endif

	DbgPrint("Hello, Welcome to Yexin218.iteye.com");

	// set unload function
	driver->DriverUnload = DriverUnload;
	return STATUS_SUCCESS;
}

 

首先编译后,把sys文件拷贝到GuestOs 中,并且使用srvinstw安装(详细请参考)。安装好之后先不要执行,net start first (first是你安装时自定义的服务名字)。

然后在你的主机上,配置调试信息:

  1. 配置sympath,C:\Users\Admin\Desktop\first\objchk_win7_x86\i386是你编译好的sys目录: SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols;C:\Users\Admin\Desktop\first\objchk_win7_x86\i386
  2. 配置Source search path[假设文件放在C:\Users\Admin\Desktop\first]: C:\Users\Admin\Desktop\first
  3. 然后在命令行中输入:.reload
  4. 打开源文件:Ctrl+O
  5. 开始在GuestOS 中执行:net start first, 会发现整个GuestOS不动了,因为windbg在你设置的断点处开始调试。

     
  6. 然后你可以F10一步一步调试,另外F9还可以设置断点,还没有弄明白~ 先到这里。

     

     

     
  • 大小: 100.3 KB
分享到:
评论

相关推荐

    VMware+Windgb+Win7内核驱动调试

    ### VMware + Windgb + Win7 内核驱动调试知识点总结 #### 一、概述 本文主要介绍了如何在特定环境下配置并使用 VMware + Windgb + Win7 进行内核驱动程序的调试。这对于开发和测试操作系统内核级别的软件非常有用...

    windbg 虚拟机调试usb驱动 环境搭建

    本教程将详细介绍如何使用Windbg在虚拟机环境下调试USB驱动,特别是通过Vmware进行双机调试的步骤。 首先,我们需要安装必要的工具和编译环境。Visual C++ 6.0(英文版)作为基础,接着安装Windows Driver Kit (WDK...

    VMware实现单机使用WinDbg

    但是,通过VMware虚拟化技术,我们可以实现在单机上使用WinDbg进行调试,极大地提高了工作效率。 首先,我们需要了解VMware如何支持WinDbg的调试功能。自4.0.18.0版本起,VMware支持通过管道(pipe)进行调试,尽管...

    驱动开发和调试的环境设置

    调试过程类似于WinDbg,可以在特定函数(如DriverEntry)处设置断点,并通过Go命令执行程序。 总的来说,驱动开发和调试涉及的知识点涵盖了开发环境的搭建、驱动项目的创建和编译、虚拟机和调试器的配置以及源码...

    Filter驱动开发笔记

    Vmware+Windgb调试示例 - **示例内容**:具体演示如何使用Windgb在VMware虚拟机中调试内核驱动。 - **实践意义**:有助于理解调试流程,提高调试效率。 #### 20. Filter发送OID请求[解决蓝屏] - **OID**(Object...

    xp+vc+ddk+driverstudio

    - **调试工具**: 利用DriverStudio中的调试工具或Windbg等专业工具进行调试。 - **最佳实践**: 建议在虚拟机中进行调试,以防意外损坏主机系统。 ### 结论 构建一个稳定的Windows内核驱动开发环境需要细心规划和...

    crash dump analysis

    - **远程调试**:支持通过串口、FireWire、USB2.0 或 VMWare 扩展进行远程调试。 - **WinDbg**:CDB、NTSD 和 KD 的图形前端,支持即时和后验调试。 通过上述分析,我们可以看到 Windows 系统中 Crash Dump 分析...

    Windows驱动开发技术详解的光盘-part1

    非常容易上手,用实例详细讲解PCI、USB、虚拟串口、虚拟摄像头、SDIO等驱动程序的开发,归纳了多种调试驱动程序的高级技巧,如用WinDBG和VMWARE软件对驱动进行源码级调试,深入Windows操作系统的底层和内核,透析...

    windows驱动开发技术详解-part2

    用WinDBG和VMWARE软件对驱动进行源码级调试,深入Windows操作系统的底层和内核,透析Windows驱动 开发的本质。 本书是作者结合教学和科研实践经验编写而成的,不仅详细介绍了Windows内核原理,而且介绍了编程技 巧...

    龚伦强内核过游戏驱动保护教程

    - 安装Windbg等调试工具,并正确配置。 - **步骤二**:加载符号表 - 下载官方驱动补丁,例如通过微软目录更新网站获取。 - 使用Windbg命令行工具加载符号表: ```plaintext SRV*D:\mysymbol*...

    NDIS中间层 NDIS6过滤驱动开发笔记

    在调试NDIS驱动程序时,经常利用WinDBG与VMware的组合来调试内核。这要求开发者熟练配置调试环境,包括Windbg和Vmware,以便对驱动程序进行单步跟踪和断点调试。在某些情况下,还需要处理特定的编译问题,例如在...

    Exploiting Windows Device Drivers

    对于想要深入了解设备驱动程序攻击的研究人员,文档推荐了搭建一个实验环境,包括一台配置足够的电脑、虚拟机软件(如Vmware)、调试工具(如Windbg或Softice)、反汇编器(如IDA)等。通过在虚拟机中进行实验,可以...

    寒江独钓-Windows内核安全编程(高清完整版).part1

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part7

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part2

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part4

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part6

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part5

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

    寒江独钓-Windows内核安全编程(高清完整版).part3

    1.3.4 设置VMWare的管道虚拟串口 11 1.3.5 设置Windows内核符号表 13 1.3.6 实战调试first 14 练习题 16 第2章 内核编程环境及其特殊性 17 2.1 内核编程的环境 18 2.1.1 隔离的应用程序 18 2.1.2 共享的内核空间 19 ...

Global site tag (gtag.js) - Google Analytics