国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于流量切片的DNS隱蔽通道檢測(cè)

2023-10-17 12:37:49劉陽(yáng)洋阮樹驊曾雪梅
計(jì)算機(jī)應(yīng)用研究 2023年10期
關(guān)鍵詞:行為分析

劉陽(yáng)洋 阮樹驊 曾雪梅

摘 要:針對(duì)DNS隱蔽信道(DCC)流量變形策略對(duì)現(xiàn)有檢測(cè)方法的繞過(guò)性問(wèn)題,提出了一種基于流量切片的DCC檢測(cè)方法。該方法首先將實(shí)驗(yàn)環(huán)境出口流量基于滑動(dòng)窗口分批,再基于主機(jī)端聚合形成流量切片,每個(gè)切片包含一個(gè)較短時(shí)間跨度中歸屬同一主機(jī)的DNS報(bào)文與Web報(bào)文,再對(duì)切片內(nèi)DNS報(bào)文的數(shù)據(jù)量、請(qǐng)求行為、響應(yīng)行為以及與Web報(bào)文的關(guān)聯(lián)行為實(shí)施面向DCC檢測(cè)的特征工程,并在此基礎(chǔ)上建立DCC檢測(cè)模型。對(duì)比實(shí)驗(yàn)表明,所構(gòu)建的DCC檢測(cè)模型在常規(guī)DCC流量切片集上檢測(cè)準(zhǔn)確性達(dá)到99.83%,誤報(bào)率僅0.08%,在6類不同流量變形策略的變形DCC流量切片集上有平均95%以上的檢出能力,遠(yuǎn)優(yōu)于其他檢測(cè)方案,證明了所提出的方法應(yīng)對(duì)DCC流量變形的有效性。同時(shí),該方法能在主機(jī)單個(gè)流量切片上對(duì)DCC通信作出有效檢測(cè),是一種具有良好實(shí)時(shí)性的檢測(cè)方法。

關(guān)鍵詞:DNS隱蔽通道;流量變形;主機(jī)流量切片;行為分析

中圖分類號(hào):TP309 文獻(xiàn)標(biāo)志碼:A 文章編號(hào):1001-3695(2023)10-039-3138-06

doi:10.19734/j.issn.1001-3695.2023.02.0040

DNS covert channel detection based on traffic slice

Liu Yangyanga,b,Ruan Shuhuaa,b,Zeng Xuemeib

(a.School of Cyber Science & Engineering,b.Cyber Science Research Institute,Sichuan University,Chengdu 610065,China)

Abstract:In order to solve the problem of bypassing detection methods for DNS covert channel(DCC) traffic deformation strategies,this paper proposed a DCC detection method based on traffic slice.In this method,the traffic of the experimental environment was firstly divided into batches based on the sliding window,and then obtained the traffic slice based on the aggregation of each host-end IP.Each slice contains DNS packets and Web packets belonging to the same host in a short time span.Then,for the DNS data volume,DNS request behavior,DNS response behavior,and association behavior correlation behavior with WEB of DNS in the slice,it implement DCC-detection-oriented feature engineering and create detection models on this basis.Comparative experiments show that the detection accuracy of the constructed DCC detection model on the conventional DCC traffic datasets is 99.83%,and the false positive rate is only 0.08%.On the deformed DCC traffic datasets with six types of different traffic deformation strategies,the detection ability of the DCC detection model is more than 95% on average,which is better than the other detection schemes.It proves that the proposed method is effective in dealing with DCC traffic deformation.Moreover,the proposed method,which can effectively detect DCC communication within a single traffic slice,is a detection method with good real-time performance.

Key words:DNS covert channel;traffic deformation;host traffic slice;behavior analysis

0 引言

DNS隱蔽通道(DCC)[1]作為一種隱匿C&C通信與數(shù)據(jù)竊取行為的隧道技術(shù)被廣泛集成于各種攻擊軟件,活躍在網(wǎng)絡(luò)安全事件中。2019年Lab Dookhtegan在Telegram上曝光的APT34組織的攻擊數(shù)據(jù)包中發(fā)現(xiàn)了利用異常長(zhǎng)域名傳輸數(shù)據(jù)的DNS報(bào)文;2021年P(guān)YSA勒索團(tuán)伙將DCC集成到遠(yuǎn)程訪問(wèn)木馬程序ChaChi中用于數(shù)據(jù)竊取;2022年Malwarebytes披露出一款針對(duì)約旦政府的惡意軟件Saitama,其將DCC作為唯一控制命令傳輸通道,DCC嚴(yán)重危害網(wǎng)絡(luò)安全。

流量異常檢測(cè)是目前公認(rèn)最有效的DCC檢測(cè)手段,根據(jù)防御方在檢測(cè)中關(guān)注的異常點(diǎn)不同,可將目前的DCC檢測(cè)方法分為基于報(bào)文內(nèi)容分析的DCC檢測(cè)、基于流行為分析的DCC檢測(cè)和基于域行為分析的DCC檢測(cè)三類。

基于報(bào)文內(nèi)容分析的DCC檢測(cè)方法[2~10],依據(jù)DCC報(bào)文與正常DNS報(bào)文在內(nèi)容表現(xiàn)上存在的差異性進(jìn)行檢測(cè)。Ahmed等人[2]認(rèn)為DCC報(bào)文會(huì)在全限定域名FQDN表現(xiàn)出明顯差異,提取了字符數(shù)、域名級(jí)數(shù)、各級(jí)域名熵等6維特征用于檢測(cè)DCC。Born等人[7]認(rèn)為DCC報(bào)文的請(qǐng)求域名不符合zipf定律,通過(guò)分析域的unigram、bigram和trigram字符頻率來(lái)進(jìn)行DCC的檢測(cè)。Preston[8]提取子域長(zhǎng)度、信息熵、字符串平均相似度等內(nèi)容特征進(jìn)行DCC檢測(cè)。文獻(xiàn)[9,10]將DNS報(bào)文中的字節(jié)序列轉(zhuǎn)碼為高維的字節(jié)級(jí)特征,結(jié)合深度學(xué)習(xí)算法進(jìn)行DCC檢測(cè),本質(zhì)上仍然是基于DNS報(bào)文內(nèi)容的異常檢測(cè)。

