原文標(biāo)題:Encrypted Malware Traffic Detection via Graph-based Network Analysis
原文作者:Zhuoqun Fu, Mingxuan Liu, Yue Qin, Jia Zhang, Yuan Zou, Qilei Yin, Qi Li and Haixin Duan原文鏈接:https://dl.acm.org/doi/abs/10.1145/3545948.3545983發(fā)表平臺(tái):RAID, 2022筆記作者:孫漢林@安全學(xué)術(shù)圈主編:黃誠@安全學(xué)術(shù)圈編輯:張貝寧@安全學(xué)術(shù)圈
本文針對(duì)加密與規(guī)避技術(shù)日益復(fù)雜所帶來的惡意流量檢測難題,提出了一種基于圖結(jié)構(gòu)的網(wǎng)絡(luò)行為建模方法——ST-Graph。該方法在融合傳統(tǒng)流量屬性的基礎(chǔ)上,引入圖表示學(xué)習(xí)算法,從空間與時(shí)間兩個(gè)維度對(duì)網(wǎng)絡(luò)行為特征進(jìn)行建模,實(shí)現(xiàn)多維度特征的融合,從而有效提升檢測性能。實(shí)驗(yàn)結(jié)果表明,ST-Graph在兩個(gè)真實(shí)數(shù)據(jù)集上均顯著優(yōu)于現(xiàn)有主流檢測方法,實(shí)現(xiàn)了超過99%的檢測精度與召回率。
本方案由3個(gè)部分組成,即流量預(yù)處理器
、圖表示器
和檢測器
。
ST-Graph通過構(gòu)建異構(gòu)圖關(guān)聯(lián)主機(jī)與服務(wù)器之間的所有網(wǎng)絡(luò)連接,并利用Random Walk[1]算法為每條流生成連接序列,結(jié)合概率模型優(yōu)化邊表示,將每條流以其邊嵌入與流量特征建模;進(jìn)一步,系統(tǒng)將每個(gè)主機(jī)的所有訪問按順序整合,生成綜合其網(wǎng)絡(luò)結(jié)構(gòu)與行為特征的主機(jī)表示。與傳統(tǒng)的圖神經(jīng)網(wǎng)絡(luò)(GNN)或知識(shí)圖譜嵌入(KGE)方法相比,ST-Graph避免了大規(guī)模參數(shù)訓(xùn)練,采用少量迭代和閉式解優(yōu)化方式,有效降低了計(jì)算復(fù)雜度,滿足了實(shí)時(shí)檢測的需求。
ST-Graph構(gòu)建了一個(gè)主機(jī)-服務(wù)器二分圖 ,其中節(jié)點(diǎn)集 和 分別表示內(nèi)部主機(jī)和外部服務(wù)器節(jié)點(diǎn),邊集 表示基于TLS握手的通信連接邊;每條邊附帶時(shí)間順序信息 及流特征屬性 。
為了全面捕獲加密流量中的惡意行為,作者設(shè)計(jì)了三類流屬性:1)基于域名的域名生成算法(Domain Generation Algorithms,DGA)識(shí)別特征(如字符比例、域名長度等);2)來自TLS握手的加密特征(如TLS版本、密碼套件順序等),揭示潛在的弱加密行為;3)基于側(cè)信道的統(tǒng)計(jì)特征(如包長、間隔時(shí)間等),輔助推斷流量行為模式。這些特征共同用于加強(qiáng)對(duì)主機(jī)行為的建模,提升加密流量中惡意通信的檢測能力。具體屬性如上表所示。
邊嵌入(edge embedding)用于將網(wǎng)絡(luò)流表示成數(shù)值向量。作者結(jié)合兩類特征:一是流的屬性特征 ,保留原始流量信息;二是時(shí)空嵌入(spatio-temporal embeddings),反映網(wǎng)絡(luò)交互的空間拓?fù)浜驮L問的時(shí)間順序。
為融合時(shí)空嵌入的時(shí)間和空間特征,作者提出了一種“區(qū)間傾向隨機(jī)游走”(Interval-inclined Random Walk)策略,基于圖中邊的連接關(guān)系和訪問順序進(jìn)行游走,傾向選擇時(shí)間上相近的邊,以捕捉流生成的時(shí)序特性。具體游走時(shí),從當(dāng)前邊的鄰邊中,按照連接順序差(即兩個(gè)邊被同一主機(jī)訪問的順序差)以逆距離加權(quán)概率選擇下一步,且考慮上兩步游走的狀態(tài),通過超參數(shù)p和q控制游走偏向(返回起點(diǎn)或訪問新節(jié)點(diǎn)),兼顧廣度優(yōu)先和深度優(yōu)先搜索。通過多次隨機(jī)游走收集鄰邊集,再利用點(diǎn)積相似度最大化鄰邊與目標(biāo)邊的相似性,構(gòu)建時(shí)空嵌入向量。采用負(fù)采樣和隨機(jī)梯度上升優(yōu)化嵌入向量。最終將流特征和時(shí)空嵌入拼接并歸一化,得到完整的邊嵌入表示。該方法高效且兼顧了流的內(nèi)容和行為時(shí)序特征,適用于實(shí)時(shí)檢測場景。
本文提出了一種基于流的時(shí)空特征和訪問重要性加權(quán)的信息傳播方法,用于生成主機(jī)的向量表示,以輔助檢測感染主機(jī)。具體來說,首先通過流的時(shí)空嵌入捕捉網(wǎng)絡(luò)交互的空間特征和訪問順序的時(shí)間特征,形成流的向量表示。然后,針對(duì)每個(gè)主機(jī),將其相關(guān)聯(lián)的流信息進(jìn)行聚合。在聚合過程中,考慮到主機(jī)訪問的服務(wù)器中存在大量公共服務(wù),部分服務(wù)信息對(duì)表征主機(jī)行為貢獻(xiàn)有限,因此通過訪問頻率和訪問順序兩方面對(duì)服務(wù)器重要性進(jìn)行排序和加權(quán),強(qiáng)調(diào)那些既常被訪問又較早訪問的服務(wù)器流。接著,將流的重要性與主機(jī)向量和流嵌入之間的相似度結(jié)合,計(jì)算主機(jī)與流之間的相關(guān)性得分。通過最大化所有相關(guān)流的聯(lián)合相關(guān)性得分,利用向量歸一化約束優(yōu)化主機(jī)的表示向量,使其能夠更準(zhǔn)確地反映主機(jī)的訪問行為特征。
最終,將主機(jī)向量輸入到檢測器,以判斷主機(jī)是否被感染。
實(shí)驗(yàn)涵蓋兩個(gè)任務(wù):惡意軟件檢測和惡意軟件家族分類。第一個(gè)任務(wù)用于區(qū)分惡意網(wǎng)絡(luò)行為主機(jī)和良性主機(jī),第二個(gè)任務(wù)則進(jìn)一步識(shí)別惡意軟件所屬的具體家族。惡意軟件家族指的是一組具有相似攻擊手法且代碼存在較大重疊的相關(guān)程序,將惡意軟件歸類為家族有助于覆蓋其隨時(shí)間變化的變種,同時(shí)保留家族的特征。
本文使用了公開的AndMal2019數(shù)據(jù)集和自建的EncMal2021數(shù)據(jù)集,前者包含數(shù)千個(gè)安卓應(yīng)用產(chǎn)生的惡意與良性流量,后者基于校園網(wǎng)絡(luò)和沙箱環(huán)境采集了超過十萬主機(jī)的流量數(shù)據(jù),其中4.5%為惡意流量。惡意樣本來源于多個(gè)知名惡意軟件家族,良性流量通過Alexa排名過濾和沙箱良性樣本緩解采集偏差。數(shù)據(jù)集在訓(xùn)練和測試時(shí)進(jìn)行了合理劃分,確保部分測試數(shù)據(jù)包含新的惡意家族以驗(yàn)證模型泛化能力。
任務(wù)一:檢測主機(jī)是否被感染
任務(wù)二:主機(jī)被哪種家族感染
[1] Fouss, Francois, et al. “Random-walk computation of similarities between nodes of a graph with application to collaborative recommendation.” IEEE Transactions on knowledge and data engineering 19.3 (2007): 355-369.
安全學(xué)術(shù)圈招募隊(duì)友-ing
有興趣加入學(xué)術(shù)圈的請(qǐng)聯(lián)系?secdr#qq.com