问题标签 [wfp]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - WFP 内核模式到用户模式的通信响应
我正在使用 Windows 过滤器平台来实现一个简单的防火墙应用程序。实际上我的驱动程序是一个标注驱动程序,它可以拦截两种事件:FWPM_LAYER_ALE_AUTH_CONNECT_V4和FWPM_LAYER_ALE_AUTH_LISTEN_V4。
驱动程序可以使用反向调用模型与用户模式应用程序通信:用户模式应用程序执行一些 IOCTL,驱动程序将它们保存在队列中并在触发事件时返回缓冲区。
我只有一个问题。我需要从用户模式应用程序接收到驱动程序的响应,以便驱动程序可以阻止或允许连接。
过去我研究过一个微过滤器驱动程序,我使用 FltCreateCommunicationPort 向用户模式发送一个事件并等待它的响应(使用来自微过滤器的FltSendMessage)。
所以问题是:WPF 有类似的东西吗?
wfp - Windows过滤平台中的错误代码0xc0220002是什么意思
当我使用FwpmFilterAdd()
函数时,它返回代码0xc0220002
。这是什么意思?
firewall - NetflterSDK 是否能够将 javascript 注入 http 流?
我尝试了netfiltersdk.com,使用他们的 WFP 驱动程序来拦截 HTTP 流量并阻止像 Facebook 这样的网站。与他们的“PFHttpBlocker.exe 'facebook'”示例配合得很好。
我想将 javascript 注入到 HTTP 流中,例如关闭网站或显示
在 netfilterdsk协议过滤器文档中
那么可以注入javascript吗?
c++ - 是否可以使用 WFP 发送带有有效负载的 tcp syn 数据包?
我是 Windows 过滤平台的新手。
是否可以使用 WFP 发送带有有效负载的 tcp SYN 数据包?
我要发送的有效载荷将有一些秘密密码。
我的 linux 服务器将检查 SYN 数据包的有效负载是否有效。
wdk - 转发层中的 WFP 状态过滤?
众所周知,Windows 过滤平台架构由几层过滤(IPv4/6、入站/出站、流/数据报的组合)组成。
据我所知,它是唯一提供状态过滤的一个特定层是 ALE 层(应用层执行)。目的是确定数据包与特定 TCP 或 UDP“连接”(具有相同源/目标端口和 IP 地址的数据包)的关联性,而不是将每个数据包单独作为 IP 数据报进行检查。但是,据我了解,ALE 层仅允许用于在本地计算机中具有对等点的连接,并且其中具有处理其中一方的应用程序。
我的问题是,是否有一种简单的方法来处理有状态连接(特别是对于 UDP),以便在 WFP 内的转发层(不是入站或出站)中进行过滤?也就是说,按连接过滤未针对本地计算机的数据包。
我不想跌得这么低,但我考虑接收转发层 IP 数据包并重定向它们只是为了过滤(然后再次重定向)。
c - 在 WFP 标注驱动程序中指定 SERVICE_SYSTEM_START 时系统重新启动后出现“系统错误 2”
我在这里有一个示例WFP 标注驱动程序。它可以通过使用“net start lbtest”和“net start lbtest”来启动和停止。但是当我将 StartType 从3 (SERVICE_DEMAND_START)更改为1 (SERVICE_SYSTEM_START)时。我可以正常启动这个驱动程序。但是当系统重新启动时,驱动程序不会启动,如果我运行“net start lbtest”,我会得到“系统错误2”,如下所示:
我的测试平台是 Win8.1 x64。我认为这是世界粮食计划署的一个错误?或者在系统重新启动时使 WFP 标注驱动程序自动启动的正确方法是什么?
我的 INF 文件是这样的:
lbtest.c
环回.c
c - 当 WFP 标注驱动程序使用 SERVICE_SYSTEM_START 启动时,FwpmEngineOpen 返回 EPT_NT_CANT_PERFORM_OP
我正在编写基于 Microsoft Inspect示例的基于WDM 的 WFP 标注,Inspect 基于WDF并与 SERVICE_DEMAND_START 或 SERVICE_SYSTEM_START 一起运行良好。我的示例已将 WDF 更改为 WDM,并在我的 INF 中使用SERVICE_SYSTEM_START ,但是当系统重新启动时,我的驱动程序的FwpmEngineOpen函数失败并显示 EPT_NT_CANT_PERFORM_OP。在我的示例中,我只是打开和关闭了 WFP 引擎,因此与持久标注或过滤器没有关系。
我还发现与设备有关系。如果我创建一个设备(使用NPF_CreateDevice调用),就会发生这个错误,但是如果我注释NPF_CreateDevice调用,这个错误就消失了。并且考虑到 WDM 和 WDF 在设备创建代码方面是不同的。所以我认为我的设备代码一定有问题?谢谢!
lbtest.c
环回.c
python - (WFP)如何在 FWPM_LAYER_STREAM_V4 层中删除数据
我的程序包括一个exe和一个sys。sys 工作在 WFP 的 FWPM_LAYER_STREAM_V4 层,当 sys 捕获流数据时,会将数据传递给 exe,然后 exe 会检查数据是否被禁止。在分类时,我通过以下代码阻止数据以进行进一步检查:
然后 sys 将在特定线程中等待 exe 结果。如果数据不被禁止,那么我会将数据注入回流中。否则我想删除数据。但是我真的不知道如何删除数据,那么我怎样才能在FWPM_LAYER_STREAM_V4
图层中删除数据呢?
win-universal-app - 通用 Windows 应用程序将页面显示为对话框
我正在尝试在通用窗口应用程序(Windows 10)中将页面显示为对话框。
在 WFP 中,有这个 ShowDialog 可以在 Window 上调用:
如何在通用窗口应用程序(Windows 10)中执行类似的操作?
这是它的外观示例图片