什么是DNS劫持/重定向攻擊?域名服務器 (DNS) 劫持,也稱為 DNS 重定向,是一種 DNS 攻擊,其中 DNS 查詢被錯誤地解析,以便意外地將用戶重定向到惡意站點。為了執行攻擊,犯罪者要么在用戶計算機上安裝惡意軟件,接管路由器,要么攔截或破解 DNS 通信。
DNS劫持可用于 域名欺騙 (在這種情況下,攻擊者通常會展示不需要的廣告以產生收入)或 網絡釣魚 (顯示用戶訪問的網站的虛假版本并竊取數據或憑據)。許多 Internet 服務提供商 (ISP) 還使用一種 DNS 劫持來接管用戶的 DNS 請求、收集統計信息并在用戶訪問未知域時返回廣告。一些政府使用 DNS 劫持進行審查,將用戶重定向到政府授權的站點。
DNS劫持攻擊類型
DNS 重定向有四種基本類型:
- 本地 DNS 劫持——攻擊者在用戶的計算機上安裝特洛伊木馬惡意軟件,并更改本地 DNS 設置以將用戶重定向到惡意站點。
- 路由器 DNS 劫持——許多路由器有默認密碼或固件漏洞。攻擊者可以接管路由器并覆蓋 DNS 設置,從而影響連接到該路由器的所有用戶。
- 中間人 DNS 攻擊——攻擊者攔截用戶與 DNS 服務器之間的通信,并提供指向惡意站點的不同目標 IP 地址。
- 流氓 DNS 服務器——攻擊者可以入侵 DNS 服務器,并更改 DNS 記錄以將 DNS 請求重定向到惡意站點。
重定向與 DNS 欺騙攻擊
DNS 欺騙是一種將流量從合法網站(例如 www.google.com)重定向到惡意網站(例如 google.attacker.com)的攻擊。 DNS 欺騙 可以通過 DNS 重定向來實現。例如,攻擊者可以破壞 DNS 服務器,并以這種方式“欺騙”合法網站并將用戶重定向到惡意網站。
緩存投毒是實現 DNS 欺騙的另一種方式,不依賴于 DNS 劫持(物理接管 DNS 設置)。DNS 服務器、路由器和計算機緩存 DNS 記錄。攻擊者可以通過插入偽造的 DNS 條目來“毒化”DNS 緩存,其中包含同一域名的替代 IP 目的地。DNS 服務器將域解析為欺騙網站,直到緩存被刷新。
緩解方法
名稱服務器和解析器的緩解措施
DNS 名稱服務器是高度敏感的基礎設施,需要強大的安全措施,因為它可能被劫持并被黑客用來 對其他人發起 DDoS 攻擊:
- 注意網絡上的解析器——不需要的 DNS 解析器應該關閉。合法的解析器應該放在防火墻后面,不能從組織外部訪問。
- 嚴格限制對名稱服務器的訪問——應使用物理安全、多因素訪問、防火墻和網絡安全措施。
- 采取措施防止緩存中毒——使用隨機源端口、隨機查詢ID、隨機大小寫域名。
- 立即修補已知漏洞——黑客主動搜索易受攻擊的 DNS 服務器。
- 將權威名稱服務器與解析器分開——不要在同一臺服務器上運行兩者,因此對任何一個組件的 DDoS 攻擊都不會摧毀另一個組件。
- 限制區域傳輸——從名稱服務器可以請求區域傳輸,這是您的 DNS 記錄的部分副本。區域記錄包含對攻擊者有價值的信息。
最終用戶的緩解措施
最終用戶可以通過更改路由器密碼、安裝防病毒軟件和使用加密的 VPN 通道來保護自己免受 DNS 劫持。如果用戶的 ISP 劫持了他們的 DNS,他們可以使用免費的替代 DNS 服務,例如 Google Public DNS、Google DNS over HTTPS 和 Cisco OpenDNS。
網站所有者的緩解措施
使用域名注冊商的網站所有者可以采取措施避免 DNS 重定向其 DNS 記錄:
- 安全訪問——訪問 DNS 注冊商時使用雙因素身份驗證,以避免妥協。如果可能,定義允許訪問 DNS 設置的 IP 地址白名單。
- 客戶端鎖定——檢查您的 DNS 注冊商是否支持客戶端鎖定(也稱為更改鎖定),這可以防止在未經指定個人批準的情況下更改您的 DNS 記錄。
- DNSSEC——使用支持 DNSSEC 的 DNS 注冊商,并啟用它。DNSSEC 對 DNS 通信進行數字簽名,使黑客更難(但并非不可能)攔截和欺騙。
- 使用 Imperva 的 名稱服務器保護 — 一種基于 Imperva 的全球 CDN 提供安全 DNS 代理網絡的服務。每個 DNS 區域接收備用名稱服務器主機名,以便所有 DNS 查詢都重定向到 Imperva 網絡。該服務不僅可以防止 DNS 劫持和中毒,還可以防止針對您的 DNS 基礎設施的分布式拒絕服務攻擊(DDoS 攻擊)。