Windows Filtering Platform (WFP)

简介 WFP 是微软为 Windows 平台设计的新的网络过滤处理平台,用来代替 Windows XP 和 Windows 2003 上的 hook 形式的网络过滤引擎。 架构 WFP 架设在 TCP/IP 协议栈驱动 tcpip.sys 上,同时为用户态和内核态应用提供了网络过滤接口。也就是说,WFP 是工作在 OSI 的网络层,可以截获所有 TCP/IP 协议数据包。 显然,如果应用采用了其他网络层协议栈,WFP 将不能拦截。这就需要更加底层的 NDIS Filter 驱动来实现了。 接口 WFP 的接口分为几个不同组件。 Callout API 提供了核心的包过滤功能。应用程序创建的过滤器通过 WFP 的 Callout 机制获取不同层次的内核态网络数据包,并进行过滤操作。相关 API 多以 Fwps 开头命名。 Management API 提供了对过滤器的管理功能,支持动态添加和移除过滤器。相关 API 多以 Fwpm 开头命名。 IKE/AuthIP API 提供了对 IKE 和 AuthIP 的管理功能。相关 API 多以 Ikeext 开头命名。 IPsec API 提供了对 IPsec 协议的管理功能。相关 API 多以 Ipsec 开头命名。...

January 24, 2022 · 1 min · lyincc