Windows Packet Divert(WinDivert)是一個適用於Windows 10、Windows 11和Windows Server的使用者模式資料包捕獲和重定向工具

suv789發表於2024-03-26

Windows Packet Divert(WinDivert)是一個適用於Windows 10、Windows 11和Windows Server的使用者模式資料包捕獲和重定向工具。

WinDivert 允許使用者模式應用程式捕獲/修改/丟棄傳送到/從 Windows 網路堆疊的網路資料包。總之,WinDivert 可以:

  • 捕獲網路資料包
  • 過濾/丟棄網路資料包
  • 嗅探網路資料包
  • 重新注入網路資料包
  • 修改網路資料包

WinDivert 可用於實現使用者模式資料包過濾器、資料包嗅探器、防火牆、NAT、VPN、隧道應用程式等。

WinDivert 的主要特點包括:

  • 資料包攔截、嗅探或丟棄模式
  • 支援迴環(本地主機)流量
  • 完整的 IPv6 支援
  • 網路層支援
  • 簡單而強大的 API
  • 高階過濾語言
  • 過濾優先順序
  • 靜默安裝
  • 在 GNU Lesser General Public License(LGPL)條款下免費提供

詳細文件和示例可參考以下連結:

  • WinDivert 參考手冊:WinDivert 2.2
  • WinDivert README
  • WinDivert 變更日誌
  • WinDivert 常見問題解答
  • WinDivert 2.2 示例應用程式,包括流跟蹤、簡單資料包捕獲和轉儲、簡單防火牆應用程式、具有多執行緒的基本 WinDivert 應用程式框架、套接字操作轉儲、將 TCP 流重定向到本地代理伺服器、簡單 URL 黑名單過濾器等。

原始碼託管在 GitHub 上:https://github.com/basil00/Divert

下載WinDivert 的原始碼和二進位制包請參考以下連結:

  • WinDivert-2.2.2-Source.zip(原始碼壓縮包)
  • WinDivert-2.2.2-A.zip(二進位制包)

注意事項:

  • WinDivert A/B/C 變體除了驅動簽名外是相同的。對於大多數應用程式來說,使用哪個變體並不重要。
  • 商業使用者應儘可能使用自己的證書對驅動程式進行簽名。
  • 要使用 WinDivert,請確保應用程式具有管理員特權,否則 WinDivert 將無法載入。

還有一些專案使用了 WinDivert,如 ReQrypt、TcpCrypt、Suricata、GoodbyeDPI 等。這些專案均使用 WinDivert 來實現各種功能,例如 HTTP 請求隧道、網路流量加密、網路威脅檢測等。

相關文章