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

?

基于云取證的輕量級(jí)虛擬機(jī)監(jiān)視器設(shè)計(jì)

2020-04-01 20:05李嘉鑫馬征兆張葉舟唐遠(yuǎn)新翟繼強(qiáng)

李嘉鑫 馬征兆 張葉舟 唐遠(yuǎn)新 翟繼強(qiáng)

摘要:針對(duì)云計(jì)算中的大多數(shù)實(shí)時(shí)取證工具可能會(huì)被受感染的操作系統(tǒng)(OS)欺騙造成取證信息不可靠,或傳統(tǒng)的通用虛擬機(jī)監(jiān)視器由于代碼量巨大而容易受到攻擊的問(wèn)題,提出了一種專(zhuān)用的虛擬機(jī)監(jiān)視器程序ForenMoni。通過(guò)利用輕量級(jí)體系結(jié)構(gòu)來(lái)減小可信計(jì)算基(TCB)的大小,直接從硬件收集證據(jù),使用Filesafe模塊保護(hù)證據(jù)和其他敏感文件,并在Windows平臺(tái)上實(shí)現(xiàn)了概念驗(yàn)證原型。實(shí)驗(yàn)結(jié)果表明,F(xiàn)orenMoni的TCB大小相對(duì)較小,約為13 KLOC,并且只會(huì)導(dǎo)致目標(biāo)系統(tǒng)的性能下降不到10%,即使客戶(hù)機(jī)OS受到Worm.WhBoy等病毒的入侵,F(xiàn)orenMoni仍可以保證受保護(hù)文件不受干擾,提高了可靠性。

關(guān)鍵詞:云取證;可信計(jì)算基;虛擬機(jī)監(jiān)視器

中圖分類(lèi)號(hào):TP316文獻(xiàn)標(biāo)志碼:A文章編號(hào):1008-1739(2020)23-61-4

0引言

云計(jì)算已被廣泛用來(lái)提供計(jì)算服務(wù),云計(jì)算環(huán)境中采用了一些復(fù)雜的技術(shù),例如虛擬化技術(shù)[1]。數(shù)字取證用于收集、分析和復(fù)現(xiàn)網(wǎng)絡(luò)犯罪的證據(jù),當(dāng)前基于虛擬化技術(shù)的數(shù)字取證面臨一些新的挑戰(zhàn)[2]。大多數(shù)虛擬機(jī)監(jiān)視器(例如Xen和VMware)的源代碼量非常龐大,從而可能導(dǎo)致各種代碼漏洞。同時(shí),對(duì)于大多數(shù)虛擬機(jī)監(jiān)視器而言,設(shè)置虛擬化環(huán)境需要重新啟動(dòng)甚至重新安裝目標(biāo)系統(tǒng),不可避免地破壞了易失性證據(jù),與實(shí)時(shí)分析的目的相矛盾。

為了解決安全問(wèn)題,本文提出了一種輕量級(jí)的虛擬機(jī)監(jiān)視器ForenMoni,減小了TCB的大小,增加了實(shí)時(shí)數(shù)據(jù)采集和存儲(chǔ)的可靠性。同時(shí)ForenMoni作為驅(qū)動(dòng)程序加載,而無(wú)需重新啟動(dòng)目標(biāo)OS,只會(huì)對(duì)內(nèi)存布局造成很小的影響。

1系統(tǒng)設(shè)計(jì)

1.1設(shè)計(jì)原理

ForenMoni的設(shè)計(jì)考慮虛擬機(jī)監(jiān)視器的安全性、證據(jù)獲取的可靠性以及證據(jù)文件的安全性。從3個(gè)方面提高可靠性:①采用這種輕量級(jí)的虛擬機(jī)監(jiān)視器架構(gòu)來(lái)減少代碼大小并保護(hù)取證過(guò)程不被篡改;②ForenMoni直接從硬件收集完整的系統(tǒng)狀態(tài),包括過(guò)程數(shù)據(jù)、原始內(nèi)存和I/O數(shù)據(jù),而無(wú)需依賴(lài)設(shè)備驅(qū)動(dòng)程序;③ForenMoni將易失性數(shù)據(jù)存儲(chǔ)在磁盤(pán)上,并使用Filesafe模塊保護(hù)它們。Filesafe模塊還可以為取證分析所必需的客戶(hù)OS中的敏感文件(例如日志)提供保護(hù)。

