利用 DNS 隧道進行追蹤和掃描

什麼是 DNS 隧道

DNS 隧道是一種利用 DNS 協議進行數據傳輸的技術。在網絡中, DNS 通常用於將域名解析爲對應的 IP 地址, 但是它也可以被利用來傳輸數據, 而不僅僅是域名和 IP 地址之間的映射關係。

實現 DNS 隧道的基本思想是將數據在 DNS 查詢和響應的過程中進行隱藏傳輸。具體來說, 就是可以通過在 DNS 請求和響應中嵌入數據, 並利用域名解析請求和響應的特性來傳輸數據。通常情況下, DNS 隧道技術可以被用來繞過網絡防火牆或其他網絡安全設備, 以便在受限制的網絡環境下進行數據傳輸。

實現 DNS 隧道的技術主要包含以下四類:

DNS 隧道攻擊典型步驟

攻擊者利用 DNS 隧道進行攻擊的整體流程如下圖:

利用 DNS 隧道進行攻擊的典型步驟如下:

(Cobalt Strike 是一款專爲紅隊行動和滲透測試設計的商業化滲透測試工具,由 Raphael Mudge 開發。它被廣泛用於模擬真實世界的網絡攻擊,用於評估網絡防禦的強度和安全性。)

(完全限定域名(Fully Qualified Domain Name,FQDN)是指包含了主機名(Hostname)以及其所在的域名的完整域名標識。它提供了對於特定主機在 DNS 層次結構中的準確定位。FQDN 通常由主機名、域名和根域(Root Domain)組成,形式爲:hostname.domain.tld.)

攻擊者如何利用 DNS 隧道

將 DNS 隧道與 C2 服務器進行結合是黑客常用的方式, 該方法隱蔽且方便定製化。

(C2 服務器指的是 Command and Control 服務器,也稱爲 C&C 服務器。它是黑客或者惡意軟件(如殭屍網絡、惡意軟件等)的一個關鍵組件,用於控制被感染或被攻擊的計算機或設備。C2 服務器通常會被設置在隱祕的位置,例如使用匿名的託管服務、非法的服務器設立地點或者利用合法的網絡服務進行隱藏。黑客或者攻擊者通過各種手段與受感染設備建立連接,並且通過加密或其他技術手段來隱藏其真實的身份和位置。)

攻擊者利用的 DNS 類型主要包括: IPv4(A)、IPv6(AAAA)、郵件交換 (MX)、CNAME 名稱、文本(TXT) 記錄。

有部分的 VPN 廠商也會出於合法目的使用 DNS 隧道, 例如: 通過 DNS 隧道繞過防火牆以避免因特網審查或網絡服務費用。

除了 C2 和 VPN 用途之外, 攻擊者還可以利用 DNS 隧道來進行追蹤和掃描。

用於追蹤的 DNS 隧道案例

在傳統的 C2 通信中跟蹤受害者行爲時, 黑客的惡意軟件會將用戶行爲數據嵌入到惡意 URL 中, 並通過網絡流量傳輸到 C2 服務器。在 DNS 隧道中, 攻擊者通過 DNS 流量中的子域來實現與之相同的效果。

在這種 DNS 隧道的應用中, 攻擊者的惡意軟件將有關特定用戶及其行爲的信息嵌入到 DNS 查詢的唯一子域中。這個子域是隧道負載, 完全限定域名 (FQDN) 的 DNS 查詢使用了攻擊者控制的域。

攻擊者控制的域的權威名稱服務器接收到 DNS 查詢, 這個由攻擊者控制的名稱服務器存儲了該域的所有 DNS 查詢, 這些 DNS 查詢的唯一子域和時間戳提供了受害者活動的日誌記錄。攻擊者甚至可以利用它來跟蹤活動中的多個受害者。

