双机调试
2020-02-20 10:54:33 Author: mp.weixin.qq.com(查看原文) 阅读量:98 收藏


文章来源:华盟论坛

条件:已经安装好Visual Studio 2015、VM、Win7-x64、wdk10

为什么要搭建双机调试,普通的应用程序可以直接在本机进行调试;但内核程序出错,便会系统蓝屏,内核死锁等,因此搭建双机调试环境,用Windbg调试工具对目标程序进行调试

 

两台机子是通过串口线连在一起的,打印机也是串口线,可以把它删除

 

 

 

把目录 C:\Program Files (x86)\Windows Kits\10\Remote\x64下的WDK Test Target Setup复制到虚拟机安装;并在Debuggers目录下的对应的windbg生成快捷方式到桌面,右键属性,将目标里的内容改成以下内容

"C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\windbg.exe" -k com:port=\\.\pipe\com_1,baud=115200,pipe

 

 

然后打开windbg,dt命令显示有关局部变量、全局变量或数据类型的信息

 

用户经常会需要查看在启动调试目标时使用了哪些命令行参数,这个信息是保存在PEB中的,可以通过!peb来获取,这个命令将解析PEB并给出完整的命令行,所有已加载DLL的位置,以及环境变量等

 

 

符号文件通常包含全局变量的名字和地址,函数名,地址及其原型,局部变量的名字和地址等的类型信息

 

把相关驱动测试工具拷贝到虚拟机

 

用Visual Studio 写一个简单的程序

 

在属性中把运行库改为多线程调试、Windows7

 

 

生成一个扩展名为“sys”的内核模块,这个程序不驱动任何设备

 

在处理器上,权限分为四个级别,Ring0,Ring1,Ring2,Ring3,用户程序运行在Ring3上,Windows内核及其扩展模块(驱动程序运行在Ring0上)

 

小白入门,大佬勿喷


文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650459891&idx=3&sn=e7d6d29870b531ed65c6e17e02d69d72&chksm=83bbab17b4cc2201d5f9f7cdf453e7dd57b16534a6c81a57770935b40f15118e087f12229a90#rd
如有侵权请联系:admin#unsafe.sh