基于流行為分析的DCC檢測(cè)方法[11~16],將DNS報(bào)文以五元組進(jìn)行流聚合,依據(jù)DCC流與正常DNS流在通信行為表現(xiàn)上存在的差異性進(jìn)行檢測(cè)。Ellens等人[11]提出DCC會(huì)維持通信流并持續(xù)傳輸數(shù)據(jù),提取DNS流持續(xù)時(shí)間、通信包數(shù)等特征,通過(guò)設(shè)立閾值的方式進(jìn)行DCC流的判斷。Jiang等人[15]提出一種流級(jí)和包級(jí)特征結(jié)合分析的方法,提取持續(xù)時(shí)間、請(qǐng)求域名信息熵等13維特征來(lái)識(shí)別DCC。Bai等人[13]在DNS流還原前提下,利用時(shí)間bin切分流片段,分析包間隔時(shí)間的均值、方差、偏斜、峰度、百分位數(shù)等指標(biāo),用三種機(jī)器學(xué)習(xí)算法將DCC流進(jìn)行細(xì)分識(shí)別。

基于域行為分析的DCC檢測(cè)方法[17~21],是針對(duì)中繼模式[22]的DCC。中繼DCC服務(wù)端通常偽裝為權(quán)威域名服務(wù)器加入DNS系統(tǒng),運(yùn)行時(shí)需要借助域來(lái)實(shí)現(xiàn)DCC報(bào)文的轉(zhuǎn)發(fā)定向,會(huì)產(chǎn)生較多針對(duì)同一個(gè)域的非重復(fù)子域名查詢報(bào)文。因此,此類DCC檢測(cè)方法先將網(wǎng)絡(luò)中的DNS報(bào)文基于二級(jí)域名進(jìn)行聚合,再進(jìn)行域行為異常分析。如Nadler等人[17]針對(duì)每個(gè)域的所有請(qǐng)求報(bào)文提取字符熵、唯一查詢比率、非IP查詢類型率等6維特征來(lái)識(shí)別DCC。Liu等人[18]提取唯一子域名個(gè)數(shù)、子域名熵值、查詢類型為A/AAAA類型的比例等7維特征來(lái)區(qū)分識(shí)別DCC。Chen等人[21]設(shè)計(jì)了一種兩級(jí)結(jié)構(gòu),先將FQDN子域的字節(jié)序列作為L(zhǎng)STM算法的輸入進(jìn)行一級(jí)DCC檢測(cè),再基于域分組來(lái)進(jìn)行二級(jí)DCC識(shí)別。

然而,隨著攻擊的組織化,DCC攻擊方越來(lái)越注重攻擊的隱蔽性,各種流量變形策略用于進(jìn)一步偽裝DCC流量,從而繞過(guò)相關(guān)的檢測(cè)模型。例如:針對(duì)報(bào)文內(nèi)容層面,攻擊者常采用的流量變形策略有編碼方式變化、數(shù)據(jù)包長(zhǎng)度限制、設(shè)置更具迷惑性的域名結(jié)構(gòu)等;針對(duì)流行為層面,攻擊者改變了早期DCC單五元組會(huì)話的通信方式,采用多個(gè)流進(jìn)行數(shù)據(jù)傳輸;針對(duì)域行為層面,攻擊者可基于多個(gè)域構(gòu)建隧道,分擔(dān)需要傳輸?shù)臄?shù)據(jù),或采用直連DCC通信模式,F(xiàn)QDN就不會(huì)受到域名結(jié)構(gòu)的限制。這些流量變形策略使得攻擊者可以繞過(guò)現(xiàn)行的檢測(cè)方法。

為了應(yīng)對(duì)DCC繞過(guò)性問(wèn)題,本文對(duì)當(dāng)前DCC流量變形策略進(jìn)行了分析,發(fā)現(xiàn)如下流量行為關(guān)系:a)不論如何改變報(bào)文內(nèi)容與會(huì)話方式,DCC運(yùn)行就會(huì)有相當(dāng)量的DNS報(bào)文;b)DCC產(chǎn)生的DNS流量,沒(méi)有后續(xù)的HTTP或TLS會(huì)話流量,與正常網(wǎng)絡(luò)行為有較大差異;c)以上兩種行為具有瞬時(shí)性。由此,本文提出了一種基于流量切片的DCC檢測(cè)方法,在對(duì)DCC變形策略充分分析的基礎(chǔ)上,綜合分析主機(jī)流量切片中的DNS的數(shù)據(jù)量行為、請(qǐng)求行為、響應(yīng)行為以及與Web流量關(guān)聯(lián)行為來(lái)進(jìn)行DCC行為識(shí)別。實(shí)驗(yàn)表明,相較于三類應(yīng)用較廣的DCC檢測(cè)方法,本文方法在6類變形DCC數(shù)據(jù)集上均具備極好的檢測(cè)能力,在應(yīng)對(duì)DCC流量變形表現(xiàn)上遠(yuǎn)優(yōu)于其他檢測(cè)方法,并具有良好的實(shí)時(shí)性。

1 DCC變形策略

為了更好地認(rèn)識(shí)DCC可采取的流量變形策略,本文對(duì)目前應(yīng)用較多的DCC軟件進(jìn)行了分析,包括DET[23]、Dns-cat2[24]、Iodine[25]、dns2tcp[26]、TCP-over-DNS[27]、dnsShell[28]、DNSExfiltrator[29]、DNSlivery[30]、goDoH-raw[31]。目前DCC流量變形主要分為報(bào)文內(nèi)容層面的流量變形和DCC通信行為層面的流量變形。攻擊者在報(bào)文內(nèi)容上的變形策略主要體現(xiàn)在:

a)選用不同類型的請(qǐng)求/響應(yīng)報(bào)文來(lái)構(gòu)建隧道,將數(shù)據(jù)編碼在A、NULL、TXT、MX、AAAA等類型的DNS報(bào)文中。不同類型的DNS報(bào)文承載了不同的功能性,在結(jié)構(gòu)和內(nèi)容表現(xiàn)上有更大的自由度。

