参考网址:(他也是看的<<寒江>>)
ZC: 我在虚拟机里面 新增串口的时候,看到新增出来的是 “串行端口 2”(我的电脑-->右键-->管理-->设备管理器-->计算机管理(本地)-->系统工具-->设备管理器-->端口(COM和LPT) 里面 却是“通讯端口(COM1)”... 不知它们之间到底有没有关系...)
于是3个地方需要统一: (1)、虚拟机设置里面应该为: (A)、“\\.\pipe\com_2” (B)、“该端是服务器。” (C)、“另一端是应用程序。” (2)、xp中C:\boot.ini中应该是“multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=com2 /baudrate=115200” (3)、WinDBG快捷方式中“"...\windbg.exe" -b -k com:port=\\.\pipe\com_2,baud=115200,pipe”
1、VMware® Workstation 版本 10.0.4 build-2249910
WinDBG 来自 GRMWDK_EN_7600_1.ISO("...\GRMWDK_EN_7600_1\Debuggers"),里面 有3个版本:dbg_amd64.msi、dbg_ia64.msi、dbg_x86.msi
2、VMware 设置WindowsXP调试执行 (来自<<寒江独钓 Windows内核安全编程>>的 1.3.2 (书.10,Pdf.36))
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /debug /debugport=com1 /baudrate=115200
3、VMware 设置Vista调试执行 (来自<<寒江独钓 Windows内核安全编程>>的 1.3.3 (书.11,Pdf.37))
4、设置VMware的管道虚拟串口 (来自<<寒江独钓 Windows内核安全编程>>的 1.3.4 (书.11,Pdf.37))
调试机应与被调试机以串口相连,若被调试机是虚拟机,可以在虚拟机上生成一个用管道虚拟的串口打开虚拟机,不要启动->左边Commands栏->Edit virtual machine settings->Hardware->Add在Add Hardware Wizard中,类型选择"Serial Port"选择"Output to named pipe"接下来分别选择"\\.\pipe\com_1"和"This end is the server"以及"The other end is an application."完成即可
4.1、(这一段的内容来自网页,省的自己打字)
在调试机上加上如下参数启动WinDbg,使之连接一个管道,并把这个管道当作一个串口来处理windbg.exe -b -k com:port=\\.\pipe\com_1,baud=115200,pipe在控制台执行此命令或者在windbg.exe的快捷方式属性中“目标”中增加上述启动参数先打开虚拟机,启动到调试模式下的Windows,然后启动WinDbg,显示已连接上的信息就表示成功了刚连接上时虚拟机里的系统会被中断,这时要在WinDbg的命令提示符"kd>"后输入"g"并回车
ZC: ("E:\ZC_ProgramFiles_161104\Debugging Tools for Windows (x86)\windbg.exe" -b -k com:port=\\.\pipe\com_1,baud=115200,pipe)
5、设置Windows内核符号表 (来自<<寒江独钓 Windows内核安全编程>>的 1.3.5 (书.13,Pdf.39))
5.1、(这一段的内容来自网页,省的自己打字)
WindDbg把内核视为一个整体,只要告诉它代码的路径和符号表的路径就可以了调试连接上之后,File->Symbol File Path, 输入符号表位置,指定编译结果所在的objchk_wxp_x86\i386即可还需要指定Windows的内核符号表,在上文的符号表路径中增加一条路径,与之前的用分号隔开:srv*c:\symbols*http://msdl.microsoft.com/download/symbols可打开C:\symbols查看是否将符号表下下来;若没有,多Reload几次
ZC: 我这里下载了离线的符号表,安装时WindowsXP-KB936929-SP3-x86-symbols-full-ENU.exe 默认的路径为"C:\Windows\symbols" 我改成了"E:\Windows\symbols",但是这样 就看不出 符号表的版本了... 于是 又将"E:\Windows\symbols"改为了"E:\Windows\symbols_xpsp3x86free"
ZC: 貌似 symbols的安装文件和名称的对应为:名称retail-->版本free;名称checked-->版本debug
6、
7、WinDbg符号表(Symbols)下载地址
7.1、我下的几个Symbols的 直接下载地址:
8、我的WDK下载地址:
8.1、GRMWDK_EN_7600_1.ISO
8.2、WDK10,据说是 和 VS2015一起的,于是下载 vs2015sp3,但是还没有安装,不知效果如何...
cn_visual_studio_enterprise_2015_with_update_3_x86_x64_dvd_8923298.iso 是来自"MSDN.itellyou.cn"
9、DebugView v4.81
10、