在下面的案例中, 黑客使用了 75 個 IP 地址作爲域名服務器, 解析了 658 個攻擊者控制的域名, 針對了 731 個潛在受害者。每個域名只使用一個域名服務器 IP 地址, 而一個域名服務器 IP 地址最多可以爲 123 個域名提供服務。這些域名使用相同的 DNS 配置和相同的子域編碼方法。黑客在. com 或. info 頂級域名下注冊了所有域名, 並通過組合兩個或三個根單詞來設置域名, 這是攻擊者用來規避域名生成算法 (DGA) 檢測的一種方法。

以下是 “TrkCdn” 活動中域名的列表, 該活動使用 DNS 隧道技術來追蹤受害者與其電子郵件內容的交互, 包括: FQDN、域名服務器、域名服務器 IP 地址和註冊日期, 如下表:

po6wLH

上表僅僅列出了隧道域名使用的與跟蹤相關的 DNS 配置。攻擊者將根域名、域名服務器和 cdn.simitor.com 設置爲相同的 IP 地址: 193.9.114.43, 這種行爲方式是隧道域名的常見配置指標, 因爲攻擊者需要爲自己建立一個域名服務器, 同時又儘量降低攻擊成本, 因此, 他們通常只使用一個 IP 地址來進行域名託管和作爲域名服務器。

所有 *.trk.simitor.com 都通過通配符 DNS 記錄重定向到 cdn.simitor.com, 設置方法如下:

simitor.com A 193.9.114.43
ns1.simitor.com A 193.9.114.43
ns2.simitor.com A 193.9.114.43
cdn.simitor.com A 193.9.114.43
*.trk.simitor.com CNAME cdn.simitor.com

在上面的表格中, FQDN 內容最前面的 Md5 哈希值代表 DNS 流量中的電子郵件地址, 這些 Md5 值是隧道負載的 DNS 查詢的子域, 例如: 電子郵件地址:  sunshine@sampledomain.com 的 MD5 值爲: 4e09ef9806fb9af448a5efcd60395815, 那麼, 隧道負載的 DNS 查詢的 FQDN 內容將是: 4e09ef9806fb9af448a5efcd60395815.trk.simitor.com。

對這些 FQDN 的 DNS 查詢可以作爲威脅行爲者發送的電子郵件的跟蹤機制, 例如: 如果受害者打開了這些電子郵件中的其中一封, 嵌入的內容可能會自動生成 DNS 查詢, 或者受害者可能會點擊電子郵件中的鏈接, 無論哪種情況, 感染的主機生成了 FQDN 的 DNS 查詢後, DNS 解析器將聯繫 FQDN 的權威名稱服務器的 IP 地址, 由於其通配符配置, 受害者的 DNS 解析器將獲得以下結果:

<br />
4e09ef9806fb9af448a5efcd60395815.trk.simitor.com. 3600 IN CNAME cdn.simitor.com.</p>
<p>cdn.simitor.com. 555 IN A 193.9.114.43
4e09ef9806fb9af448a5efcd60395815.trk.simitor.com. 3600 IN CNAME cdn.simitor.com.

cdn.simitor.com. 555 IN A 193.9.114.43

因此,儘管針對不同目標的完全限定域名(FQDNs)各不相同,它們都被轉發到由 cdn.simitor.com 使用的相同 IP 地址。然後,這個權威名稱服務器返回一個 DNS 結果,指向一個由攻擊者控制的服務器,提供由攻擊者控制的內容。這些內容可能包括廣告、垃圾郵件或釣魚內容。

爲了跟蹤目的,攻擊者可以從他們的權威名稱服務器查詢 DNS 日誌,並將負載與電子郵件地址的哈希值進行比較。這樣,攻擊者就可以知道特定受害者何時打開了他們的郵件或點擊了鏈接,從而監視活動的表現。

緩解措施

可以採取以下措施來減少 DNS 解析器的攻擊面:

(1). 控制解析器接受必要查詢的服務範圍。

(2). 及時更新解析器軟件版本, 防止 N-day 漏洞的出現。

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/tVEhcXWMpxZo-Dm1Ft5hwA