摘要:隨著互聯(lián)網(wǎng)技術(shù)發(fā)展和企事業(yè)單位數(shù)字化轉(zhuǎn)型進(jìn)程的深入,網(wǎng)絡(luò)成為信息交流、業(yè)務(wù)運(yùn)作乃至國家基礎(chǔ)設(shè)施不可或缺的一部分。網(wǎng)絡(luò)流量異常往往預(yù)示著潛在的網(wǎng)絡(luò)威脅,實(shí)施流量監(jiān)控和檢測是發(fā)現(xiàn)異常行為和抵御攻擊風(fēng)險(xiǎn)的重要手段。但是,常規(guī)流量檢測技術(shù)在應(yīng)對新興的、高度智能化的機(jī)器攻擊時(shí)存在局限性,必須尋求更智能、靈活和高效的技術(shù)方案。本文提出一種面向大型企業(yè)的機(jī)器攻擊檢測技術(shù),通過流量探針技術(shù)破解數(shù)據(jù)采集難題,并進(jìn)一步提取流量的固定屬性和行為屬性進(jìn)行機(jī)器學(xué)習(xí),建立同源攻擊指紋庫以識別同源攻擊設(shè)備,再利用自動(dòng)化模型分析出機(jī)器攻擊流量,以期為大型企業(yè)制定針對機(jī)器攻擊的防御策略提供依據(jù)與指導(dǎo)。
關(guān)鍵詞:機(jī)器攻擊;流量分析;攻擊設(shè)備指紋;機(jī)器學(xué)習(xí)
引言
網(wǎng)絡(luò)技術(shù)快速發(fā)展,網(wǎng)絡(luò)環(huán)境日益復(fù)雜,攻擊手段也層出不窮。機(jī)器人網(wǎng)絡(luò)攻擊,通常被稱為“Bot攻擊”,是一種利用惡意軟件感染和控制大量計(jì)算設(shè)備,并將受控設(shè)備組織成“僵尸網(wǎng)絡(luò)”,進(jìn)而發(fā)起協(xié)同攻擊的技術(shù)手段[1-2]。由于利用自動(dòng)化工具和算法,這種攻擊能發(fā)動(dòng)定制化的攻擊,快速適應(yīng)防御策略,并且因規(guī)模之大、速度之快、變種之多,讓傳統(tǒng)防御手段難以招架[3-4]。
1. 流量探針
針對大型集團(tuán)企業(yè)面對的如何采集流量和日志,以及有效檢測機(jī)器攻擊的技術(shù)難題,通過在網(wǎng)絡(luò)的特定位置部署硬件或軟件的流量探針,在不影響網(wǎng)絡(luò)性能的前提下,實(shí)時(shí)捕獲網(wǎng)絡(luò)數(shù)據(jù)包并解析,提取出元數(shù)據(jù)信息,包括源與目的IP地址、端口號、協(xié)議類型、應(yīng)用層內(nèi)容等,為后續(xù)的流量分析奠定數(shù)據(jù)基礎(chǔ)[5]。這一過程通常伴隨對加密流量的解密處理,確保即使是HTTPS等加密通信也能被有效監(jiān)控。
2. 基于流量和日志分析的機(jī)器攻擊檢測技術(shù)內(nèi)容
在機(jī)器攻擊活動(dòng)中,經(jīng)常是多起攻擊或大量攻擊請求源自同一個(gè)或同一組控制源頭的統(tǒng)一指揮和控制。例如,分布式拒絕服務(wù)攻擊(DDoS),攻擊者通過控制大量被感染的計(jì)算機(jī)(僵尸機(jī))同時(shí)向目標(biāo)服務(wù)器發(fā)送大量請求,造成服務(wù)器資源耗盡,無法響應(yīng)正常用戶的請求;自動(dòng)化漏洞掃描和利用,黑客可能利用自動(dòng)化工具對互聯(lián)網(wǎng)上的大量目標(biāo)進(jìn)行掃描,尋找已知漏洞,并嘗試?yán)眠@些漏洞進(jìn)行入侵[6];垃圾郵件和網(wǎng)絡(luò)釣魚活動(dòng),大規(guī)模的垃圾郵件發(fā)送或網(wǎng)絡(luò)釣魚企圖,雖然通過不同的渠道和賬戶實(shí)施,但策劃和指令發(fā)布往往來源于同一源頭;社交媒體機(jī)器人活動(dòng),在社交媒體平臺上,大量機(jī)器人賬號可能由同一控制者操作,用于傳播虛假信息、輿論引導(dǎo)或進(jìn)行其他形式的社交工程攻擊。
對于這類攻擊的檢測,需要先通過追蹤和分析,確定攻擊流量是否為同一攻擊源或組織發(fā)起,再經(jīng)過智能檢測對攻擊源數(shù)據(jù)進(jìn)一步檢測,判斷是否為機(jī)器攻擊[7]。
2.1 同源設(shè)備指紋提取
同源設(shè)備指紋提取,是指識別出由同一人或同一組織者控制的攻擊源設(shè)備的行為特征,并根據(jù)特征建立設(shè)備指紋庫。攻擊源包括但不限于PC設(shè)備(Windows、Linux、Mac終端設(shè)備)、移動(dòng)設(shè)備(安卓、蘋果手機(jī)或平板)、云端VPS等。根據(jù)設(shè)備指紋信息,建立本地同源威脅設(shè)備指紋庫[8]。本方案的設(shè)備指紋識別不采用挑戰(zhàn)應(yīng)答、注入JS代碼等侵入方式檢測,而是在對流量、日志數(shù)據(jù)進(jìn)行分析的基礎(chǔ)上實(shí)現(xiàn)?;驹砣鐖D1所示。
(1)攻擊日志經(jīng)過流處理,按照時(shí)間窗口進(jìn)行歸并聚合,確定攻擊的攻擊階段。由于攻擊行為的確定通常源于規(guī)則匹配結(jié)果,在檢測過程中可能存在多個(gè)規(guī)則表征同一攻擊行為的情況,如果直接基于匹配到的特征進(jìn)行計(jì)算,會產(chǎn)生大量噪聲,并且導(dǎo)致各階段的行為特征混雜,無法正確表征攻擊者的具體行為模式。因此,為了將分散的攻擊特征收斂到與攻擊者行為模式更相關(guān)的維度,應(yīng)當(dāng)對每一次攻擊進(jìn)行攻擊階段的劃分和識別。
對于上報(bào)的攻擊日志,首先根據(jù)ATTamp;CK特征庫將攻擊行為劃分到對應(yīng)的攻擊分類,然后映射到攻擊鏈模型的不同攻擊階段,包括偵查、入侵、命令控制、橫向移動(dòng)、目的執(zhí)行五個(gè)階段[9],如圖2所示。
(2)通過機(jī)器學(xué)習(xí)聚類算法對流量和日志建立初步特征庫。對不同的攻擊階段提取相同維度的特征可以得到攻擊的特征矩陣。具體在每個(gè)攻擊階段中,分別提取固定屬性和行為屬性作為特征,其中,固定屬性包括固有的地域、運(yùn)營商、網(wǎng)段等,行為屬性包括攻擊時(shí)間間隔、攻擊手法和手段、攻擊組織、流量特征等,然后基于機(jī)器學(xué)習(xí)的聚類算法對流量和日志進(jìn)行處理,建立攻擊者的指紋特征庫[10]。
例如,根據(jù)IP庫確定攻擊者的地域和運(yùn)營商,根據(jù)安全日志的攻擊類型確定攻擊者的常用攻擊類型和手段,結(jié)合威脅情報(bào)確定攻擊組織等。
為避免在執(zhí)行惡意操作時(shí)暴露真實(shí)IP,攻擊者通常同時(shí)或輪流使用從同一代理供應(yīng)商購買的一個(gè)代理或大量代理IP,因此,攻擊者很可能在同一C段和B段中使用多個(gè)代理IP,這也可能導(dǎo)致攻擊IP屬于同一個(gè)城市或國家。
基于UA字段以及流量特征識別攻擊設(shè)備的類型。UA字段是HTTP協(xié)議中的一部分,屬于頭域的組成部分,其中包含攻擊者所使用的瀏覽器類型、操作系統(tǒng)、瀏覽器內(nèi)核等信息的標(biāo)識,同一攻擊者也很可能向UA中嵌入相似的惡意代碼或使用偽造的相似UA,在HTTP協(xié)議頭域rfl用x-via字段記錄代理服務(wù)器使用情況,xFF字段同樣存在于HTTP協(xié)議頭域中,用于獲取訪問用戶的真實(shí)IP,同一攻擊組織在以上攻擊信息中都具有固定性和相似性,這些字段雖然不能直接指征同源的攻擊行為,但具有較高的旁證價(jià)值,都能夠成為對攻擊組織同源性分析的線索。
(3)基于特征庫建立外部設(shè)備同源指紋。針對設(shè)置的同源特征維度(包括地域、運(yùn)營商、攻擊類型、攻擊組織、設(shè)備類型等)對特征庫進(jìn)行交集分析,分析出同源庫,然后同源庫字段對其余字段進(jìn)行聚類即得到外部設(shè)備同源指紋。選擇某個(gè)攻擊者可快速獲取與該攻擊者相關(guān)聯(lián)的同源設(shè)備情況。
2.2 機(jī)器攻擊識別
根據(jù)對同源設(shè)備的日志或流量信息分析建立識別模型,利用識別模型判斷攻擊是否為機(jī)器人攻擊。主要包括以下步驟:流量/日志信息輸入、數(shù)據(jù)過濾篩選、特征提取、按規(guī)則分詞、向量化、基于LSTM算法分析等操作,如圖3所示。
為建立有效的機(jī)器流量識別模型,首先采集攻擊流量和正常流量的Web日志樣本數(shù)據(jù),并采用異常值檢測算法(如IForest)過濾偶發(fā)訪問行為。針對日志的語義結(jié)構(gòu),篩選有用字段并去除無意義字段,通過預(yù)設(shè)規(guī)則對數(shù)據(jù)進(jìn)行標(biāo)記。例如,訪問資源比例過大、HTTP請求無Cookie值、訪問類型單一或異常UA標(biāo)頭等,均可標(biāo)記為機(jī)器流量。進(jìn)一步提取時(shí)間特征和日志信息特征,統(tǒng)計(jì)訪問頻率、錯(cuò)誤比例、返回狀態(tài)碼等內(nèi)容,結(jié)合word2vec對日志字段分詞并向量化處理,為模型提供高質(zhì)量特征輸入。
基于處理后的數(shù)據(jù)樣本,使用長短期記憶神經(jīng)網(wǎng)絡(luò)(LSTM)進(jìn)行模型訓(xùn)練,輸出能夠精準(zhǔn)識別機(jī)器流量的模型。模型部署后,系統(tǒng)對流量進(jìn)行實(shí)時(shí)監(jiān)控,初步篩選后,將日志寫入消息隊(duì)列,通過消息隊(duì)列將日志輸入模型分析,并標(biāo)記機(jī)器流量。對于識別出的惡意流量,可直接拒絕數(shù)據(jù)申請或中斷連接,同時(shí),保存日志供安全策略聯(lián)動(dòng)處置,實(shí)現(xiàn)高效的網(wǎng)絡(luò)安全管理。
結(jié)語
本文主要研究了大型企業(yè)集團(tuán)的多層級網(wǎng)絡(luò)架構(gòu)環(huán)境下,如何更好地采集流量和日志,并檢測機(jī)器攻擊,提出了一種機(jī)器攻擊檢測方法。通過流量探針,該方法從不同的網(wǎng)絡(luò)節(jié)點(diǎn)采集和解析流量及日志數(shù)據(jù)并匯總,利用機(jī)器學(xué)習(xí)建立同源攻擊特征庫,并基于該特征庫識別出攻擊源,進(jìn)而利用人工智能算法檢測攻擊源數(shù)據(jù)是否為機(jī)器流量,能夠有效提高復(fù)雜網(wǎng)絡(luò)環(huán)境下的機(jī)器攻擊檢測效果。
參考文獻(xiàn):
[1]劉仲維.基于機(jī)器學(xué)習(xí)的DDoS攻擊網(wǎng)絡(luò)流量識別方法[J].無線互聯(lián)科技,2024,21(7):109-112.
[2]李永娜,張銳.基于機(jī)器學(xué)習(xí)的網(wǎng)絡(luò)攻擊檢測與防御方法研究[J].信息與電腦(理論版),2024,36(1):177-179.
[3]許云飛.一種基于機(jī)器學(xué)習(xí)的應(yīng)用層DDoS攻擊檢測方法[D].南京:南京郵電大學(xué),2023.
[4]藍(lán)苓倍,張小萍.基于機(jī)器學(xué)習(xí)的DDoS攻擊檢測[J].安徽電氣工程職業(yè)技術(shù)學(xué)院學(xué)報(bào),2021,26(3):114-119.
[5]方友志,譚坤淋.基于機(jī)器學(xué)習(xí)的DDoS攻擊檢測關(guān)鍵技術(shù)研究[J].網(wǎng)絡(luò)安全技術(shù)與應(yīng)用,2021(6):6-7.
[6]王春東,鄭澤霖.基于優(yōu)化的堆疊集成區(qū)塊鏈DDoS攻擊檢測方法[J/OL].計(jì)算機(jī)技術(shù)與發(fā)展,1-9[2024-12-02].https://doi.org/10.20165/j.cnki.ISSN1673-629X.2024.0310.
[7]閆禹,于澗.基于K-Means算法的SDN網(wǎng)絡(luò)DDoS攻擊檢測研究[J].網(wǎng)絡(luò)安全和信息化,2024(11):37-39.
[8]姜舒穎,黃迎春.基于GCN模型的DDoS攻擊檢測技術(shù)研究[J].信息技術(shù)與信息化,2024(10):88-91.
[9]駱軼琪.AI和API快速成長引發(fā)網(wǎng)絡(luò)安全挑戰(zhàn)[N].21世紀(jì)經(jīng)濟(jì)報(bào)道,2024-09-26(10).
[10]劉延華,方文昱,劉西蒙,等.基于聯(lián)邦增量學(xué)習(xí)的SDN環(huán)境下DDoS攻擊檢測模型[J/OL].計(jì)算機(jī)學(xué)報(bào),1-15[2024-12-02].http://kns.cnki.net/kcms/detail/11.1826.TP.20240920.1559.002.html.
作者簡介:王珀,本科,信息系統(tǒng)項(xiàng)目管理師,417265188@qq.com,研究方向:工業(yè)互聯(lián)網(wǎng)安全、工業(yè)控制系統(tǒng)網(wǎng)絡(luò)安全。