由于ForenMoni是作為系統(tǒng)驅(qū)動(dòng)程序加載的,因此有2種方法可以獲取實(shí)時(shí)數(shù)據(jù):調(diào)用OS接口以及直接從硬件獲取數(shù)據(jù)。前者更易于實(shí)現(xiàn),并且與目標(biāo)OS沒(méi)有語(yǔ)義上的差距。但是,因?yàn)槟繕?biāo)OS可能會(huì)受到Rootkit的破壞,收集的數(shù)據(jù)可能會(huì)被惡意軟件偽造或篡改。因此ForenMoni采用后一種方法來(lái)收集證據(jù),同時(shí)在ForenMoni中采用有關(guān)虛擬機(jī)自?。╒MI)來(lái)彌合語(yǔ)義鴻溝[3]。

文件保護(hù)機(jī)制可確保證據(jù)保存的可靠性,F(xiàn)orenMoni將證據(jù)文件存儲(chǔ)在本地磁盤(pán)中,并通過(guò)訪問(wèn)控制策略對(duì)其進(jìn)行保護(hù)。該策略位于塊級(jí)別,控制對(duì)磁盤(pán)的任何操作。

1.2輕量級(jí)虛擬機(jī)監(jiān)視器架構(gòu)

用于可靠取證的輕量級(jí)虛擬機(jī)監(jiān)視器架構(gòu)如圖1所示,在此體系結(jié)構(gòu)中,取證系統(tǒng)特權(quán)級(jí)別高于OS內(nèi)核。由于特權(quán)模式不同,應(yīng)用程序和OS不知道該虛擬機(jī)監(jiān)視器的存在。取證系統(tǒng)由虛擬機(jī)控制結(jié)構(gòu)記錄器(VMCS Recorder)、內(nèi)存轉(zhuǎn)儲(chǔ)器(Memory Dumper)、鍵盤(pán)記錄器(Key logger)、網(wǎng)絡(luò)接口卡攔截器(NIC Interceptor)和File Safe五個(gè)模塊組成。前4個(gè)模塊分別用于記錄CPU狀態(tài)、內(nèi)存內(nèi)容、按鍵和網(wǎng)絡(luò)數(shù)據(jù)包,F(xiàn)ile Safe模塊保護(hù)收集的數(shù)據(jù)。

虛擬機(jī)監(jiān)視器是基于硬件輔助虛擬化技術(shù)設(shè)計(jì)的,消除了用于硬件仿真的大量代碼,設(shè)計(jì)基于Intel VT-x技術(shù),可以輕松移植到AMD平臺(tái)。其次,采用在體系結(jié)構(gòu)中僅攔截感興趣的操作,以最大程度地減少I(mǎi)/O攔截器的代碼大小。

2系統(tǒng)實(shí)現(xiàn)

2.1虛擬化方法