b)調(diào)整DCC的編碼方式,常見(jiàn)的有base32、base64,而iodine還可選擇base64u、base128編碼方式,tcp-over-dns還可選擇hexhack37以及base16編碼方式。不同的編碼方式下,數(shù)據(jù)包大小寫字符頻率、數(shù)字占比、長(zhǎng)度特征指標(biāo)會(huì)發(fā)生變化。

c)限制DCC報(bào)文攜帶信息的容量,使得DCC報(bào)文的長(zhǎng)度、域名長(zhǎng)度處于常見(jiàn)DNS數(shù)據(jù)包長(zhǎng)度范圍。

d)個(gè)性化編輯策略差異,如構(gòu)建的DCC報(bào)文的域名級(jí)數(shù)、外傳數(shù)據(jù)的加密方式、響應(yīng)報(bào)文的資源結(jié)構(gòu)等。

攻擊者在通信行為上的變形策略主要體現(xiàn)在:

a)流行為的變形,早期DCC通道如TCP-over-DNS、Dns-cat2、Iodine會(huì)維持單個(gè)五元組會(huì)話流來(lái)進(jìn)行數(shù)據(jù)傳輸,使得DCC流表現(xiàn)出明顯的流特征異常。然而改良之后的DCC通道能夠采用多五元組會(huì)話的方式進(jìn)行數(shù)據(jù)傳輸,使得DCC流表現(xiàn)出類似于正常DNS流的行為。

b)域行為的變形,直連模式DCC,無(wú)須借助DNS轉(zhuǎn)發(fā)機(jī)制,只要正常的路由轉(zhuǎn)發(fā)實(shí)現(xiàn)通信,其產(chǎn)生的DNS報(bào)文編碼時(shí)不必設(shè)置相同的二級(jí)域名,這會(huì)使得基于域行為的檢測(cè)方式失效。同時(shí),攻擊者可以利用多域來(lái)分擔(dān)傳輸數(shù)據(jù),這也使得單個(gè)域的DCC行為表現(xiàn)正常。

2 檢測(cè)方法

根據(jù)第1章分析,當(dāng)前DCC報(bào)文的內(nèi)容與行為的表現(xiàn)可隨著攻擊者調(diào)整變形策略而發(fā)生變化。對(duì)目前應(yīng)用較廣的三類DCC檢測(cè)方法,均存在針對(duì)性的變形策略,使得相應(yīng)的DCC檢測(cè)機(jī)制失效。為了應(yīng)對(duì)DCC流量變形策略,本文進(jìn)行了如下考慮:a)DCC運(yùn)行時(shí),雖然可以作出內(nèi)容與行為的流量變形,但會(huì)有相當(dāng)量的DNS協(xié)議流量產(chǎn)生,以傳遞數(shù)據(jù),這種流量行為異于正常的DNS網(wǎng)絡(luò)訪問(wèn);b)目前DCC變形策略只涉及到DNS流量,然而DNS協(xié)議并不是單獨(dú)工作的協(xié)議,在正常的DNS網(wǎng)絡(luò)訪問(wèn)中,域名解析之后通常建立HTTP或TLS會(huì)話,而DCC的DNS流量會(huì)缺失這種行為;c)考慮前兩點(diǎn)的時(shí)間瞬時(shí)性特征,即由DCC導(dǎo)致的DNS數(shù)據(jù)量異常具有瞬時(shí)性,DNS協(xié)議與Web協(xié)議的流量關(guān)聯(lián)具有瞬時(shí)性。

綜上,本文提出一種基于流量切片的DCC檢測(cè)方案,通過(guò)關(guān)注主機(jī)瞬時(shí)的DNS與Web流量特征,應(yīng)對(duì)現(xiàn)有的DCC變形策略。方案包括主機(jī)流量切片構(gòu)建、切片特征工程以及DCC檢測(cè)模型,總體架構(gòu)如圖1所示。

2.1 流量切片

獲取流量切片需經(jīng)過(guò)三個(gè)步驟:a)基于滑動(dòng)窗口的流量分批;b)每批窗口流量基于主機(jī)IP聚合形成流量切片;c)過(guò)濾不含DNS包的流量切片。

a)基于滑動(dòng)窗口對(duì)原始流量分批,在實(shí)驗(yàn)環(huán)境的出口流量處,以λ為周期對(duì)DNS和Web相關(guān)協(xié)議流量實(shí)現(xiàn)流量分批。λ的大小會(huì)影響檢測(cè)效果,由于DNS協(xié)議與Web協(xié)議的流量關(guān)聯(lián)具有瞬時(shí)性,λ理論上值較小,具體情況在模型有效性驗(yàn)證實(shí)驗(yàn)中進(jìn)行討論。

b)對(duì)每一批滑動(dòng)窗口中的數(shù)據(jù)包,通過(guò)源、目的端口號(hào)對(duì)數(shù)據(jù)包進(jìn)行方向判斷,標(biāo)記數(shù)據(jù)包的主機(jī)端與服務(wù)端,再通過(guò)主機(jī)端IP將窗口中流量進(jìn)行主機(jī)級(jí)聚合形成流量切片。第k個(gè)批次窗口流量的所有主機(jī)流量切片集表示為:Sprek={Sh1k,Sh2k,…,Shik,…,Shpk}(p表示實(shí)驗(yàn)場(chǎng)景活躍主機(jī)數(shù)量),其中,第k個(gè)批次的第i個(gè)主機(jī)流量切片表示為Shik=〈Dreq,Dres,W,λ〉。假設(shè)滑動(dòng)窗口從0時(shí)刻開(kāi)始如圖1所示,λ表示窗口時(shí)間跨度,k表示窗口的批次,Dreq和Dres分別表示λ時(shí)間跨度內(nèi),所有該IP的請(qǐng)求和響應(yīng)DNS數(shù)據(jù)包,W表示λ時(shí)間跨度內(nèi),所有該IP發(fā)出和接收到的Web通信數(shù)據(jù)包。

c)對(duì)每批次流量切片Sprek進(jìn)行過(guò)濾??紤]主機(jī)訪問(wèn)部分視頻網(wǎng)站時(shí),在較長(zhǎng)時(shí)間段中只有Web流量,不產(chǎn)生DNS流量,因此需要過(guò)濾掉Sprek中不包含DNS流量的切片來(lái)減少計(jì)算量,過(guò)濾后每批次流量切片為Sfilterk。

