如何使用 IoSpy 和 IoAttack 执行模糊测试
注意
Windows 10版本 1703 后,在 WDK 中不再提供 IoSpy 和 IoAttack。
作为这些工具的替代方法,请考虑使用 HLK 中提供的模糊测试。 下面是一些需要考虑的问题。
还可以使用驱动程序验证程序附带的 内核同步延迟模糊 。
若要使用 IoSpy 和 IoAttack 执行模糊测试,请执行以下操作:
安装 IoSpy:
若要在特定设备上安装 IoSpy 并启用模糊测试 () ,请运行 启用 I/O Spy 测试。 DQ 参数控制安装了 IoSpy 筛选器驱动程序的设备。
在指定的设备上运行 IOCTL 和 WMI 测试:
重启测试系统后, IoSpy 已准备好筛选对已启用模糊测试的设备发出的 IOCTL 和 WMI 请求。 现在,必须使用任何适当的测试在驱动程序中为这些设备练习 IOCTL 和 WMI 代码路径。 这允许 IoSpy 根据这些 IOCTL 和 WMI 请求记录尽可能多的详细信息。 IoSpy 将这些详细信息保存在 IoSpy 数据文件中。
卸载 IoSpy:
完全练习 IOCTL 和 WMI 代码路径后,必须先卸载 IoSpy,然后才能运行 IoAttack 来执行模糊测试。 若要卸载 IoSpy,请运行 禁用 I/O Spy 测试。
此命令从启用模糊测试的所有设备中删除 IoSpy 筛选器驱动程序。 运行命令后,重新启动测试系统,以便从内存中卸载 IoSpy 筛选器驱动程序。
注意 卸载 IoSpy 时,它不会删除 IoSpy 数据文件。 此文件的位置由 DFD 参数设置为 启用 I/O Spy 测试。 默认位置为 %SystemDrive%\DriverTest\IoSpy。 有关详细信息,请参阅 IoSpy 数据文件。
运行 IoAttack:
测试系统现在已准备好通过运行 I/O 攻击测试来运行 模糊测试。 有关如何运行 IoAttack 的详细信息,请参阅 IoAttack。
注意 为了验证驱动程序的 IOCTL 和 WMI 接口的访问权限,应使用不同的特权(例如来宾帐户和管理员帐户)运行 IoAttack 帐户。