在系統(tǒng)收集實(shí)時(shí)數(shù)據(jù)之前,預(yù)先構(gòu)建一個(gè)虛擬機(jī)環(huán)境。將本機(jī)OS轉(zhuǎn)換為虛擬機(jī)可能需要重新引導(dǎo)甚至重新安裝,因此不可避免地會(huì)丟失實(shí)時(shí)系統(tǒng)數(shù)據(jù)。為了避免破壞實(shí)時(shí)證據(jù),使用后期虛擬化技術(shù)動(dòng)態(tài)地建立了取證系統(tǒng)管理程序。后期虛擬化技術(shù)意味著在不干擾正在運(yùn)行的目標(biāo)OS的執(zhí)行的情況下,在本機(jī)OS和硬件之間動(dòng)態(tài)插入管理程序?qū)印:笃谔摂M化技術(shù)需要硬件輔助虛擬化技術(shù)的支持,系統(tǒng)在英特爾平臺(tái)VT-x上實(shí)現(xiàn)[4]。為了實(shí)現(xiàn)虛擬化,除了傳統(tǒng)的4層保護(hù)環(huán)之外,CPU模式還引入了另一個(gè)特權(quán)級(jí)別,新級(jí)別稱(chēng)為VMX根模式,是為管理程序建立的??蛻?hù)機(jī)OS在由原始4個(gè)環(huán)組成的VMX非根模式下運(yùn)行。在新的保護(hù)模型中,提供了新的結(jié)構(gòu)VMCS,以保存主機(jī)OS和客戶(hù)機(jī)OS的CPU狀態(tài)并控制應(yīng)進(jìn)行模式切換的條件。

啟動(dòng)過(guò)程包括:

①啟用CPU的VMX根模式;

②初始化VMCS結(jié)構(gòu)以注冊(cè)虛擬機(jī)監(jiān)視器關(guān)心的敏感事件以及虛擬機(jī)監(jiān)視器中相應(yīng)事件的處理程序;

③配置VMCS之后,目標(biāo)OS已變成包裝在虛擬機(jī)監(jiān)視器中的客戶(hù)機(jī)OS,當(dāng)客戶(hù)機(jī)OS執(zhí)行一些特權(quán)指令時(shí),將引發(fā)對(duì)監(jiān)視系統(tǒng)的陷阱,然后可以執(zhí)行取證過(guò)程;

④虛擬機(jī)監(jiān)視器錄好了足夠的信息后,一個(gè)VMENTRY執(zhí)行指令以繼續(xù)客戶(hù)機(jī)OS的運(yùn)行。

但引發(fā)的一個(gè)潛在漏洞是啟動(dòng)過(guò)程可能會(huì)受到內(nèi)核模式Rootkit的破壞,因?yàn)樗窃趓ing0模式而不是VMX root模式下執(zhí)行的[5]。為避免這種情況,應(yīng)將虛擬機(jī)監(jiān)視器的映像放置在只讀介質(zhì)中,并由受信任的平臺(tái)模塊(TPM)檢查其完整性。

2.2 Filesafe API

記錄器VMCS、存儲(chǔ)器、鍵盤(pán)記錄器和NIC攔截器得到其所需的數(shù)據(jù),都依賴(lài)File Safe模塊來(lái)編寫(xiě)和保護(hù)證據(jù)數(shù)據(jù)。抽象了File Safe模塊的功能為其他模塊提供一組API。主要API如下:

①AllocProtect分配受保護(hù)的文件,客戶(hù)機(jī)OS不會(huì)檢測(cè)到該文件,新文件塊的相應(yīng)控制策略將立即添加到策略列表中,該文件將被設(shè)置為讀控制和寫(xiě)控制;

②SetPolicy設(shè)置文件的控制策略,參數(shù)指示要進(jìn)行讀控制或?qū)懣刂频脑L問(wèn)策略;

③DelProtect刪除受保護(hù)的文件,并且相關(guān)的塊級(jí)策略也將同時(shí)被刪除;

④Read讀取受保護(hù)文件的內(nèi)容,如果該文件是讀控制的,則對(duì)該接口以外的文件的任何讀操作都將被拒絕;

⑤Write會(huì)將一些內(nèi)容寫(xiě)入受保護(hù)的文件,如果未通過(guò)此接口執(zhí)行對(duì)寫(xiě)控制文件的任何寫(xiě)操作,將拒絕該操作,將新塊附加到文件后,將同時(shí)添加到策略列表。

3系統(tǒng)測(cè)試