2.2 特征工程

流量切片的特征工程分如下四個(gè)維度展開(kāi):

a)DNS數(shù)據(jù)量特征。DNS協(xié)議承擔(dān)域名解析功能,主機(jī)發(fā)出的DNS報(bào)文個(gè)數(shù)、字節(jié)數(shù)與主機(jī)操作次數(shù)正相關(guān)。在切片的短時(shí)跨度內(nèi)DNS數(shù)據(jù)量通常較少,而DCC報(bào)文用途在于數(shù)據(jù)通信,不論采取何種流量變形策略,在DCC運(yùn)行的時(shí)段內(nèi)會(huì)呈現(xiàn)出相對(duì)較高的數(shù)據(jù)量通信行為。因此,對(duì)每個(gè)切片中D(D=Dreq ∪ Dres)計(jì)算如下特征:DNS包總數(shù)Pd、DNS總字節(jié)數(shù)Bd、DNS總請(qǐng)求字節(jié)數(shù)Brd。

b)DNS請(qǐng)求行為特征。網(wǎng)絡(luò)中DNS請(qǐng)求包的請(qǐng)求類型約有96%為A和AAAA,而DCC為追求高吞吐量,會(huì)運(yùn)用其他請(qǐng)求資源類型,如TXT、NULL。如果僅基于內(nèi)容分析,報(bào)文的類型并不能成為DCC的判定條件,但本文的分析視角是流量切片,DCC的這種行為會(huì)導(dǎo)致切片內(nèi)DNS請(qǐng)求類型的比例發(fā)生變化。從DNS請(qǐng)求類型行為角度,本文先對(duì)切片Dreq解析獲取到請(qǐng)求類型序列DTreq,再計(jì)算請(qǐng)求類型行為特性:非IP類型請(qǐng)求數(shù)據(jù)包個(gè)數(shù)NIr、非IP類型請(qǐng)求數(shù)據(jù)包占比RNIr如下:

c)DNS響應(yīng)行為特征。實(shí)驗(yàn)過(guò)程中發(fā)現(xiàn)部分誤報(bào)來(lái)自主機(jī)訪問(wèn)一些大型域,諸如baidu.com、cloudflare等,由于CDN及負(fù)載均衡配置影響,主機(jī)訪問(wèn)到這部分域相關(guān)網(wǎng)絡(luò)資源時(shí)會(huì)在幾秒內(nèi)產(chǎn)生十幾個(gè)針對(duì)同一個(gè)域的不同F(xiàn)QDN請(qǐng)求,導(dǎo)致切片中正常的DNS請(qǐng)求包表現(xiàn)出類似中繼形DCC的請(qǐng)求行為。針對(duì)這類問(wèn)題,可以從響應(yīng)報(bào)文結(jié)構(gòu)來(lái)區(qū)分這部分流量,大型域中每個(gè)FQDN承載不同功能并且一般都配置了多個(gè)IP來(lái)實(shí)現(xiàn)負(fù)載均衡,不同F(xiàn)QDN請(qǐng)求的響應(yīng)包資源記錄數(shù)量更具隨機(jī)性。而DCC響應(yīng)包的資源記錄為攜帶數(shù)據(jù)通常統(tǒng)一設(shè)計(jì)響應(yīng)結(jié)構(gòu),其記錄數(shù)量與格式相對(duì)統(tǒng)一且簡(jiǎn)單,因此,本文對(duì)響應(yīng)包的資源數(shù)提取特征減少這部分誤報(bào)。首先通過(guò)獲取切片中響應(yīng)報(bào)文Dres的響應(yīng)資源數(shù)序列記做RR={rrN1,rrN2,…,rrNb}(b表示該切片內(nèi)響應(yīng)包個(gè)數(shù)) 再通過(guò)RR計(jì)算響應(yīng)行為部分特征:切片內(nèi)響應(yīng)結(jié)構(gòu)簡(jiǎn)單度RRS;切片內(nèi)響應(yīng)結(jié)構(gòu)熵值RRE,公式為

d)DNS/Web關(guān)聯(lián)行為特征。通常情況下DNS流量與Web會(huì)話建立行為存在正相關(guān)的關(guān)系,這一行為在主機(jī)流量切片上的表現(xiàn)為:訪問(wèn)資源越豐富,請(qǐng)求解析的域名就越多,需要發(fā)出的DNS包就越多,對(duì)應(yīng)DNS流就會(huì)增加,對(duì)應(yīng)建立的Web鏈接就越多。而與DCC相關(guān)的DNS流量具有Web流量缺失的特點(diǎn),這就會(huì)導(dǎo)致正相關(guān)關(guān)聯(lián)失敗或比值異常。本文用Web流量中SYN報(bào)文表征主機(jī)建立Web會(huì)話的行為,用DNS包數(shù)、流數(shù)、FQDN數(shù)表征請(qǐng)求解析行為。同時(shí)考慮到Firefox與Google等瀏覽器采用的并行TCP連接加速資源獲取的技術(shù)(這意味著單次域名解析行為會(huì)對(duì)應(yīng)多個(gè)Web會(huì)話建立,因此引入通信對(duì)概念對(duì)SYN報(bào)文進(jìn)行去重)。綜上,本文通過(guò)跨流量層級(jí)正相關(guān)比值來(lái)表征這種關(guān)聯(lián)行為,首先對(duì)每個(gè)切片Shik獲取所有Web流量的syn報(bào)文記做Wsyn,再結(jié)合切片中的DNS流量相關(guān)報(bào)文信息計(jì)算如下關(guān)聯(lián)特征:FQDN個(gè)數(shù)與Web通信對(duì)個(gè)數(shù)比值RFwc,DNS流數(shù)與Web通信對(duì)個(gè)數(shù)比值Rdfwc,DNS包數(shù)與Web 通信對(duì)個(gè)數(shù)比值Rpdwc,DNS流數(shù)與Web流數(shù)比值Rdfwf ,公式如下:

其中:triplet代表獲取通信對(duì)三元組(源IP、目的IP、服務(wù)端口)。

