是否有可能在WFP (Windows过滤平台)中实现用户模式标注?

Is it possible to implement user mode callouts in WFP (Windows Filtering Platform)?

本文关键字:用户 实现 模式 平台 有可能 WFP 过滤 Windows 是否      更新时间:2023-10-16

是否可以在WFP (Windows过滤平台)中实现用户模式标注?如果有,请分享一些相关的链接或示例代码。

目前不可能。尽管大部分Windows过滤平台(WFP) API在用户模式下可用,但当您尝试注册callout时,您将被此API调用的某个版本绊倒:

FwpsCalloutRegister3(
   _Inout_ void* deviceObject,
   _In_ const FWPS_CALLOUT3* callout,
   _Out_opt_ UINT32* calloutId
   );

这是向WFP注册您的分类/通知函数的唯一方法,如果您不是内核设备驱动程序,那么您将没有deviceObject传递给此API调用。

From MSDN:

用户模式与内核模式

如果期望的过滤可以通过使用标准过滤来完成Windows过滤平台内置的功能,独立软件供应商(isv)应该编写用户模式管理应用程序配置过滤引擎而不是编写内核模式标注驱动程序。内核模式的调出驱动程序应该只当您必须以无法处理的方式处理网络数据时编写由标准的内置过滤功能处理。为关于如何编写用户模式Windows过滤平台的信息管理应用程序,参见Windows过滤平台