警告! Windows 10 VPN 用戶面臨 DNS 洩漏的巨大風險

Windows 10 中的一項新“功能”意味著 DNS 請求不僅通過您的 VPN 隧道進行定向,還通過您的 ISP 和本地網絡接口進行定向。這是因為默認情況下,Windows 10 嘗試通過同時向所有可用資源並行發送 DNS 請求並(至少在理論上)使用最快的請求來提高 Web 性能。

對於 VPN 用戶來說,這是一個主要問題。這意味著您的 ISP(以及在您的本地網絡上監聽的任何人)將通過您的 DNS 請求了解您在互聯網上訪問過哪些網站和服務。它還為黑客劫持您的 DNS 請求開闢了道路(DNS欺騙.) 除此之外,還有報告的 Windows 10 用戶由於此問題而遭受頁面加載緩慢和超時的困擾。

這個問題導致了美國計算機準備小組(US-CERT),美國國土安全部的一個官方部門,發布警報

智能多宿主名稱解析

DNS 是指用於將域名 (propprivacy.com) 轉換為數字 IP 地址 (216.172.189.144) 的動態名稱系統。此翻譯服務通常由您的 ISP 使用其 DNS 服務器執行。但是,當您使用 VPN 服務時,DNS 請求應通過 VPN 隧道路由到 VPN 提供商的 DNS 服務器,而不是 ISP 的 DNS 服務器。

在 Windows 7 下,所有 DNS 請求都是按照 DNS 服務器首選項的簡單順序發出的。但這種情況在 Windows 8 中發生了變化,微軟默認添加了“智能多宿主名稱解析”。這會向所有可用接口發送 DNS 請求,但僅在主 DNS 服務器無法響應時才使用非首選服務器。

這使得 Windows 8.x 系統容易遭受 DNS 洩漏,但至少使得 DNS 請求不太可能被劫持。另一方面,Windows 10 只是選擇響應最快的 DNS 請求,這帶來了重大安全風險。

具有“DNS 洩漏保護”功能的 VPN 客戶端應在早期版本的 Windows 中禁用智能多宿主名稱解析,但這在 Windows 10 中可能不起作用(並且可能因各個客戶端而異)。沒有此功能的客戶端用戶(包括通用開源 OpenVPN 客戶端)幾乎肯定會在 Windows 10 下遭受 DNS 洩漏。

修復智能多宿主名稱解析 DNS 洩漏

  1. 現在有一個OpenVPN 插件經過瓦爾迪克SS這解決了這個問題。它應該適用於所有版本的 Windows,並且還應該適用於大多數使用標準 .ovpn 配置文件(即大多數)的自定義 OpenVPN 客戶端。這是推薦的解決方案。
  2. 理論上,用戶可以一些*Windows 8、Windows 8.1 的版本(尤其是!Windows 10 使用本地組策略編輯器禁用智能多宿主名稱解析。 Avast 發布了一些指示關於如何做到這一點。

    *“關閉智能多宿主名稱解析”選項不適用於 Windows Home Edition 的用戶。

然而,正如讀者 Arthur T. 所指出的,如果您仔細查看 Microsoft 對組策略編輯器中“關閉智能多宿主名稱解析”設置的描述,您會發現,當其他 DNS 查詢失敗時,Windows 仍會回退到使用智能多宿主名稱解析,即使該設置已啟用。

這意味著這個“解決方案”充其量只是部分解決方案。

幸運的是,OpenVPN 插件無論如何,上面提到的應該可以解決問題(對於大多數人來說)。哇!