至此,對(duì)流量切片完成面向DCC行為異常表征的向量化,共計(jì)14維特征。

2.3 DCC檢測(cè)模型

基于前兩節(jié)流量切片與特征工程流程。接下來(lái)介紹本文對(duì)流量切片數(shù)據(jù)集的標(biāo)注、模型的訓(xùn)練、驗(yàn)證流程。在構(gòu)建模型的分類算法選擇上,本文選用惡意流量識(shí)別領(lǐng)域常用分類算法邏輯回歸(LG)、gradient boost decision tree(GBT)、隨機(jī)森林(RF)算法。模型構(gòu)建與驗(yàn)證總體流程如圖2所示。

a)構(gòu)建階段,僅采用常規(guī)DCC流量和背景良性流量完成檢測(cè)模型訓(xùn)練。本文在實(shí)驗(yàn)園區(qū)可控網(wǎng)絡(luò)環(huán)境下部署運(yùn)行默認(rèn)設(shè)置的DCC客戶端來(lái)獲取常規(guī)DCC主機(jī)流量。由于DCC流量切片是混合流量(即同時(shí)存在正常行為DNS和DCC產(chǎn)生的DNS報(bào)文),所以在標(biāo)記時(shí),為避免誤標(biāo),人工記錄DCC運(yùn)行時(shí)段、運(yùn)行設(shè)置的二級(jí)域名、 DCC服務(wù)端IP進(jìn)行切片標(biāo)記(即當(dāng)前切片DNS報(bào)文中存在記錄的中繼DCC通信二級(jí)域名或存在直連DCC通信的目的DCC服務(wù)端IP則標(biāo)記為DCC切片)。再經(jīng)由特征工程完成常規(guī)DCC向量標(biāo)注,結(jié)合良性切片構(gòu)建的背景向量完成模型訓(xùn)練。

b)驗(yàn)證階段,驗(yàn)證本文DCC檢測(cè)方法對(duì)常規(guī)DCC以及變形DCC的檢測(cè)能力。其中,對(duì)于變形DCC,需改變部署DCC的報(bào)文變形策略并記錄運(yùn)行時(shí)段與設(shè)置,激活DCC運(yùn)行形成具備DCC變形代表意義的主機(jī)流量,再以a)中的標(biāo)記方式進(jìn)行變形DCC切片標(biāo)記,經(jīng)由特征工程構(gòu)建驗(yàn)證集。

同時(shí),考慮到流量切片的粒度λ可能對(duì)檢測(cè)準(zhǔn)確性造成影響,在實(shí)驗(yàn)時(shí)進(jìn)行多輪變更,構(gòu)建不同λ粒度DCC檢測(cè)模型進(jìn)行對(duì)比分析。

3 實(shí)驗(yàn)

3.1 實(shí)驗(yàn)環(huán)境與設(shè)置

1)良性切片 以實(shí)驗(yàn)園區(qū)中近兩周所有正常主機(jī)(約200臺(tái))的出口DNS和Web流量作為正常背景流量用于生成良性切片。共采集正常主機(jī)背景DNS和Web報(bào)文存儲(chǔ)為pcap格式文件共計(jì)約800 GB(正常DNS數(shù)據(jù)包800萬(wàn)個(gè)),以預(yù)設(shè)滑動(dòng)窗口λ為5 s,生成良性流量切片數(shù)據(jù)樣本130萬(wàn)條。

2)常規(guī)DCC切片 DCC流量切片通過(guò)三臺(tái)運(yùn)行了DCC客戶端的主機(jī)DNS和Web流量生成。依次運(yùn)行的DCC客戶端包括第1章提及的9種DCC軟件,執(zhí)行DCC功能包括文件上傳、文件下載、CC交互命令、靜默。同時(shí),在三臺(tái)主機(jī)上,人工間歇運(yùn)行常見(jiàn)網(wǎng)絡(luò)軟件包括QQ、影音、FireFox、IE瀏覽器、WPS等來(lái)模擬正常工作行為,以保證DCC主機(jī)流量具備真實(shí)的背景DNS和Web流量。再根據(jù)運(yùn)行DCC時(shí)段是否設(shè)置流量變形策略規(guī)則,區(qū)分DCC切片類型。將默認(rèn)設(shè)置下DCC運(yùn)行時(shí)段的DCC主機(jī)流量經(jīng)由2.3節(jié)標(biāo)記為常規(guī)DCC切片,以λ窗口設(shè)置為5 s為例,訓(xùn)練集測(cè)試集劃分如表1所示。

3)變形DCC切片 經(jīng)由2.3節(jié)對(duì)采用變形策略時(shí)段DCC切片進(jìn)行標(biāo)記。策略記錄示例如:12月9日11時(shí)到12月9時(shí)15時(shí),主機(jī)172.XX.XX.99,運(yùn)行DCC軟件DET|Iodine|其他,DCC發(fā)出的DNS報(bào)文類型為:默認(rèn)|A|TXT|CNAME|其他,單個(gè)數(shù)據(jù)包攜帶字節(jié)數(shù):8|15|60|其他,Base編碼類型:默認(rèn)|Base16|Base32|其他,會(huì)話模式:?jiǎn)瘟鱸多流,DCC通信模式:中繼單域名 |直連多域名。根據(jù)第1章變形策略對(duì)DCC內(nèi)容和行為理論分析影響,以λ值為5 s將變形策略時(shí)段的DCC流量切片樣本歸類到表2中6個(gè)類別變形樣本集中(由于變形策略的復(fù)合使用,樣本存在復(fù)用分類)。

4)實(shí)驗(yàn)環(huán)境 根據(jù)不同DCC軟件需求進(jìn)行相關(guān)的軟硬件的環(huán)境配置,采用的客戶端包括兩臺(tái)Windows 10主機(jī)和一臺(tái)Linux CentOS 7系統(tǒng)主機(jī),DCC服務(wù)端包括Windows 10和兩臺(tái)公網(wǎng)云服務(wù)器Linux CentOS 7雙核2 MB帶寬,并注冊(cè)了一個(gè)“ourDomain.top”域?qū)崿F(xiàn)DNS中繼通信,機(jī)器學(xué)習(xí)框架采用SparkML。

