NDIS lwf(协议)驱动程序是否需要在Windows中签署数字签名使用?

时间:2019-07-15 15:31:18

标签: c windows driver device-driver ndis

我尝试开发用于过滤特定数据包的NDIS lwf驱动程序。

我成功运行了在Windows 10中开发的驱动程序,该驱动程序是用于调试的测试模式。

我将窗口测试模式更改为普通模式,然后在非测试模式的窗口中运行驱动程序。但未加载驱动程序。

要检查驱动程序,我在cmd.exe中运行脚本(exe)“ sc query ndis driver”。脚本(exe)返回退出代码577。

驱动程序是通过测试签名构建的。并且我在窗口驱动程序样本的bindview样本中安装了驱动程序以使用netcfg API。

bindview示例使用SetupCopyOEMInf函数和netcfg Install函数来安装网络驱动程序。我尝试使用SetupCopyOEMInf将NDIS lwf驱动程序(测试符号)文件复制到系统驱动程序(INF)文件夹中。但是SetupCopyOEMInf返回FALSE,而GetLastError返回0xe0000277。

我检查了c:/ window / INF目录中的setupapi开发日志。日志文件详细信息错误说明“驱动程序未签名数字签名”。

所以我强行将驱动程序inf和cat文件复制到c:/ window / INF目录中。然后我通过调用netcfg Install函数安装了驱动程序。使用上述方式安装的驱动程序在Windows 10(测试模式和内核调试)中正常工作。但是驱动程序无法在非测试模式(正常模式)的Windows 10中工作。

我有几个问题。

  1. 只有在非测试模式的Windows 10中对数字签名进行签名的NDIS lwf(协议)驱动程序可以工作吗?

  2. 是否可以在非测试模式的Windows 10中使用测试签名驱动程序?

  3. 是否可以免费将数字签名签名到NDIS lwf(协议)驱动程序?

1 个答案:

答案 0 :(得分:1)

  1. 只有非数字签名的NDIS lwf(协议)驱动程序可以在Windows 10(非测试模式)下工作吗?

* A:是的,我们需要具有正确的签名驱动程序才能在Windows 10中运行而无需测试模式。此外,还需要签署EV证书(扩展验证证书)*

  1. 是否可以在非测试模式的Windows 10中使用测试签名驱动程序?

A:否。抱歉,没有。 Windows出于安全目的严格禁止使用无符号的驱动程序。

  1. 是否可以免费将数字签名签名到NDIS lwf(协议)驱动程序?

A:不能。没有免费的Windows驱动程序签名方法。尤其是内核模式驱动程序。