問題タブ [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 投票する
0 に答える
599 参照

c++ - 他のすべてのプログラムをブロックしながら、単一のプログラムへのアクセスを許可する (WFP)

Windows Filtering Platform を使用して、すべてのコンピューター アプリケーションから 1 つの特定のアプリケーションを差し引いてブロックする必要がありますか?

このコードを試してみましたが機能しません。すべてのトラフィックをブロックします:(

前もって感謝します

0 投票する
1 に答える
53 参照

kernel - 誰かがフィルターを削除したときに通知を受け取りたい

ネットワークイベントをフィルタリングしているWFPドライバーがあり、FwpmFilterAddを使用してファイラーを追加しましたが、誰か/アプリケーションがFwpmFilterDeleteByKey0を使用してフィルターを削除する可能性があります。フィルターの削除に関する通知を受け取りたいです。それはできますか?

FwpmFilterSubscribeChanges0 を追跡するユーザー モード用の API があることがわかりますが、カーネル モード用は見つかりませんでした

0 投票する
0 に答える
638 参照

windows - Windows でアプリごとのルーティング動作を実装するにはどうすればよいですか?

Windows 10 デスクトップで (OpenVPN を使用して) VPN を実行しており、VPN がデフォルト ゲートウェイであるため、デフォルトですべてのトラフィックが VPN トンネルを通過します。

ただし、特定のアプリを VPN から除外したいので、それらのトラフィックは代わりに VPN を通過して物理インターフェイスから直接送信されます (いわゆる「スプリット トンネリング」)。

このソリューションには、WFP (Windows Filtering Platform) API、およびおそらく Windows に相当する API が含まれると思います。

これは現在、「cgroups」とポリシーベースのルーティング/複数のルーティングテーブルを介して Linux で動作しています。

しかし、Windows にはポリシー ベースのルーティングも複数のルーティング テーブルもありません。しかし、Windowsでこれを実現する方法はまだ考えられますが、それを実現するためのAPIが見つかりません

SO_BINDTO_DEVICE1 つの方法は、特定のアプリのソケット作成をフックし、ソケット オプション ( ) に相当する Windows を使用してsetsockopt()、タップ ドライバーではなく物理インターフェイスにソケットを強制的にバインドすることです。

しかし、繰り返しになりますが、上記を実現するための関連 API が見つかりません。

だから私はいくつかの質問があります:

(1)WFP(Windows Filtering Platform)または一般的なWindows APIの特定のAPI内で私がやりたいことは可能ですか?もしそうなら、どのAPIを見るようにアドバイスしますか?

(2) または、「WFP 呼び出しドライバー」を作成する必要がありますか? もしそうなら、これに関するいくつかのリソースを教えてもらえますか?また、私の特定の問題の良い出発点になる可能性がありますか? :)

(3) 他に足りないものはありますか? 私が望むものを達成するためのより簡単なアプローチ? 一部のVPNで機能を確認したため、Windowsで可能であることは知っていますが、自分の個人用VPNで複製したいと思います:)