3.2 實(shí)驗(yàn)與分析

本文利用構(gòu)建的標(biāo)簽數(shù)據(jù)集、驗(yàn)證集進(jìn)行檢測(cè)方法對(duì)常規(guī)DCC識(shí)別的有效性、對(duì)流量變形DCC的適用性評(píng)估,以及驗(yàn)證窗口λ可能帶來(lái)的性能和準(zhǔn)確率影響,共設(shè)置三組實(shí)驗(yàn),并通過(guò)表3中的指標(biāo)進(jìn)行模型評(píng)估。

3.2.1 常規(guī)DCC識(shí)別有效性驗(yàn)證

依據(jù)流量切片和特征工程提取方法,本節(jié)實(shí)驗(yàn)用標(biāo)記時(shí)段中生成的25 000個(gè)常規(guī)切片和均衡抽樣的25 000良性切片進(jìn)行模型訓(xùn)練,并通過(guò)測(cè)試集驗(yàn)證對(duì)9種DCC的常規(guī)形式進(jìn)行識(shí)別能力。不同算法模型在本文流量切片方法下對(duì)常規(guī)DCC識(shí)別準(zhǔn)確率如表4所示??梢钥闯?,在不同算法模型下,本文方法對(duì)9種常規(guī)DCC均取得了超過(guò)98%的識(shí)別率,其中RF算法取得了平均超過(guò)99.7%的有效識(shí)別率,證明了在DCC不進(jìn)一步偽裝自身流量行為的常規(guī)情況下,本文檢測(cè)方法具備極好的有效性與泛化性。

3.2.2 變形DCC識(shí)別有效性驗(yàn)證

為了驗(yàn)證方法應(yīng)對(duì)DCC流量變形策略的有效性,在本節(jié)實(shí)驗(yàn)中,僅基于常規(guī)DCC流量和良性流量切片進(jìn)行模型構(gòu)建,再利用變形DCC流量進(jìn)行檢測(cè)模型有效性驗(yàn)證,算法模型為實(shí)驗(yàn)1中表現(xiàn)最好的RF。

同時(shí),本文選取了三種不同分析視角的DCC檢測(cè)方法[2,15,21]進(jìn)行對(duì)比。Chen等人[21]提出一種基于LSTM深度學(xué)習(xí)算法并結(jié)合域分組分析進(jìn)行DCC識(shí)別的檢測(cè)方法,為了橫向?qū)Ρ龋捎帽疚牡牧髁繑?shù)據(jù)訓(xùn)練LSTM模型,樣本中良性流量為實(shí)驗(yàn)環(huán)境出口處DNS隨機(jī)抽樣的18萬(wàn)個(gè)報(bào)文,訓(xùn)練DCC流量為抽樣選取的18萬(wàn)個(gè)常規(guī)DCC數(shù)據(jù)包,訓(xùn)練測(cè)試集設(shè)置為9:1復(fù)現(xiàn)其檢測(cè)方法;Ahmed等人[2]提出一種基于內(nèi)容的DCC檢測(cè)方法,根據(jù)其檢測(cè)算法孤立森林算法的特性,污染率設(shè)置為其指出的最優(yōu)值0.05,抽取95萬(wàn)個(gè)正常DNS報(bào)文和5萬(wàn)個(gè)常規(guī)DCC報(bào)文作為訓(xùn)練集; Jiang等人[15]使用了基于流的DCC檢測(cè)方法,采用了隨機(jī)森林算法作為檢測(cè)模型,復(fù)現(xiàn)時(shí)先將良性和常規(guī)DNS數(shù)據(jù)進(jìn)行流聚合處理再構(gòu)建對(duì)應(yīng)的檢測(cè)模型。隨后利用6類變形流量進(jìn)行驗(yàn)證。檢測(cè)結(jié)果如表5所示。

從表5檢測(cè)結(jié)果分析:基于流的DCC檢測(cè)方法在早期采用單流通信的DCC中取得最好的檢測(cè)率,但在應(yīng)對(duì)較新的DCC工具如dnsShell、DNSlivery等采取了多流會(huì)話方式的DCC通道中識(shí)別效果較差;三類對(duì)比檢測(cè)方法在應(yīng)對(duì)數(shù)據(jù)字節(jié)限制的DCC變形策略時(shí),均只有百分之30即以下的召回率,經(jīng)分析是由于三種檢測(cè)方法在特征分析時(shí)都將較大的包長(zhǎng)作為DCC識(shí)別的關(guān)鍵特征,字節(jié)限制策略規(guī)避了這一異常表現(xiàn);基于包內(nèi)容的DCC檢測(cè)方法最容易受到流量變形的影響,在由多種DCC軟件生成的常規(guī)DCC流量中也并未取得很好的檢測(cè)效果,這是由于不同DCC流量之間存在加密方式、壓縮方式以及域名結(jié)構(gòu)等差異。根據(jù)調(diào)研,大部分基于內(nèi)容的DCC檢測(cè)研究往往局限于較少類型的DCC流量,這就導(dǎo)致其特征工程缺乏普適性;基于域分組分析的檢測(cè)方法在面臨多域通信時(shí)的DCC流量時(shí)幾乎是失效的。相較于目前的檢測(cè)方法,本文方法在構(gòu)建的6類表征變形策略的DCC中實(shí)現(xiàn)了平均超過(guò)95%的識(shí)別率,具備對(duì)抗DCC流量變形策略的優(yōu)勢(shì)。

3.2.3 切片滑動(dòng)窗口分析驗(yàn)證

在隱蔽信道識(shí)別領(lǐng)域,如何在通道初期就做到有效檢測(cè),是當(dāng)下研究者們關(guān)注的重點(diǎn)問(wèn)題。本文所提出的DCC檢測(cè)方法基于固定時(shí)長(zhǎng)的主機(jī)流量切片,切片窗口λ的設(shè)置會(huì)對(duì)檢測(cè)方法的準(zhǔn)確性和時(shí)效性產(chǎn)生影響。為分析窗口λ對(duì)檢測(cè)方法的影響并尋求最優(yōu)λ值,本文對(duì)原始流量進(jìn)行了多輪次處理,設(shè)置λ為1 s,3 s,5 s,10 s,…,40 s,良性切片和DCC切片設(shè)置比例為1:1,訓(xùn)練集測(cè)試集劃分為9:1,不同粒度λ下的檢測(cè)模型準(zhǔn)確率與誤報(bào)率結(jié)果如圖3、4所示。

