DNS 安全性

在設計 DNS 時並未考慮安全性,因此目前建立了許多類型的攻擊來利用 DNS 系統中的漏洞。

Share facebook icon linkedin icon twitter icon email icon

DNS 安全性

學習目標

閱讀本文後,您將能夠:

  • 瞭解什麼是 DNSSEC 及其工作方式
  • 熟悉最常見的 DNS 攻擊
  • 區分 DNSSEC 與其他 DNS 安全性解決方案

DNS 安全性為什麼非常重要?

幾乎所有網頁流量都需要的標準 DNS 查詢會產生 DNS 惡意探索的機會,例如 DNS 劫持和中間人攻擊。這些攻擊可以將網站的輸入流量重新導向至網站的虛假副本,收集敏感使用者資訊並讓公司遭受龐大債務。抵禦 DNS 威脅的已知最佳方式之一是採用 DNSSEC 通訊協定。

什麼是 DNSSEC?

如同許多網際網路通訊協定,DNS 系統在設計時沒有考慮安全性,而且包含幾項設計限制。這些限制再加上科技進步,讓攻擊者容易為了惡意目的而劫持 DNS 查閱,例如將使用者傳送至散佈惡意程式碼的詐欺網站,或是收集個人資訊。DNS 安全性擴充(DNSSEC)是為了緩解此問題而建立的安全性通訊協定。DNSSEC 透過數位簽署資料來抵禦攻擊,以協助確保其有效性。為了確保安全查閱,DNS 查閱過程中的每個層級都必須進行簽署。

如同許多網際網路通訊協定,DNS 系統在設計時沒有考慮安全性,而且包含幾項設計限制。這些限制再加上科技進步,讓攻擊者容易為了惡意目的而劫持 DNS 查閱,例如將使用者傳送至散佈惡意程式碼的詐欺網站,或是收集個人資訊。


DNS 安全性擴充(DNSSEC)是為了緩解此問題而建立的安全性通訊協定。DNSSEC 透過數位簽署資料來抵禦攻擊,以協助確保其有效性。為了確保安全查閱,DNS 查閱過程中的每個層級都必須進行簽署。


此簽署過程類似於人們用筆簽署法律檔案;此人簽署別人無法建立的唯一簽名,並且法院專家能夠檢視該簽名並驗證檔案是否由該人簽署。這些數位簽名可確保資料未被竄改。


DNSSEC 在所有 DNS 層實施階層式數位簽署政策。例如,在「google.com」查閱中,根 DNS 伺服器將為 .COM 名稱伺服器簽署一個金鑰,然後 .COM 名稱伺服器將為 google.com 的權威名稱伺服器簽署一個金鑰。


由於改善安全性總是比較好的做法,DNSSEC 的設計可回溯相容,以確保就算沒有增添安全性,傳統 DNS 查閱仍可正確解析。DNSSEC 可用來與其他安全性措施搭配使用,例如 SSL/TLS,作為整體網際網路安全性策略的一部分。


DNSSEC 建立一路傳輸到根區域的父子信任鏈。在任何 DNS 層上,此信任鏈都不能遭受入侵,否則請求將受到中間人攻擊。


若要關閉信任鏈,根區域本身需要經過驗證(證明毫無竄改或詐欺),且這實際上使用人為介入來進行。有趣的是,在稱為根區域簽署儀式的內容當中,來自世界各地獲選的個人聚在一起,以公開和稽核方式簽署根 DNSKEY RRset。

以下是有關 DNSSEC 運作方式的更詳細說明 >>>

涉及 DNS 的常見攻擊有哪些?

DNSSEC 是強大的安全性通訊協定,但遺憾的是,這目前未被普遍採用。缺乏採用率的情況加上其他潛在弱點,以及 DNS 的確是大部分的網際網路請求中不可或缺的一部分,讓 DNS 成為惡意攻擊的主要目標。攻擊者已經找到幾種設定目標和利用 DNS 伺服器的方式,以下是一些最常見的方法:

DNS 詐騙/快取記憶體中毒這種攻擊會將偽造的 DNS 資料引入 DNS 解析程式的快取記憶體中,造成解析程式傳回不正確的網域 IP 位址。流量可能會被轉移到惡意電腦或攻擊者想要的其他任何位置,而不是前往正確網站;通常,這將是用於惡意目的的原始網站副本,例如分發惡意程式碼或收集登入資訊。

DNS 通道建立:此攻擊使用其他通訊協定,透過 DNS 查詢和回應建立通道。攻擊者可以使用 SSH、TCPHTTP 以將惡意程式碼或竊取的資訊傳遞至 DNS 查詢中,並且不會被大部分的防火牆偵測到。

