0x00 环境介绍
- 虚拟机软件:VMware Fusion 专业版 12.1.1 (17801503)
- 调试机: Windows 10 x64
- 被调试机: Windows XP Professional SP3
分别通过iso用VM对两台虚拟机进行安装.
0x01 配置两台虚拟机的串端口
Mac打开.vmx文件:
lnyEYAs5qVGaT8dzNzkP3N6t1tgR7OoAMdEuOwUYGeY.png
k-Rn1MH6KVqSwgocjdjbRq-mnPWBtCOGGswQ9i38Bzc.png
在里面找到.vmx打开
被调试机器 - Windows XP Professional SP3
serial0.fileName = "/Users/Virtual Machines.localized/com1"
serial0.present = "TRUE"
serial0.fileType = "pipe"
serial0.yieldOnMsrRead = "TRUE"
serial0.startConnected = "TRUE"
fileName 要根据自己的pc配置一下
调试机器 Windows 10 x64
serial0.fileName = "/Users/Virtual Machines.localized/com1"
serial0.present = "TRUE"
serial0.fileType = "pipe"
serial0.pipe.endPoint = "client"
serial0.yieldOnMsrRead = "TRUE"
参考了VMware官网的issue
开机的时候, 调试机Windows10 有可能会显示无法套接字, 不用担心, 把Windows XP 启动后在虚拟机上工具栏上点击一下连接:
被调试机:
FyRstwWfzGNscjPJippwIK2GvN66B43vCRUXp2omqGc.png
调试机:
yquBs63AcDvA8Y1G0-v17kcFG6YOWUA8xwS1mMIoA4I.png
配置好把两台虚拟机开机, 在两台电脑的串口中修改波特率:
右击我的电脑->管理->设备管理器->端口设置
XP:
lg3XbCda3l51H_QH7ZRtX72AhAazV_AV4X6IDOcIYmo.png
PCJVaVtJb5fVRMurodrD_Eipv0tsg-wLmW0YmcbEQdk.png
Windows 10:
sid3kmKo09_xoxrG_eA8XdOqPWLGx6HwqzAmab6XuCQ.png
0x02 被调试机器开机引导项设置
XP中打开c:\boot.ini
OycXNv53pozO3Mu-qtgiVIdJcsiTLuGv3HhqoRux1x4.png
[boot loader]
timeout=30
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="XP Professional with Kernel Debugging" /noexecute=optin /fastdetect /debug /debugport=COM1 /baudrate=115200
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect
Z9HJVMspcIw_l9T6nucfloPfVIGeM1H2WK76fsKq73A.png
partition(2) 等选项要一样, 不然会无法引导启动
然后先去配置 Windows 10 调试机, 然后在去重启这个XP选择调试模式
0x03 调试机Windbg配置
astwtYblWGX4_1VkIBhM3hAld0id2XW_UukORNcP22g.png
Z8QxqY5Z3xBWSnyyh9-e4NpXTf-l2jMswitpr7StGxM.png
bdBGvJg9ip8mCPO5VYiqyWIhRf5HQno5DNdzbOkxVqg.png
这时候重启被调试机:
MLvHEVv9S-AHiz605O0166JwfU7sxZKh_uijNBvEDe4.png
虚拟机正常启动windbg窗口会有显示一些信息
2E5XnAa2r8iofHTNrC_JCBGbtJSftiqHIr9rxjYPZ5Y.png
接下来通过Debug->Break来内核断点
PXwEo2OZmy69o3-cIVgCQB-fBfwpuRcK2jGZPSTStZw.png
就来到了熟悉的界面了:
wbdSkxze_TCkwzTXPJNHYMjft_FxUsO7tTB5zJJdj-Y.png
然后配置一下符号表:
kd> .symfix c:\symbols
kd> .sympath
Symbol search path is: srv*
Expanded Symbol search path is: SRV*c:\symbols*https://msdl.microsoft.com/download/symbols
参考Microsoft 公共符号服务器:
https://docs.microsoft.com/zh-cn/windows-hardware/drivers/debugger/microsoft-public-symbols