Domain-Name-System

有人可以使用與我相同的 DNS 伺服器劫持我的域嗎?

  • May 24, 2019

當我註冊一個新域時,我通過在註冊商的設置中為其分配域名伺服器,將其發送給我的託管服務提供商。例如,使用 Digital Ocean,我輸入以下內容:

ns1.digitalocean.com
ns2.digitalocean.com
ns3.digitalocean.com

然後我在我的伺服器的 A 記錄中添加域設置。我突然想到,同一託管服務提供商上的任何其他人都可以使用我擁有的域添加 A 記錄。

有什麼可以防止這種情況發生嗎?如果使用相同域名伺服器的 2 個不同的伺服器嘗試通過 A 記錄為自己分配一個域,那麼當您在瀏覽器中輸入域時,該域實際上會在哪裡解析?什麼可以防止同一 DNS 伺服器上的域名衝突?

別介意下面的評論部分,也別介意編輯歷史中以前的答案。在與朋友進行了大約一個小時的交談(感謝@joeQwerty、@Iain 和@JourneymanGeek)以及一些愉快的黑客攻擊之後,我們對您的問題和整體情況進行了調查。很抱歉一開始的粗魯和完全誤解了情況。

讓我們逐步完成該過程:

  1. 比如說,您wesleyisaderp.com在 NameCheap.com 上購買。
  2. Namecheap 作為您的註冊商將是您填充 NS 記錄的地方。假設您實際上想在 Digital Ocean 上託管 DNS 區域。
  3. 您將閃亮的新域的 NS 記錄指向ns1.digitalocean.comns2.digitalocean.com
  4. 但是,假設我能夠確定您已註冊該域,並且您已將 NS 記錄更改為 Digital Ocean 的. 然後我把你打到了一個 Digital Ocean 帳戶,並將 wesleyisaderp.com 區域添加到我自己的帳戶中。
  5. 您嘗試在your帳戶中添加該區域,但 Digital Ocean 說該區域已存在於他們的系統中!哦不!
  6. 我 CNAMEwesleyisaderp.comwesleyisbetterthanyou.com.
  7. 歡鬧隨之而來。

我和一些朋友剛剛玩了這個確切的場景,是的,它有效。如果@JoeQwerty 購買了一個域並將其指向 Digital Ocean 名稱伺服器,但我已經將該區域添加到我的帳戶中,那麼我就是區域管理員,可以隨心所欲地使用它。

但是考慮到有人必須首先將區域添加到他們的 DNS 帳戶,然後您必須將您的 NS 記錄指向同一主機的名稱伺服器,以防萬一發生。此外,作為域所有者,您可以隨時切換 NS 記錄並將解析度從壞區域主機移開。

至少可以說,這種情況發生的可能性有點低。據說,從統計學上講,你可以洗一副 52 張撲克牌,得到一個其他人從未得到過的排序,也沒有其他人會得到的排序。我認為這裡存在相同的推理。有人利用它的可能性非常低,並且存在更好的捷徑,它可能不會偶然發生在野外。

此外,如果您在註冊商處擁有一個域,並且有人碰巧在您與之發生衝突的 Digital Ocean 等提供商上創建了一個區域,我敢肯定,如果您提供所有權證明,他們會詢問製作該域名的人zone 在他們的帳戶中刪除它,因為沒有理由存在它,因為他們不是域名所有者。

但是A記錄呢

第一個擁有區域的人,例如數字海洋,將是控制它的人。在同一個 DNS 基礎設施上不能有多個相同的區域。例如,使用上面這些愚蠢的名稱,如果我將 wesleyisaderp.com 作為 Digital Ocean 上的一個區域,那麼 Digital Ocean 的 DNS 基礎設施上的其他任何人都無法將其添加到他們的帳戶中。

這是有趣的部分:我實際上已經將 wesleyisaderp.com 添加到我的 Digital Ocean 帳戶中!繼續嘗試將​​其添加到您的中。它不會傷害任何東西。

因此,您無法將 A 記錄添加到 wesleyisaderp.com。都是我的。

但是關於…

正如@Iain 在下面指出的那樣,我上面的第 4 點實際上太冗長了。我根本不需要等待、策劃或計劃。我可以在一個帳戶中創建數千個區域,然後坐下來等待。從技術上講。如果我創建了數千個域,然後等待他們註冊,然後希望他們使用我設置區域的 DNS 主機……也許我可以做點壞事?也許?但可能不是?

向 Digital Ocean 和 NameCheap 道歉

請注意,Digital Ocean 和 NameCheap 不是唯一的,與此場景無關。這是正常行為。他們在所有方面都無可指責。我只是使用它們,因為那是給出的例​​子,它們是非常知名的品牌。

引用自:https://serverfault.com/questions/744147