DNS 劫持:在 DNS 劫持中,攻擊者將查詢重新導向至不同的網域名稱伺服器。這可以透過惡意程式碼或未獲授權的 DNS 伺服器修改來進行。儘管其結果與 DNS 詐騙的結果相似,但這是一種截然不同的攻擊,因為其目標是名稱伺服器上網站的 DNS 記錄,而不是解析程式的快取記憶體。

DNS Hijacking

NXDOMAIN 攻擊:這是一種 DNS 洪水攻擊,攻擊者會要求不存在的記錄,藉由這樣的請求讓 DNS 伺服器應接不暇,企圖造成合法流量的阻斷服務。這可以使用純熟的攻擊工具來達成,這些工具可以對每個請求自動產生唯一的子網域。NXDOMAIN 攻擊也能以遞迴解析程式為目標,目的是使用垃圾請求填充解析程式的快取記憶體。

幻影網域攻擊;幻影網域攻擊的結果與 DNS 解析程式的 NXDOMAIN 攻擊相似。攻擊者設定一串「幻影」網域伺服器,這會以非常緩慢的速度回應請求,或完全不回應請求。然後解析程式會因為對這些網域洪水般的請求而遭受攻擊,解析程式被困在等待回應的過程中,導致效能緩慢和阻斷服務。

隨機網域攻擊:在此情況下,攻擊者對某個合法網站的數個不存在的隨機子網域傳送 DNS 查詢。目標是對網域的權威名稱伺服器建立阻斷服務,使之無法從名稱伺服器查閱網站。副作用是,為攻擊者服務的 ISP 也可能會受到影響,因為他們的遞迴解析程式快取記憶體將會載入不良請求。

網域鎖定攻擊:素行不良者策畫此形式的攻擊時,會設定特殊網域和解析程式,用來建立與其他合法解析程式的 TCP 連線。當目標解析程式傳送請求時,這些網域會傳回緩慢的隨機封包串流,纏住解析程式的資源。

殭屍網路式 CPE 攻擊:這些攻擊使用 CPE 裝置(使用者終端裝置,這是服務提供者提供的供客戶使用的硬體,例如資料機、路由器、機上盒等)進行。攻擊者入侵 CPE,而裝置就成為殭屍網路的一部分,用來針對某個網站或網域執行隨機子網域攻擊。

防禦 DNS 式攻擊的最佳方式是什麼?

除了 DNSSEC,DNS 區域的經營者可以採取進一步的措施來保護伺服器。超額佈建的基礎結構是一種克服 DDoS 攻擊的簡單策略。簡言之,若名稱伺服器可以處理比預期多出數倍的流量,則流量式攻擊就更難擊敗伺服器。


Anycast 路由是另一種可損毀 DDoS 攻擊的方便工具;Anycast 可使多台伺服器共用一個 IP 位址,因此即使一台 DNS 伺服器關閉,其他伺服器讓將正常執行並提供服務。另一個保護 DDoS 伺服器的熱門策略是 DNS 防火牆。

什麼是 DNS 防火牆?

DNS 防火牆是向 DNS 伺服器提供數種安全性和效能服務的工具。DNS 防火牆位於使用者的遞迴解析程式和嘗試抵達的網站或服務的權威名稱伺服器之間。防火牆可提供速率限制服務,以抑制嘗試淹沒伺服器的攻擊者。若伺服器的確因為攻擊或任何其他原因而發生停機狀況,則 DNS 防火牆可以從快取提供 DNS 回應,讓經營者的網站或服務持續運作。除了安全性功能,DNS 防火牆也能提供效能解決方案,例如更快的 DNS 查閱並減少 DNS 經營者的頻寬成本。進一步瞭解 Cloudflare 的 DNS 防火牆。

DNS 防火牆是向 DNS 伺服器提供數種安全性和效能服務的工具。DNS 防火牆位於使用者的遞迴解析程式和嘗試抵達的網站或服務的權威名稱伺服器之間。防火牆可提供速率限制服務,以抑制嘗試淹沒伺服器的攻擊者。


若伺服器的確因為攻擊或任何其他原因而發生停機狀況,則 DNS 防火牆可以從快取提供 DNS 回應,讓經營者的網站或服務持續運作。除了安全性功能,DNS 防火牆也能提供效能解決方案,例如更快的 DNS 查閱並減少 DNS 經營者的頻寬成本。進一步瞭解 Cloudflare 的 DNS 防火牆。

作為安全性工具的 DNS

也能設定 DNS 解析程式,以向終端使用者(瀏覽網際網路的人)提供安全性解決方案。有些 DNS 解析程式提供內容篩選(可封鎖已知會散佈惡意程式碼和垃圾郵件的網站)和殭屍網路保護(封鎖與已知殭屍網路之間的通訊)等功能。在這些受保護的 DNS 解析程式當中,很多都能免費使用,使用者可以變更本機路由器中的單一設定,以切換到其中一項遞迴 DNS 服務。Cloudflare DNS 強調安全性。