劉雪花,丁麗萍,鄭 濤,吳敬征,李彥峰
1(中國(guó)科學(xué)院 軟件研究所 并行軟件與計(jì)算科學(xué)實(shí)驗(yàn)室,北京 100190)
2(中國(guó)科學(xué)院大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,北京 100049)
3(廣州中國(guó)科學(xué)院軟件應(yīng)用技術(shù)研究所 電子數(shù)據(jù)取證實(shí)驗(yàn)室,廣東 廣州 511458)
4(廣東中科實(shí)數(shù)科技有限公司,廣東 廣州 511458)
5(聯(lián)通華盛通信有限公司,北京 100005)
6(中國(guó)科學(xué)院 軟件研究所 智能軟件研究中心,北京 100190)
攻擊者在實(shí)施網(wǎng)絡(luò)攻擊時(shí),常采用各種技術(shù)手段隱藏自己以對(duì)抗追蹤,如采用虛假I(mǎi)P 地址、網(wǎng)絡(luò)跳板、僵尸網(wǎng)絡(luò)、匿名網(wǎng)絡(luò)等技術(shù).網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)[1]能夠有效應(yīng)對(duì)攻擊者的隱藏手段,定位真實(shí)的攻擊源頭,以便及時(shí)阻斷網(wǎng)絡(luò)攻擊.網(wǎng)絡(luò)取證是一種對(duì)網(wǎng)絡(luò)攻擊的事后追責(zé)手段,通過(guò)對(duì)網(wǎng)絡(luò)流量等進(jìn)行取證分析,將生成的電子數(shù)據(jù)證據(jù)用于訴訟活動(dòng),從而實(shí)現(xiàn)對(duì)各類(lèi)網(wǎng)絡(luò)違法犯罪活動(dòng)的事后追責(zé)[2,3].網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)與網(wǎng)絡(luò)取證技術(shù)沿著不同路線獨(dú)立發(fā)展.定位網(wǎng)絡(luò)攻擊事件源頭并進(jìn)行有效電子數(shù)據(jù)證據(jù)的收集,是網(wǎng)絡(luò)取證的任務(wù)之一[2],定位網(wǎng)絡(luò)攻擊事件源頭需要使用網(wǎng)絡(luò)攻擊追蹤溯源技術(shù),因此,網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)與網(wǎng)絡(luò)取證技術(shù)有著密切的關(guān)聯(lián)性.然而,現(xiàn)有的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)研究工作主要從防御的角度開(kāi)展,較少考慮網(wǎng)絡(luò)取證的要求,導(dǎo)致其產(chǎn)生的大量有價(jià)值的數(shù)據(jù)無(wú)法成為有效電子數(shù)據(jù)證據(jù)在訴訟中被采用,無(wú)法充分發(fā)揮其在網(wǎng)絡(luò)取證方面的作用.
已有文獻(xiàn)[1,4-6]分別從不同的角度對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行總結(jié)歸納:文獻(xiàn)[1,4]從4 個(gè)層面對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行分析,分別是攻擊主機(jī)的追蹤溯源、攻擊控制主機(jī)的追蹤溯源、攻擊者的追蹤溯源、攻擊組織機(jī)構(gòu)的追蹤溯源;文獻(xiàn)[5]則根據(jù)攻擊者采取的不同隱藏技術(shù)對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行分析,分別是虛假I(mǎi)P 的追蹤溯源、僵尸網(wǎng)絡(luò)的追蹤溯源、匿名網(wǎng)絡(luò)的追蹤溯源、跳板的追蹤溯源和局域網(wǎng)的追蹤溯源;文獻(xiàn)[6]則基于分布式拒絕服務(wù)攻擊(distributed denial of service,簡(jiǎn)稱(chēng)DDoS)場(chǎng)景對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行分析.然而,這些文獻(xiàn)較缺乏從網(wǎng)絡(luò)取證的角度對(duì)現(xiàn)有的網(wǎng)絡(luò)追蹤溯源技術(shù)進(jìn)行深入的思考與分析,且這些文獻(xiàn)沒(méi)有覆蓋較新的基于軟件定義網(wǎng)絡(luò)(software defined network,簡(jiǎn)稱(chēng)SDN)的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù).
為此,本文將總結(jié)分析現(xiàn)有的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù),并從網(wǎng)絡(luò)取證的角度對(duì)現(xiàn)有的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)重新加以思考.本文的主要貢獻(xiàn)如下:
(1)提出了一套取證能力評(píng)估指標(biāo),用于評(píng)估網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的取證能力;
(2)總結(jié)分析了現(xiàn)有的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù),包括較新的基于SDN 的網(wǎng)絡(luò)攻擊日志追蹤溯源技術(shù);
(3)基于取證能力評(píng)估指標(biāo)分析了現(xiàn)有網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的取證能力,并針對(duì)不足之處給出了改進(jìn)建議;
(4)提出了針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型,通過(guò)結(jié)合網(wǎng)絡(luò)取證過(guò)程與網(wǎng)絡(luò)攻擊追蹤溯源技術(shù),進(jìn)一步提高整體取證能力.
本文第1 節(jié)給出網(wǎng)絡(luò)攻擊追蹤溯源和網(wǎng)絡(luò)取證相關(guān)的定義.第2 節(jié)提出一套取證能力評(píng)估指標(biāo),用于后文分析網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的取證能力.第3 節(jié)從網(wǎng)絡(luò)取證角度對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行分析,首先給出技術(shù)分類(lèi)并劃定本文的分析范圍,然后依次對(duì)基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)、基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)、基于SDN 的日志追蹤溯源技術(shù)和混合追蹤溯源技術(shù)進(jìn)行分析,分析其發(fā)展現(xiàn)狀、優(yōu)缺點(diǎn)和取證能力,并給出取證能力的改進(jìn)建議.第4 節(jié)分析現(xiàn)有網(wǎng)絡(luò)取證過(guò)程模型在網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景下的不足,并提出針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型.第5 節(jié)對(duì)本文的研究工作進(jìn)行總結(jié),并對(duì)未來(lái)值得關(guān)注的研究方向進(jìn)行初步探討.
定義1(網(wǎng)絡(luò)攻擊追蹤溯源)[1].通過(guò)網(wǎng)絡(luò)攻擊的中間介質(zhì)還原攻擊路徑,以確定網(wǎng)絡(luò)攻擊者的身份或位置,即網(wǎng)絡(luò)攻擊源頭.確定了網(wǎng)絡(luò)攻擊源頭,使得防御方能及時(shí)地制定和實(shí)施有針對(duì)性的防御措施,提高網(wǎng)絡(luò)防御的主動(dòng)性和有效性.
定義2(網(wǎng)絡(luò)攻擊追蹤溯源問(wèn)題模型)[7].讓Ri1,Ri2,…,Rin代表攻擊者Ai和受害者V之間的有序路由器列表,這個(gè)有序路由器列表就是Ai的攻擊路徑.將參與攻擊數(shù)據(jù)包轉(zhuǎn)發(fā)并最終傳遞給受害者的路由器定義為攻擊路由器,對(duì)于攻擊路徑上的任何路由器Rij,將所有在路由器Rij和受害者之間的路由器稱(chēng)為Rij的前置列表,而將在路由器Rij和攻擊者之間的路由器稱(chēng)為Rij的后繼列表.攻擊追蹤溯源問(wèn)題的目的是,確定直接連接到Ai的攻擊路由器(即圖1 所示的路由器Ri1,其后繼列表為空).
Fig.1 Sequence of routers between the attacker and the victim[7]圖1 攻擊者到受害者之間的路由器序列[7]
定義3(電子數(shù)據(jù)取證)[8].電子數(shù)據(jù)取證是指科學(xué)地運(yùn)用提取和證明方法,對(duì)于從電子數(shù)據(jù)源提取的電子數(shù)據(jù)證據(jù)進(jìn)行保護(hù)、收集、驗(yàn)證、鑒定、分析、解釋、存檔和出示,以有助于進(jìn)一步的犯罪事件重構(gòu)或者幫助識(shí)別某些與計(jì)劃操作無(wú)關(guān)的非授權(quán)性活動(dòng).
定義4(網(wǎng)絡(luò)取證)[8].網(wǎng)絡(luò)取證是電子數(shù)據(jù)取證的一個(gè)分支學(xué)科,特指通過(guò)檢測(cè)、收集和分析計(jì)算機(jī)網(wǎng)絡(luò)流量等電子數(shù)據(jù)來(lái)實(shí)現(xiàn)合法證據(jù)的收集和入侵檢測(cè).
要發(fā)揮網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)在網(wǎng)絡(luò)取證方面的價(jià)值,需重點(diǎn)考慮其產(chǎn)生的電子數(shù)據(jù)證據(jù)能否被用于網(wǎng)絡(luò)取證,以便對(duì)攻擊源頭進(jìn)行事后追責(zé).為此,本文從電子數(shù)據(jù)證據(jù)的角度提出一套取證能力評(píng)估指標(biāo),用于評(píng)估網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的網(wǎng)絡(luò)取證能力.
一方面,在衡量電子數(shù)據(jù)證據(jù)能否在訴訟程序或其他證明活動(dòng)中被使用時(shí),常使用電子數(shù)據(jù)證據(jù)可采性標(biāo)準(zhǔn)和證明力標(biāo)準(zhǔn).電子數(shù)據(jù)證據(jù)具備了可采性,且有較強(qiáng)的證明力,法官才會(huì)在審判中予以采用[9].電子數(shù)據(jù)證據(jù)可采性標(biāo)準(zhǔn)和證明力標(biāo)準(zhǔn)是兩個(gè)定性標(biāo)準(zhǔn),其基本概念如下[9].
1)電子數(shù)據(jù)證據(jù)的可采性標(biāo)準(zhǔn)包括關(guān)聯(lián)性、合法性與真實(shí)性.
(1)關(guān)聯(lián)性是指證據(jù)與要證明的案件事實(shí)或其他爭(zhēng)議事實(shí)具有直接聯(lián)系;
(2)合法性是指證據(jù)的主體、形式及收集程序或提取方法必須符合法律的有關(guān)規(guī)定;
(3)真實(shí)性是指證據(jù)必須至少在形式或表面上是真實(shí)的;
2)電子數(shù)據(jù)證據(jù)的證明力標(biāo)準(zhǔn)包括可靠性和完整性.
(1)可靠性是衡量電子數(shù)據(jù)證據(jù)真實(shí)程度的指標(biāo),一般可以通過(guò)細(xì)化審查的各個(gè)環(huán)節(jié)予以評(píng)估,如收集環(huán)節(jié)的可靠性、傳輸環(huán)節(jié)的可靠性、存儲(chǔ)環(huán)節(jié)的可靠性等等;
(2)完整性一般是指在電子數(shù)據(jù)從提取到最終出示的過(guò)程中,其內(nèi)容始終保持完整和未予改動(dòng).
另一方面,基于傳統(tǒng)的證據(jù)理論,往往通過(guò)事后的調(diào)查取證來(lái)還原案件真相.因而,事后取證能力是一項(xiàng)衡量取證技術(shù)的基本標(biāo)準(zhǔn).
事后取證是指在系統(tǒng)被攻擊或者犯罪行為發(fā)生后,取證調(diào)查人員對(duì)可疑計(jì)算機(jī)開(kāi)展諸如恢復(fù)數(shù)據(jù)、獲取數(shù)據(jù)、分析鑒定等調(diào)查工作,收集所有可能獲取的數(shù)據(jù)來(lái)進(jìn)行事件重構(gòu),以確認(rèn)犯罪行為實(shí)施的時(shí)間、地點(diǎn)和方式[10].由事后取證的定義可知:只有電子數(shù)據(jù)證據(jù)存儲(chǔ)在非易失性存儲(chǔ)器上,并在安全事件發(fā)生后依然存在,才能支持事后取證,而有些電子數(shù)據(jù)證據(jù),如網(wǎng)絡(luò)數(shù)據(jù)報(bào)文,隨著安全事件的結(jié)束就會(huì)滅失,無(wú)法支持事后取證.因此,電子數(shù)據(jù)證據(jù)的非易失性對(duì)事后取證至關(guān)重要.
為此,本文基于以上兩項(xiàng)標(biāo)準(zhǔn)的5 個(gè)方面和非易失性能力,提出一套六維的取證能力評(píng)估指標(biāo),其取值范圍和衡量標(biāo)準(zhǔn)見(jiàn)表1.
Table 1 Forensic capacity metrics表1 取證能力評(píng)估指標(biāo)
本文在文獻(xiàn)[1]的基礎(chǔ)上,將網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)分為8 類(lèi).
(1)基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù):通過(guò)使用路由器、主機(jī)等設(shè)備,對(duì)網(wǎng)絡(luò)中傳播的數(shù)據(jù)流進(jìn)行存儲(chǔ)記錄,存儲(chǔ)記錄不必記錄完整的數(shù)據(jù)包信息,可以只記錄一些關(guān)鍵信息,并通過(guò)事后對(duì)這些日志信息進(jìn)行查詢(xún)與分析,恢復(fù)出攻擊路徑;
(2)基于路由器輸入調(diào)試的追蹤溯源技術(shù):利用路由器的調(diào)試功能進(jìn)行特征匹配,如果匹配成功,則該路由器在攻擊路徑上.一般通過(guò)從被攻擊端開(kāi)始回溯攻擊路徑;
(3)基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù):將路徑信息進(jìn)行編碼后填充在網(wǎng)絡(luò)數(shù)據(jù)包的特定字段,跟隨網(wǎng)絡(luò)數(shù)據(jù)包在網(wǎng)絡(luò)中傳播,最后在被攻擊端收集這些信息,通過(guò)特定的算法恢復(fù)出攻擊路徑;
(4)基于單獨(dú)發(fā)送溯源信息的追蹤溯源技術(shù):路由器主動(dòng)向轉(zhuǎn)發(fā)的數(shù)據(jù)包目的地址發(fā)送ICMP(Internet control message protocol)報(bào)文,用于告知該路由器在該數(shù)據(jù)包的傳播路徑之上;
(5)基于SDN 的日志追蹤溯源技術(shù):將SDN 網(wǎng)絡(luò)中的流相關(guān)信息以日志或者中間文件的形式記錄在控制層或者單獨(dú)的溯源取證服務(wù)器,并根據(jù)日志或者中間文件重構(gòu)攻擊路徑;
(6)基于SDN 的路由器輸入調(diào)試追蹤溯源技術(shù):通過(guò)靈活控制SDN 路由器調(diào)試功能進(jìn)行特征匹配,恢復(fù)攻擊路徑;
(7)基于威脅情報(bào)的追蹤溯源技術(shù):通過(guò)威脅情報(bào)信息中的僵尸網(wǎng)絡(luò)、網(wǎng)絡(luò)跳板、匿名網(wǎng)絡(luò)和隱蔽信道等信息進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)控制主機(jī)追蹤溯源,并可通過(guò)威脅情報(bào)中黑客及其組織的特征信息進(jìn)行關(guān)聯(lián),實(shí)現(xiàn)攻擊者識(shí)別;
(8)混合追蹤溯源技術(shù):多種技術(shù)結(jié)合的追蹤溯源技術(shù),常與采用存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)和基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)這兩種技術(shù)相結(jié)合,達(dá)到取長(zhǎng)補(bǔ)短的目的.
獲取有效的電子數(shù)據(jù)證據(jù)是網(wǎng)絡(luò)取證的主要目標(biāo)之一,而日志類(lèi)型的電子數(shù)據(jù)是在取證實(shí)務(wù)中最常使用的一類(lèi)電子數(shù)據(jù)證據(jù),具有較好的可解釋性和實(shí)用性.本文分析涉及日志記錄的追蹤溯源技術(shù),包括基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)、基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)、基于SDN 的日志追蹤溯源技術(shù)以及混合追蹤溯源技術(shù)這4 類(lèi).
3.2.1 發(fā)展現(xiàn)狀
基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)可分為日志記錄和攻擊路徑重構(gòu)兩個(gè)過(guò)程,日志記錄在網(wǎng)絡(luò)中的路由器上進(jìn)行,通過(guò)路由器存儲(chǔ)網(wǎng)絡(luò)日志信息,如流經(jīng)該路由器的數(shù)據(jù)包摘要、簽名甚至是整個(gè)完整的數(shù)據(jù)包.攻擊路徑重構(gòu)從被攻擊端開(kāi)始回溯上游轉(zhuǎn)發(fā)設(shè)備,從其日志中查找是否有特定的攻擊數(shù)據(jù)包的日志記錄,如果有,則認(rèn)為該轉(zhuǎn)發(fā)設(shè)備在攻擊路徑之上.如此,直至攻擊端,從而得到攻擊路徑.
基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)經(jīng)歷了一段較長(zhǎng)時(shí)間的發(fā)展.最早由Matsuda 等人[11]提出基于日志的IP 追蹤方法,他們?cè)谵D(zhuǎn)發(fā)設(shè)備中記錄每個(gè)數(shù)據(jù)包的部分信息,并使用data-link 識(shí)別機(jī)制來(lái)進(jìn)行數(shù)據(jù)包查詢(xún),以回溯攻擊路徑,每個(gè)數(shù)據(jù)包大約需要使用60bytes 的存儲(chǔ)空間,導(dǎo)致轉(zhuǎn)發(fā)設(shè)備的存儲(chǔ)開(kāi)銷(xiāo)過(guò)大.一直到基于數(shù)據(jù)包hash 值日志記錄方法的提出,才為基于日志的追蹤溯源方法帶來(lái)了應(yīng)用的可能.首先,hash 值遠(yuǎn)小于原始數(shù)據(jù)大小,可極大地減少存儲(chǔ)開(kāi)銷(xiāo);其次,由于hash 計(jì)算是不可逆的,不會(huì)泄露數(shù)據(jù)本身;再次,hash 值可用于確定數(shù)據(jù)的唯一性,本身更容易得到法律的認(rèn)可,其在取證領(lǐng)域有著相當(dāng)廣泛的應(yīng)用.
基于數(shù)據(jù)包hash 值日志記錄方法最經(jīng)典的方法是由文獻(xiàn)[12,13]首次提出的源路徑隔離引擎(source path isolation engine,簡(jiǎn)稱(chēng)SPIE),該方法將數(shù)據(jù)包信息用IP 報(bào)文的摘要,也就是hash 值來(lái)表示,并采用一種高效的數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)布魯姆過(guò)濾器(Bloom filter,簡(jiǎn)稱(chēng)BF)[14]來(lái)存儲(chǔ)數(shù)據(jù)包摘要,極大地降低了路由器的存儲(chǔ)開(kāi)銷(xiāo).BF 可將數(shù)據(jù)包摘要映射到位圖上,并以hash 值為索引快速查找位圖上對(duì)應(yīng)的元素,如果為1,則表示該數(shù)據(jù)包經(jīng)過(guò)該路由器.在重構(gòu)攻擊路徑階段,通過(guò)逐跳查詢(xún)路由器的BF,能夠快速定位攻擊路徑.其中,IP 數(shù)據(jù)包的hash 值計(jì)算僅取數(shù)據(jù)包的前28 個(gè)字節(jié),如圖2 中灰色部分所示,其覆蓋了IP 數(shù)據(jù)包包頭有效字段和載荷前8 個(gè)字節(jié).文獻(xiàn)[12,13]的作者們認(rèn)為,該28 個(gè)字節(jié)足以區(qū)分不同的數(shù)據(jù)包.該方法降低了路由器的存儲(chǔ)開(kāi)銷(xiāo),提高了可記錄的數(shù)據(jù)量,存儲(chǔ)開(kāi)銷(xiāo)占用每單位時(shí)間約0.5%的鏈路容量,且支持基于單數(shù)據(jù)包的追蹤溯源.
Fig.2 IP packet header field used to compute the IP packet digest圖2 用于計(jì)算IP 數(shù)據(jù)包摘要的IP 包頭字段
但是,SPIE 方法依然存在如下諸多不足[12,13]:(1)因?yàn)锽F 中不可避免的hash 沖突,導(dǎo)致SPIE 存在一定的錯(cuò)誤率;(2)SPIE 方法的存儲(chǔ)開(kāi)銷(xiāo)依然過(guò)大,無(wú)法適用于大規(guī)模、高速網(wǎng)絡(luò)環(huán)境;(3)SPIE 方法不支持IPv6 協(xié)議;(4)SPIE 方法不適用于跨自治域的網(wǎng)絡(luò)環(huán)境,且對(duì)跳板機(jī)、僵尸網(wǎng)絡(luò)等攻擊無(wú)法追蹤到攻擊源頭.學(xué)者們針對(duì)這些不足提出多種改進(jìn)方法.
(1)針對(duì)SPIE 錯(cuò)誤率較高的問(wèn)題,文獻(xiàn)[15]在SPIE 的基礎(chǔ)上提出一種網(wǎng)絡(luò)拓?fù)涓兄膯伟麵P 溯源系統(tǒng),通過(guò)利用路由器的本地拓?fù)湫畔?可以減少不必要的查詢(xún),從而極大地降低了錯(cuò)誤率.并且,為了克服使用BF 很難事先確定最優(yōu)控制參數(shù)的難題,設(shè)計(jì)了一個(gè)k-adaptive 機(jī)制,可以自動(dòng)地調(diào)整最優(yōu)控制參數(shù),從而進(jìn)一步降低錯(cuò)誤率.文獻(xiàn)[16,17]在SPIE 提出的基于數(shù)據(jù)包28 個(gè)字節(jié)的數(shù)據(jù)包信息的基礎(chǔ)上增加了TTL(time to live)字段.根據(jù)TTL 信息,可以有效地減少查詢(xún)需求,從而提高攻擊路徑圖的構(gòu)建效率,降低錯(cuò)誤率.而文獻(xiàn)[18]則提出了基于IP 數(shù)據(jù)包包頭的細(xì)粒度hash 值和基于網(wǎng)絡(luò)數(shù)據(jù)流的粗粒度hash 值這兩種數(shù)據(jù)包摘要計(jì)算方法,在查詢(xún)時(shí),通過(guò)雙重驗(yàn)證來(lái)降低錯(cuò)誤率.文獻(xiàn)[19]則采用雙hash技術(shù),使用兩種不同的hash 函數(shù)來(lái)計(jì)算IP 數(shù)據(jù)包摘要,在查詢(xún)時(shí),通過(guò)雙重驗(yàn)證來(lái)降低錯(cuò)誤率.文獻(xiàn)[20,21]則提出通過(guò)路由器記錄路徑信息而非數(shù)據(jù)包信息來(lái)降低日志存儲(chǔ)開(kāi)銷(xiāo),并采用兩級(jí)hash 值,將路由器的存儲(chǔ)開(kāi)銷(xiāo)變成固定不變的,從而消除了錯(cuò)誤率;
(2)針對(duì)SPIE 存儲(chǔ)開(kāi)銷(xiāo)過(guò)高的問(wèn)題,文獻(xiàn)[18]提出了基于網(wǎng)絡(luò)流的追蹤溯源系統(tǒng),一條網(wǎng)絡(luò)流一般通過(guò)源地址、目的地址、協(xié)議、源端口和目的端口來(lái)表示.與SPIE 不同,該方法計(jì)算流的hash 值作為摘要,同一個(gè)網(wǎng)絡(luò)流中的數(shù)據(jù)包對(duì)應(yīng)同一個(gè)hash 值,從而減少了需要記錄的信息,存儲(chǔ)開(kāi)銷(xiāo)相比SPIE 方法降低了1~2 個(gè)數(shù)量級(jí).但卻只能進(jìn)行網(wǎng)絡(luò)流級(jí)別的溯源,犧牲了依據(jù)單個(gè)攻擊包的溯源能力.文獻(xiàn)[16,17]為了有效利用存儲(chǔ)空間,提出一種動(dòng)態(tài)分頁(yè)方法將BF 分頁(yè)存儲(chǔ)到輔助內(nèi)存.該方法將接收允許的最大容量因子作為參數(shù),只有當(dāng)達(dá)到這個(gè)限制時(shí)才會(huì)發(fā)生分頁(yè).因此,BF 在主存中的停留時(shí)間是可變的,在網(wǎng)絡(luò)流量較低時(shí)可能較長(zhǎng),在處理更多流量時(shí)可能較短,這種動(dòng)態(tài)分頁(yè)方法有效降低了BF的存儲(chǔ)開(kāi)銷(xiāo).文獻(xiàn)[6,20-23]則通過(guò)記錄數(shù)據(jù)包的路徑信息來(lái)降低存儲(chǔ)開(kāi)銷(xiāo),同時(shí)也降低了計(jì)算開(kāi)銷(xiāo),提高了正確率.文獻(xiàn)[24]提出了IP 追蹤協(xié)議,通過(guò)定制一個(gè)Sinkhole 路由器,在該路由器上將流經(jīng)的數(shù)據(jù)包通過(guò)hash 算法進(jìn)行壓縮并存入hash 表中用于溯源分析,并進(jìn)一步對(duì)hash 表進(jìn)行定期壓縮,將壓縮的hash 表轉(zhuǎn)存至專(zhuān)門(mén)的數(shù)據(jù)服務(wù)器中,從而解決路由器存儲(chǔ)能力有限的問(wèn)題;
(3)針對(duì)SPIE 不支持IPv6 協(xié)議的問(wèn)題,文獻(xiàn)[19,25]通過(guò)對(duì)比IPv6 和IPv4 的報(bào)文結(jié)構(gòu),針對(duì)IPv6 協(xié)議提出改進(jìn)的SPIE-IPv6 追蹤溯源方法,在計(jì)算IPv6 數(shù)據(jù)包摘要時(shí),包含數(shù)據(jù)包頭、所有的擴(kuò)展字段以及載荷的前20 個(gè)字節(jié),以此來(lái)區(qū)分各個(gè)數(shù)據(jù)包;
(4)針對(duì)SPIE 適用性較差的問(wèn)題,學(xué)者們根據(jù)不同的場(chǎng)景提出了改進(jìn)方法.在跨自治域追蹤溯源場(chǎng)景下,需要上級(jí)互聯(lián)網(wǎng)服務(wù)提供商(Internet service provider,簡(jiǎn)稱(chēng)ISP)的配合.文獻(xiàn)[26]針對(duì)自治域的IP 追蹤溯源問(wèn)題,提出了改進(jìn)的SPIE 方法,除了記錄數(shù)據(jù)包信息以外,還需要記錄數(shù)據(jù)包來(lái)自的自治域信息,以利于后續(xù)的跨域追蹤溯源.但是ISP 出于網(wǎng)絡(luò)數(shù)據(jù)隱私和網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)等機(jī)密信息等因素的考量,往往并不愿意予以配合,于是,文獻(xiàn)[27]提出一種跨自治域的追蹤溯源方法——LDPM(logging and deterministic packet marking).該方法結(jié)合使用確定包標(biāo)記與包記錄方法,使用轉(zhuǎn)發(fā)設(shè)備編號(hào)和自治域編號(hào)來(lái)表示路徑信息,不會(huì)泄露轉(zhuǎn)發(fā)設(shè)備的IP 地址,從而有效地保護(hù)了網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)等敏感信息不外泄.實(shí)際網(wǎng)絡(luò)攻擊中,攻擊者常常使用跳板來(lái)隱藏自己的行蹤,因而需要跨過(guò)跳板機(jī)進(jìn)行追蹤溯源.在此場(chǎng)景下,前述追蹤溯源技術(shù)只能追蹤到末端跳板機(jī),無(wú)法揭露真正的攻擊者.文獻(xiàn)[28]針對(duì)這一情況,提出一種基于SPIE 的擴(kuò)展架構(gòu),通過(guò)在SPIE 的基礎(chǔ)上融合跳板機(jī)檢測(cè)技術(shù),跳板機(jī)檢測(cè)通過(guò)關(guān)聯(lián)分析找到經(jīng)過(guò)跳板機(jī)的成對(duì)的網(wǎng)絡(luò)流,從而將追蹤溯源以跳板機(jī)為線分段溯源并連接起來(lái),最終實(shí)現(xiàn)多跳板機(jī)的網(wǎng)絡(luò)攻擊追蹤溯源.針對(duì)僵尸網(wǎng)絡(luò)追蹤溯源的情況,文獻(xiàn)[29]提出一種基于DNS(domain name system)日志的僵尸網(wǎng)絡(luò)追蹤溯源方法,因?yàn)楹芏嗬媒┦W(wǎng)絡(luò)的攻擊在攻擊開(kāi)始時(shí)會(huì)通過(guò)全稱(chēng)域名服務(wù)器查詢(xún)受害主機(jī)的IP 地址,會(huì)在域名服務(wù)器上留下相應(yīng)的查詢(xún)?nèi)罩?通過(guò)分析DNS 日志,從目標(biāo)到源進(jìn)行檢查,便能追蹤到被感染的僵尸機(jī)IP 地址.
3.2.2 優(yōu)點(diǎn)分析
(1)與傳統(tǒng)的網(wǎng)絡(luò)協(xié)議和架構(gòu)兼容,能夠廣泛應(yīng)用于多種網(wǎng)絡(luò)環(huán)境中;并且,現(xiàn)有的網(wǎng)絡(luò)安全系統(tǒng)很容易支持日志查詢(xún),從而實(shí)現(xiàn)網(wǎng)絡(luò)攻擊的追蹤溯源;
(2)支持事后追蹤溯源,因?yàn)槿罩拘畔⒈粌?chǔ)存下來(lái),即使攻擊在實(shí)施追蹤溯源之前已經(jīng)結(jié)束,也可以通過(guò)日志信息開(kāi)展追蹤溯源;
(3)支持基于單個(gè)數(shù)據(jù)包的追蹤溯源,只要捕獲到一個(gè)攻擊數(shù)據(jù)包就能實(shí)現(xiàn)追蹤溯源,極大地降低了追蹤溯源的難度,因只需對(duì)單個(gè)數(shù)據(jù)包進(jìn)行查詢(xún)操作,帶來(lái)的網(wǎng)絡(luò)通信開(kāi)銷(xiāo)很小.
3.2.3 缺點(diǎn)分析
(1)大部分方法的存儲(chǔ)開(kāi)銷(xiāo)和計(jì)算開(kāi)銷(xiāo)依然較大,尤其是在高速網(wǎng)絡(luò)環(huán)境中部署該應(yīng)用,會(huì)造成成本的急劇增加;
(2)網(wǎng)絡(luò)攻擊很多都是跨自治域的,需要ISP 協(xié)助溯源取證.但是,由于大部分方法并未考慮信息保護(hù)問(wèn)題,導(dǎo)致ISP 會(huì)因隱私泄露、網(wǎng)絡(luò)拓?fù)湫孤兜蕊L(fēng)險(xiǎn)擔(dān)憂(yōu)而不愿意配合;
(3)由于路由器存儲(chǔ)能力有限,不能無(wú)限地存儲(chǔ)流經(jīng)的數(shù)據(jù)包信息,當(dāng)達(dá)到存儲(chǔ)上限時(shí)會(huì)刷新日志記錄,沖掉之前的日志記錄,因此,追蹤溯源具有時(shí)限性;
(4)日志記錄存在安全隱患,如果系統(tǒng)或者設(shè)備被攻擊者控制,攻擊者可以任意刪除或者篡改日志而導(dǎo)致這些電子數(shù)據(jù)失去真實(shí)性,而這是攻擊者隱藏自己入侵蹤跡時(shí)使用的常規(guī)手段.
3.2.4 取證能力分析
基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)產(chǎn)生的特有電子數(shù)據(jù)證據(jù)是其記錄在路由器上的攻擊路徑相關(guān)的日志信息,這類(lèi)方法的取證能力見(jiàn)表2.
(1)支持關(guān)聯(lián)性.日志信息記錄了攻擊包的路徑相關(guān)信息,與要證明的網(wǎng)絡(luò)攻擊源有直接聯(lián)系;
(2)無(wú)需考慮合法性.網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)是網(wǎng)絡(luò)取證過(guò)程中取證分析活動(dòng)中用到的具體技術(shù),單獨(dú)依靠某項(xiàng)具體的技術(shù)是無(wú)法達(dá)到合法性要求的,過(guò)程的合法性才是證據(jù)的可采性審查的關(guān)鍵,這就要求結(jié)合網(wǎng)絡(luò)取證過(guò)程的設(shè)計(jì)來(lái)彌補(bǔ)具體技術(shù)在合法性上的缺失.合法性問(wèn)題將在第4 節(jié)進(jìn)一步分析;
(3)可靠性支持較弱.可靠性是指取證各個(gè)環(huán)節(jié)的可靠性,此類(lèi)追蹤溯源技術(shù)只生產(chǎn)數(shù)據(jù),僅需考慮數(shù)據(jù)本身的可靠性,而電子數(shù)據(jù)證據(jù)收集、傳輸和存儲(chǔ)環(huán)節(jié)的可靠性一般由取證人員負(fù)責(zé).數(shù)據(jù)本身的可靠性與真實(shí)性、完整性相關(guān),因真實(shí)性、完整性較弱,故而其可靠性也較弱;
(4)真實(shí)性支持較弱.因hash 值和Bloom filter 技術(shù)的使用,會(huì)因hash 沖突為日志信息帶來(lái)一定的錯(cuò)誤率;
(5)完整性支持較弱.因?yàn)槁酚善鞔鎯?chǔ)能力有限且日志沒(méi)有安全機(jī)制加以保障,導(dǎo)致日志信息可能被覆蓋而遺失,還可能遭受攻擊被刪除或者篡改;
(6)支持非易失性.因日志信息存儲(chǔ)在路由器端,可在事后提取分析.
Table 2 Forensics capabilities and improvements of cyber attack traceback techniques based on log storage and query表2 基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)取證能力和改進(jìn)
3.2.5 取證能力改進(jìn)建議
常見(jiàn)的基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)的取證能力在真實(shí)性、完整性和可靠性這3 方面的改進(jìn)建議見(jiàn)表2.
(1)改進(jìn)真實(shí)性,需要降低甚至消除該類(lèi)方法中的日志記錄的錯(cuò)誤率.在第3.2.1 節(jié)中有較為詳細(xì)的描述,其中,文獻(xiàn)[20,21]通過(guò)采用兩級(jí)hash 表消除了日志記錄的錯(cuò)誤,值得借鑒;
(2)改進(jìn)完整性,可以從架構(gòu)優(yōu)化的角度增加安全日志轉(zhuǎn)儲(chǔ)機(jī)制.如文獻(xiàn)[30]提出了一個(gè)安全存儲(chǔ)模型,該安全模型在獨(dú)立于取證對(duì)象的網(wǎng)絡(luò)中,包括一個(gè)hash 加密引擎、日志報(bào)告模塊和證據(jù)數(shù)據(jù)庫(kù),從證據(jù)被收集的那一刻起直至證據(jù)分析和展示,該模型可一直保護(hù)證據(jù)的完整性.文獻(xiàn)[31,32]提出了一個(gè)分布式網(wǎng)絡(luò)取證架構(gòu),該架構(gòu)能夠進(jìn)行分布式的網(wǎng)絡(luò)流量提取和存儲(chǔ)、數(shù)據(jù)壓縮,能夠監(jiān)控大規(guī)模網(wǎng)絡(luò).另外,隨著區(qū)塊鏈技術(shù)的發(fā)展,為保障電子數(shù)據(jù)證據(jù)的完整性產(chǎn)生了新的解決方案,區(qū)塊鏈技術(shù)所具有的去中心化、防篡改、可追溯的特性,能夠有效保證電子數(shù)據(jù)證據(jù)的完整性[33-35];
(3)一旦真實(shí)性和完整性得到保證,可認(rèn)為該類(lèi)技術(shù)取證能力的可靠性也得到了保證.
3.3.1 發(fā)展現(xiàn)狀
基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)包括包標(biāo)記與傳輸和攻擊路徑重構(gòu)兩個(gè)過(guò)程:包標(biāo)記與傳輸是指通過(guò)目標(biāo)網(wǎng)絡(luò)上的路由器對(duì)每個(gè)或者部分流經(jīng)該路由器的數(shù)據(jù)包進(jìn)行一定的變換,將能夠反映數(shù)據(jù)包路徑的信息以一種特殊的形式附加在數(shù)據(jù)包中,因?yàn)閿?shù)據(jù)包頭可用空間有限,常常需要將路徑信息分片經(jīng)多個(gè)數(shù)據(jù)包傳輸;攻擊路徑重構(gòu)是指從被攻擊端收集足夠多的捎帶有路徑信息的數(shù)據(jù)包,并通過(guò)算法計(jì)算攻擊路徑.此類(lèi)技術(shù)從某種程度上來(lái)說(shuō)也是一種日志標(biāo)記的方法,只是將日志信息標(biāo)記在傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù)包包頭中.
基于包標(biāo)記的追蹤溯源技術(shù)相關(guān)研究成果較多,本文根據(jù)標(biāo)記的內(nèi)容和標(biāo)記方法的不同將基于包標(biāo)記的追蹤溯源技術(shù)歸納為3 類(lèi),即概率包標(biāo)記方法、確定包標(biāo)記方法和代數(shù)編碼包標(biāo)記方法.
1)概率包標(biāo)記(probabilistic packet marking,簡(jiǎn)稱(chēng)PPM)方法
文獻(xiàn)[36]提出了3 種包標(biāo)記方法,其中,
? 節(jié)點(diǎn)追加直接將數(shù)據(jù)包流經(jīng)的每個(gè)路由器的IP 地址追加到數(shù)據(jù)包尾部,理論上,一個(gè)數(shù)據(jù)包中包含了完整的路徑信息,但其缺陷是數(shù)據(jù)包的大小隨路徑長(zhǎng)度的增加而增加,會(huì)占用較多的網(wǎng)絡(luò)帶寬,影響正常的網(wǎng)絡(luò)通信;
? 節(jié)點(diǎn)采樣則是以一定的概率將路由器IP 地址標(biāo)記到數(shù)據(jù)包頭中,而不是對(duì)每個(gè)數(shù)據(jù)包都標(biāo)記.由于數(shù)據(jù)包頭空間有限,只能標(biāo)記一個(gè)IP 地址,所以存在標(biāo)記信息覆蓋問(wèn)題,離受害主機(jī)越遠(yuǎn),收到該路由器標(biāo)記過(guò)的數(shù)據(jù)包就越少.為了維持較高的準(zhǔn)確率,隨著攻擊路徑長(zhǎng)度的增加,所需數(shù)據(jù)包的數(shù)量呈指數(shù)級(jí)增長(zhǎng);
? 邊采樣算法為了減少存儲(chǔ)開(kāi)銷(xiāo),不再直接標(biāo)記路由器IP 地址,而是用三元組(start,end,distance)來(lái)表示路徑上的邊信息,其中,start 和end 表示相鄰兩個(gè)路由器構(gòu)成的邊信息;distance 則是指這條邊與攻擊者之間的距離,或者說(shuō)路由器跳數(shù).每個(gè)路由器以固定概率選擇是否標(biāo)記當(dāng)前邊信息,以此進(jìn)一步減少總的存儲(chǔ)開(kāi)銷(xiāo).該三元組共需72 個(gè)字節(jié)來(lái)存儲(chǔ),通過(guò)對(duì)兩個(gè)路由器IP 地址進(jìn)行異或運(yùn)算并分段,存入8個(gè)數(shù)據(jù)包頭的保留字段identification field 中,如圖3 所示.而在路徑重構(gòu)時(shí),為了還原三元組信息,需要根據(jù)distance 和offset 進(jìn)行寬度優(yōu)先搜索,以對(duì)所有的分段按序重組;然后以受害者為根節(jié)點(diǎn)構(gòu)建樹(shù),刪除未標(biāo)記的邊來(lái)構(gòu)建攻擊路徑,由根節(jié)點(diǎn)開(kāi)始到葉子節(jié)點(diǎn)的單個(gè)子數(shù)為攻擊路徑.通過(guò)邊信息重構(gòu)攻擊路徑比節(jié)點(diǎn)采樣效率更高.
PPM 方法具有實(shí)施較為簡(jiǎn)單、沒(méi)有額外的網(wǎng)絡(luò)帶寬消耗和路由器存儲(chǔ)消耗、跨自治域的追蹤溯源不需要ISP 的配合等優(yōu)點(diǎn).但是文獻(xiàn)[37-41]分析了PPM 依然存在諸多缺陷:(1)PPM 方法路徑重建過(guò)程需要較高的計(jì)算量,且數(shù)據(jù)包頭容量有限極大地限制了可攜帶的標(biāo)記信息數(shù)量;(2)PPM 方法適用于1 個(gè)攻擊源的場(chǎng)景,在多個(gè)攻擊源的場(chǎng)景下計(jì)算量將變得非常之大,且誤報(bào)和漏報(bào)率激增;(3)PPM 方法的包標(biāo)記概率是不變的,這導(dǎo)致距離被攻擊端越遠(yuǎn)的節(jié)點(diǎn),路徑信息被后續(xù)節(jié)點(diǎn)路徑信息覆蓋的概率就越高;(4)PPM 方法的安全性難以保障,攻擊者可以主動(dòng)構(gòu)造虛假的包標(biāo)記信息,誤導(dǎo)PPM 得到錯(cuò)誤的攻擊路徑;(5)PPM 方法的標(biāo)記信息傳輸魯棒性較弱,當(dāng)被跟蹤的流量傳輸率較低時(shí),可能要很長(zhǎng)時(shí)間才能完成,甚至因?yàn)槿鄙贅?biāo)記數(shù)據(jù)包而失敗,在追蹤軟件利用攻擊[42],如獲取系統(tǒng)權(quán)限攻擊和網(wǎng)絡(luò)嗅探等攻擊時(shí)尤為明顯;(6)PPM 方法僅支持IPv4 協(xié)議,無(wú)法支持IPv6協(xié)議.
Fig.3 Edge information fragment stored in IP packet header[36]圖3 存儲(chǔ)在IP 包頭中的邊信息分片[36]
學(xué)者們針對(duì)PPM 方法的不足提出多種改進(jìn)方法.
(1)針對(duì)PPM 方法存儲(chǔ)空間有限和計(jì)算開(kāi)銷(xiāo)大的問(wèn)題,很多學(xué)者為了有效利用數(shù)據(jù)包包頭有限的空間,提出采用hash 函數(shù)等作進(jìn)一步壓縮.如文獻(xiàn)[39]提出的AMS(advanced marking scheme)方法,將IP 地址的hash 值而不是IP 地址本身標(biāo)記到數(shù)據(jù)包中,可以縮短數(shù)據(jù)的長(zhǎng)度,還可以擴(kuò)展到DDoS 的溯源.但是因?yàn)閔ash 函數(shù)具有單向性,在分析時(shí)需要了解整個(gè)網(wǎng)絡(luò)拓?fù)?亦即要知道hash 值對(duì)應(yīng)的IP 地址,且路徑重構(gòu)也因?yàn)閔ash 運(yùn)算產(chǎn)生較大的運(yùn)算量,很難避免hash 沖突的產(chǎn)生.文獻(xiàn)[43,44]提出了一種基于中國(guó)余數(shù)定理(Chinese remainder theorem,簡(jiǎn)稱(chēng)CRT)的數(shù)據(jù)包標(biāo)記方案CRT-PPM(probabilistic packet marking based on Chinese remainder theorem).CRT 指出一個(gè)正整數(shù)可由幾個(gè)互質(zhì)正整數(shù)的余數(shù)來(lái)唯一確定.該方案直接使用CRT 的模余運(yùn)算取得IP 分片的特征值,可有效避免hash 碰撞的發(fā)生,且只需5 個(gè)有效的數(shù)據(jù)包就能承載一個(gè)節(jié)點(diǎn)信息,有效地降低了重構(gòu)路徑的計(jì)算開(kāi)銷(xiāo);
(2)針對(duì)PPM 方法不適用于多攻擊源,尤其是DDoS 攻擊的追蹤溯源的問(wèn)題,文獻(xiàn)[45]提出根據(jù)受害端收到的標(biāo)記數(shù)據(jù)包,以受害端為根構(gòu)造一棵攻擊樹(shù),在每個(gè)節(jié)點(diǎn)上標(biāo)記本地通信率,并基于流量強(qiáng)度來(lái)推測(cè)所有可能的DDoS 攻擊源和路徑.為了使構(gòu)造的攻擊樹(shù)趨于穩(wěn)定,同時(shí)提高計(jì)算效率,使用數(shù)學(xué)方法來(lái)計(jì)算收集數(shù)據(jù)包的最小穩(wěn)定時(shí)間.而由文獻(xiàn)[46]提出的確定包標(biāo)記算法,專(zhuān)門(mén)針對(duì)DDoS 攻擊源進(jìn)行追蹤溯源,具有效率高、消耗小的特點(diǎn),后文對(duì)此將給出進(jìn)一步闡述;
(3)針對(duì)PPM 方法概率固定導(dǎo)致的問(wèn)題,文獻(xiàn)[47]提出使用動(dòng)態(tài)概率,距離被攻擊端越遠(yuǎn)的節(jié)點(diǎn),標(biāo)記概率越大.為了預(yù)估當(dāng)前節(jié)點(diǎn)在攻擊路徑中的位置,文獻(xiàn)[47]提出3 種距離計(jì)算方法:第1 種是從攻擊源到當(dāng)前節(jié)點(diǎn)的距離,第2 種是從最后一個(gè)標(biāo)記包的節(jié)點(diǎn)到當(dāng)前節(jié)點(diǎn)的距離,第3 種是從當(dāng)前節(jié)點(diǎn)到目的地的距離.并且,基于這3 種距離分別提出標(biāo)記概率計(jì)算方法,以此實(shí)現(xiàn)動(dòng)態(tài)調(diào)整每個(gè)節(jié)點(diǎn)的包標(biāo)記概率,從而降低概率不公平性,大大減少了重構(gòu)攻擊路徑所需的數(shù)據(jù)包.文獻(xiàn)[48-50]也提出了類(lèi)似的動(dòng)態(tài)概率調(diào)整方法;
(4)針對(duì)PPM 方法的安全性問(wèn)題,可以通過(guò)認(rèn)證和隱私保護(hù)的標(biāo)記方法以預(yù)防惡意路由器偽造包標(biāo)記信息來(lái)干擾追蹤,同時(shí)也能減輕ISP 關(guān)于網(wǎng)絡(luò)拓?fù)湫孤兜膿?dān)憂(yōu).文獻(xiàn)[39]提出了驗(yàn)證包標(biāo)記算法,這是一種time-release keys 認(rèn)證機(jī)制,這種認(rèn)證機(jī)制可有效識(shí)別攻擊者偽造包標(biāo)記的行為.文獻(xiàn)[51]提出時(shí)間戳密鑰分發(fā)方案TSKDS(time stamp secret key distribution scheme),并采用HMAC-SHA1[52]加密算法對(duì)標(biāo)記信息進(jìn)行加密;
(5)針對(duì)PPM 方法的標(biāo)記信息傳輸魯棒性較弱的問(wèn)題,文獻(xiàn)[40]提出了一種新的概率包標(biāo)記方法OPM(opportunistic piggyback marking).OPM 將PPM 中的標(biāo)記信息內(nèi)容編碼和傳遞功能進(jìn)行解耦,并將網(wǎng)絡(luò)流量分為內(nèi)部流量(需要追蹤的網(wǎng)絡(luò)流)和外部流量.在傳遞包標(biāo)記信息時(shí),通過(guò)充分利用外部流量來(lái)攜帶內(nèi)部流量的包標(biāo)記信息以降低延遲,提高成功率.并且,使用MX/M/1/Cfinite queue[53]處理批量到達(dá),可有效追蹤多個(gè)攻擊源.該方法能夠有效地實(shí)現(xiàn)快速、健壯的標(biāo)記消息傳遞;
(6)針對(duì)PPM 方法不支持IPv6 協(xié)議的問(wèn)題,文獻(xiàn)[41]將邊采樣的三元組(start,end,distance)轉(zhuǎn)換成IPv6 版本,并將標(biāo)記內(nèi)容存儲(chǔ)在IPv6 數(shù)據(jù)包包頭的Hop-by-Hop Header 字段中進(jìn)行傳遞.因該字段足夠大,無(wú)需對(duì)標(biāo)記內(nèi)容進(jìn)一步分片,從而能夠避免基于IPv4 協(xié)議的版本帶來(lái)的狀態(tài)爆炸問(wèn)題.文獻(xiàn)[54]基于IPv6 協(xié)議及IPv6 包結(jié)構(gòu)特征[55],對(duì)ASM 方法中的標(biāo)記機(jī)制加以改進(jìn),因?yàn)锳MS 將IP 地址的hash值而不是IP 地址本身標(biāo)記到數(shù)據(jù)包中,hash 值不會(huì)隨著IPv6 數(shù)據(jù)包的增大而增大.同時(shí),使用IPv6 數(shù)據(jù)包包頭中的流標(biāo)簽字段(flow label field,簡(jiǎn)稱(chēng)FLF)的20 bit 來(lái)標(biāo)記信息,可以安全、有效地重載ASM方案.文獻(xiàn)[56]對(duì)CRT-PPM 方法中的標(biāo)記機(jī)制加以改進(jìn),通過(guò)CRT 算法對(duì)IPv6 地址編碼后,分片存儲(chǔ)在多個(gè)IPv6 包頭的FLF 中.相比IPv4 版本CRT-PPM 算法需要5 個(gè)片段來(lái)存儲(chǔ)標(biāo)記,IPv6 版本需要16 個(gè)片段來(lái)存儲(chǔ)標(biāo)記,計(jì)算量相應(yīng)增加.
2)確定包標(biāo)記(deterministic packet marking,簡(jiǎn)稱(chēng)DPM)方法
文獻(xiàn)[57]認(rèn)為,PPM 方法適用于解決有大規(guī)模流量的攻擊場(chǎng)景,如flooding 攻擊的追蹤溯源,不適用于只包含少量數(shù)據(jù)包的攻擊的追蹤溯源.針對(duì)這一問(wèn)題,文獻(xiàn)[57]提出了確定包標(biāo)記方法,僅標(biāo)記該源節(jié)點(diǎn)IP 地址以降低存儲(chǔ)開(kāi)銷(xiāo).為此,將IP 地址分成2 個(gè)片段,通過(guò)2 個(gè)數(shù)據(jù)包進(jìn)行傳輸即可.受害端接收到包標(biāo)記,可還原數(shù)據(jù)包來(lái)源IP 地址.相比PPM 方法,DPM 方法效率高、消耗小,但卻無(wú)法還原完整的攻擊路徑.文獻(xiàn)[46]認(rèn)為,DPM 方法缺乏擴(kuò)展性,因而又提出了FDPM(flexible deterministic packet marking)方法.該方法使用變長(zhǎng)的包標(biāo)記格式來(lái)適應(yīng)不同的網(wǎng)絡(luò)環(huán)境,單個(gè)分片的長(zhǎng)度有16、19 或者24bits 這3 種選擇.并且,考慮到DPM 可能帶來(lái)的工作負(fù)載,提出參考PPM 的思想,根據(jù)路由器能夠承受的工作負(fù)載,以一定的概率來(lái)標(biāo)記數(shù)據(jù)包.而文獻(xiàn)[58]針對(duì)DPM 全標(biāo)記導(dǎo)致的效率較低的缺點(diǎn),提出一種新的按需標(biāo)記(marking on demand,簡(jiǎn)稱(chēng)MOD)追蹤溯源方案.為了區(qū)分哪些節(jié)點(diǎn)參與攻擊會(huì)話,需要參與路由器安裝流量監(jiān)控器,當(dāng)監(jiān)視到網(wǎng)絡(luò)流激增等可疑行為時(shí),從全局共享的MOD 服務(wù)器請(qǐng)求一個(gè)唯一的標(biāo)記來(lái)標(biāo)識(shí)可疑流,并對(duì)可疑流進(jìn)行確定包標(biāo)記以用于后續(xù)的追蹤溯源.
3)代數(shù)編碼包標(biāo)記方法
文獻(xiàn)[59]認(rèn)為,PPM 方法在基于邊信息重構(gòu)攻擊路徑時(shí)存在組合爆炸問(wèn)題,于是提出將攻擊路徑的構(gòu)造作為一個(gè)多項(xiàng)式重構(gòu)問(wèn)題加以求解,并使用代數(shù)編碼理論[60]來(lái)提高標(biāo)記信息傳輸和路徑重構(gòu)的魯棒性.假設(shè)A1,A2,…,An為路徑P上的路由器IP 地址,數(shù)據(jù)包x的路徑信息可以表示為
不同的數(shù)據(jù)包用xj表示,其路徑信息用fp(xj)表示,攻擊路徑可以通過(guò)求解如下Vandermode 行列式取得:
標(biāo)識(shí)多個(gè)IP 地址求解問(wèn)題、數(shù)據(jù)包的路徑重構(gòu)問(wèn)題可以通過(guò)求解該矩陣來(lái)完成.文獻(xiàn)[61,62]認(rèn)為,該方法所需的數(shù)據(jù)包較多,于是基于該方法進(jìn)行了優(yōu)化,進(jìn)一步減少了重構(gòu)攻擊路徑所需的數(shù)據(jù)包,并支持多攻擊路徑追蹤溯源.
此外,文獻(xiàn)[63]認(rèn)為,基于路由器IP 地址的追蹤溯源方法只能追蹤到距離攻擊者最近的路由器地址,當(dāng)該路由器連接多個(gè)網(wǎng)絡(luò)或者主機(jī)時(shí),無(wú)法進(jìn)一步確定攻擊者主機(jī).于是提出基于路由器接口編號(hào)信息進(jìn)行編碼以間接標(biāo)記一個(gè)數(shù)據(jù)包的路徑信息,而不是基于路由器IP 地址的節(jié)點(diǎn)采樣或者邊采樣的方法,可以進(jìn)一步追蹤到攻擊者主機(jī)或者上一級(jí)網(wǎng)絡(luò).文獻(xiàn)[63]提出的Huffman 編碼包標(biāo)記方法、文獻(xiàn)[64]提出的MRT(modulo and reverse modulo technique)方法、文獻(xiàn)[20]提出的RIHT(traceback scheme with router interface coding)方法和文獻(xiàn)[21]提出的HAHIT(a 16-bit hybrid single packet traceback scheme)方法都是通過(guò)數(shù)學(xué)方法對(duì)路由器接口編號(hào)信息進(jìn)行編碼的追蹤溯源,因而能夠有效地應(yīng)對(duì)DDoS 等攻擊追蹤溯源問(wèn)題,存儲(chǔ)消耗也得到進(jìn)一步降低.
3.3.2 優(yōu)點(diǎn)分析
(1)與傳統(tǒng)的網(wǎng)絡(luò)協(xié)議和架構(gòu)兼容,能夠廣泛應(yīng)用于多種網(wǎng)絡(luò)環(huán)境中;
(2)沒(méi)有額外的網(wǎng)絡(luò)帶寬消耗和路由器存儲(chǔ)消耗;
(3)跨自治域的追蹤溯源不需要ISP 的配合,實(shí)施較為簡(jiǎn)單.
3.3.3 缺點(diǎn)分析
(1)無(wú)法支持單包追蹤溯源,需要較多的標(biāo)記數(shù)據(jù)包才能恢復(fù)出攻擊路徑,所需數(shù)量取決于標(biāo)記概率參數(shù);且標(biāo)記數(shù)據(jù)包是易失性數(shù)據(jù),其重構(gòu)攻擊路徑的成功率受攻擊方式和攻擊時(shí)長(zhǎng)的影響較大;
(2)因?yàn)樾枰^多的標(biāo)記數(shù)據(jù)包才能恢復(fù)出攻擊路徑,因此計(jì)算開(kāi)銷(xiāo)大;
(3)大部分算法對(duì)DDoS 攻擊追蹤溯源支持不佳,計(jì)算量大且錯(cuò)誤率較高;
(4)包標(biāo)記信息存在安全隱患,如果系統(tǒng)或者轉(zhuǎn)發(fā)設(shè)備被攻擊者控制,攻擊者可以刪除或者篡改包標(biāo)記信息以誤導(dǎo)攻擊路徑重構(gòu).
3.3.4 取證能力分析
基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)產(chǎn)生的特有電子數(shù)據(jù)證據(jù)是其記錄在數(shù)據(jù)包中的攻擊路徑相關(guān)的標(biāo)記信息,這類(lèi)方法的取證能力見(jiàn)表3.
(1)支持關(guān)聯(lián)性.包標(biāo)記信息記錄了攻擊包的路徑相關(guān)信息,與要證明的網(wǎng)絡(luò)攻擊源有直接聯(lián)系;
(2)無(wú)需考慮合法性.網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)是網(wǎng)絡(luò)取證過(guò)程中取證分析這一項(xiàng)活動(dòng)中用到的具體技術(shù),單獨(dú)依靠某項(xiàng)具體的技術(shù)是無(wú)法達(dá)到合法性要求的,過(guò)程的合法性才是證據(jù)可采性審查的關(guān)鍵,這就要求結(jié)合網(wǎng)絡(luò)取證過(guò)程設(shè)計(jì)來(lái)彌補(bǔ)具體技術(shù)在合法性上的缺失.合法性問(wèn)題將在第4 節(jié)進(jìn)一步分析;
(3)不支持可靠性.可靠性是指取證各個(gè)環(huán)節(jié)的可靠性,此類(lèi)追蹤溯源技術(shù)產(chǎn)生的是實(shí)時(shí)網(wǎng)絡(luò)流量數(shù)據(jù),除了考慮數(shù)據(jù)本身的可靠性,還需考慮傳輸過(guò)程的可靠性,而電子數(shù)據(jù)證據(jù)的收集和存儲(chǔ)環(huán)節(jié)的可靠性一般由取證人員負(fù)責(zé).數(shù)據(jù)本身的可靠性和真實(shí)性、完整性相關(guān),因其不支持完整性,故而也不支持可靠性.而標(biāo)記數(shù)據(jù)包在傳輸過(guò)程中因無(wú)加密機(jī)制,可被攻擊者截獲并篡改,因而無(wú)法支持可靠性;
(4)支持真實(shí)性.包標(biāo)記信息記錄了客觀真實(shí)的路徑信息;
(5)不支持完整性.因網(wǎng)絡(luò)數(shù)據(jù)包是易失性數(shù)據(jù),且此類(lèi)追蹤溯源技術(shù)不存在實(shí)時(shí)存儲(chǔ)機(jī)制,其有效的標(biāo)記數(shù)據(jù)包隨攻擊的結(jié)束而消失,且標(biāo)記數(shù)據(jù)包在傳輸過(guò)程中因無(wú)加密機(jī)制,可被攻擊者截獲并篡改;
(6)不支持非易失性.因?yàn)閿?shù)據(jù)包是易失性數(shù)據(jù),且沒(méi)有長(zhǎng)期存儲(chǔ)機(jī)制.
Table 3 Forensics capabilities and improvements of cyber attack traceback techniques based on packet marking表3 基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)取證能力和改進(jìn)
3.3.5 取證能力改進(jìn)建議
常見(jiàn)的基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)取證能力在完整性、可靠性和非易失性這3 方面的改進(jìn)建議見(jiàn)上述表3.
(1)改進(jìn)可靠性,可以增加加密認(rèn)證機(jī)制以有效防止惡意篡改標(biāo)記信息.如文獻(xiàn)[65]提出,通過(guò)AES-256 ECB 加密算法進(jìn)行加密.文獻(xiàn)[51]提出了時(shí)間戳密鑰分發(fā)方案,采用HMAC-SHA1[52]加密算法對(duì)標(biāo)記信息進(jìn)行加密,從數(shù)據(jù)傳輸?shù)慕嵌缺WC電子數(shù)據(jù)證據(jù)的可靠性;
(2)改進(jìn)完整性,可從架構(gòu)優(yōu)化的角度增加安全日志轉(zhuǎn)儲(chǔ)機(jī)制.如文獻(xiàn)[30]提出了一個(gè)安全存儲(chǔ)模型,該安全模型在獨(dú)立于取證對(duì)象的網(wǎng)絡(luò)中,包括一個(gè)hash 加密引擎、日志報(bào)告模塊和證據(jù)數(shù)據(jù)庫(kù),從證據(jù)被收集的那一刻起至證據(jù)分析和展示,該模型可一直保護(hù)證據(jù)的完整性.文獻(xiàn)[31,32]提出一個(gè)分布式網(wǎng)絡(luò)取證架構(gòu),該架構(gòu)能夠進(jìn)行分布式的網(wǎng)絡(luò)流量提取和存儲(chǔ)、數(shù)據(jù)壓縮,能夠監(jiān)控大規(guī)模網(wǎng)絡(luò).另外,隨著區(qū)塊鏈技術(shù)的發(fā)展,為保障電子數(shù)據(jù)證據(jù)的完整性產(chǎn)生了新的解決方案,區(qū)塊鏈技術(shù)所具有的去中心化、防篡改、可追溯的特性,能夠有效保證電子數(shù)據(jù)證據(jù)的完整性[33-35];
(3)改進(jìn)非易失性,與改進(jìn)完整性相同,可從架構(gòu)的角度增加標(biāo)記信息安全存儲(chǔ)機(jī)制.
3.4.1 發(fā)展現(xiàn)狀
前述網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)都是基于傳統(tǒng)網(wǎng)絡(luò)架構(gòu)設(shè)計(jì)的,其操作性普遍受到網(wǎng)絡(luò)基礎(chǔ)設(shè)備的限制,如要求轉(zhuǎn)發(fā)設(shè)備具備較高的存儲(chǔ)空間、計(jì)算能力和進(jìn)行數(shù)據(jù)包標(biāo)記的能力等,這些能力并不是目前轉(zhuǎn)發(fā)設(shè)備的標(biāo)配,在不支持的設(shè)備上無(wú)法開(kāi)展追蹤溯源,而更換硬件轉(zhuǎn)發(fā)設(shè)備成本太高很難執(zhí)行,因而限制了大部分追蹤溯源技術(shù)的使用.另外,在實(shí)際取證調(diào)查過(guò)程中,基于日志的追蹤溯源方法要求取證人員對(duì)整個(gè)網(wǎng)絡(luò)環(huán)境中的網(wǎng)絡(luò)設(shè)備具有訪問(wèn)權(quán)限、能提取包記錄信息等,這對(duì)傳統(tǒng)網(wǎng)絡(luò)架構(gòu)的安全性也是一個(gè)挑戰(zhàn).而SDN 作為一種新型的網(wǎng)絡(luò)架構(gòu),提出將控制平面和數(shù)據(jù)平面分離的理念[66,67],控制平面將網(wǎng)絡(luò)設(shè)備控制能力集中并提供統(tǒng)一的接口,通過(guò)靈活的編程,能夠適應(yīng)復(fù)雜的業(yè)務(wù)層需求,為網(wǎng)絡(luò)攻擊追蹤溯源的發(fā)展帶來(lái)了新的機(jī)遇.學(xué)者們基于SDN 網(wǎng)絡(luò)提出了多種網(wǎng)絡(luò)攻擊追蹤溯源技術(shù).
文獻(xiàn)[68]提出了一種路由跟蹤工具SDN traceroute,該工具利用SDN 的轉(zhuǎn)發(fā)機(jī)制來(lái)追蹤數(shù)據(jù)包在網(wǎng)絡(luò)中的轉(zhuǎn)發(fā)路徑,通過(guò)發(fā)送帶有特定tag 的探針報(bào)文,并逐跳路由比較探針報(bào)文,達(dá)到追蹤溯源的目的.該工具利用SDN的多流表機(jī)制,在SDN 交換機(jī)上多配置一個(gè)流表,用于單獨(dú)處理探針包,不用改變?cè)瓉?lái)的網(wǎng)絡(luò)行為.文獻(xiàn)[69]提出了netshark 工具,這是一個(gè)類(lèi)似于wireshark 的工具,它允許用戶(hù)在整個(gè)數(shù)據(jù)包的歷史記錄上設(shè)置過(guò)濾器,記錄它們的路徑和每一跳的數(shù)據(jù)包頭信息.用戶(hù)可以在某一跳查看數(shù)據(jù)包屬性,如包頭信息、交換機(jī)ID、輸入端口、輸出端口和匹配的流表版本等,以及數(shù)據(jù)包歷史記錄屬性,如路徑、路徑長(zhǎng)度等,從而實(shí)現(xiàn)攻擊數(shù)據(jù)包的追蹤溯源.文獻(xiàn)[70]利用SDN 控制器語(yǔ)言完成數(shù)據(jù)包的回溯,依據(jù)當(dāng)前的包處理策略預(yù)測(cè)數(shù)據(jù)包動(dòng)作表達(dá)式,進(jìn)一步計(jì)算出任意數(shù)據(jù)包的所有前置轉(zhuǎn)發(fā)策略,從而實(shí)現(xiàn)數(shù)據(jù)包的回溯.文獻(xiàn)[71]提出一種基于SDN 的匿名IP 溯源方法,該方法用有向圖對(duì)SDN 網(wǎng)絡(luò)拓?fù)溥M(jìn)行建模,并在該圖中保存流表信息,通過(guò)深度優(yōu)先搜索算法搜索該圖,可定位異常流在該SDN 網(wǎng)絡(luò)中的入口點(diǎn),也就是第1 步路由,且不用監(jiān)控IP 地址就能找到與攻擊相關(guān)的所有的流.文獻(xiàn)[72]提出了基于SDN 的全局流表算法,通過(guò)控制器接口定期遍歷所有交換機(jī)獲取流表,將SDN 中的每一條流維護(hù)起來(lái),通過(guò)分析全局流表實(shí)現(xiàn)異常流量的追蹤溯源.文獻(xiàn)[73]在SDN 架構(gòu)中實(shí)現(xiàn)了優(yōu)化的PPM 方法,通過(guò)及時(shí)地將標(biāo)記信息轉(zhuǎn)存到特定的機(jī)器上,可以有效地緩解PPM 算法因數(shù)據(jù)包空間有限帶來(lái)的限制,并借助SDN架構(gòu)的優(yōu)勢(shì)構(gòu)建全局網(wǎng)絡(luò)拓?fù)?簡(jiǎn)化PPM 方法的路徑重構(gòu)過(guò)程,降低計(jì)算開(kāi)銷(xiāo).文獻(xiàn)[74]提出一種基于SDN 和多協(xié)議標(biāo)簽交換(multi-protocol label switching,簡(jiǎn)稱(chēng)MPLS)的追蹤溯源方法,該方法利用MPLS 技術(shù)設(shè)計(jì)一種短路徑標(biāo)志,用于表示攻擊路徑信息,只需要數(shù)十個(gè)比特,并維護(hù)一個(gè)MAC 表和ARP 表來(lái)記錄攻擊路徑信息.該方法支持單包溯源,存儲(chǔ)開(kāi)銷(xiāo)較小,錯(cuò)誤率較低.文獻(xiàn)[75]則提出了基于SDN 的、適用于IPv6 協(xié)議的追蹤溯源方法,該方法通過(guò)交換機(jī),在接入網(wǎng)的第1 個(gè)跳窺探數(shù)據(jù)包中的地址信息,并將這些包轉(zhuǎn)發(fā)給控制器;接著,由控制器為每個(gè)經(jīng)過(guò)身份驗(yàn)證的終端設(shè)備生成一個(gè)可信的IPv6 地址;然后在通信過(guò)程中,交換機(jī)隱式地在設(shè)備的原始源地址和所有傳輸數(shù)據(jù)包的可信地址之間進(jìn)行IP 地址轉(zhuǎn)換.網(wǎng)絡(luò)管理員可以通過(guò)解析惡意數(shù)據(jù)包獲得可信地址,以有效地識(shí)別攻擊者.
3.4.2 優(yōu)點(diǎn)分析
(1)控制器作為SDN 的核心,能夠從抽象的軟件層面對(duì)網(wǎng)絡(luò)行為和狀態(tài)進(jìn)行監(jiān)控和管理,可對(duì)轉(zhuǎn)發(fā)設(shè)備進(jìn)行統(tǒng)一控制,且具有全局網(wǎng)絡(luò)視圖,有助于簡(jiǎn)化追蹤溯源方法的設(shè)計(jì).基于SDN 的追蹤溯源可將計(jì)算與存儲(chǔ)開(kāi)銷(xiāo)從轉(zhuǎn)發(fā)設(shè)備上解耦出來(lái),使得追蹤溯源方法對(duì)轉(zhuǎn)發(fā)設(shè)備的要求大為降低,增強(qiáng)了網(wǎng)絡(luò)攻擊追蹤溯源的效率和可操作性;
(2)SDN 基于OVERLAY 覆蓋網(wǎng)的網(wǎng)絡(luò)接入業(yè)務(wù)方式,可實(shí)現(xiàn)分布式網(wǎng)絡(luò)的大二層互聯(lián)互通,拓寬了網(wǎng)絡(luò)攻擊追蹤溯源的范圍.
3.4.3 缺點(diǎn)分析
(1)此類(lèi)方法僅適用于SDN 網(wǎng)絡(luò)環(huán)境和SDN 交換設(shè)備,與傳統(tǒng)的網(wǎng)絡(luò)架構(gòu)兼容性較差;
(2)SDN 因控制能力較為集中,更容易成為網(wǎng)絡(luò)攻擊的目標(biāo).而一旦控制層被攻擊破壞掉,對(duì)整個(gè)網(wǎng)絡(luò)的穩(wěn)定性影響很大,因而對(duì)安全性要求更高.
3.4.4 取證能力分析
這類(lèi)追蹤溯源技術(shù)產(chǎn)生的特有電子數(shù)據(jù)證據(jù)是記錄在控制層的各種攻擊路徑相關(guān)的日志信息,其取證能力見(jiàn)表4.
(1)支持關(guān)聯(lián)性.日志信息記錄了攻擊包的路徑相關(guān)信息,與要證明的網(wǎng)絡(luò)攻擊源有直接聯(lián)系;
(2)無(wú)需考慮合法性.網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)是網(wǎng)絡(luò)取證過(guò)程中取證分析這項(xiàng)活動(dòng)中用到的具體技術(shù),單靠某項(xiàng)具體的技術(shù)是無(wú)法達(dá)到合法性要求的,過(guò)程的合法性才是證據(jù)的可采性審查的關(guān)鍵,這就要求結(jié)合網(wǎng)絡(luò)取證過(guò)程設(shè)計(jì)來(lái)彌補(bǔ)具體技術(shù)在合法性上的缺失.合法性問(wèn)題將在第4 節(jié)進(jìn)一步分析;
(3)可靠性支持較弱.此類(lèi)追蹤溯源技術(shù)只生產(chǎn)數(shù)據(jù),僅需考慮數(shù)據(jù)本身的可靠性,而電子數(shù)據(jù)證據(jù)收集、傳輸和存儲(chǔ)環(huán)節(jié)的可靠性一般由取證人員負(fù)責(zé).數(shù)據(jù)本身的可靠性和真實(shí)性、完整性相關(guān),因完整性較弱,故其可靠性也較弱;
(4)支持真實(shí)性.日志信息記錄了客觀、真實(shí)的路徑相關(guān)信息;
(5)完整性支持較弱.因?yàn)槿狈Π踩珯C(jī)制加以保障,導(dǎo)致日志信息可能遭受攻擊而被刪除或者篡改;
(6)支持非易失性.因日志等信息存儲(chǔ)在SDN 控制層,故可在事后進(jìn)行取證分析.
Table 4 Forensics capabilities and improvements of cyber attack logging traceback techniques based on SDN表4 基于SDN 的日志追蹤溯源技術(shù)取證能力和改進(jìn)
3.4.5 取證能力改進(jìn)建議
常見(jiàn)的基于SDN 的日志追蹤溯源技術(shù)的取證能力在完整性、可靠性這兩方面的改進(jìn)建議見(jiàn)上面的表4.
(1)改進(jìn)完整性,可從架構(gòu)優(yōu)化的角度增加安全日志儲(chǔ)存機(jī)制.如文獻(xiàn)[76]提出,在SDN 網(wǎng)絡(luò)增加一個(gè)取證管理層,具有較強(qiáng)的存儲(chǔ)能力、計(jì)算能力和較高的安全性,能夠?qū)DN 網(wǎng)絡(luò)中的各種攻擊進(jìn)行實(shí)時(shí)分析和取證,從而降低SDN 控制器的分析負(fù)載,為網(wǎng)絡(luò)攻擊追蹤溯源提供了一種可借鑒的架構(gòu);
(2)一旦當(dāng)完整性得到保證,則可認(rèn)為該類(lèi)技術(shù)取證能力的可靠性也得到了保證.
3.5.1 發(fā)展現(xiàn)狀
通過(guò)第3.2 節(jié)和第3.3 節(jié)的分析可以發(fā)現(xiàn):基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)不會(huì)給路由器帶來(lái)存儲(chǔ)開(kāi)銷(xiāo),但卻需要較多的數(shù)據(jù)包才能實(shí)現(xiàn)追蹤溯源,且錯(cuò)誤率較高.而基于日志記錄與查詢(xún)的追蹤溯源算法雖然能夠?qū)崿F(xiàn)單包溯源,但是會(huì)對(duì)路由器帶來(lái)較重的存儲(chǔ)負(fù)擔(dān).因而,學(xué)者們提出了兩種算法相混合的方法,優(yōu)勢(shì)互補(bǔ),在減少追蹤溯源所需標(biāo)記包數(shù)量的同時(shí),降低路由器的存儲(chǔ)開(kāi)銷(xiāo).
文獻(xiàn)[23,77]提出了一種基于日志記錄和數(shù)據(jù)包標(biāo)記的混合IP 追溯方法,將路徑信息部分記錄在轉(zhuǎn)發(fā)設(shè)備上,部分記錄在數(shù)據(jù)包中,并通過(guò)數(shù)據(jù)包標(biāo)記字段中可用空間是否充足來(lái)決定攻擊路徑信息記錄的方式.如果標(biāo)記字段中有可用空間,則路由器將其設(shè)備標(biāo)識(shí)信息寫(xiě)入數(shù)據(jù)包;否則,路由器計(jì)算并記錄數(shù)據(jù)包摘要,然后清除標(biāo)記字段.文獻(xiàn)[7]提出了兩種結(jié)合包標(biāo)記和包記錄的混合追蹤溯源機(jī)制,分別是 DLLT(distributed link-list traceback)和PPPM(probabilistic pipelined packet marking).DLLT 方法在進(jìn)行包標(biāo)記之前都會(huì)把數(shù)據(jù)包中已有的標(biāo)記信息存儲(chǔ)到路由器中,然后再用新的標(biāo)記信息覆蓋舊的標(biāo)記信息,并在受害端通過(guò)Linklist 結(jié)構(gòu)來(lái)收集存儲(chǔ)在路由器上的標(biāo)記信息,用于重構(gòu)攻擊路徑.由于DLLT 方法需要在路由器上長(zhǎng)期存儲(chǔ)標(biāo)記信息,在DLLT 的基礎(chǔ)上提出了改進(jìn)的PPPM 方法.PPPM 方法借鑒了流水線機(jī)制,將標(biāo)記信息從一個(gè)標(biāo)記路由器向另一個(gè)標(biāo)記路由器傳播,使得標(biāo)記信息能夠傳播到同一個(gè)目的地.
文獻(xiàn)[63]提出的Huffman 編碼包標(biāo)記方法、文獻(xiàn)[64]提出的MRT(modulo and reverse modulo technique)方法也是結(jié)合了包標(biāo)記和日志查詢(xún)技術(shù),但是這兩種方法都是通過(guò)使用路由器接口編號(hào)來(lái)標(biāo)記一個(gè)數(shù)據(jù)包的路徑信息,而不是采用節(jié)點(diǎn)采樣或者邊采樣的方法,可實(shí)現(xiàn)基于單包的IP 追蹤溯源.同時(shí),為了解決包標(biāo)記類(lèi)方法普遍面臨的IP 包頭存儲(chǔ)空間有限的問(wèn)題,它們采用包標(biāo)記與包記錄相結(jié)合的方法,當(dāng)IP 包頭沒(méi)有多余空間記錄路徑信息時(shí),則將標(biāo)記信息以日志的形式臨時(shí)存儲(chǔ)在路由器上,以避免數(shù)據(jù)被覆蓋.因路由器存儲(chǔ)開(kāi)銷(xiāo)隨著數(shù)據(jù)包的增加而增加,而路由器存儲(chǔ)能力有限,當(dāng)達(dá)到存儲(chǔ)極限時(shí)需要清空hash 表,這會(huì)導(dǎo)致一定程度的錯(cuò)誤率.文獻(xiàn)[20]提出的RIHT(traceback scheme with router interface coding)方法、文獻(xiàn)[21]提出的HAHIT(a 16-bit hybrid single packet traceback scheme)方法在這類(lèi)方法的基礎(chǔ)上,為了徹底解決路由器存儲(chǔ)開(kāi)銷(xiāo)問(wèn)題,提出了一種雙重hash 表記錄方法.該方法的存儲(chǔ)開(kāi)銷(xiāo)只與網(wǎng)絡(luò)流量路徑數(shù)量有關(guān),而與數(shù)據(jù)包的數(shù)量無(wú)關(guān),因而給路由器帶來(lái)的存儲(chǔ)開(kāi)銷(xiāo)是固定的.基于CAIDA(center for applied Internet data analysis)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)集驗(yàn)證,存儲(chǔ)開(kāi)銷(xiāo)為320KB,且不會(huì)隨著數(shù)據(jù)包的增加而增加,因而不存在刷新覆蓋路由器上的日志記錄的情況,從而消除了錯(cuò)誤率.然而,該方法假定網(wǎng)絡(luò)拓?fù)涫枪潭ú蛔兊?一旦網(wǎng)絡(luò)拓?fù)浒l(fā)生變化,日志記錄中的路徑信息就不再有效,無(wú)法重構(gòu)出正確的攻擊路徑.針對(duì)這一問(wèn)題,文獻(xiàn)[78]在此基礎(chǔ)上提出了改進(jìn)方法,路徑的標(biāo)記編碼不再依賴(lài)于路由器的接口數(shù),當(dāng)網(wǎng)絡(luò)拓?fù)浒l(fā)生改變,也就是路由器新增接口時(shí),并不會(huì)影響溯源的正確性,可在一定程度上適應(yīng)網(wǎng)絡(luò)拓?fù)涞淖兓?
3.5.2 優(yōu)點(diǎn)分析
(1)與傳統(tǒng)的網(wǎng)絡(luò)協(xié)議和架構(gòu)兼容,能夠廣泛應(yīng)用于多種網(wǎng)絡(luò)環(huán)境中;
(2)結(jié)合了基于日志和基于包標(biāo)記這兩類(lèi)追蹤溯源方法的優(yōu)點(diǎn),能夠以較低的網(wǎng)絡(luò)帶寬消耗、較低的路由器存儲(chǔ)消耗和較少的標(biāo)記數(shù)據(jù)包實(shí)現(xiàn)追蹤溯源;
(3)相比PPM 方法,當(dāng)IP 數(shù)據(jù)包包頭沒(méi)有多余空間記錄路徑信息時(shí),則將標(biāo)記信息以日志的形式臨時(shí)存儲(chǔ)在路由器上,以避免標(biāo)記信息被覆蓋,所需標(biāo)記數(shù)據(jù)包減少,從而計(jì)算量也相應(yīng)減少,且追蹤溯源的正確率相應(yīng)提高.
3.5.3 缺點(diǎn)分析
混合追蹤溯源技術(shù)只是對(duì)基于日志記錄和基于包標(biāo)記追蹤溯源技術(shù)面臨的問(wèn)題的一個(gè)緩解,無(wú)法完全避免這些問(wèn)題,如存儲(chǔ)開(kāi)銷(xiāo)和計(jì)算開(kāi)銷(xiāo)問(wèn)題、日志時(shí)效性等問(wèn)題;并且,跨自治域追蹤溯源的隱私泄露、網(wǎng)絡(luò)拓?fù)湫孤兜蕊L(fēng)險(xiǎn),以及日志記錄面臨的安全隱患依然存在.
3.5.4 取證能力分析
基于混合追蹤溯源技術(shù)產(chǎn)生的特有電子數(shù)據(jù)證據(jù)是其記錄在路由器上的攻擊路徑相關(guān)的日志信息和數(shù)據(jù)包標(biāo)記信息,這類(lèi)方法的取證能力見(jiàn)表5.
(1)支持關(guān)聯(lián)性.日志信息和數(shù)據(jù)包標(biāo)記信息中記錄了攻擊包的路徑相關(guān)信息,與要證明的網(wǎng)絡(luò)攻擊源有直接聯(lián)系;
(2)無(wú)需考慮合法性.網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)是網(wǎng)絡(luò)取證過(guò)程中取證分析這一項(xiàng)活動(dòng)中用到的具體技術(shù),單靠某項(xiàng)具體的技術(shù)是無(wú)法達(dá)到合法性要求的,過(guò)程的合法性才是證據(jù)的可采性審查的關(guān)鍵,這就要求結(jié)合網(wǎng)絡(luò)取證過(guò)程設(shè)計(jì)來(lái)彌補(bǔ)具體技術(shù)在合法性上的缺失.合法性問(wèn)題將在第4 節(jié)進(jìn)一步分析;
(3)可靠性支持較弱.可靠性是指取證各個(gè)環(huán)節(jié)的可靠性,此類(lèi)追蹤溯源技術(shù)產(chǎn)生的電子數(shù)據(jù)證據(jù)除了日志信息還有部分實(shí)時(shí)網(wǎng)絡(luò)流量數(shù)據(jù),除了考慮數(shù)據(jù)本身的可靠性,還需要考慮傳輸過(guò)程的可靠性,而電子數(shù)據(jù)證據(jù)的收集和存儲(chǔ)環(huán)節(jié)的可靠性一般由取證人員負(fù)責(zé).數(shù)據(jù)本身的可靠性和真實(shí)性、完整性相關(guān),因其真實(shí)性和完整性支持較弱,故而可靠性較弱.而標(biāo)記數(shù)據(jù)包在傳輸過(guò)程中因無(wú)任何安全機(jī)制,可被攻擊者截獲并篡改,也導(dǎo)致可靠性較弱;
(4)真實(shí)性支持較弱.因?yàn)閔ash 值和BF 技術(shù)的使用,會(huì)因hash 沖突為日志信息帶來(lái)一定的錯(cuò)誤率;
(5)完整性支持較弱.因?yàn)槁酚善鞔鎯?chǔ)能力有限且日志沒(méi)有安全機(jī)制加以保障,導(dǎo)致日志信息因被覆蓋而遺失,還可能遭受攻擊篡改;
(6)非易失性支持較弱.因?yàn)閮H有部分路徑信息被以日志信息的形式儲(chǔ)存在路由器端.
Table 5 Forensics capabilities and improvements of hybrid cyber attack traceback techniques表5 混合追蹤溯源技術(shù)取證能力和改進(jìn)
3.5.5 取證能力改進(jìn)建議
混合追蹤溯源技術(shù)取證能力在真實(shí)性、完整性、可靠性和非易失性這4 方面的改進(jìn)建議與第3.2.5 節(jié)和第3.3.5 節(jié)所述相同,這里不再贅述.
網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)綜合對(duì)比分析見(jiàn)表6
Table 6 Comprehensive comparative analysis of cyber attack traceback techniques表6 網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)綜合對(duì)比分析
基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)和基于SDN 的日志追蹤溯源技術(shù)是存儲(chǔ)開(kāi)銷(xiāo)型技術(shù),基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)是計(jì)算開(kāi)銷(xiāo)型技術(shù),混合追蹤溯源技術(shù)則在存儲(chǔ)開(kāi)銷(xiāo)和計(jì)算開(kāi)銷(xiāo)中取得折中.基于SDN 的日志追蹤溯源技術(shù)與傳統(tǒng)網(wǎng)絡(luò)兼容性較差,其他3 種追蹤溯源技術(shù)則都是基于傳統(tǒng)網(wǎng)絡(luò)架構(gòu)進(jìn)行設(shè)計(jì)的.當(dāng)追蹤溯源跨越自治域時(shí),只有基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)不需要獲得ISP 的支持,這使得在有些嚴(yán)苛的網(wǎng)絡(luò)環(huán)境下取證僅有這類(lèi)技術(shù)可行.可見(jiàn),每一種網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)都有其自身的弱點(diǎn)和適用性,這為網(wǎng)絡(luò)取證架構(gòu)選取何種網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)提供了參考.
而這4 類(lèi)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)均無(wú)法完全滿(mǎn)足取證能力要求,普遍在可靠性、完整性方面有所欠缺,且基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)和混合追蹤溯源技術(shù)對(duì)非易失性支持欠佳.這為網(wǎng)絡(luò)取證架構(gòu)從何種角度進(jìn)行優(yōu)化提供了思路.
網(wǎng)絡(luò)取證過(guò)程是為了完成網(wǎng)絡(luò)取證任務(wù),將相互聯(lián)系的各個(gè)活動(dòng)進(jìn)行排列組合所組成的體系.前文提到的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)是網(wǎng)絡(luò)取證過(guò)程中取證分析這一項(xiàng)活動(dòng)中用到的具體技術(shù),單靠具體技術(shù)是無(wú)法達(dá)到合法性要求的,過(guò)程的合法性才是證據(jù)的可采性審查的關(guān)鍵,因而需要結(jié)合網(wǎng)絡(luò)取證過(guò)程設(shè)計(jì)來(lái)彌補(bǔ)具體技術(shù)在合法性上的不足.
取證過(guò)程可能因取證條件、取證對(duì)象來(lái)源、取證措施適用等要求的不同而有所不同,目前還沒(méi)有一個(gè)針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程.為此,本節(jié)將通過(guò)分析現(xiàn)有的網(wǎng)絡(luò)取證過(guò)程模型的發(fā)展,指出其在網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景下的不足之處,并初步提出針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型,為彌補(bǔ)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)在合法性上的不足提供參考.
自2001 年開(kāi)始,就有專(zhuān)家學(xué)者陸續(xù)提出各種通用電子數(shù)據(jù)取證過(guò)程模型,這些通用過(guò)程模型同樣也適用于網(wǎng)絡(luò)環(huán)境.文獻(xiàn)[8]首次提出了一個(gè)線性過(guò)程模型概念,奠定了電子數(shù)據(jù)取證過(guò)程模型的基礎(chǔ),文獻(xiàn)[79]對(duì)其內(nèi)涵進(jìn)行了完善和補(bǔ)充.該電子數(shù)據(jù)取證過(guò)程模型包括如下階段.
(1)識(shí)別.從指示器識(shí)別事件并確定其類(lèi)型;
(2)保存.隔離、保護(hù)和保存物理證據(jù)和數(shù)字證據(jù)的狀態(tài);
(3)收集.使用標(biāo)準(zhǔn)和認(rèn)可的程序記錄物理場(chǎng)景和復(fù)制的數(shù)字證據(jù);
(4)檢查.對(duì)涉嫌犯罪的證據(jù)進(jìn)行深入、系統(tǒng)的搜查,重點(diǎn)是識(shí)別和定位潛在的證據(jù),并為分析構(gòu)建詳細(xì)的文檔;
(5)分析.確定重要性,重建數(shù)據(jù)片段,根據(jù)發(fā)現(xiàn)的證據(jù)得出結(jié)論;
(6)展示.總結(jié)和解釋結(jié)論;
(7)決策.根據(jù)分析報(bào)告進(jìn)行決策.
同時(shí),文獻(xiàn)[79]也指出了該模型的缺點(diǎn):過(guò)程模型過(guò)于寬泛而不適用于實(shí)際使用;沒(méi)有簡(jiǎn)單或明顯的方法來(lái)測(cè)試該模型的有效性;模型中沒(méi)有一個(gè)明顯的監(jiān)督鏈,而監(jiān)督鏈對(duì)保持電子數(shù)據(jù)證據(jù)的完整性具有重要意義.改進(jìn)的模型被陸續(xù)提出[80-88].
但是,直到2005 年,文獻(xiàn)[89]才首次提出網(wǎng)絡(luò)取證的通用過(guò)程模型,該模型提出以下6 個(gè)階段.
(1)捕獲.從數(shù)據(jù)源獲取數(shù)據(jù).數(shù)據(jù)源包括中間節(jié)點(diǎn)和受害端節(jié)點(diǎn)數(shù)據(jù).捕獲數(shù)據(jù)不能破壞隱私,而且被監(jiān)視的網(wǎng)絡(luò)不應(yīng)知道捕獲;
(2)復(fù)制.將原始數(shù)據(jù)逐位復(fù)制到只讀媒體、傳輸網(wǎng)絡(luò)或分析機(jī)器上;
(3)傳輸.將復(fù)制的數(shù)據(jù)傳輸?shù)饺∽C分析機(jī),傳輸安全必須得到保證;
(4)分析.包括數(shù)據(jù)篩選、元分析和綜合分析,如IP 包統(tǒng)計(jì)分析、協(xié)議分析、會(huì)話分析等;
(5)調(diào)查.利用各種追蹤溯源工具和技術(shù)定位攻擊源和攻擊者;
(6)陳述.陳述結(jié)論和得出結(jié)論的步驟.
美國(guó)國(guó)家技術(shù)標(biāo)準(zhǔn)局(National Institute of Standards and Technology)指出:取證的目的除了為法律程序和內(nèi)部紀(jì)律行動(dòng)收集證據(jù),還包括應(yīng)急響應(yīng)[90].文獻(xiàn)[91]認(rèn)為,應(yīng)急響應(yīng)和計(jì)算機(jī)取證流程雖然不同,但其目標(biāo)相似,其將應(yīng)急響應(yīng)和計(jì)算機(jī)取證過(guò)程相結(jié)合,提供了一個(gè)通用的模型.而文獻(xiàn)[92]將應(yīng)急響應(yīng)也加入到網(wǎng)絡(luò)取證過(guò)程模型中來(lái),使得網(wǎng)絡(luò)取證過(guò)程模型更加完善.該網(wǎng)絡(luò)取證過(guò)程模型包括準(zhǔn)備、檢測(cè)、應(yīng)急響應(yīng)、收集、保存、檢查、分析、調(diào)查和展示9 個(gè)過(guò)程.文獻(xiàn)[93]在此基礎(chǔ)上作了進(jìn)一步的改進(jìn),提出在第1 步增加認(rèn)證階段,認(rèn)證階段需要獲得相關(guān)部門(mén)的法律許可,以啟動(dòng)調(diào)查過(guò)程,以此來(lái)保證取證過(guò)程的合法性;并且,提出在收集階段之前需要增加策略規(guī)劃過(guò)程,規(guī)劃人員投入、時(shí)間投入、所涉及的成本使用何種工具等.
然而,現(xiàn)有的網(wǎng)絡(luò)取證模型無(wú)法很好地支持網(wǎng)絡(luò)攻擊追蹤溯源的場(chǎng)景,其面臨著以下3 個(gè)方面的難題.
(1)現(xiàn)有的網(wǎng)絡(luò)取證過(guò)程模型設(shè)計(jì)都是基于網(wǎng)絡(luò)流量的提取和分析,數(shù)據(jù)流體量過(guò)大導(dǎo)致取證效率低下.通過(guò)第3 節(jié)的分析可知:在網(wǎng)絡(luò)攻擊追蹤溯源過(guò)程中,數(shù)據(jù)源還可以是路由器上的日志信息或者網(wǎng)絡(luò)數(shù)據(jù)包中的標(biāo)記信息,具有不同的時(shí)效性.不同的數(shù)據(jù)源提取策略和提取的時(shí)機(jī)有所不同,不能一概而論;
(2)攻擊路徑的重構(gòu)屬于調(diào)查階段,而在基于概率包標(biāo)記的追蹤溯源算法中,攻擊路徑的重構(gòu)與數(shù)據(jù)收集階段相互制約,其制約關(guān)系未體現(xiàn)在已有的過(guò)程模型中;
(3)追蹤溯源和應(yīng)急響應(yīng)之間存在博弈,尤其是基于概率包標(biāo)記方法的追蹤溯源需要收集大量的數(shù)據(jù)包才能恢復(fù)出完整的攻擊路徑,導(dǎo)致追蹤溯源時(shí)間跨度較大;而應(yīng)急響應(yīng)則一般在檢測(cè)到攻擊的第一時(shí)間就阻斷攻擊,導(dǎo)致沒(méi)有足夠的攜帶標(biāo)記的數(shù)據(jù)包來(lái)進(jìn)行攻擊路徑重構(gòu).
為此,本文提出針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型,該模型能夠更好地適用于網(wǎng)絡(luò)攻擊追蹤溯源的場(chǎng)景,同時(shí)滿(mǎn)足取證能力評(píng)估指標(biāo)中的合法性和可靠性.該網(wǎng)絡(luò)取證過(guò)程模型包括如下12 個(gè)階段.
(1)認(rèn)證.獲得相關(guān)部門(mén)的法律許可,以保證取證過(guò)程的合法性.尤其是在跨ISP 的網(wǎng)絡(luò)環(huán)境中,認(rèn)證許可更加重要;
(2)準(zhǔn)備.在網(wǎng)絡(luò)關(guān)鍵節(jié)點(diǎn)部署入侵檢測(cè)系統(tǒng)、數(shù)據(jù)包分析儀、防火墻、流量監(jiān)測(cè)等網(wǎng)絡(luò)探針和摸排路由器對(duì)追蹤溯源技術(shù)的支持情況;
(3)預(yù)收集.追蹤溯源電子數(shù)據(jù)證據(jù)收集.在追蹤獲取系統(tǒng)權(quán)限攻擊和網(wǎng)絡(luò)嗅探等攻擊時(shí),因攻擊數(shù)據(jù)流很小,往往檢測(cè)到異常時(shí)攻擊可能已經(jīng)結(jié)束,此時(shí)需要預(yù)先收集攻擊數(shù)據(jù)包以免缺失;
(4)檢測(cè).入侵檢測(cè)系統(tǒng)檢測(cè)到入侵或者異常并告警,同時(shí)可觸發(fā)網(wǎng)絡(luò)攻擊追蹤溯源過(guò)程;
(5)決策.根據(jù)檢測(cè)結(jié)果和采用的追蹤溯源手段,對(duì)接下來(lái)的流程進(jìn)行決策;
(6)應(yīng)急響應(yīng).根據(jù)檢測(cè)結(jié)果或者調(diào)查結(jié)果進(jìn)行應(yīng)急響應(yīng);
(7)容忍.在一個(gè)安全的環(huán)境下繼續(xù)收集數(shù)據(jù)而不影響原網(wǎng)絡(luò)行為[94],一般通過(guò)引流或者流量鏡像的方法來(lái)實(shí)現(xiàn);
(8)收集.收集追蹤溯源電子數(shù)據(jù)證據(jù)、網(wǎng)絡(luò)拓?fù)涞刃畔?
(9)保存.將收集的電子數(shù)據(jù)證據(jù)保全后進(jìn)行儲(chǔ)存;
(10)分析.對(duì)電子數(shù)據(jù)證據(jù)進(jìn)行分析,包括對(duì)指標(biāo)進(jìn)行分類(lèi)和關(guān)聯(lián),以使用現(xiàn)有的攻擊模式推斷重要的觀察結(jié)果.相比檢測(cè)階段,能夠更加準(zhǔn)確地判斷攻擊類(lèi)型、攻擊目的等;
(11)調(diào)查.根據(jù)收集的電子數(shù)據(jù)證據(jù)重構(gòu)攻擊路徑,并根據(jù)結(jié)果反饋決策階段;
(12)展示.將以上結(jié)果以可理解的語(yǔ)言向法律人員展示,同時(shí)解釋得出結(jié)論所使用的各種程序.
針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程邏輯如圖4 所示,其中,決策過(guò)程是該過(guò)程模型的核心,其工作流程大致如下.
(1)如果采用的是基于包標(biāo)記的方法,為了保證收集足夠多的數(shù)據(jù)包,需要對(duì)攻擊進(jìn)行容忍;
(2)如果是基于包記錄方法,則可直接進(jìn)入收集階段;
(3)決策過(guò)程需要調(diào)查過(guò)程進(jìn)行交互,以根據(jù)攻擊路徑重構(gòu)效果來(lái)決定何時(shí)可以完成溯源進(jìn)入應(yīng)急響應(yīng)階段.如果追蹤溯源結(jié)束,則停止數(shù)據(jù)收集進(jìn)入應(yīng)急響應(yīng)階段;
(4)如果不滿(mǎn)足繼續(xù)追蹤溯源的條件,則回到準(zhǔn)備階段.
該過(guò)程模型通過(guò)提出預(yù)收集階段來(lái)實(shí)現(xiàn)主動(dòng)數(shù)據(jù)收集的目的,將追蹤溯源時(shí)機(jī)盡可能地提前,以解決對(duì)少量數(shù)據(jù)包攻擊類(lèi)型的追蹤溯源,并通過(guò)容忍階段來(lái)延長(zhǎng)數(shù)據(jù)收集過(guò)程,收集足夠重構(gòu)攻擊路徑的數(shù)據(jù)包,從而解決上述的難題(1).該模型提出決策階段以協(xié)調(diào)數(shù)據(jù)收集和調(diào)查,當(dāng)調(diào)查階段重構(gòu)出完整的攻擊路徑時(shí)即可停止數(shù)據(jù)收集,以解決上述的難題(2).同時(shí),該模型通過(guò)決策階段來(lái)決定是否采取容忍機(jī)制或進(jìn)入應(yīng)急響應(yīng)階段以保障調(diào)查階段攻擊路徑重構(gòu)的成功,同時(shí)保證系統(tǒng)的安全性,以解決上述的難題(3),從而實(shí)現(xiàn)一個(gè)網(wǎng)絡(luò)攻擊追蹤溯源支持良好的網(wǎng)絡(luò)取證過(guò)程模型.
Fig.4 Schematic diagram of the network forensics process model for cyber attack traceback圖4 針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型示意圖
文獻(xiàn)[95]提出,取證過(guò)程規(guī)范與否,是檢驗(yàn)取證結(jié)果“合法性”程度的重要標(biāo)準(zhǔn),規(guī)范的取證過(guò)程模型設(shè)計(jì)應(yīng)滿(mǎn)足適用性、科學(xué)性、合理性等要求.文獻(xiàn)[96]基于大量現(xiàn)有取證過(guò)程模型總結(jié)出取證過(guò)程模型在步驟設(shè)計(jì)和過(guò)程安排上的共有特性,并在此基礎(chǔ)上提出了取證過(guò)程規(guī)范化評(píng)估方法.即,一個(gè)滿(mǎn)足規(guī)范化要求的取證過(guò)程模型應(yīng)完全覆蓋準(zhǔn)備、收集與保存、檢驗(yàn)與分析、報(bào)告與提交以及結(jié)束與后處理這5 類(lèi)活動(dòng)指標(biāo).對(duì)這5 類(lèi)活動(dòng)指標(biāo)的釋義見(jiàn)表7,這5 類(lèi)活動(dòng)的具體內(nèi)容會(huì)因取證場(chǎng)景的不同而有所不同.
Table 7 Index definition of standardization evaluation method for forensics process model表7 取證過(guò)程模型規(guī)范化評(píng)估方法指標(biāo)釋義
本文基于該評(píng)估方法對(duì)針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型進(jìn)行評(píng)估.由第4.2 節(jié)對(duì)各階段活動(dòng)的解釋可知:本模型中的認(rèn)證、準(zhǔn)備、檢測(cè)、應(yīng)急響應(yīng)這4 個(gè)階段均是取證準(zhǔn)備活動(dòng),預(yù)收集、決策、容忍、收集和保存這5 個(gè)階段共同完成了收集和保存活動(dòng),分析和調(diào)查階段完成了檢驗(yàn)與分析活動(dòng),展示階段完成了報(bào)告提交活動(dòng),決策階段同時(shí)負(fù)責(zé)結(jié)束與后處理活動(dòng),見(jiàn)表8.該取證過(guò)程模型能夠完整地覆蓋規(guī)范化設(shè)計(jì)的5項(xiàng)指標(biāo),因而滿(mǎn)足取證過(guò)程規(guī)范化要求.
Table 8 Standardization assessment of network forensics process targeting at cyber attack traceback表8 針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型規(guī)范化評(píng)估
Table 8 Standardization assessment of network forensics process targeting at cyber attack traceback (Continued)表8 針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型規(guī)范化評(píng)估(續(xù))
本文從網(wǎng)絡(luò)取證的角度對(duì)網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)進(jìn)行了研究綜述,主要貢獻(xiàn)包括:基于電子數(shù)據(jù)證據(jù)可采性標(biāo)準(zhǔn)和證明力標(biāo)準(zhǔn)的5 個(gè)方面和非易失性能力提出了一套六維的取證能力評(píng)估指標(biāo);分析了基于日志存儲(chǔ)查詢(xún)的追蹤溯源技術(shù)、基于數(shù)據(jù)包標(biāo)記的追蹤溯源技術(shù)、基于SDN 的日志追蹤溯源技術(shù)和混合追蹤溯源技術(shù);基于取證能力評(píng)估指標(biāo)分析了網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的取證能力,對(duì)其不足給出改進(jìn)建議;分析了現(xiàn)有網(wǎng)絡(luò)取證過(guò)程模型在追蹤溯源場(chǎng)景下的不足,并提出了針對(duì)網(wǎng)絡(luò)攻擊追蹤溯源場(chǎng)景的網(wǎng)絡(luò)取證過(guò)程模型,通過(guò)結(jié)合網(wǎng)絡(luò)取證過(guò)程與網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)以進(jìn)一步提高整體取證能力.本文的工作為面向網(wǎng)絡(luò)取證的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的研究提供了參考.
通過(guò)本文的分析可以發(fā)現(xiàn):
? 網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)在實(shí)際應(yīng)用中面臨的挑戰(zhàn)包括存儲(chǔ)開(kāi)銷(xiāo)、計(jì)算開(kāi)銷(xiāo)和網(wǎng)絡(luò)帶寬開(kāi)銷(xiāo)過(guò)大等等.而為了發(fā)揮網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)在網(wǎng)絡(luò)取證方面的作用,需要完善其取證能力,這勢(shì)必會(huì)增加相應(yīng)的開(kāi)銷(xiāo).如文獻(xiàn)[65]提出的數(shù)據(jù)包標(biāo)記方法在PPM 方法的基礎(chǔ)上增加了時(shí)間戳等標(biāo)記信息和加密運(yùn)算可以增強(qiáng)其取證能力,但卻導(dǎo)致標(biāo)記信息大小從PPM 方法的72bits 增加到了256bits,由此帶來(lái)的網(wǎng)絡(luò)帶寬消耗增加了3 倍多.類(lèi)似的矛盾進(jìn)一步影響到其實(shí)用性,因而,如何在兩者之間取得平衡,使得面向網(wǎng)絡(luò)取證的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)能夠具有實(shí)用性,是未來(lái)研究的重點(diǎn)之一;
? 因?yàn)閭鹘y(tǒng)網(wǎng)絡(luò)體系結(jié)構(gòu)和網(wǎng)絡(luò)協(xié)議的設(shè)計(jì)缺乏對(duì)網(wǎng)絡(luò)攻擊追蹤溯源和網(wǎng)絡(luò)取證的支持,導(dǎo)致網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)的設(shè)計(jì)存在較多的局限,如通過(guò)數(shù)據(jù)包標(biāo)記路徑信息可能會(huì)對(duì)數(shù)據(jù)包分片功能造成影響[36]等;現(xiàn)有技術(shù)過(guò)于依賴(lài)網(wǎng)絡(luò)基礎(chǔ)設(shè)備的支持,導(dǎo)致很多網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)無(wú)法落地應(yīng)用.即便在SDN 這類(lèi)新型的網(wǎng)絡(luò)架構(gòu)中,也只是對(duì)設(shè)備的依賴(lài)性有所緩解,因網(wǎng)絡(luò)體系結(jié)構(gòu)等設(shè)計(jì)帶來(lái)的挑戰(zhàn)依然存在.這就給下一代互聯(lián)網(wǎng)體系結(jié)構(gòu)設(shè)計(jì)帶來(lái)一些啟發(fā):是否需要在下一代互聯(lián)網(wǎng)體系結(jié)構(gòu)設(shè)計(jì)中實(shí)現(xiàn)對(duì)追蹤溯源和網(wǎng)絡(luò)取證的支持,是一個(gè)值得慎重考慮的問(wèn)題;
? 隨著物聯(lián)網(wǎng)的迅猛發(fā)展,其安全問(wèn)題日益突出,針對(duì)物聯(lián)網(wǎng)攻擊的追蹤溯源研究迫在眉睫.物聯(lián)網(wǎng)特有的傳感網(wǎng)絡(luò)[97]是物聯(lián)網(wǎng)安全的薄弱環(huán)節(jié),傳感網(wǎng)絡(luò)中廣泛存在的傳感節(jié)點(diǎn)極易成為攻擊者的攻擊目標(biāo).而傳感網(wǎng)絡(luò)結(jié)構(gòu)不同于傳統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu),現(xiàn)有的網(wǎng)絡(luò)攻擊追蹤溯源技術(shù)和取證技術(shù)不再適用于傳感網(wǎng)絡(luò),因而,基于物聯(lián)網(wǎng)攻擊的追蹤溯源和取證是一個(gè)新的課題、新的挑戰(zhàn),值得深入研究.