Windows网络过滤框架WFP(Windows Filtering Platform)

admin 2023年11月1日12:39:05评论228 views字数 1405阅读4分41秒阅读模式

# Windows Filtering Platform


Windows Filtering Platform (WFP) 提供了灵活的方法来控制网络过滤。它公开了与网络堆栈的多个层交互的用户模式和内核模式API。一些配置和控制可以直接从用户模式获得,无需任何内核模式代码(尽管需要管理员级别的访问权限)。WFP替代了较旧的网络过滤技术,如传输驱动程序接口(TDI)过滤器和某些类型的NDIS过滤器。


如果需要检查网络数据包(甚至修改),或者需要基于某种逻辑进行阻止,可以编写内核模式的Callout驱动程序,这就是本章将关注的内容。我们将首先概述WFP的主要组成部分,查看一些用于配置过滤器的用户模式代码示例,然后深入探讨构建一个可以使用某些逻辑来阻止对网络访问的简单Callout驱动程序。


本篇是对WFP的简介,全面的介绍可能需要一本专门的书籍。


本篇内容包括:

• WFP概述

• WFP API

• 用户模式示例

• Callout驱动程序

• 演示:Callout驱动程序

• 演示:用户模式客户端

• 总结


Windows网络过滤框架WFP(Windows Filtering Platform)

 

 

Windows网络过滤框架WFP(Windows Filtering Platform)

## WFP概述

WFP由用户模式和内核模式组件组成。图13-1展示了一个非常高级的架构示意图。

Windows网络过滤框架WFP(Windows Filtering Platform)


在用户模式中,WFP管理器是基础过滤引擎(Base Filtering Engine,BFE),它是由bfe.dll实现的服务,托管在标准的svchost.exe实例中。它实现了WFP用户模式API,基本上管理着平台,并在需要时与其内核模式对应部分通信。我们将在下一节中检查其中一些API。


用户模式的应用程序、服务和其他组件可以利用这个用户模式管理API来检查WFP对象的状态,并进行更改,例如添加或删除过滤器。这种“用户”的典型示例是Windows防火墙,通常可以通过使用为此提供的Microsoft管理控制台(MMC)来进行控制(见图13-2),但从其他应用程序使用这些API同样有效。


Windows网络过滤框架WFP(Windows Filtering Platform)

图13-2:Windows防火墙MMC


内核模式的过滤引擎公开了各种逻辑层,可以在这些层上附加过滤器(和Callout)。这些层代表了一个或多个数据包在网络处理中的位置。TCP/IP驱动程序调用WFP内核引擎,以便它可以决定哪些过滤器(如果有)应该被“调用”。


对于过滤器来说,这意味着检查过滤器设置的条件与当前请求是否相符。如果条件满足,将应用过滤器的操作。常见的操作包括阻止进一步处理请求、允许请求在此层继续而无需进一步处理、继续到此层中的下一个过滤器(如果有),以及调用Callout驱动程序。Callouts可以执行各种处理,例如检查甚至修改数据包数据。


图13-3展示了层、过滤器和Callout之间的关系。

Windows网络过滤框架WFP(Windows Filtering Platform)

如图13-3所示,每个层可以有零个或多个过滤器,以及零个或多个Callout。层的数量和含义是由Windows固定并提供的。在大多数系统上,大约有100个层。许多层都是成对设置的,其中一个用于IPv4,另一个(在目的上相同)用于IPv6。


我创建的WFP工具提供了一些关于WFP的信息。运行该工具,选择菜单中的View/Layers(或单击工具栏上的Layers按钮)将显示所有现有层的视图(图13-4)。

Windows网络过滤框架WFP(Windows Filtering Platform)

由于这些屏幕截图可能是在这些屏幕截图拍摄后工具可能会发生变化,因此显示的屏幕截图可能略有不同。


原文始发于微信公众号(安全狗的自我修养):Windows网络过滤框架WFP(Windows Filtering Platform)

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年11月1日12:39:05
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Windows网络过滤框架WFP(Windows Filtering Platform)http://cn-sec.com/archives/2164845.html

发表评论

匿名网友 填写信息