測(cè)試環(huán)境為Core i5-650 3.2 GHz、4 GB DDR3 RAM、Intel 82578DM千兆以太網(wǎng)NIC和250 GB Seagate SATA2磁盤(pán)的Intel機(jī)器,主機(jī)OS為Windows 7 SP2,安裝虛擬機(jī)監(jiān)視器作為客戶(hù)機(jī)OS。

3.1 TCB大小

ForenMoni消除了內(nèi)存取證不必要的一些通用組件,總代碼大小約為13 336源代碼行(SLOC),表1中列出了ForenMoni的每個(gè)組件的代碼大小。

圖2中比較了一些流行的當(dāng)代虛擬環(huán)境的TCB大小,可以看到ForenMoni的TCB大小遠(yuǎn)遠(yuǎn)小于Xen和KVM等通用虛擬機(jī)監(jiān)視器。與另一個(gè)專(zhuān)用虛擬機(jī)監(jiān)視器Bitvisor[6]相比,F(xiàn)orenMoni的TCB大小仍然要小得多。但ForenMoni的TCB大小比TrustVisor的大,是因?yàn)門(mén)rustVisor僅致力于代碼完整性以及數(shù)據(jù)完整性,因此沒(méi)有用于收集數(shù)據(jù)的組件。HyperSleuth是另一個(gè)具有與ForenMoni類(lèi)似功能的專(zhuān)用虛擬機(jī)監(jiān)視器,由于HyperSleuth不是開(kāi)源訪問(wèn)的,不顯示HyperSleuth的TCB大小。

3.2功能評(píng)估

(1)數(shù)據(jù)收集

測(cè)試系統(tǒng)啟動(dòng)后,將ForenMoni加載為系統(tǒng)驅(qū)動(dòng)程序,其生成4個(gè)文件,分別為proc,mem,key,net。proc包括許多CPU寄存器在內(nèi)的進(jìn)程數(shù)據(jù),可以從這些數(shù)據(jù)中輕松提取一些初步信息,例如進(jìn)程數(shù)和進(jìn)程的頁(yè)表;mem文件轉(zhuǎn)儲(chǔ)原始內(nèi)存,位于原始結(jié)構(gòu)中,具有與物理內(nèi)存相同的大?。籯ey文件攔截I/O操作,存儲(chǔ)的敲擊的鍵的掃描碼;net文件存儲(chǔ)鏈路層數(shù)據(jù)包。

(2)文件安全模塊

ForenMoni可以保護(hù)目標(biāo)系統(tǒng)上的文件免遭各種蠕蟲(chóng)(例如Worm.WhBoy)破壞。Worm.WhBoy用Delphi編寫(xiě),該病毒刪除擴(kuò)展名為.gho的文件,以使用戶(hù)無(wú)法使用鏡像恢復(fù)其OS,也可將有問(wèn)題的URL添加到html文件,會(huì)對(duì)用戶(hù)的敏感文件和OS造成極大的損害。

在實(shí)驗(yàn)中,測(cè)試文件a.jpg,b.mp3,a1.gho,b1.exe,c1. html受File Safe保護(hù)。實(shí)驗(yàn)表明,即使OS受到威脅,F(xiàn)ile Safe仍可確保提供強(qiáng)大的保護(hù)。

ForenMoni與其他虛擬機(jī)監(jiān)視器之間的功能比較如表2所示,包括專(zhuān)用的監(jiān)視器(例如HyperSleuth)和通用監(jiān)視器(例如Xen和KVM)。比較的功能包括虛擬機(jī)監(jiān)視器可以收集哪些數(shù)據(jù)以及是否可以動(dòng)態(tài)加載它們。HyperSleuth僅收集有限的數(shù)據(jù)而沒(méi)有捕獲關(guān)鍵的網(wǎng)絡(luò)流量,并且不為客戶(hù)機(jī)OS中的文件提供保護(hù)。通用虛擬機(jī)監(jiān)視器Xen和KVM可以收集與ForenMoni一樣多的信息,但是它們也不能保護(hù)客戶(hù)機(jī)OS中的文件,此外,它們不能被動(dòng)態(tài)加載,從而限制了可用性。