從圖3和4結(jié)果分析,當(dāng)λ設(shè)置過(guò)小時(shí)如λ=1 s,準(zhǔn)確率會(huì)有明顯下降,誤報(bào)率會(huì)明顯上升,原因是過(guò)小的λ形成的流量切片在檢測(cè)DCC時(shí)容易受到網(wǎng)絡(luò)延遲的影響,由良性切片關(guān)聯(lián)行為失效而導(dǎo)致誤判。但隨著λ持續(xù)增大,準(zhǔn)確率也會(huì)下降,經(jīng)分析,原因是當(dāng)λ設(shè)置過(guò)大如λ=40 s,部分切片會(huì)包含較多正常網(wǎng)絡(luò)訪問(wèn)產(chǎn)生的流量,若同時(shí)切片時(shí)間范圍內(nèi)的DCC運(yùn)行時(shí)間很短且通信量極少時(shí),這種微弱的DCC流量行為會(huì)被過(guò)大的流量切片忽略進(jìn)而導(dǎo)致準(zhǔn)確率下降。根據(jù)實(shí)驗(yàn)結(jié)果,λ在設(shè)置為3~10 s時(shí)是最優(yōu)選擇,在三種分類算法中均取得了超過(guò)98.5%的準(zhǔn)確率和低于1.2%的誤報(bào)率,其中利用隨機(jī)森林算法建立的檢測(cè)模型在λ設(shè)置為5 s時(shí)取得99.83%的準(zhǔn)確率和0.08%的誤報(bào)率。

4 結(jié)束語(yǔ)

針對(duì)DCC流量變形策略的對(duì)當(dāng)前檢測(cè)方法的繞過(guò)性問(wèn)題,本文提出了一種基于流量切片的DCC檢測(cè)方法,該方法采用主機(jī)級(jí)流量分析視角,并將DNS流行為與Web流行為的關(guān)聯(lián)特征融入到DCC檢測(cè)模型中。多個(gè)對(duì)比實(shí)驗(yàn)表明本文方法對(duì)常規(guī)DCC具有更高識(shí)別率、泛化性,對(duì)良性流量具備更低的誤報(bào)率,同時(shí)具備對(duì)變形DCC流量的顯著檢出優(yōu)越性,具備一定的理論價(jià)值和實(shí)用價(jià)值。隨著網(wǎng)絡(luò)攻擊的組織化發(fā)展,流量變形、流量混淆策略的應(yīng)用也越發(fā)廣泛。本文采用的主機(jī)流量切片多協(xié)議行為關(guān)聯(lián)的分析方法對(duì)其他隱蔽通信和變形流量識(shí)別具備一定的借鑒意義。未來(lái)工作包括兩方面:第一,本文在調(diào)研后采用了惡意流量檢測(cè)領(lǐng)域常用算法來(lái)進(jìn)行檢測(cè)研究,未來(lái)可以嘗試更為先進(jìn)的智能算法;第二,未來(lái)可以探索流量切片多協(xié)議關(guān)聯(lián)分析方法對(duì)其他類型網(wǎng)絡(luò)隱蔽信道檢測(cè)的應(yīng)用。

參考文獻(xiàn):

[1]刁嘉文,方濱興,崔翔,等.DNS隱蔽信道綜述[J].通信學(xué)報(bào),2021,42(5):164-178.(Diao Jiawen,F(xiàn)ang Binxing,Cui Xiang,et al.Survey of DNS covert channel[J].Journal on Communications,2021,42(5):164-178.)

[2]Ahmed J,Gharakheili H H,Raza Q,et al.Real-time detection of DNS exfiltration and tunneling from enterprise networks[C]//Proc of IFIP/IEEE Symposium on Integrated Network and Service Management.Piscataway,NJ:IEEE Press,2019:649-653.

[3]Cheng Qi,Chen Xiaojun,Cui Xu,et al.A bigram based real time DNS tunnel detection approach[J].Procedia Computer Science,2013,17:852-860.

[4]Farnham G,Atlasis A.Detecting DNS tunneling[J].SANS Institute InfoSec Reading Room,2013,9:1-32.

[5]刁嘉文,方濱興,田志宏,等.基于攻擊流量自生成的DNS隱蔽信道檢測(cè)方法[J].計(jì)算機(jī)學(xué)報(bào),2022,45(10):2190-2206.(Diao Jiawen,F(xiàn)ang Binxing,Tian Zhihong,et al.DNS covert channel detection method based on attack traffic self generation[J].Chinese Journal of Computers,2022,45(10):2190-2206.)

[6]Das A,Shen Minyi,Shashanka M,et al.Detection of exfiltration and tunneling over DNS[C]//Proc of the 16th IEEE International Confe-rence on Machine Learning and Applications.Piscataway,NJ:IEEE Press,2017:737-742.

[7]Born K,Gustafson D.Detecting DNS tunnels using character frequency analysis[EB/OL].(2010).https://arxiv.org/abs/1004.4358.

[8]Preston R.DNS tunneling detection with supervised learning[C]//Proc of IEEE International Symposium on Technologies for Homeland Security.Piscataway,NJ:IEEE Press,2019:1-6.

[9]Wu Kemeng,Zhang Yongzheng,Yin Tao.CLR:a classification of DNS tunnel based on logistic regression[C]//Proc of the 38th IEEE International Performance Computing and Communications Conference.Piscataway,NJ:IEEE Press,2019.

[10]Chen Yang,Li Xiaoyang.A high accuracy DNS tunnel detection me-thod without feature engineering[C]//Proc of the 16th International Conference on Computational Intelligence and Security.Piscataway,NJ:IEEE Press,2020:374-377.

[11]Ellens W,Z·uraniewski P,Sperotto A,et al.Flow-based detection of DNS tunnels[C]//Proc of IFIP International Conference on Autonomous Infrastructure,Management and Security.Berlin:Springer,2013:124-135.

