連接埠 53 上的虛假 TCP 連線是否有問題?

連接埠 53 上的虛假 TCP 連線是否有問題?

我運行一個伺服器,其中使用tinydns作為DNS,使用axfrdns來處理來自我們的輔助DNS(另一個系統)的傳輸請求。據我所知,tinydns 在 UDP 上使用連接埠 53,axfrdns 在 TCP 上使用連接埠 53。

我已將 axfrdns 配置為僅允許來自我同意的輔助主機的連線。我運行 logcheck 來監控我的日誌,每天我都會在連接埠 53 (TCP) 上看到來自看似隨機主機的虛假連線。它們通常來自 ADSL 連接。

我的問題是;這些請求是無害的還是安全風險?我很高興使用 iptables 來阻止重複犯罪者,但不想阻止我託管的網站之一的無辜用戶。

謝謝,達倫。

答案1

我假設您正在使用該伺服器作為網域的權威 DNS 伺服器。如果是這種情況,任何需要解析您的伺服器有權存取的名稱的用戶端只需要使用 UDP。 TCP 將用於區域傳輸。

我還假設您不希望世界能夠進行區域傳輸。雖然區域傳輸本身不存在安全風險,但通常只允許到輔助/備份 DNS 伺服器。大多數 dns 軟體還具有 ACL 來控制允許伺服器進行區域傳輸,因此您還有第二種限制方法。但由於我認為安全性只允許需要的內容,因此我建議您在連接埠 53 上封鎖不需要進行區域傳輸的主機的 tcp。

附帶說明一下,來自 tcp 連接埠 53 上的隨機 adsl 主機的 tcp 連線具有惡意意圖。這是因為任何合法客戶端都不需要從您那裡進行區域傳輸。他們可能試圖存取與您的網路相關的機密信息,或試圖利用某些 DNS 軟體的漏洞。

雖然這不是什麼值得偏執的事情,但你應該要意識到這一點。

答案2

TCP 是不是僅用於區域傳輸。

如果您的 DNS 伺服器傳回截斷的 (TC=1) UDP 回應,則 TCP 是 DNS 用戶端使用的預設回退。如果您在單一資料包中提供超過 512 位元組的任何數據,就會發生這種情況。

如果您正在執行 DNS 伺服器,那麼它應該接受來自 DNS 用戶端的 TCP 連接,這樣做不存在固有的安全風險。 DNS 伺服器遭受 DoS 攻擊的風險非常小,但對於任何面向公眾的服務都是如此。

草案 ietf-dnsext-dns-tcp-要求應該在下個月內作為 RFC 發布。

RFC 5966更多細節。

Ob 免責聲明 - 我寫了那個 RFC。

答案3

唯一應該使用您的主機作為 DNS 伺服器的是

  • 本機
  • 您將該主機設定為 DNS 伺服器的網路上的計算機

封鎖「其他所有內容」最簡單的方法是停用該服務偵聽該位址。如果您自己的裝置位於「您的網路」之外,請使用防火牆規則(iptables或其他規則)僅接受來自外部網路位址的連線。如果它們沒有修復,您可能需要 VPN 或其他安全隧道將外部主機引入「您的網路內部」。

請記住,針對您的內部名稱伺服器的任意 DNS 查詢可能會將您的整個網路對應到外部方,並提供攻擊向量或洩露您不希望其他人存取的資訊。 「隨機 ADSL 連線」很容易被殭屍殭屍網路機器用來策劃針對您的惡意活動。

答案4

向名稱伺服器開放傳入的 TCP 會帶來許多安全風險 - 任何不這樣做的人都是不理智的。只需查看根洩露歷史即可 - 大多數是透過使用 TCP 與 UDP 結合完成的。舊的 MUST 和 SHOULD RFC 是由了解安全性的人所寫的。如果您的 DNS 區域不使用 TC=1 位元(或超過 512 位元組) - 不要啟用傳入 TCP,讓白痴將來這樣做。

相關內容