3.3性能開(kāi)銷(xiāo)

測(cè)試Apache http服務(wù)器的性能,在速度為100 Mbps的LAN環(huán)境中,http_load用于生成不同并發(fā)級(jí)別的工作負(fù)載,范圍是10~250。如圖3所示,F(xiàn)orenMoni不會(huì)對(duì)吞吐量和延遲造成明顯的開(kāi)銷(xiāo)。原因是ForenMoni的開(kāi)銷(xiāo)非常小,以致于網(wǎng)絡(luò)速度的變化隱藏了該開(kāi)銷(xiāo)。因此,F(xiàn)orenMoni在不降低用戶(hù)體驗(yàn)的情況下在實(shí)際應(yīng)用中很實(shí)用。

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

本文提出了一個(gè)輕量級(jí)的虛擬機(jī)監(jiān)視器,專(zhuān)門(mén)用于獲取和保存數(shù)據(jù)以進(jìn)行可靠的現(xiàn)場(chǎng)取證。通過(guò)3種方式提高了可靠性,利用硬件輔助的虛擬化技術(shù),消除了未使用的設(shè)備驅(qū)動(dòng)程序,以減小TCB的大小,從而降低了虛擬機(jī)監(jiān)視器的漏洞,并在Windows平臺(tái)上實(shí)現(xiàn)了概念驗(yàn)證原型系統(tǒng)。實(shí)驗(yàn)結(jié)果表明,系統(tǒng)具有較小的代碼量、適度的系統(tǒng)開(kāi)銷(xiāo)和穩(wěn)定的性能,即使客戶(hù)機(jī)OS受到諸如Worm.WhBoy之類(lèi)的病毒的攻擊,F(xiàn)orenMoni仍可以對(duì)指定的文件提供強(qiáng)大保護(hù)。

參考文獻(xiàn)

[1]劉雪花,丁麗萍,劉文懋,等.一種基于軟件定義安全和云取證趨勢(shì)分析的云取證方法[J].計(jì)算機(jī)研究與發(fā)展,2019,56(10):2262-2276.

[2]張瑜,劉慶中,李濤,等.內(nèi)存取證研究與進(jìn)展[J].軟件學(xué)報(bào), 2015,26(5):1151-1172.

[3]張健,高鋮,宮良一,等.虛擬機(jī)自省技術(shù)研究[J].信息網(wǎng)絡(luò)安全,2017(9):63-68.

[4]盧建平,郭玉東,王曉睿,等.基于協(xié)作型VMM的虛擬機(jī)執(zhí)行環(huán)境動(dòng)態(tài)配置模型[J].計(jì)算機(jī)應(yīng)用,2012,32(3):831-834.

[5]鄧良,曾慶凱.引入內(nèi)可信基的應(yīng)用程序保護(hù)方法[J].軟件學(xué)報(bào),2016,27(4):1042-1058.

[6]趙明.基于輕量級(jí)虛擬機(jī)監(jiān)控器的安全計(jì)算環(huán)境[D].成都電子科技大學(xué),2020.

麻城市| 门源| 绥中县| 河南省| 东港市| 班戈县| 嘉禾县| 时尚| 花垣县| 隆化县| 泗阳县| 麻城市| 柳江县| 绿春县| 弥勒县| 留坝县| 军事| 准格尔旗| 肥西县| 平湖市| 大洼县| 宜兰市| 来宾市| 峡江县| 卢龙县| 安宁市| 五河县| 新龙县| 桐城市| 长武县| 兰溪市| 西和县| 汉寿县| 洛浦县| 日喀则市| 文水县| 长乐市| 永新县| 乌兰察布市| 文登市| 博罗县|