[12]DAngelo G,Castiglione A,Palmieri F.DNS tunnels detection via DNS-images[J].Information Processing & Management,2022,59(3):102930.

[13]Bai Huiwen,Liu Weiwei,Liu Guangjie,et al.Application behavior identification in DNS tunnels based on spatial-temporal information[J].IEEE Access,2021,9:80639-80653.

[14]Zhan Mengqi,Li Yang,Yu Guangxi,et al.Detecting DNS over HTTPS based data exfiltration[J].Computer Networks,2022,209:108919.

[15]Jiang Kui,Wang Fei.Detecting DNS tunnel based on multidimensional analysis[C]//Proc of the 5th International Conference on Mechanical,Control and Computer Engineering.Piscataway,NJ:IEEE Press,2020:272-275.

[16]Bai Huiwen,Liu Guangjie,Zhai Jiangtao,et al.Refined identification of hybrid traffic in DNS tunnels based on regression analysis[J].ETRI Journal,2021,43(1):40-52.

[17]Nadler A,Aminov A,Shabtai A.Detection of malicious and low throughput data exfiltration over the DNS protocol[J].Computers & Security,2019,80:36-53.

[18]Liu Yong,Gou Xiangnan.Research on application of feature analysis method in DNS tunnel detection[C]//Proc of the 5th Annual International Conference on Information System and Artificial Intelligence.[S.l.]:IOP Publishing,2020:012069.

[19]沈傳鑫,王永杰,熊鑫立.基于圖注意力網(wǎng)絡(luò)的DNS隱蔽信道檢測(cè)[J].信息網(wǎng)絡(luò)安全,2023,23(1):73-83.(Shen Chuanxin,Wang Yongjie,Xiong Xinli.DNS covert channel detection based on graph attention networks[J].Netinfo Security,2023,23(1):73-83.)

[20]Ishikura N,Kondo D,Vassiliades V,et al.DNS tunneling detection by cache-property-aware features[J].IEEE Trans on Network and Service Management,2021,18(2):1203-1217.

[21]Chen Shaojie,Lang Bo,Liu Hongyu,et al.DNS covert channel detection method using the LSTM model[J].Computers & Security,2021,104:102095.

[22]Wang Yue,Zhou Anmin,Liao Shan,et al.A comprehensive survey on DNS tunnel detection[J].Computer Networks,2021,197:108322.

[23]Data exfiltration toolkit[EB/OL].(2016-06-13)[2017-11-03].https://github.com/sensepost/DET.

[24]Dnscat2[EB/OL].(2014)[2018-06-26].https://github.com/iagox86/dnscat2.

[25]Iodine[EB/OL].(2010)[2014-06-16].https://code.kr yo.se/iodine/.

[26]dns2tcp[EB/OL].(2016)[2020-03-07].https://github.com/zf l9/dns2tcp.

[27]TCP-over-DNS[EB/OL].(2008)[2008-07-27].https://analogbit.com/software/tcp-over-dns.

[28]Reverse_DNS_Shell[EB/OL].(2014)[2015-12-11].https://github.com/ahhh/Reverse_DNS_Shell.

[29]DNSExfiltrator[EB/OL].(2017)[2018-04-06].https://github.com/Arno0x/DNSExfiltrator.

[30]DNSlivery[EB/OL].(2018)[2019-02-01].https://github.com/no0be/DNSlivery.

[31]goDoH[EB/OL].(2018)[2022-06-26].https://github.com/sensepost/godoh.

收稿日期:2023-02-06;修回日期:2023-03-17 基金項(xiàng)目:國(guó)家自然科學(xué)基金區(qū)域基金重點(diǎn)項(xiàng)目(U19A2081);中央高?;A(chǔ)研究基金資助項(xiàng)目(2022SCU12116);四川大學(xué)理工科發(fā)展計(jì)劃項(xiàng)目(2020SCUNG129)

作者簡(jiǎn)介:劉陽(yáng)洋(1998-),男,四川成都人,碩士,主要研究方向?yàn)榫W(wǎng)絡(luò)流量識(shí)別、網(wǎng)絡(luò)行為分析;阮樹驊(1966-),女(通信作者),四川成都人,副教授,碩導(dǎo),碩士,主要研究方向?yàn)樵朴?jì)算與大數(shù)據(jù)安全、區(qū)塊鏈安全(ruanshuhua@scu.edu.cn);曾雪梅(1976-),女,四川成都人,工程師,博士,主要研究方向?yàn)榫W(wǎng)絡(luò)流量識(shí)別、網(wǎng)絡(luò)行為分析、 IPv6網(wǎng)絡(luò)安全.

猜你喜歡
行為分析
基于遠(yuǎn)程教育的用戶行為分析研究
東方教育(2016年6期)2017-01-16 20:51:05
基于K?均值與AGNES聚類算法的校園網(wǎng)行為分析系統(tǒng)研究
基于北斗衛(wèi)星導(dǎo)航的罪犯行為分析方法
物理教師課堂教學(xué)板書與媒體呈現(xiàn)行為的分析與策略
基于行為分析的木馬檢測(cè)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
手機(jī)上網(wǎng)用戶行為分析與研究
金融經(jīng)濟(jì)中的金融套利行為分析及若干研究
公開(kāi)課與常態(tài)課學(xué)生學(xué)習(xí)心理和行為的表現(xiàn)分析
考試周刊(2016年60期)2016-08-23 17:14:23
員工不安全行為產(chǎn)生原因分析及控制技術(shù)研究
政府俘獲行為過(guò)程分析及對(duì)抗策略
商(2016年6期)2016-04-20 09:44:12
石狮市| 蕲春县| 临高县| 平陆县| 华亭县| 文昌市| 南汇区| 府谷县| 达拉特旗| 丰原市| 兴化市| 池州市| 平舆县| 兴安县| 荥经县| 富川| 晋州市| 岫岩| 南部县| 万源市| 全州县| 开封县| 泰和县| 高青县| 高雄市| 陆良县| 吉水县| 承德市| 清苑县| 高唐县| 延川县| 玉屏| 星座| 公主岭市| 赫章县| 额尔古纳市| 青河县| 五河县| 镇平县| 金寨县| 武安市|