一、win7+WDK+VS2010环境搭建
1、安装WDK(7.1.0)
下载地址:http://www.microsoft.com/en-us/download/details.aspx?id=11800
2、安装VS2010
博主安装的是VS2010旗舰版。
下载地址:http://www.microsoft.com/zh-cn/download/details.aspx?id=12752
3、配置驱动开发环境
博主参考了:http://www.cppblog.com/guojingjia2006/archive/2011/03/19/142211.html这篇文章,不过未能运行成功,
犯了几个低级的错误:
随机基址:清空 //把框里的数据删掉。(yes也不是no也不是就是要一个干干净净的文本框) //必选
不然会出现 e:\xxx.sys : fatal error LNK1295: “/DYNAMICBASE”与“/DRIVER”规范不兼容;链接时不使用“/DYNAMICBASE”
数据执行保护(DEP): 清空 //把框里的数据删掉。(yes也不是no也不是就是要一个干干净净的文本框) //必选
不然会出现 e:\xxx.sys : fatal error LNK1295: “/NXCOMPAT:NO”与“/DRIVER”规范不兼容;链接时不使用“/NXCOMPAT:NO”
重新生成,运行成功。
二、Windbg双机调试搭建
安装WDK后开始菜单上会出现两个新的文件夹:
打开虚拟机,找到C盘根目录下的boot.ini
打开boot.ini将里面增加一行代码:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=com_1 /baudrate=115200
如下图:
在《寒江独钓windows内核安全编程》书中是/debugport=com1 但是虚拟机连接不上,貌似跟虚拟机的版本有关系,查资料说高版本的要将其改
为/debugport=com_1
接下来关闭虚拟机,添加Serial Port
点击next,选择Output to named pipe ;点击next,将第三个改为The other end is an application;点击finish。
之后修改Windbg的启动参数,博主是将Windbg生成桌面快捷方式,点击属性,找到目标在后面添加,即在windbg.exe 后面添加:
-b -k com:port=\\.\pipe\com_1,baud=115200,pipe,resets=0
开启虚拟机进入调试模式:
如果你进入调试模式后,自动开机了,说明你的虚拟机未配置成功,否则一直活停留在,出现欢迎进入windows之前。
打开Windbg,连接成功。
本人小白一个,大牛勿喷。