當它們與 AUTHORITY 部分匹配時,信任 ADDITIONAL 部分的風險是什麼?
如果我們採用以下範例
dig allcosts.net @g.gtld-servers.net
:;; QUESTION SECTION: ;allcosts.net. IN A ;; AUTHORITY SECTION: allcosts.net. 172800 IN NS ns-22.awsdns-02.com. allcosts.net. 172800 IN NS ns-912.awsdns-50.net. allcosts.net. 172800 IN NS ns-1834.awsdns-37.co.uk. allcosts.net. 172800 IN NS ns-1233.awsdns-26.org. ;; ADDITIONAL SECTION: ns-912.awsdns-50.net. 172800 IN A 205.251.195.144
TLD 伺服器提供了一個不是粘合記錄的附加部分(其 IP
ns-912.awsdns-50.net
肯定可以通過單獨的 DNS 查詢找到),但信任它的風險是什麼?因為即使這個響應實際上是一個欺騙響應(意味著攻擊者實際控制
ns-912.awsdns-50.net
),無論我們是否信任 ADDITIONAL 部分,在這兩種情況下,我們都將獲得ns-912.awsdns-50.net
屬於攻擊者的 IP。在安全性方面,當它們與 AUTHORITY 部分匹配時,不信任 ADDITIONAL 部分有什麼意義?
在安全性方面,當它們與 AUTHORITY 部分匹配時,不信任 ADDITIONAL 部分有什麼意義?
該部分根本沒有安全性
ADDITIONAL
。在 DNSSEC 的情況下,AUTHORITY
和ANSWER
部分中的記錄已簽名,但未簽名ADDITIONAL
。因此,客戶端不能相信內容ADDITIONAL
真的來自權威名稱伺服器,它可能在傳輸過程中被修改。因此,即使您認為給出的記錄“匹配”該
AUTHORITY
部分,它也可能完全被路徑上的攻擊者劫持。大多數(如果不是全部)DNS 客戶端都避免使用任何數據,
ADDITIONAL
除非絕對沒有其他方法,即需要膠水。從技術上講,僅當域名伺服器位於域名或域名下方的轄區時才需要使用膠水。不只是在同一個 TLD 之下,這只是內部的,正如我們在此處看到的,但實際上是所查詢域名的轄區內。在這裡,
ns-912.awsdns-50.net.
它不在管轄範圍內allcosts.net.
,因此它的存在ADDITIONAL
既是可選的,也最好忽略。但是,讓我們通過執行所有步驟返回解析您的姓名,並查看我們是否需要在該
ADDITIONAL
部分中使用此記錄以及它如何提供幫助。第1步
allcosts.net
由以下人員提供服務:
ns-22.awsdns-02.com.
ns-912.awsdns-50.net.
ns-1834.awsdns-37.co.uk.
ns-1233.awsdns-26.org.
要獲取任何數據,必須聯繫這 4 個名稱伺服器之一,因此必須解析其名稱。當然請注意,客戶只需要其中一個,不需要檢查所有 4 個。但讓我們嘗試解析所有這 4 個名稱。
步驟 2a:
ns-22.awsdns-02.com.
域
awsdns-02.com.
由以下機構提供服務:
g-ns-3.awsdns-02.com.
g-ns-578.awsdns-02.com.
g-ns-1154.awsdns-02.com.
g-ns-1730.awsdns-02.com.
請注意這 4 個名稱是如何在該域中的,因此父名稱伺服器為所有 4 個返回粘合(
A
和記錄),因此可以完全解析名稱,並且如果這是選擇的名稱伺服器,則初始請求可以在那裡停止. 第一部分的記錄在這裡沒有用。AAAA``ns-22.awsdns-02.com.``ADDITIONAL
步驟 2b:
ns-912.awsdns-50.net.
域
awsdns-50.net.
由以下機構提供服務:
g-ns-1970.awsdns-50.net.
g-ns-499.awsdns-50.net.
g-ns-820.awsdns-50.net.
g-ns-1394.awsdns-50.net.
同樣,所有 bailiwick,因此與上一步的結論相同。注意
ns-912.awsdns-50.net.
這裡的任何地方都沒有出現,所以它在第一ADDITIONAL
部分中的 IP 地址也是不需要的。步驟 2c
ns-1834.awsdns-37.co.uk.
簡而言之,同樣
awsdns-37.co.uk.
是由 4 個轄區域名提供服務,結論相同。步驟 2d
ns-1233.awsdns-26.org.
相同的。
結論
無論採取什麼措施來解析 下的任何名稱,都不會使用部分中給出
allcosts.net.
的 IP 地址,因為它不是必需的。將查詢權威名稱伺服器以獲取其名稱,因為來自父級的內容將不受信任。ns-912.awsdns-50.net.``ADDITIONAL``awsdns-50.net.``ns-912.awsdns-50.net.
後記
但如果沒有用,為什麼這個記錄還存在呢?
因為
ns-912.awsdns-50.net.
已在相關註冊中心註冊為主機對象,由awsdns-50.net.
. 你可以在whois中看到:$ whois -h whois.verisign-grs.com 'nameserver ns-912.awsdns-50.net.' Server Name: NS-912.AWSDNS-50.NET IP Address: 205.251.195.144 Registrar: MarkMonitor Inc. Registrar WHOIS Server: whois.markmonitor.com Registrar URL: http://www.markmonitor.com >>> Last update of whois database: 2022-01-09T07:02:41Z <<<
這個主機對象實際上是無用的(因為這個主機名不是權威的
awsdns-50.net.
),但它可能在過去被使用過,或者其他域名下com
或net
(作為同一個系統資料庫)使用這個主機對象,因此它不能被刪除。還要注意這裡沒有操作後果,因為 IP 地址匹配:
$ dig NS-912.AWSDNS-50.NET @g-ns-1394.AWSDNS-50.NET. +short 205.251.195.144
當一側(例如:孩子)的 IP 發生變化而另一側(父母)沒有同步時,膠水就會成為問題。但是,同樣,即使在這裡也不會影響任何事情,因為
ADDITIONAL
不需要記錄來解決allcosts.net.
.