您所在的位置: 首頁(yè) >
新聞資訊 >
技術(shù)前沿 >
利用DoH技術(shù)加密傳輸?shù)腄NS隧道流量檢測(cè)分析
概述
DNS over HTTPS(DoH)由RFC8484定義,其目標(biāo)之一是增加用戶的隱私,通過(guò) HTTPS 解析 DNS 查詢。目前國(guó)外廠商如Adguard、Cloudflare、Google、Quad9等對(duì)公提供DoH服務(wù),國(guó)內(nèi)也有廠商陸續(xù)提供DoH服務(wù)。此外,也可以通過(guò)自建DoH服務(wù)器的方式進(jìn)行DoH傳輸。以騰訊云DoH服務(wù)器(https://doh.pub/dns-query)為例,運(yùn)用瀏覽器訪問(wèn)百度,同時(shí)進(jìn)行抓包分析,結(jié)果如下:
? 解密前,只能看到與DoH服務(wù)器間的TLS Application Data消息,數(shù)據(jù)被加密。
? 解密分析:利用瀏覽器同步生成(Pre)-Master-Secret 日志對(duì)流量進(jìn)行解密,第785個(gè)數(shù)據(jù)包的內(nèi)容如下:
可以清晰看到DNS協(xié)議流量被封裝進(jìn)HTTP協(xié)議,并進(jìn)一步經(jīng)過(guò)TLS協(xié)議加密,形成了HTTPS流量。
DoH 的優(yōu)點(diǎn)是顯而易見(jiàn)的,該技術(shù)提高了DNS服務(wù)安全性并保護(hù)了用戶隱私。但DoH也是一把雙刃劍,傳統(tǒng)的惡意DNS隱蔽隧道,同樣可以通過(guò)利用DoH服務(wù)進(jìn)行HTTPS協(xié)議加密封裝,進(jìn)一步增強(qiáng)自己的隱蔽性。我們經(jīng)過(guò)試驗(yàn),知名DNS隧道工具、熱門(mén)黑客平臺(tái)如Iodine、DNS2TCP、 DNScat2、Cobalt Strike等,都可以通過(guò)DoH服務(wù)將DNS隧道流量轉(zhuǎn)換為HTTPS協(xié)議。這類利用DoH技術(shù)加密傳輸?shù)膼阂釪NS隧道流量,給檢測(cè)造成了新的挑戰(zhàn)。
惡意DoH流量檢測(cè)
與一般TLS加密流量檢測(cè)相比,利用DoH技術(shù)加密傳輸?shù)膼阂釪NS隧道流量(以下簡(jiǎn)稱惡意DoH流量)檢測(cè)的難度更高。惡意DoH流量完全可以利用正常DoH服務(wù)器進(jìn)行中轉(zhuǎn),那么單純從DoH服務(wù)的TLS協(xié)商過(guò)程中暴露的明文信息(如TLS握手信息、證書(shū)信息、背景DNS流量特征等)判定會(huì)造成較大誤報(bào),必須從更深層次尋求另外的維度進(jìn)行判斷。本次針對(duì)DoH惡意流量檢測(cè)的研究,將重點(diǎn)放在與完成握手協(xié)商后的加密數(shù)據(jù)會(huì)話過(guò)程。研究過(guò)程包括數(shù)據(jù)搜集、特征工程、模型訓(xùn)練、實(shí)際測(cè)試幾個(gè)環(huán)節(jié)。
1 數(shù)據(jù)搜集
數(shù)據(jù)搜集分為公開(kāi)數(shù)據(jù)搜集和自建環(huán)境搜集。因DoH協(xié)議比較新,所以公開(kāi)數(shù)據(jù)集不是特別豐富。Canadian Institute for Cybersecurity (CIC)在2020年公開(kāi)了一個(gè)DoH數(shù)據(jù)集DoHBrw-2020。我們對(duì)該流量集進(jìn)行了處理,可以得到正常(以下簡(jiǎn)稱白)DoH流量+正常HTTPS流量共514459次會(huì)話,惡意(以下簡(jiǎn)稱黑)DoH流量共144167次會(huì)話。
DoHBrw-2020數(shù)據(jù)集主要針對(duì)國(guó)外廠商提供的DoH服務(wù),另外數(shù)據(jù)集偏小。為了彌補(bǔ)數(shù)據(jù)集不足,我們搭建模擬環(huán)境針對(duì)國(guó)內(nèi)主要DoH服務(wù)進(jìn)行了白/黑DoH流量搜集,通過(guò)自建DoH服務(wù)器,同樣進(jìn)行了白/黑DoH流量的搜集。白流量主要通過(guò)腳本調(diào)用熱門(mén)瀏覽器,利用DoH服務(wù)對(duì)常用網(wǎng)站進(jìn)行訪問(wèn)進(jìn)行捕獲搜集。黑流量主要通過(guò)搭建Iodine、DNS2TCP、 DNScat2、Cobalt Strike等實(shí)驗(yàn)環(huán)境,利用國(guó)內(nèi)DoH服務(wù)器、自建DoH服務(wù)器等進(jìn)行流量搜集(所有數(shù)據(jù)搜集均在嚴(yán)格可控范圍內(nèi)進(jìn)行,未對(duì)實(shí)驗(yàn)環(huán)境之外設(shè)施造成影響)。
2 特征工程
特征工程是建立惡意DoH流量檢測(cè)模型的重要步驟,直接決定了模型檢出效果的好壞。如前所述,針對(duì)惡意DoH流量,無(wú)法單純從服務(wù)端證書(shū)、背景DNS、SNI信息等方面進(jìn)行檢測(cè),因此本次特征工程的重點(diǎn)放在加密數(shù)據(jù)會(huì)話過(guò)程,即TLS協(xié)議的Application Data消息交互階段?;陂L(zhǎng)期從事加密流量檢測(cè)的經(jīng)驗(yàn)和對(duì)DNS隧道行為的深刻理解,我們?cè)O(shè)計(jì)了超過(guò)100項(xiàng),大于1000維特征值,涵蓋加密消息個(gè)數(shù)、長(zhǎng)度、到達(dá)時(shí)間等重要加密會(huì)話行為信息。我們?cè)诤诎譊oH流量集上對(duì)這些特征進(jìn)行了分析。因特征眾多,在這里簡(jiǎn)要列舉幾項(xiàng)。
? C_Total_Count/S_Total_Count:Client/Server端Application Data消息總個(gè)數(shù)(線性歸一,歸一化區(qū)間0-512):
通過(guò)數(shù)據(jù)統(tǒng)計(jì)可見(jiàn),大約60%的白流量,Client端Application Data消息的總個(gè)數(shù)在0-0.01之間(約1-5個(gè)Application Data消息),而在這個(gè)區(qū)間的黑DoH流量?jī)H占不到30%。大約45%的黑DoH流量個(gè)數(shù)在0.01-0.02之間(約6-10個(gè)Application Data消息)。在0.1-1區(qū)間(約大于50個(gè)Application Data消息)中包含了將近20%的惡意DoH流量,而本區(qū)間中的白流量?jī)H占2.2%。Server端Application Data消息總個(gè)數(shù)分布與Client端相比有相似之處,但也有所不同,在此不再贅述。
? C_Len_Max/S_Len_Max:Client/Server端Application Data消息長(zhǎng)度最大值(線性歸一,歸一化區(qū)間0- 16384):
通過(guò)數(shù)據(jù)統(tǒng)計(jì),90%的黑DoH流量,Client端Application Data最大長(zhǎng)度傾向小于約160字節(jié),回傳過(guò)程中,Server端Application Data消息的最大長(zhǎng)度基本都達(dá)到了16384字節(jié)。盡管如此,也不能使用Server端回傳大包這個(gè)單一因素進(jìn)行判別,因?yàn)?6%的白流量也會(huì)使用較長(zhǎng)的Application Data消息進(jìn)行傳輸。
? S_Intervel_Trans[100]_4:Server端Application Data消息到達(dá)時(shí)間間隔轉(zhuǎn)移矩陣第五維:
我們?cè)?-300秒時(shí)間內(nèi)根據(jù)數(shù)據(jù)分布,劃分為10個(gè)區(qū)間。將每?jī)蓚€(gè)Application Data消息到達(dá)時(shí)間間隔根據(jù)區(qū)間落點(diǎn)的轉(zhuǎn)換,形成Application Data消息到達(dá)時(shí)間轉(zhuǎn)移矩陣。轉(zhuǎn)移矩陣為10*10,共100維。從流量集數(shù)據(jù)分析,在矩陣的第五維上,黑白流量獲得了比較好的分辨度。
篩選較好特征后,我們隨機(jī)選取了黑白流量各5000次會(huì)話,進(jìn)行了PCA降維可視化分析。PCA算法降至3維:
PCA算法降至2維:
由于降維過(guò)程中帶來(lái)的信息損失,3維和2維散點(diǎn)圖出現(xiàn)了少量合理的重疊。由特征工程以及可視化分析可知,我們選取的特征,可較好的分辨黑白流量集,為下一步訓(xùn)練模型提供了良好基礎(chǔ)。
3 模型訓(xùn)練和測(cè)試
選取Decision Tree、Logistic Regression、Random Forest、Linear Regression、Adaboost和SVM等算法進(jìn)行模型訓(xùn)練和測(cè)試對(duì)比,相應(yīng)結(jié)果如下:
從測(cè)試結(jié)果進(jìn)行分析,綜合考慮精確率、準(zhǔn)確率和模型泛化能力,結(jié)合工程化實(shí)現(xiàn)等因素,選取隨機(jī)森林算法作為產(chǎn)品使用的算法。
產(chǎn)品檢出
觀成瞰云-加密威脅智能檢測(cè)系統(tǒng)目前已集成惡意DoH流量檢測(cè)能力。產(chǎn)品檢出截圖如下所示:
從魚(yú)骨圖可以看出,雖然惡意DoH會(huì)話的SNI為知名白域名,但是上文所述的單流行為檢測(cè)模型給出了較高的判斷,另外惡意DoH會(huì)話的握手協(xié)商特征也與熱門(mén)瀏覽器的TLS握手協(xié)商存在差異,系統(tǒng)最終綜合決策評(píng)分為0.82,威脅標(biāo)簽為DNSTunnelOverHTTPS。
來(lái)源:數(shù)世咨詢