劉雪花 丁麗萍 劉文懋 鄭 濤 李彥峰 吳敬征
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(北京神州綠盟信息安全科技股份有限公司 北京 100089) 6(中國(guó)聯(lián)合網(wǎng)絡(luò)通信有限公司 北京 100033) 7(中國(guó)科學(xué)院軟件研究所智能軟件研究中心 北京 100190)
隨著云計(jì)算的發(fā)展與普及,云計(jì)算環(huán)境下的安全問(wèn)題日益突出.國(guó)家互聯(lián)網(wǎng)應(yīng)急中心發(fā)布的《2018我國(guó)互聯(lián)網(wǎng)網(wǎng)絡(luò)安全態(tài)勢(shì)綜述》[1]中提到云計(jì)算平臺(tái)成為發(fā)生網(wǎng)絡(luò)攻擊的重災(zāi)區(qū),云計(jì)算平臺(tái)上的分布式拒絕服務(wù)攻擊(distributed denial of service, DDoS)次數(shù)、被植入后門的網(wǎng)站數(shù)量、被篡改網(wǎng)站數(shù)量在各類型網(wǎng)絡(luò)安全事件中占比均超過(guò)50%.國(guó)內(nèi)主流云計(jì)算平臺(tái)上承載的惡意程序、木馬和僵尸網(wǎng)絡(luò)在境內(nèi)互聯(lián)網(wǎng)上占比超過(guò)50%,可見(jiàn)目前國(guó)內(nèi)云計(jì)算平臺(tái)上的安全形勢(shì)異常嚴(yán)峻,云安全問(wèn)題成為阻礙云計(jì)算發(fā)展的關(guān)鍵因素.然而,無(wú)論事前防護(hù)做得多么完備,云安全問(wèn)題都不可能杜絕,為了維護(hù)云服務(wù)提供商、云用戶的正當(dāng)權(quán)益,威脅打擊云計(jì)算環(huán)境下各類違法犯罪活動(dòng),除了常見(jiàn)的安全防護(hù)手段,更需要云取證技術(shù)手段來(lái)進(jìn)行事后追責(zé)和懲治.
電子數(shù)據(jù)取證是指科學(xué)地運(yùn)用提取和證明方法,對(duì)于從電子數(shù)據(jù)源提取的電子證據(jù)進(jìn)行保護(hù)、收集、驗(yàn)證、鑒定、分析、解釋、存檔和出示,以有助于進(jìn)一步的犯罪事件重構(gòu)或者幫助識(shí)別某些與計(jì)劃操作無(wú)關(guān)的非授權(quán)性活動(dòng)[2].云取證是對(duì)云計(jì)算環(huán)境中各類違反犯罪活動(dòng)進(jìn)行電子數(shù)據(jù)取證的過(guò)程,是電子數(shù)據(jù)取證技術(shù)在云計(jì)算環(huán)境這樣一個(gè)特定的場(chǎng)景下的應(yīng)用[3],云取證可以細(xì)分為網(wǎng)絡(luò)取證、云計(jì)算平臺(tái)取證和云終端取證.網(wǎng)絡(luò)取證是抓取、記錄和分析網(wǎng)絡(luò)事件以發(fā)現(xiàn)安全攻擊或安全事件的來(lái)源,網(wǎng)絡(luò)取證的目的是保護(hù)用戶和資源、防范因網(wǎng)絡(luò)連接和數(shù)據(jù)傳輸而產(chǎn)生的被非法利用、入侵以及其他犯罪行為[4].云計(jì)算平臺(tái)取證按照云服務(wù)模式可分為基礎(chǔ)設(shè)施即服務(wù)(infrastructure as a service, IaaS)取證、平臺(tái)即服務(wù)(platform as a service, PaaS)取證和軟件即服務(wù)(software as a service, SaaS)取證,主要是對(duì)被攻擊的云用戶系統(tǒng)所在虛擬機(jī)進(jìn)行取證,目的是維護(hù)云服務(wù)提供商、云用戶的正當(dāng)權(quán)益,威脅打擊云計(jì)算環(huán)境下各類違法犯罪活動(dòng).云終端取證是對(duì)云用戶客戶端的取證,客戶端存有一些緩存數(shù)據(jù)和離線數(shù)據(jù),這些數(shù)據(jù)也有助于案情分析,一般作為云取證的一種補(bǔ)充手段,目的是盡可能多地提取涉案電子證據(jù).本文從云服務(wù)商的角度出發(fā),在下文中提及的云取證主要涉及云網(wǎng)絡(luò)取證和云計(jì)算平臺(tái)取證.總之,云取證需要云網(wǎng)絡(luò)取證與云計(jì)算平臺(tái)取證相結(jié)合才能最大限度地保證電子證據(jù)的完整性.
云取證技術(shù)發(fā)展尚不完善,云取證技術(shù)面臨諸多難題:
1) 云計(jì)算環(huán)境中80%的網(wǎng)絡(luò)流量是云計(jì)算環(huán)境內(nèi)部的東西向流量,部署在外部交換機(jī)上的網(wǎng)絡(luò)取證設(shè)備無(wú)法捕獲東西向流量,導(dǎo)致網(wǎng)絡(luò)取證設(shè)備提取的電子數(shù)據(jù)不完整.
2) 云計(jì)算環(huán)境下數(shù)據(jù)采用分布式存儲(chǔ),數(shù)據(jù)可能分散存儲(chǔ)于不同的物理數(shù)據(jù)中心,而這些數(shù)據(jù)中心可能位于不同的司法管轄范圍內(nèi),這種情況下針對(duì)物理設(shè)備的事后取證方法面臨數(shù)據(jù)定位和提取困難[5].
3) 虛擬化技術(shù)會(huì)頻繁的回收和再分配各類資源,導(dǎo)致云計(jì)算平臺(tái)中的數(shù)據(jù)成為易失性數(shù)據(jù),一旦被釋放回收,將難以恢復(fù),導(dǎo)致傳統(tǒng)事后取證方法提取的電子數(shù)據(jù)不完整[5].
4) 由于云計(jì)算中資源的所有權(quán)、管理權(quán)和使用權(quán)的分離使得云用戶失去了對(duì)物理資源的直接控制,這其中也包括對(duì)網(wǎng)絡(luò)環(huán)境的控制與訪問(wèn),導(dǎo)致云用戶無(wú)法在網(wǎng)絡(luò)層進(jìn)行取證[5].
5) 云計(jì)算環(huán)境的證據(jù)提取技術(shù)智能化程度較低,大多靠手動(dòng)取證,人力成本大、效率低下,使得云取證技術(shù)在實(shí)際應(yīng)用中更加困難.
可以看出,云計(jì)算環(huán)境為取證帶來(lái)的難題主要來(lái)自數(shù)據(jù)獲取和取證效率等方面.本文針對(duì)這些難題,提出一種基于軟件定義安全和云取證趨勢(shì)分析的智能云取證方法,主要貢獻(xiàn)有4個(gè)方面:
1) 提出基于軟件定義安全的云取證架構(gòu)(soft-ware defined security based cloud forensics frame-work, SDS-CF),借鑒軟件定義安全的分層理念,將取證分為數(shù)據(jù)層、控制層與應(yīng)用層.一方面通過(guò)分層實(shí)現(xiàn)入侵檢測(cè)和云取證等安全服務(wù)的集中管理,在此基礎(chǔ)上實(shí)現(xiàn)云網(wǎng)絡(luò)與云計(jì)算平臺(tái)的協(xié)同實(shí)時(shí)取證,在安全事件發(fā)生的第一時(shí)間進(jìn)行在線電子證據(jù)提取、保全與存證,從而有效規(guī)避事后取證方法面臨的種種難題.一方面通過(guò)對(duì)軟件定義網(wǎng)絡(luò)(software defined network, SDN)網(wǎng)絡(luò)控制器的引流控制,實(shí)現(xiàn)云網(wǎng)絡(luò)東西向流量的取證.一方面通過(guò)分層實(shí)現(xiàn)可定制化云網(wǎng)絡(luò)取證服務(wù),滿足云用戶網(wǎng)絡(luò)取證需求.
2) 提出了云取證趨勢(shì)的概念并進(jìn)行形式化定義,云取證趨勢(shì)是指在云網(wǎng)絡(luò)環(huán)境中獲取并理解云網(wǎng)絡(luò)安全事件告警信息,從而實(shí)時(shí)預(yù)測(cè)云取證趨勢(shì),為實(shí)現(xiàn)智能云取證提供了理論支持.
3) 提出了基于隱Markov模型(hidden Markov model, HMM)的云取證趨勢(shì)分析算法和基于改進(jìn)告警質(zhì)量的入侵檢測(cè)系統(tǒng)(intrusion detection system, IDS)告警選擇算法,將該算法運(yùn)用于SDS-CF中進(jìn)行取證策略智能決策和取證資源智能調(diào)度,實(shí)現(xiàn)智能云取證.同時(shí),為了對(duì)取證趨勢(shì)分析算法的效果進(jìn)行量化評(píng)估,提出了取證能力和取證開(kāi)銷2個(gè)指標(biāo).
4) 在仿真云計(jì)算平臺(tái)上基于林肯實(shí)驗(yàn)室的經(jīng)典數(shù)據(jù)集LLDOS1.0進(jìn)行取證實(shí)驗(yàn),通過(guò)實(shí)驗(yàn)結(jié)果證明基于軟件定義安全和云取證趨勢(shì)分析的智能云取證方法取證能力相比單獨(dú)的網(wǎng)絡(luò)取證或者云計(jì)算平臺(tái)取證提高至91.6%,取證開(kāi)銷則介于兩者之間,在取證能力與取證開(kāi)銷之間取得較好平衡.該方法對(duì)云服務(wù)商提供云取證服務(wù)具有廣泛的借鑒意義.
本文從云服務(wù)商的角度出發(fā),云取證主要涉及網(wǎng)絡(luò)取證和云計(jì)算平臺(tái)取證.本節(jié)將對(duì)這2方面的工作進(jìn)行概述.
網(wǎng)絡(luò)取證技術(shù)出現(xiàn)在云計(jì)算以前,研究相對(duì)比較成熟,提出的研究方法也很多,文獻(xiàn)[6-7]中均有較為詳細(xì)的綜述.其中與本文相關(guān)的研究工作包括基于入侵檢測(cè)的網(wǎng)絡(luò)取證技術(shù)研究和網(wǎng)絡(luò)攻擊溯源取證技術(shù)研究.
在進(jìn)行網(wǎng)絡(luò)取證時(shí),何時(shí)觸發(fā)取證系統(tǒng)進(jìn)行數(shù)據(jù)的提取非常關(guān)鍵,決定網(wǎng)絡(luò)取證是否滿足電子證據(jù)的完整性.為此,網(wǎng)絡(luò)取證常與網(wǎng)絡(luò)監(jiān)控相結(jié)合,其中又以入侵檢測(cè)告警為主要的取證判斷依據(jù)[8].此外,入侵檢測(cè)告警本身也是網(wǎng)絡(luò)取證分析的對(duì)象;文獻(xiàn)[9]提出基于入侵檢測(cè)的網(wǎng)絡(luò)取證方法,該方法基于靜態(tài)分析和動(dòng)態(tài)分析相結(jié)合的多維取證分析,對(duì)提取到的網(wǎng)絡(luò)日志進(jìn)行分析,從而識(shí)別出數(shù)據(jù)包中的惡意行為;文獻(xiàn)[10]提出基于統(tǒng)一威脅管理和入侵檢測(cè)探針的協(xié)同網(wǎng)絡(luò)安全管理系統(tǒng),將多個(gè)子網(wǎng)探針的入侵檢測(cè)告警數(shù)據(jù)匯集起來(lái)進(jìn)行取證分析,能有效地檢出僵尸網(wǎng)絡(luò)和DDoS攻擊并進(jìn)行取證分析;文獻(xiàn)[11]提出了一個(gè)入侵檢測(cè)分析架構(gòu)和一個(gè)概率推理機(jī)制,通過(guò)這個(gè)推理機(jī)制對(duì)入侵檢測(cè)告警進(jìn)行解釋,并自動(dòng)生成最大似然取證分析報(bào)告.
識(shí)別攻擊數(shù)據(jù)包源頭的過(guò)程叫做溯源,又叫IP地址溯源,溯源取證對(duì)DDoS攻擊、IP spoofing攻擊和僵尸網(wǎng)絡(luò)的取證分析非常有效[12-14];早期溯源取證多基于網(wǎng)絡(luò)數(shù)據(jù)包標(biāo)記[15-17]或者網(wǎng)絡(luò)設(shè)備日志分析[18],溯源分析效率較低;而隨著SDN網(wǎng)絡(luò)的流行[19],為溯源取證提供了極大的便利,因?yàn)镾DN網(wǎng)絡(luò)控制器可以作為一個(gè)觀測(cè)點(diǎn)給出網(wǎng)絡(luò)流的全局圖[20];因此很多學(xué)者基于SDN網(wǎng)絡(luò)提出了新的網(wǎng)絡(luò)取證分析方法,文獻(xiàn)[21]提出了一個(gè)基于SDN網(wǎng)絡(luò)的有向圖模型,通過(guò)該圖模型能檢測(cè)一條異常流在該SDN網(wǎng)絡(luò)中的入口點(diǎn),也就是第一步路由,且不用監(jiān)控IP地址就能找到和攻擊相關(guān)的所有的流,該模型提高了SDN網(wǎng)絡(luò)的溯源取證效率;文獻(xiàn)[22]提出在SDN網(wǎng)絡(luò)增加一個(gè)取證管理層(forensics manage layer, FML),通過(guò)FML對(duì)SDN網(wǎng)絡(luò)中的各種攻擊進(jìn)行實(shí)時(shí)分析和取證,從而降低SDN控制器的分析負(fù)載;文獻(xiàn)[23]則提出一種SDN網(wǎng)絡(luò)環(huán)境下的支持反取證的攻擊模型,該攻擊模型基于SDNMap掃描器實(shí)現(xiàn),能夠在不知道SDN控制器信息和網(wǎng)絡(luò)結(jié)構(gòu)的前提下還原流規(guī)則和網(wǎng)絡(luò)策略,并通過(guò)這些信息構(gòu)造巧妙的攻擊流繞過(guò)訪問(wèn)控制列表(access control list, ACL)機(jī)制和取證設(shè)備.
云計(jì)算平臺(tái)取證技術(shù)是隨著云計(jì)算的發(fā)展而發(fā)展[24-25].其中與本文相關(guān)的研究包括云取證框架的研究和云計(jì)算平臺(tái)日志取證研究.
Ruan等人[26]在全球范圍發(fā)起了一項(xiàng)關(guān)于云取證關(guān)鍵問(wèn)題的調(diào)查,基于257位電子數(shù)據(jù)取證專家的問(wèn)卷調(diào)查,超過(guò)八成的專家認(rèn)為云取證領(lǐng)域最主要的研究方向是設(shè)計(jì)云取證模型.文獻(xiàn)[27-28]圍繞基于不同云服務(wù)模式的云取證模型研究進(jìn)行了綜述.文獻(xiàn)[29]提出一種IaaS云服務(wù)模型下的取證框架ICFF (IaaS cloud forensics framework),通過(guò)在虛擬機(jī)中安裝輕量取證代理進(jìn)行電子證據(jù)的提取,并設(shè)計(jì)取證虛擬機(jī)用于證據(jù)存儲(chǔ)、保全和分析,保障證據(jù)數(shù)據(jù)的完整性及機(jī)密性;文獻(xiàn)[30]提出在IaaS模式下通過(guò)虛擬機(jī)自省進(jìn)行可疑行為發(fā)現(xiàn)和取證分析,具體使用到Swap分區(qū)分析,連續(xù)交付模式下的數(shù)據(jù)窺探、終止進(jìn)程分析等技術(shù);文獻(xiàn)[31]提出一種基于隱藏事件觸發(fā)機(jī)制的內(nèi)存取證方法 ForenHD,該方法也是利用虛擬機(jī)自省技術(shù)來(lái)監(jiān)視虛擬機(jī)中的內(nèi)核對(duì)象,當(dāng)發(fā)現(xiàn)了隱藏對(duì)象時(shí)則出發(fā)取證機(jī)制,提取代碼段等信息.
基于云計(jì)算平臺(tái)日志分析的方法依然是目前最主流的云計(jì)算平臺(tái)取證分析方法.文獻(xiàn)[32]分析了目前主流的云計(jì)算平臺(tái)日志分析方法,得出主要難點(diǎn)是云日志的獲取、云日志的選擇、云日志數(shù)據(jù)的完整性和可信性問(wèn)題,而且云日志取證分析依賴于云服務(wù)提供商;文獻(xiàn)[33]提出一種Secure-Logging-as-a-Service的云取證服務(wù),通過(guò)實(shí)時(shí)存儲(chǔ)虛擬機(jī)日志以保證日志的可靠性,并作為一種取證服務(wù)向司法鑒定人員開(kāi)放;文獻(xiàn)[32]為了保護(hù)云用戶日志的可靠性和隱私性,提供一種取證模型CLASS(cloud log assuring soundness and secrecy scheme),在實(shí)時(shí)提取云用戶日志的同時(shí)通過(guò)云用戶公鑰來(lái)加密云用戶日志,使得云用戶的隱私得到保護(hù),且采用PPL(proof of past log)算法來(lái)保護(hù)日志的完整性.
雖然網(wǎng)絡(luò)取證和云計(jì)算平臺(tái)取證的相關(guān)研究工作比較豐富,但是網(wǎng)絡(luò)取證方面針對(duì)云網(wǎng)絡(luò)環(huán)境的取證研究較少,缺乏東西流量的網(wǎng)絡(luò)取證方法,云計(jì)算平臺(tái)取證方面,針對(duì)智能取證的研究較少.且在實(shí)際工作中我們發(fā)現(xiàn)將網(wǎng)絡(luò)取證與云計(jì)算平臺(tái)取證分離開(kāi)來(lái),一方面會(huì)損失掉一些潛在的證據(jù)信息,不利于整個(gè)網(wǎng)絡(luò)犯罪過(guò)程的重建;另一方面取證開(kāi)銷較大,不利于實(shí)時(shí)取證.
本文提出一種基于軟件定義安全和云取證趨勢(shì)分析的智能云取證方法,一方面,通過(guò)借鑒軟件定義安全的分層理念實(shí)現(xiàn)云網(wǎng)絡(luò)與云計(jì)算平臺(tái)協(xié)同實(shí)時(shí)取證;另一方面,基于隱Markov模型的云取證趨勢(shì)分析算法實(shí)現(xiàn)智能云取證,該方法在取證能力與取證開(kāi)銷之間取得較好平衡,該方法為解決目前云取證面臨的電子證據(jù)不完整、取證開(kāi)銷較大、取證過(guò)程智能化不足等挑戰(zhàn)提供了一種思路.
本節(jié)提出了基于軟件定義安全的云取證架構(gòu)(software defined security based cloud forensics framework, SDS-CF),介紹了軟件定義安全理念,分析了SDS-CF的3層架構(gòu),總結(jié)了SDS-CF主要特點(diǎn),并進(jìn)一步分析了取證管理模塊工作流程.
Fig. 1 The SDS framework圖1 SDS架構(gòu)圖
軟件定義安全(software defined security, SDS)[34]這一理念從軟件定義網(wǎng)絡(luò)[35]引申而來(lái),其架構(gòu)如圖1所示,通過(guò)安全數(shù)據(jù)層與控制層分離,將各類網(wǎng)絡(luò)安全設(shè)備的接入模式、部署方式、實(shí)現(xiàn)功能進(jìn)行解耦.在數(shù)據(jù)層為各類安全設(shè)備定義標(biāo)準(zhǔn)的接口,屏蔽各個(gè)廠商同類安全設(shè)備的差異性,使得在控制層能夠?qū)Π踩O(shè)備進(jìn)行統(tǒng)一的管理和編程.應(yīng)用層支持對(duì)安全設(shè)備業(yè)務(wù)進(jìn)行軟件編程,從而實(shí)現(xiàn)智能化、自動(dòng)化的安全業(yè)務(wù)編排和管理,以定制較為復(fù)雜的自動(dòng)化的安全服務(wù)鏈.
文獻(xiàn)[34,36]總結(jié)了軟件定義安全架構(gòu)的3個(gè)核心特征:
1) 自動(dòng)化和智能化.軟件定義安全架構(gòu)將控制和管理進(jìn)行抽象并集中在控制層上,從而實(shí)現(xiàn)安全設(shè)備業(yè)務(wù)的可編程.
2) 開(kāi)放API.安全設(shè)備提供開(kāi)放的API接口打破了不同廠商安全設(shè)備互不兼容的局限,能有效增強(qiáng)不同安全設(shè)備廠商、不同安全設(shè)備之間的協(xié)作性.
3) 安全服務(wù)的編排.通過(guò)把原本相互獨(dú)立的、單一的安全服務(wù)進(jìn)行有效的編程組合,編排成一系列安全服務(wù)鏈,實(shí)現(xiàn)自動(dòng)安全運(yùn)維.
Fig. 2 The hierarchy graph of SDS-CF圖2 SDS-CF層次圖
軟件定義安全契合了云取證的部分需求:控制層與數(shù)據(jù)層的分離,一方面使得數(shù)據(jù)能快速聚合提高云取證的自動(dòng)化程度;另一方面取證本身也可以作為安全服務(wù)的一種通過(guò)控制層的統(tǒng)一封裝為用戶提供定制取證服務(wù);再一方面可以參與到安全服務(wù)的編排中,實(shí)現(xiàn)檢測(cè)、應(yīng)急響應(yīng)與取證的安全全生命周期服務(wù)鏈.
但軟件定義安全架構(gòu)有存在一些局限:一方面該架構(gòu)接入防護(hù)對(duì)象網(wǎng)絡(luò),只能提供網(wǎng)絡(luò)流量的取證服務(wù),無(wú)法提供云計(jì)算平臺(tái)的取證能力;另一方面該機(jī)制無(wú)法滿足電子證據(jù)可采性規(guī)則.
軟件定義安全理念一定程度上契合了云取證的需求,但無(wú)法完全滿足云取證的需求.為此我們借鑒軟件定義安全理念,結(jié)合網(wǎng)絡(luò)取證技術(shù)、虛擬機(jī)取證技術(shù)、區(qū)塊鏈存證技術(shù)等提出云取證架構(gòu)SDS-CF.
SDS-CF遵循軟件定義安全的層次結(jié)構(gòu),從下往上分為數(shù)據(jù)層、控制層和應(yīng)用層,如圖2中虛線框內(nèi)所示:
1) 數(shù)據(jù)層也稱為基礎(chǔ)設(shè)施層,在這一層,各種安全設(shè)備被抽象出來(lái),并通過(guò)接口供控制層面靈活調(diào)度,網(wǎng)絡(luò)取證設(shè)備和其他安全設(shè)備被池化以提供基本的安全服務(wù),網(wǎng)絡(luò)取證設(shè)備可根據(jù)具體業(yè)務(wù)動(dòng)態(tài)調(diào)整服務(wù)能力,以滿足不同取證場(chǎng)景的需求.數(shù)據(jù)層和控制層通過(guò)接口交互取證任務(wù)和網(wǎng)絡(luò)數(shù)據(jù)流等信息.
2) 控制層是該架構(gòu)的核心,主要負(fù)責(zé)取證管理、安全設(shè)備管理、各類安全策略決策和執(zhí)行.一方面與云計(jì)算平臺(tái)對(duì)接,通過(guò)取證管理模塊控制云計(jì)算平臺(tái)中的取證服務(wù)代理[29]協(xié)同執(zhí)行取證任務(wù);另一方面負(fù)責(zé)與SDN網(wǎng)絡(luò)控制器對(duì)接,獲取全局流信息用于攻擊溯源,并能控制網(wǎng)絡(luò)流量,將云計(jì)算環(huán)境中南北向流量和東西向流量鏡像至網(wǎng)絡(luò)取證設(shè)備.一方面通過(guò)網(wǎng)絡(luò)與區(qū)塊鏈存證平臺(tái)連接,將實(shí)時(shí)提取的電子數(shù)據(jù)的五要素(取證的時(shí)間、取證的地點(diǎn)、電子數(shù)據(jù)的Hash值、取證設(shè)備編號(hào)、取證人員)存至存證平臺(tái),利用區(qū)塊鏈技術(shù)[37]保障云取證的真實(shí)性.
3) 應(yīng)用層將取證服務(wù)抽象成服務(wù)單元,可根據(jù)云用戶需求提供定制的云網(wǎng)絡(luò)取證服務(wù).應(yīng)用層還可將取證服務(wù)加入安全服務(wù)鏈編排[38],實(shí)現(xiàn)云計(jì)算環(huán)境下檢測(cè)、應(yīng)急響應(yīng)與取證的安全全生命周期服務(wù)鏈.
通過(guò)SDS-CF的3層架構(gòu)概述總結(jié)出該架構(gòu)有3個(gè)特征:
1) 支持云網(wǎng)絡(luò)與云計(jì)算平臺(tái)實(shí)時(shí)協(xié)同取證.一方面通過(guò)分層實(shí)現(xiàn)入侵檢測(cè)和云取證等安全服務(wù)的集中管理,在此基礎(chǔ)上實(shí)現(xiàn)云網(wǎng)絡(luò)與云計(jì)算平臺(tái)的協(xié)同實(shí)時(shí)取證,在安全事件發(fā)生的第一時(shí)間進(jìn)行在線電子證據(jù)提取、保全與存證,從而有效規(guī)避事后取證方法面臨的種種難題.
2) 支持云計(jì)算環(huán)境內(nèi)東西向流量取證.通過(guò)對(duì)SDN網(wǎng)絡(luò)控制器的引流控制,實(shí)現(xiàn)云網(wǎng)絡(luò)東西向流量的取證.
3) 滿足電子證據(jù)可采性規(guī)則,要求取證滿足真實(shí)性、相關(guān)性與和合法性.該架構(gòu)通過(guò)云網(wǎng)絡(luò)與云計(jì)算平臺(tái)的實(shí)時(shí)協(xié)同取證能提取完整的相關(guān)電子證據(jù),滿足取證相關(guān)性;該架構(gòu)基于區(qū)塊鏈存證平臺(tái)實(shí)現(xiàn)電子證據(jù)的實(shí)數(shù)存證,滿足云取證的真實(shí)性,并為日后出具的司法鑒定報(bào)告的合法性提供支撐.
SDS-CF最核心的是取證管理模塊.其取證管理工作流程大致如圖3所示:
Fig. 3 The workflow of cloud forensics of SDS-CF圖3 SDS-CF的云取證工作流程圖
取證管理流程大致包括3個(gè)部分:
1) 云取證服務(wù)的觸發(fā)
云取證服務(wù)可以由云用戶發(fā)起,也可以由入侵檢測(cè)告警自動(dòng)觸發(fā).由云用戶主動(dòng)發(fā)起的取證服務(wù)往往已經(jīng)設(shè)置好取證各項(xiàng)參數(shù),通過(guò)解析之后進(jìn)入取證環(huán)節(jié).而入侵檢測(cè)告警觸發(fā)的自動(dòng)取證流程則要復(fù)雜得多,因IDS具有告警頻繁、數(shù)量龐大和誤報(bào)率高等特征,需要通過(guò)下文將提出的云取證趨勢(shì)分析階段來(lái)分析云取證狀態(tài)和預(yù)測(cè)云取證趨勢(shì),根據(jù)不都能通過(guò)的取證狀態(tài)出發(fā)取證服務(wù).
2) 云取證策略制定與取證資源調(diào)度
根據(jù)云取證趨勢(shì)分析算法進(jìn)行取證策略智能決和取證資源智能調(diào)度,以提高取證準(zhǔn)確度和降低取證開(kāi)銷.
3) 電子數(shù)據(jù)的提取與保全
網(wǎng)絡(luò)取證設(shè)備和云計(jì)算平臺(tái)取證代理根據(jù)取證策略進(jìn)行電子數(shù)據(jù)提提取,并實(shí)時(shí)生成電子證據(jù)五要素(取證的時(shí)間、取證的地點(diǎn)、電子證據(jù)的Hash值、取證設(shè)備編號(hào)、取證人員)提交至區(qū)塊鏈存證云進(jìn)行保全.
為了實(shí)現(xiàn)智能云取證,提高云取證效率.本節(jié)提出云取證趨勢(shì)概念,基于隱Markov模型進(jìn)行云取證趨勢(shì)形式化定義,并提出云取證趨勢(shì)分析算法.為了對(duì)取證趨勢(shì)分析算法中的觀測(cè)序列選擇進(jìn)行優(yōu)化,提出基于改進(jìn)告警質(zhì)量的IDS告警選擇算法.通過(guò)將云取證趨勢(shì)分析算法應(yīng)用于第2節(jié)中提出的SDS-CF架構(gòu)實(shí)現(xiàn)智能取證.同時(shí),為了對(duì)該算法的效果進(jìn)行評(píng)估,本節(jié)提出取證能力和取證開(kāi)銷2個(gè)量化評(píng)估指標(biāo).
云取證趨勢(shì)是指在云網(wǎng)絡(luò)環(huán)境中獲取并理解云網(wǎng)絡(luò)安全事件告警信息,從而實(shí)時(shí)預(yù)測(cè)云取證趨勢(shì).云取證趨勢(shì)被SDS-CF用于取證策略智能決策和取證資源智能調(diào)度.
隱Markov模型[39]是一種統(tǒng)計(jì)分析模型,能用來(lái)描述一個(gè)雙重隨機(jī)過(guò)程,它具有一定狀態(tài)數(shù)的隱Markov鏈和顯示隨機(jī)函數(shù)集.它的狀態(tài)不能直接觀察到,但能通過(guò)觀測(cè)序列觀察到,每個(gè)觀測(cè)序列都是通過(guò)某些概率密度分布表現(xiàn)為各種狀態(tài),每一個(gè)觀測(cè)序列是由一個(gè)具有相應(yīng)概率密度分布的狀態(tài)序列產(chǎn)生[40].云取證趨勢(shì)是由云網(wǎng)絡(luò)攻擊驅(qū)動(dòng)的取證需求的累積,取證趨勢(shì)的計(jì)算來(lái)源于對(duì)網(wǎng)絡(luò)攻擊的行為的觀測(cè),因此本文提出基于HMM的云取證趨勢(shì)分析模型.相關(guān)定義為:
定義1.云取證狀態(tài).云取證狀態(tài)由集合S表示:
S={s1,s2,s3,s4},
(1)
其中,s1表示不取證狀態(tài);s2表示網(wǎng)絡(luò)取證狀態(tài),此狀態(tài)下將對(duì)網(wǎng)絡(luò)設(shè)備日志進(jìn)行提??;s3表示協(xié)同實(shí)時(shí)取證狀態(tài),此狀態(tài)下將對(duì)網(wǎng)絡(luò)設(shè)備日志、網(wǎng)絡(luò)流量鏡像、云計(jì)算平臺(tái)日志、虛擬機(jī)日志進(jìn)行提??;s4表示全量取證狀態(tài),此狀態(tài)下將對(duì)網(wǎng)絡(luò)設(shè)備日志、網(wǎng)絡(luò)流量鏡像、云計(jì)算平臺(tái)日志、虛擬機(jī)鏡像進(jìn)行提取.
定義2.云網(wǎng)絡(luò)安全事件.云網(wǎng)絡(luò)安全事件由集合V表示:
V={v1,v2,v3,v4},
(2)
其中,v1表示無(wú)安全事件;v2表示掃描類安全事件,包括DDoS攻擊;v3表示入侵類安全事件;v4表示提權(quán)類安全事件.
定義3.云取證狀態(tài)概率模型.云取證狀態(tài)概率由隱Markov模型表示:
λ=(S,V,P,Q,π),
(3)
其中,λt(i)表示在時(shí)刻t時(shí)云取證狀態(tài)為si的概率;S為云取證狀態(tài)集合空間,取值范圍見(jiàn)定義1;V為觀測(cè)序列集合空間,表示觀測(cè)到的安全事件的樣本空間,取值范圍見(jiàn)定義2;P為不同云取證狀態(tài)轉(zhuǎn)移概率矩陣,P=(pij),
pij=prop(qt+1=Sj|qt=Si),1≤i,j≤N,
(4)
其中,pij表示在時(shí)刻t時(shí)云取證狀態(tài)處于si狀態(tài)且在時(shí)刻t+1云取證狀態(tài)處于sj的概率;Q為觀測(cè)序列的概率分布矩陣,Q=(qij),
qij=prop(o=vj|qt=si),1≤i≤N,1≤j≤M,(5)
其中,qij表示時(shí)刻t云取證狀態(tài)為si且觀測(cè)到的安全事件為vj的概率;π為初始狀態(tài)概率分布矩陣,π=(πi),
πi=prop(q1=si),1≤i≤N,
(6)
其中,πi表示在時(shí)刻t=1時(shí)云取證狀態(tài)為si的概率.
定義4.觀測(cè)序列.觀測(cè)序列由集合O表示,指網(wǎng)絡(luò)安全設(shè)備在評(píng)估時(shí)間段T內(nèi)輸出的告警信息按定義2進(jìn)行歸類后構(gòu)成的告警序列,表示形式為
O={o1,o2,…,on},
(7)
其中,oi表示在時(shí)刻ti觀測(cè)到的安全事件,oi∈V,T={t1,t2,…,tn}.
定義5.云取證趨勢(shì).云取證趨勢(shì)由γt表示,指在時(shí)刻t時(shí)觀測(cè)到告警序列O={o1,o2,…,ot},預(yù)測(cè)當(dāng)前的云取證趨勢(shì):
(8)
其中,1≤i≤N,C(i)表示云取證狀態(tài)si下的取證代價(jià)系數(shù).本文中C(i)以取證存儲(chǔ)開(kāi)銷為依據(jù)制定.因不同取證狀態(tài)的取證數(shù)據(jù)范圍不同,對(duì)應(yīng)的取證計(jì)算開(kāi)銷和存儲(chǔ)開(kāi)銷也不同.在云取證實(shí)務(wù)中存儲(chǔ)開(kāi)銷是最為關(guān)鍵的指標(biāo)之一,取證代價(jià)系數(shù)C(i)以取證存儲(chǔ)開(kāi)銷為依據(jù),通過(guò)大量真實(shí)取證案例統(tǒng)計(jì)得出,將在實(shí)驗(yàn)環(huán)節(jié)進(jìn)一步分析.
為了計(jì)算在時(shí)刻t的云網(wǎng)絡(luò)取證趨勢(shì)γt,主要采用經(jīng)典的前向算法[40].
1) 確定觀測(cè)序列O和模型參數(shù)λ=(S,V,P,Q,π).
2) 計(jì)算在時(shí)刻t且云取證狀態(tài)為si時(shí)的概率λt(i),計(jì)算過(guò)程示意圖如圖4所示.
Fig. 4 The schematic diagram of forward algorithm圖4 前向算法示意圖
在時(shí)刻t時(shí)各云取證狀態(tài)的概率λt(i)計(jì)算為
(9)
其中,1≤i,j≤N,N是狀態(tài)數(shù)目;當(dāng)t=1時(shí),qi(o1)=πi.
3) 計(jì)算在時(shí)刻t的云取證趨勢(shì)γt,計(jì)算方法見(jiàn)式(8).
云取證狀態(tài)概率模型中的觀測(cè)序列采用IDS告警,通過(guò)云取證趨勢(shì)分析算法可知,觀測(cè)序列的質(zhì)量對(duì)云取證趨勢(shì)分析算法的準(zhǔn)確度至關(guān)重要[41].而入侵檢測(cè)系統(tǒng)往往會(huì)產(chǎn)生海量的告警,且誤報(bào)率較高.為了能從海量的告警中提取出高質(zhì)量的報(bào)警信息,本文從取證的角度出發(fā)提出改進(jìn)的告警質(zhì)量算法(revised quality of alert, rQoA)進(jìn)行告警的篩選.告警質(zhì)量算法(quality of alert, QoA)[42]是從安全態(tài)勢(shì)分析的角度出發(fā),對(duì)Snort原始告警信息分段處理,在每個(gè)片段內(nèi)依據(jù)告警出現(xiàn)的頻率(alert frequency,AlF)、告警關(guān)鍵程度(alert criticality,AlC)和告警嚴(yán)重程度(alert severity,AlS)對(duì)告警信息進(jìn)行綜合評(píng)估,并從中選取質(zhì)量最高的告警作為該片段的觀測(cè)序列.然而在取證實(shí)務(wù)中更注重事件的關(guān)聯(lián)性,QoA算法可能導(dǎo)致一些告警質(zhì)量不高的關(guān)聯(lián)事件告警的遺漏從而影響取證趨勢(shì)的判斷.為此本文提出的rQoA算法引入告警關(guān)聯(lián)性影響因子(alert relevancy,AlR)來(lái)替換AlC這一維度,能有效地將關(guān)聯(lián)事件篩選出來(lái).
為了計(jì)算AlR,從源IP地址相關(guān)性、目的IP地址相關(guān)性、告警IP鏈相關(guān)性、反告警IP鏈相關(guān)性、源端口相關(guān)性、目的端口相關(guān)性、時(shí)間相關(guān)性、告警類型相關(guān)性8個(gè)維度進(jìn)行計(jì)算,并對(duì)每個(gè)相關(guān)性賦予不同的權(quán)重,取值參考文獻(xiàn)[43].
在時(shí)刻t時(shí),觀測(cè)序列οt的告警關(guān)聯(lián)性影響因子φ(οt):
(10)
其中,fj(ot,ot-i)表示事件ot和ot-i的屬性j的關(guān)聯(lián)度,σj表示屬性j關(guān)聯(lián)度的權(quán)重,M表示關(guān)聯(lián)屬性的個(gè)數(shù),從上文可知M=8,N表示往回對(duì)比的觀測(cè)序列的維度,此處N=3,也就是對(duì)比最近連續(xù)3件告警事件的關(guān)聯(lián)度.
為了統(tǒng)一到值域[1,3],進(jìn)行離差標(biāo)準(zhǔn)化的反函數(shù)進(jìn)行處理:
AlR=φ(οt)(max-min)+min.
(11)
最后計(jì)算告警質(zhì)量:
(12)
云取證趨勢(shì)分析算法作為SDS-CF進(jìn)行取證管理模塊的核心算法,主要用于取證策略智能決策與取證資源智能調(diào)度.通過(guò)對(duì)云取證狀態(tài)的持續(xù)分析,SDS-CF能實(shí)現(xiàn)動(dòng)態(tài)地調(diào)整取證策略和調(diào)度取證資源,從而實(shí)現(xiàn)智能的云取證服務(wù).
其工作原理與評(píng)估指標(biāo)為:
1) 取證策略智能決策
SDS-CF控制器中的取證管理模塊根據(jù)IDS告警信息持續(xù)分析云計(jì)算環(huán)境所處的取證狀態(tài),根據(jù)當(dāng)前所處的云取證狀態(tài)S進(jìn)行取證策略決策,并根據(jù)狀態(tài)變化動(dòng)態(tài)調(diào)整取證策略.
定義6.取證策略.取證策略由矩陣D表示:
D={d1,d2,d3,d4},
(13)
其中,di表示當(dāng)云取證狀態(tài)為si時(shí)的取證策略,由五元組表示,表示形式:
di=(f1,f2,f3,f4,f5),
(14)
其中,f1表示網(wǎng)絡(luò)日志;f2表示網(wǎng)絡(luò)流量;f3表示云計(jì)算平臺(tái)日志;f4表示虛擬機(jī)日志;f5表示虛擬機(jī)鏡像.其取證范圍為{0,1},當(dāng)fi=0時(shí)表示不對(duì)該數(shù)據(jù)源進(jìn)行取證,當(dāng)fi=1時(shí)表示需要對(duì)該數(shù)據(jù)源進(jìn)行取證.
依據(jù)定義1,提出云取證策略D取值:
(15)
對(duì)應(yīng)的云取證策略智能決策過(guò)程為:
在時(shí)刻t,根據(jù)云取證狀態(tài)概率模型計(jì)算得出:
當(dāng)云取證狀態(tài)最大概率處于s1時(shí),采取取證策略為d1;
當(dāng)云取證狀態(tài)最大概率處于s2時(shí),采取取證策略為d2;
當(dāng)云取證狀態(tài)最大概率處于s3時(shí),采取取證策略為d3;
當(dāng)云取證狀態(tài)最大概率處于s4時(shí),采取取證策略為d4.
2) 取證資源智能調(diào)度
SDS-CF控制器中的取證管理模塊通過(guò)云取證趨勢(shì)分析實(shí)時(shí)預(yù)測(cè)取證開(kāi)銷,從而依據(jù)取證開(kāi)銷調(diào)度合適的取證資源.依據(jù)3.2節(jié)算法描述可知,可根據(jù)不同的資源開(kāi)銷來(lái)計(jì)算云取證趨勢(shì),而本文主要從存儲(chǔ)資源開(kāi)銷的角度進(jìn)行分析,因此SDS-CF的設(shè)備管理模塊也以存儲(chǔ)能力對(duì)安全資源池中的網(wǎng)絡(luò)取證設(shè)備進(jìn)行管理,并通過(guò)取證趨勢(shì)分析結(jié)果在網(wǎng)絡(luò)取證設(shè)備資源池中調(diào)度滿足取證存儲(chǔ)需求的網(wǎng)絡(luò)取證設(shè)備實(shí)現(xiàn)取證資源的智能調(diào)度.
為了對(duì)云取證趨勢(shì)分析算法的效果進(jìn)行評(píng)估,針對(duì)取證策略決策的效果和取證資源調(diào)度的效果分別提出取證能力和取證開(kāi)銷評(píng)估指標(biāo).
定義7.取證能力.取證能力(capacity of forensics,CoF)指在觀測(cè)時(shí)間段T內(nèi)采用的取證策略能覆蓋所有安全事件相關(guān)的電子數(shù)據(jù)的概率.
根據(jù)定義6可得:不同云取證狀態(tài)下的取證策略的包含關(guān)系為d1?d2?d3?d4,則隨著云取證狀態(tài)的遞增,其取證能力是累加的.
(16)
其中,1≤i≤imax,1≤t≤T,T表示觀測(cè)時(shí)長(zhǎng),λt(i)見(jiàn)定義3,imax表示在時(shí)刻t時(shí)概率最大的云取證狀態(tài)為simax.
定義8.取證開(kāi)銷.取證開(kāi)銷(overhead of forensics,OoF)指在觀測(cè)時(shí)間段T內(nèi)的取證存儲(chǔ)資源開(kāi)銷,且隨著取證代價(jià)系數(shù)的變化而變化.計(jì)算為
(17)
其中,1≤t≤T,T表示觀測(cè)時(shí)長(zhǎng),γt取值見(jiàn)定義5.
為了對(duì)本文提出的基于軟件定義安全和云取證趨勢(shì)分析的智能云取證方法進(jìn)行驗(yàn)證,涉及2項(xiàng)實(shí)驗(yàn):第1項(xiàng)實(shí)驗(yàn)為SDS-CF云取證流程驗(yàn)證實(shí)驗(yàn);第2項(xiàng)實(shí)驗(yàn)為云取證趨勢(shì)分析算法效果對(duì)比實(shí)驗(yàn).實(shí)現(xiàn)在仿真云計(jì)算平臺(tái)上基于林肯實(shí)驗(yàn)室的經(jīng)典數(shù)據(jù)集LLDOS1.0的進(jìn)行云取證實(shí)驗(yàn).LLDOS1.0是一個(gè)DDoS攻擊場(chǎng)景的測(cè)試數(shù)據(jù)集,以離線的網(wǎng)絡(luò)流量包形式提供.基于LLDOS1.0的網(wǎng)絡(luò)流浪包構(gòu)建一個(gè)仿真的云計(jì)算環(huán)境測(cè)試環(huán)境,在云計(jì)算平臺(tái)中啟動(dòng)3臺(tái)虛擬機(jī)并配置成受害者IP,并將流量包在仿真環(huán)境中重放以模擬對(duì)仿真云計(jì)算平臺(tái)的攻擊.
1) 觀測(cè)序列O的選取
基于3.3節(jié)提出的基于改進(jìn)告警質(zhì)量的IDS告警選擇算法進(jìn)行觀測(cè)序列O的選取.通過(guò)對(duì)LLDOS1.0數(shù)據(jù)集進(jìn)行分析,樣本數(shù)據(jù)集時(shí)間約為22:21:00—01:36:00之間,設(shè)定劃片時(shí)長(zhǎng)Δt=5min,整個(gè)數(shù)據(jù)集可大致劃分為40個(gè)片段,對(duì)應(yīng)的觀測(cè)序列為40維.
2) 云取證狀態(tài)概率模型λ構(gòu)建
云取證狀態(tài)概率模型參數(shù)確定需要資深安全專家經(jīng)驗(yàn),且因數(shù)據(jù)集采樣時(shí)期的網(wǎng)絡(luò)空間安全攻防形勢(shì)和現(xiàn)在有所不同,狀態(tài)轉(zhuǎn)移矩陣P和為觀測(cè)序列的概率分布矩陣Q均借鑒文獻(xiàn)[42]使用的模型參數(shù).且將云取證狀態(tài)和網(wǎng)絡(luò)安全狀態(tài)[42]作一一對(duì)應(yīng),從而得到參數(shù):
(18)
(19)
初始狀態(tài)概率分布矩陣π:
π=(π1π2π3π4)=(1000).
(20)
本實(shí)驗(yàn)將針對(duì)LLDOS1.0的攻擊過(guò)程給出對(duì)應(yīng)的SDS-CF云取證過(guò)程,進(jìn)行SDS-CF工作原理的驗(yàn)證.
通過(guò)對(duì)數(shù)據(jù)集的分析可知[44],LLDOS1.0攻擊過(guò)程為:
1) 階段1.22:51:36—22:52:00,攻擊者(202.77.162.213)對(duì)目標(biāo)網(wǎng)絡(luò)進(jìn)行掃描以找尋活躍主機(jī).
2) 階段2.23:08:07—23:18:05,攻擊者利用ping協(xié)議探測(cè)活躍主機(jī)是否存在sadmind服務(wù),并選取了Mill(172.16.115.20)作為傀儡機(jī).
3) 階段3.23:33:10—23:35:01,攻擊者利用sadmind服務(wù)的緩存區(qū)溢出漏洞滲透進(jìn)目標(biāo)系統(tǒng).
4) 階段4.23:50:01—23:50:54,攻擊者在受害者機(jī)器上安裝DDoS攻擊代碼和木馬后門.
5) 階段5.00:26:15—00:34:21,攻擊者通過(guò)后門控制Mill對(duì)攻擊目標(biāo)(131.84.1.31)發(fā)起DDoS攻擊.
其中,SDS-CF使用Snort作為IDS,Snort版本為2.9.9.0,檢測(cè)出各階段的報(bào)警數(shù)量如表1所示:
Table 1 Statistic of LLDOS1.0表1 LLDOS1.0數(shù)量分析
SDS-CF的對(duì)應(yīng)的云取證過(guò)程如下:
SDS-CF以Δt=5min為時(shí)間窗口對(duì)取證策略和取證資源調(diào)度進(jìn)行動(dòng)態(tài)調(diào)整,是一個(gè)連續(xù)的過(guò)程.通過(guò)2.3節(jié)可知,在每一個(gè)Δt中,SDS-CF中的取證管理模塊工作過(guò)程為:
1) 通過(guò)告警預(yù)處理分析IDS告警序列并調(diào)整當(dāng)前云取證狀態(tài),根據(jù)云取證狀態(tài)觸發(fā)或者更新取證流程.
2) 通過(guò)取證趨勢(shì)分析,得出當(dāng)前大概率所處的取證狀態(tài)和取證趨勢(shì),生成對(duì)應(yīng)的取證策略,并向設(shè)備管理模塊發(fā)出指令,從取證資源列表中選擇滿足取證開(kāi)銷的網(wǎng)絡(luò)取證設(shè)備并下發(fā)取證策略,同時(shí)根據(jù)想云計(jì)算平臺(tái)取證代理模塊發(fā)送取證指令和取證策略.
3) 向網(wǎng)絡(luò)控制模塊發(fā)出指令,將可疑流量鏡像至網(wǎng)絡(luò)取證取證設(shè)備.
4)取證管理模塊讀取網(wǎng)絡(luò)取證設(shè)備和云計(jì)算平臺(tái)取證代理提取的電子數(shù)據(jù)的五要素發(fā)送至存證云進(jìn)行存證.
針對(duì)LLDOS1.0攻擊過(guò)程的5個(gè)階段,SDS-CF對(duì)取證策略和取證資源做調(diào)整:
1) 階段1.通過(guò)云取證趨勢(shì)分析,當(dāng)前取證狀態(tài)大概率處于s2,根據(jù)3.4節(jié)采取取證策略d2=(10000),通過(guò)表2可知當(dāng)前取證趨勢(shì)約為0.6,向設(shè)備管理模塊發(fā)出指令,從取證資源列表中選擇滿足取證開(kāi)銷的網(wǎng)絡(luò)取證設(shè)備,并下發(fā)取證策略.
2) 階段2.通過(guò)云取證趨勢(shì)分析,當(dāng)前取證狀態(tài)大概率處于s2,取證狀態(tài)沒(méi)變化,取證策略也不發(fā)生變化,通過(guò)表2可知當(dāng)前取證趨勢(shì)約為0.8,向設(shè)備管理模塊發(fā)出指令,檢查當(dāng)前網(wǎng)絡(luò)取證設(shè)備滿足取證要求,不更新網(wǎng)絡(luò)取證設(shè)備.
3) 階段3.通過(guò)取證趨勢(shì)分析,當(dāng)前取證狀態(tài)大概率處于s3,根據(jù)3.4節(jié)采取取證策略d3=(11110),通過(guò)表2可知當(dāng)前取證趨勢(shì)約為1.5,向設(shè)備管理模塊發(fā)出指令,檢查當(dāng)前網(wǎng)絡(luò)取證設(shè)備滿足取證要求,下發(fā)新的取證策略,同時(shí)向云計(jì)算平臺(tái)取證代理發(fā)送取證策略與取值指令.
4) 階段4.通過(guò)取證趨勢(shì)分析,當(dāng)前取證狀態(tài)大概率處于s4,根據(jù)3.4節(jié)采取取證策略d4=(11111),檢通過(guò)表2可知當(dāng)前取證趨勢(shì)約為66,向設(shè)備管理模塊發(fā)出指令,當(dāng)前網(wǎng)絡(luò)取證設(shè)備不滿足取證要求,從取證資源列表中選擇滿足取證開(kāi)銷的網(wǎng)絡(luò)取證設(shè)備并下發(fā)取證策略,同時(shí)向云計(jì)算平臺(tái)取證代理發(fā)送取證策略與取值指令.
5) 階段5.通過(guò)取證趨勢(shì)分析,當(dāng)前取證狀態(tài)大概率處于s3,采取取證策略d3=(11110),通過(guò)表2可知當(dāng)前取證趨勢(shì)約為2,根據(jù)3.4節(jié)向設(shè)備管理模塊發(fā)出指令,檢查當(dāng)前網(wǎng)絡(luò)取證設(shè)備滿足取證要求,下發(fā)新的取證策略,同時(shí)向云計(jì)算平臺(tái)取證代理發(fā)送取證策略與取值指令.
Table 2 The Results of Cloud Forensics Trend of CFS, NFSand AFS Strategies During the Attack Process of LLDOS1.0
表2 LLDOS1.0攻擊過(guò)程的CFS,NFS和AFS三種策略云取證趨勢(shì)結(jié)果
TimelineCFSNFSAFS22:25:0000022:30:000.2916560.0220352.05645022:35:000.2551450.0435423.56336622:40:000.1236240.0346362.51197922:45:000.5883220.0962518.73709622:50:000.1798440.0539344.44891322:55:000.1045960.0361242.64904723:00:000.0881960.0288911.91848323:05:000.0836160.0259771.62409423:10:000.0820630.0248051.50579023:15:000.0814810.0243351.45830623:20:000.0812530.0241471.43925723:25:000.5391290.0780206.88520323:30:000.9257030.1056739.68524723:35:001.4529550.21016920.2407323:40:0039.424840.95648395.6056723:45:0027.292740.96386696.3532323:50:0018.360960.96922696.8953223:55:0066.133920.99956899.956460:00:0048.123300.98694098.683400:05:0021.367400.91235091.148930:10:0014.654560.94128494.072710:15:009.9296990.95829695.791500:20:009.6347050.94267494.218590:25:006.6646750.95960395.925830:30:002.8970370.87659187.537380:35:001.4271900.71786271.504990:40:000.7704910.49758249.256480:45:001.1967060.66369766.036840:50:001.4720020.79238679.035310:55:000.8858550.59466859.062671:00:001.2923290.61285360.904971:05:001.5586800.75549675.311381:10:001.9292640.76041275.813521:15:002.2740600.76376476.157741:20:002.1652210.85815785.684741:25:002.4895590.85191985.060091:30:002.7877370.84512684.379631:35:001.3696240.68857268.549511:40:001.7531710.69968369.67737
通過(guò)SDS-CF的云取證流程驗(yàn)證實(shí)驗(yàn)可知,SDS-CF能實(shí)現(xiàn)智能云取證服務(wù).
為了驗(yàn)證基于隱Markov模型的云取證趨勢(shì)分析算法的效果,本實(shí)驗(yàn)將對(duì)3種取證策略進(jìn)行對(duì)比.一種是3.5節(jié)提出的云取證策略(cloud forensics strategy, CFS),另外2種是實(shí)際取證分析中常用到的網(wǎng)絡(luò)取證策略(network forensics strategy, NFS)和云計(jì)算平臺(tái)事后取證策略(afterword forensics strategy, AFS).NFS策略僅對(duì)網(wǎng)絡(luò)流量進(jìn)行實(shí)時(shí)取證,與CFS的主要區(qū)別在于在協(xié)同實(shí)時(shí)取證狀態(tài)s3和全量取證狀態(tài)s4下,僅對(duì)網(wǎng)絡(luò)日志和網(wǎng)絡(luò)流量進(jìn)行取證.AFS不對(duì)網(wǎng)絡(luò)流量進(jìn)行取證,僅在入侵發(fā)生后對(duì)虛擬機(jī)進(jìn)行取證,與CFS主要區(qū)別在于在網(wǎng)絡(luò)取證狀態(tài)s2下不予取證,在協(xié)同實(shí)時(shí)取證狀況s3和全量取證狀態(tài)s4下對(duì)虛擬機(jī)日志和虛擬機(jī)鏡像進(jìn)行取證.
1) CFS,NFS和AFS參數(shù)確定
定義5提到的取證代價(jià)系數(shù)C(i)以取證時(shí)間窗口T內(nèi)的取證存儲(chǔ)開(kāi)銷為依據(jù),從大量真實(shí)取證案例中統(tǒng)計(jì)得出.目前,網(wǎng)絡(luò)取證業(yè)內(nèi)廣泛采用的取證時(shí)間窗口是3 600 s.通過(guò)分析某司法鑒定所的案例數(shù)據(jù)可得出:在不取證狀態(tài),取證存儲(chǔ)開(kāi)銷為0 MB;在網(wǎng)絡(luò)取證狀態(tài)對(duì)網(wǎng)絡(luò)設(shè)備日志進(jìn)行提取,3 600 s存儲(chǔ)開(kāi)銷為10 MB級(jí)別;在協(xié)同實(shí)時(shí)取證狀態(tài)下對(duì)網(wǎng)絡(luò)設(shè)備日志、網(wǎng)絡(luò)流量鏡像、云計(jì)算平臺(tái)日志、虛擬機(jī)日志進(jìn)行提取,3 600 s存儲(chǔ)開(kāi)銷為1 GB級(jí)別;在全量取證狀態(tài)下對(duì)網(wǎng)絡(luò)設(shè)備日志、網(wǎng)絡(luò)流量鏡像、云計(jì)算平臺(tái)日志、虛擬機(jī)鏡像進(jìn)行提取,存儲(chǔ)開(kāi)銷為100 GB級(jí)別.不同的取證策略,其提取的數(shù)據(jù)對(duì)象不同,因而存儲(chǔ)開(kāi)銷也不同.
CFS的取證策略參數(shù)與取證代價(jià)系數(shù)取值為
(21)
(22)
NFS的取證策略參數(shù)與取證代價(jià)系數(shù)取值為
(23)
(24)
AFS的取證策略參數(shù)與取證代價(jià)系數(shù)取值為
(25)
(26)
2) 實(shí)驗(yàn)對(duì)比分析
根據(jù)3.2節(jié)中提到的算法計(jì)算出觀測(cè)時(shí)間段T內(nèi)云取證狀態(tài)概率λ分布如圖5所示.
從圖5(a)中可以看出從攻擊開(kāi)始至22:30:00之間,云取證狀態(tài)處于s1的概率較大;從圖5(b)中可以看出22:30:00—23:25:00之間,云取證狀態(tài)處于s2的概率較大;從圖5(c)中可以看出23:25:00之后,大部分時(shí)間云取證狀態(tài)處于處于s3的概率較大,從圖5(d)中可以看出其中23:45:00—00:00:00之間云取證狀態(tài)出現(xiàn)了2次概率為s4狀態(tài)的概率波峰.根據(jù)4.3節(jié)對(duì)LLDOS1.0的數(shù)據(jù)分析可知,圖5(b)的高峰與攻擊過(guò)程的掃描探測(cè)階段對(duì)應(yīng),圖5(c)的高峰與攻擊過(guò)程的入侵階段和后續(xù)的DDoS攻擊對(duì)應(yīng),圖5(d)中的高峰與攻擊過(guò)程的攻陷階段對(duì)應(yīng).由此可見(jiàn),云取證狀態(tài)概率模型較準(zhǔn)確地反映了攻擊過(guò)程的云取證狀態(tài)概率分布.
Fig. 5 Probability distribution of cloud forensics status during the attack process of LLDOS 1.0圖5 LLDOS1.0攻擊過(guò)程云取證狀態(tài)概率分布
根據(jù)4.2節(jié)、4.3節(jié)中模型參數(shù)和3.2節(jié)提出的云取證趨勢(shì)分析算法計(jì)算出LLDOS1.0攻擊過(guò)程的CFS,NFS和AFS三種取證策略的云取證趨勢(shì)分析結(jié)果如表2所示.將表2中的數(shù)據(jù)制成對(duì)比曲線圖如圖6所示,從圖6可以看出,23:25:00之前CFS,NFS和AFS三種策略的取證趨勢(shì)均在低位波動(dòng),根據(jù)4.3節(jié)對(duì)LLDOS1.0的數(shù)據(jù)分析可知,此時(shí)網(wǎng)絡(luò)攻擊處于第2階段,也就是掃描探測(cè)階段,次階段這3種策略對(duì)應(yīng)的取證資源需求均小.23:30:00—00:00:00之間,CFS的取證趨勢(shì)出現(xiàn)了2次波峰,此時(shí)攻擊進(jìn)入階段3,4,波峰對(duì)應(yīng)著嚴(yán)重的入侵攻擊事件和攻陷事件,CFS的取證資源需求較大;NFS的取證趨勢(shì)持續(xù)保持在低位,因?yàn)樵摬呗源穗A段依然只進(jìn)行網(wǎng)絡(luò)日志和網(wǎng)絡(luò)流量取證,取證資源需求較??;AFS的取證趨勢(shì)強(qiáng)勢(shì)走高,是因?yàn)榇穗A段系統(tǒng)被入侵或者攻陷,進(jìn)入事后應(yīng)急響應(yīng)過(guò)程,取證資源需求較大.
根據(jù)表2中的數(shù)據(jù)計(jì)算出3種取證策略的取證能力和取證開(kāi)銷2個(gè)量化指標(biāo)如表3所示.
通過(guò)表3可以看出,CFS策略取證能力為91.6%,明顯優(yōu)于NFS的68.9%和AFS的50.5%.而取證開(kāi)銷方面CFS是NFS的13倍,是AFS的13.8%,介于兩者之間.通過(guò)以上分析可知,NFS策略沒(méi)有考慮到網(wǎng)絡(luò)入侵后云計(jì)算平臺(tái)中虛擬機(jī)的取證需求,雖然取證開(kāi)銷小,但是取證能力不足,關(guān)鍵電子證據(jù)損失較多.AFS策略因遺漏了實(shí)時(shí)網(wǎng)絡(luò)取證需求,并對(duì)虛擬機(jī)進(jìn)行粗粒度的取證策略導(dǎo)致取證能力較低而取證開(kāi)銷過(guò)高.而SDS-CF中采用的CFS策略能夠在取證能力和取證開(kāi)銷方面有一個(gè)較好的平衡.
Fig. 6 Comparison of cloud forensics trend during the attack process of LLDOS1.0圖6 LLDOS1.0攻擊過(guò)程云取證趨勢(shì)對(duì)比
Forensics StrategyCoFOoFCFS0.915844292.7333NFS0.68927221.3776AFS0.5051282121.3480
本文提出一種基于軟件定義安全和云取證趨勢(shì)分析的智能云取證方法,該方法包括1個(gè)架構(gòu)和2個(gè)核心算法.1)基于軟件定義安全的云取證架構(gòu),通過(guò)該架構(gòu)實(shí)現(xiàn)云網(wǎng)絡(luò)與云計(jì)算平臺(tái)實(shí)時(shí)協(xié)同取證,有效規(guī)避事后取證方法帶來(lái)的種種難題,并解決云網(wǎng)絡(luò)東西向流量的取證方法缺失和云用戶網(wǎng)絡(luò)取證手段缺失的問(wèn)題;2)基于隱Markov模型的云取證趨勢(shì)分析算法和基于改進(jìn)告警質(zhì)量的IDS告警選擇算法,將該算法運(yùn)用于基于軟件定義安全的云取證架構(gòu)中進(jìn)行取證策略智能決策和取證資源智能調(diào)度,實(shí)現(xiàn)智能云取證,提高云取證準(zhǔn)確度和效率.通過(guò)實(shí)驗(yàn)證明了該云取證方法的可行性,且該取證方法取證能力為91.6%,明顯高于網(wǎng)絡(luò)取證和云計(jì)算平臺(tái)事后取證方法,取證開(kāi)銷介于網(wǎng)絡(luò)取證和事后取證之間,在取證能力和取證開(kāi)銷之間取得了較好的平衡.該方法對(duì)云服務(wù)商提供云取證服務(wù)具有廣泛的借鑒意義.未來(lái),一方面將繼續(xù)優(yōu)化云取證趨勢(shì)分析算法,將攻擊時(shí)長(zhǎng)等影響因素考慮進(jìn)來(lái),進(jìn)一步提高算法的準(zhǔn)確性和降低取證開(kāi)銷;另一方面隨著網(wǎng)絡(luò)攻防技術(shù)和云計(jì)算的不斷向前發(fā)展,網(wǎng)絡(luò)攻防形式會(huì)不斷發(fā)生變化,對(duì)應(yīng)的模型參數(shù)需要不斷地調(diào)整,下一步研究一種更加智能的模型參數(shù)訓(xùn)練方法.