1. 程式人生 > 其它 >DNS異常分析思路與方法

DNS異常分析思路與方法

基於DNS可能發現的問題有一下幾點:

1. 走53埠的UDP協議,但非DNS協議,如圖1,圖2

圖1

圖2

2. 利用DNS協議 進行資料和命令傳輸,常見的DNS tunnel,見圖3

圖3

圖4

3. 非常規域名,如DGA域名,錯誤域名等,

分析

走53埠,但非標準的DNS協議

針對使用標準的53埠,非DNS協議內的分析。稱之為隱祕通道,分析方法是將UDP協議會話日誌中的53埠過濾出來,然後過濾掉DNS協議

將UDP會話日誌匯出,利用Excel進行處理。過濾掉DNS協議的會話,剩下的皆為非DNS協議的會話。

圖5

在過濾完後,剩下的需要進行研判,在確定客戶IP架構的情況下,會很好進行研判。

首先確定端點IP的屬性,如此處的:1.192.193.110,在圖6中可以看到好些IP進行了連線,且在篩選後中,看到1.192.193.x段好些IP產生了連線。

圖6

檢視流量,如圖7:

圖7

流量中可以看到的確不是DNS協議,需要判定服務端IP的相關資訊,如圖8

圖8

通過威脅情報查詢,可以得到這個IP為360所有,可以排除其威脅性。經查1.192.x.x這幾個IP都是360所有。360的裝置會產生大量的這種協議,可以將對端IP都傳到威脅情報平臺進行查詢。查詢到的結果在進行檢視流量進行研判。

以上針對走53埠非DNS協議檢查的指標有:

#1.   埠為53,非DNS協議

#2.   日誌中表現為資料包數多,但個會話資料量大。(存在誤報)

DNS tunnel的發現

DNS tunnel即利用DNS協議進行命令和資料傳輸,具體可自行百度瞭解。如cobalt strikeDNS隧道流量如圖10,

圖10

流量如圖11所所示:

圖11

具體如圖12:

圖12

由上圖可以看出,此例中DNS 請求型別為16(TXT)型別,由於DNS協議的特殊性,要想盡可能多的傳輸資料,一般採用請求型別16的方式進行傳輸,當然也可以用其他的方式。如1,(A),28(AAAA)等方式。

在響應中儘可能的多的傳輸資料,所以其DNS response會比一般的DNS response包大。

​ 圖13

針對此種類型多的檢測,indicator相對較多,如請求型別(qtype),請求域名的長度(qtype.domain.length),請求域名頻率等。

將DNS 日誌匯出後,刪除多餘項,利用程式碼將日誌進行處理,取出解析域名的一級域名,後請求域名的長度,

​ 圖14

將主域利用alexa或者自建白名單列表過濾一下,過濾一下之後,剩下的就不多了,並且可以統計在排除到alexa1m域名之後剩餘域名的次數。 如圖15

​ 圖15

其中0x.org.cn這個域名不在alexa1m中,同時在短短時間內就有2134次訪問。所以有很大的問題。在威脅情報平臺上查詢,這個域名,

在反查郵箱和聯絡人等,都沒有任何資訊,且該域名不能解析,說明該IP可能存在問題,需要進一步研判。

對於其他的域名,則需要人工研判,訪問頻率低的基本不太可能。且大部分域名都是正常的。同時回到DNS日誌中,可以看到0x.org.cn這個域名請求長度都是31,在DNS tunnel中有一個指標是:請求域名長度一致,但請求內容在變化,如圖16.

​ 圖16

在上圖中可以看到,該IP存在多級域名,且域名對應IP為0.0.0.0。由於DNS tunnel技術中域名解析的請求型別通常不是A,所以在日誌中看到的域名對應的IP為0.0.0.0,請求域名長度一致。

在回到流量中,看到的是內部DNS 伺服器像外部的DNS 發起的遞迴查詢,沒能看到是誰向內部DNS 發起的初始請求,所以需要回到相同時間段內內部DNS伺服器的流量中去。

回溯內部DNS伺服器的流量。如圖17.

​ 圖17

將DNS 伺服器的UDP會話日誌匯出。用Excel進行處理。將節點2設定為192.168.0.251,其他的刪除。將協議選擇為DNS協議,

然後統計節點1的次數,跟第一次計算的域名請求次數做對比,可能是域名請求的0.5倍的情況下,相差不是很大,可能就是該IP發起的初始請求。在去流量中進行研判,就能找打誰發起的初始請求,但找初始請求可能會存在一些技術要求就是TSA部署的位置,是能夠抓到接入層裝置向內部DNS是伺服器發起的DNS 請求,但在此案例中,無法抓取到下端裝置發起的DNS請求,所以無法定位到具體的IP。

以上針對DNS tunnel的檢查指標有:

#1.   用來做DNS 請求的主域不常見,且短時間內請求次數多。

#2.   請求的長度相對一般的DNS 請求域名長度更長。

#3.   請求型別不是常見的A型別,DNS tunnel常見的型別有為TXT型別,也有其他的,如海蓮花請求型別為10(空RR)

#4.   在日誌中看到的域名對應的IP為0.0.0.0,其TTL基本都為0,。

非常規域名,如DGA域名,錯誤域名

針對非常規域名,則需要更多的結合威脅情報,來進行處理,

DGA 域名的的指標:

#1. 常利用的是如.xyz,info,cc等不常見的頂級域名,

#2. 如利用.com,.cn等常見頂級域名時域名的長度相對較長。且相同的請求長度一致。

#3. 在DNS 日誌中域名基本為請求失敗,