问题标签 [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.

0 投票
1 回答
774 浏览

c++ - Linux 的 Windows 过滤平台等价物?

不止一次我选择自己想要一种简单的方法来在我的 LAN 中即时编辑数据包,所以我认为是时候让我制造一些“机器”来完成这项工作了。我认为世界粮食计划署会做我需要的。

我不仅想从我的程序运行的计算机上过滤和编辑数据包,而且我还想对局域网中的一台机器进行 ARP 毒化并编辑通过另一台机器路由的数据包(我不知道我能不能做到这使用粮食计划署;这是我问题的另一部分。如果有人知道,请告诉我)。

问题是我无法下载 Visual C++,我需要它来使用 WFP(它是 Windows SDK 的一部分,对 MinGW 不完全可用;我自己移植标头通常很头疼)。我也只是想知道如何在 Linux 中做到这一点。

任何人?

(ServerFault.com 上的补充问题:https ://serverfault.com/questions/74915/best-way-to-live-edit-packets-from-another-computer )

0 投票
1 回答
558 浏览

windows - 在 Windows 操作系统上过滤 Internet 请求

我有兴趣编写一个家长控制过滤器,该过滤器可用于监视和/或重定向 Window 桌面操作系统(Vista 或更高版本)上的所有出站互联网请求。我希望过滤器本身具有不受限制的 Internet 访问权限,以便它可以在应用程序/浏览器请求期间访问 Internet 上的 Web 服务。对于批准的流量,我想简单地传递请求。对于被拒绝的流量,我想重定向到自定义响应页面。步骤如下所示:

  1. 过滤器 URL 接收请求。
  2. 过滤器将 URL 传递给 Web 服务以供批准。
  3. 批准的请求被传递到互联网网关。
  4. 被拒绝的请求被重定向到自定义错误页面。错误页面很可能是在线的。

我的问题是,我应该在 Windows 网络堆栈中的哪个位置实现此过滤器?我可以在 Windows 过滤平台的文章中看到,有一个地方可以实现第三方家长控制,但是该过滤器是否能够启动和接收自己的网络流量,只要它能够识别自己的请求并避免卡住在无限递归的情况下?我可以将过滤器存储在本地,但我更愿意将它们存储在可以在多个客户端之间共享并且不易被篡改的地方。

如果这个第三方家长控制块的位置不正确,那么 WFP 架构中是否有另一个位置可以让我实现我所描述的过滤器?

0 投票
2 回答
565 浏览

c++ - C++ 我应该包含什么 .lib 文件

我正在做一个防火墙应用程序。为此,我尝试了 codeproject HERE中的一些代码

但问题是代码没有编译,给出链接错误。我正在使用 SDK 2008。谁能告诉我我应该为 WFP 使用哪个 .lib 文件以及在哪里可以找到它?

谢谢。

0 投票
2 回答
3270 浏览

c# - windows过滤平台。网络包装?

Windows 过滤平台是否有 .NET 包装器?我希望使用 WFP 在我的 c# 应用程序中观察应用程序级别的网络流量观察。

谢谢!

0 投票
1 回答
1446 浏览

windows - 如何将服务添加到 Windows 防火墙信任列表,或提示用户执行相同操作?

我在我的软件分发中集成了一个小型 http 服务器,旨在允许从客户的 LAN 访问我安装的应用程序。

现在,客户必须手动更新防火墙的受信任应用程序列表。我想在安装时在防火墙中打开一个洞,或者确保防火墙提示用户允许我的 Web 服务器作为受信任的应用程序,能够接收入站流量。

任何解决方案都应至少与内置的 Windows 防火墙一起使用。

建议?

0 投票
1 回答
372 浏览

c++ - How can I output traffic information (IP, port, etc.) to a log file using Windows Filtering Platform and Windows Driver Development Kit?

I am working on a driver using WDK that will monitor network traffic and output it to a log file.

I am currently trying to modify the inspect example given in the WinDDK directory.

It seems that I can't call printf, fprintf, etc. because of a linker error:

unresolved external symbol __imp_printf ...

Is there another way to output traffic information to a log file? Am I not linking some library somewhere properly?

Thank you

0 投票
3 回答
4982 浏览

windows - 内核模式和用户模式应用程序之间的通信

我已经构建了一个在内核模式下运行的 WFP 标注驱动程序。现在,我试图弄清楚如何在这个驱动程序和我在用户模式下运行的 GUI 应用程序之间进行通信。有任何想法吗?

正是我想要的是这样的:

  1. 标注驱动程序检测到端口 4444 上的传入连接(这不是我的问题的一部分)
  2. 驱动程序向用户模式应用程序发送消息。
  3. 该应用程序向用户显示通知并询问我们是否应该接受/阻止连接。
  4. 用户模式应用程序将用户的响应发送回标注驱动程序。

谢谢!

0 投票
1 回答
1826 浏览

windows - Windows 过滤平台 - 我的数据包有效负载在哪里?

我一直在修改“检查”WFP 示例(与 WinDDK 捆绑在一起),目的是能够解析所有传入 TCP 数据包(来自指定 IP 地址)的有效负载以获取某些字符串。(我已经修改了“检查”,使得过滤器只捕获 TCP 数据包)

到目前为止,我的修改一直在'TLInspectTransportClassify'classifyFn上,如下所示。我的目标是访问捕获的每个 TCP 数据包的有效负载。

据我了解,在如上所述声明 ioPacket 之后,ioPacket->streamData 应该包含数据包的有效负载。但是,ioPacket->streamData 对我来说始终为 NULL。如何获取数据包的有效负载?难道我做错了什么。

提前致谢。

0 投票
2 回答
224 浏览

c# - 缓冲区按钮更改表单

这是我的第一篇文章。我有一个让我头疼的大问题。我有一个应用程序使用 WinForms、TTS(文本到语音)语音和带有状态的自定义按钮。

在我的第一种形式-main-中,当我单击一个按钮时,该应用程序会在第一种形式上方打开第二种形式。行。当我通过按钮关闭第二个表单时,我告诉 TTS 说点什么,表单会自行关闭,再次查看第一个表单。行。

当我在第二种形式的按钮中单击两次时,问题就开始了:TTS 说了些什么,按钮关闭并且“第二次单击”仍在单击缓冲区(或某处)中,并且它以第一种形式进行单击(其中当我第一次按下按钮时出现 4 秒后)。我在同步模式下使用语音;如果我在异步模式下使用语音,应用程序会以一个很好的异常结束。如果我在第二种形式中单击三到四次,则其他单击仍保留在缓冲区中,并且一直在第一种形式中单击。

我尝试(1)删除 DoubleClick 事件,(2)删除与按钮关联的事件,(3)隐藏从第二个表单返回时自动单击的按钮,(4)在创建之前隐藏第一个表单2nd 完成后恢复。

建议?谢谢!

PD:对不起我的英语:S

PD2:我上传了一个非常简单的例子来说明发生了什么。

0 投票
2 回答
1237 浏览

c++ - 在 Visual Studio 2010 中包含 fwpmu.h 的错误

我正在尝试从 C++ CLR 类库(新项目 -> Visual C++ -> CLR -> 类库)中调用一些 WFP 函数

代码:

只有这样,Windows SDK 中的许多包含文件都无法编译。我错过了什么?

例子:


编辑:

我找到了解决方案,这是一些头文件中的一个错误:http: //social.msdn.microsoft.com/Forums/en/wfp/thread/8fd93a3d-a794-4233-9ff7-09b89eed6b1f

以及 CLR 和另一个标头之间的冲突:http: //social.msdn.microsoft.com/Forums/en/vcgeneral/thread/92c473d6-c963-44fa-9150-6c6af502112b