欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

虛擬機(jī)快照和損壞抑制的制作方法

文檔序號(hào):6601411閱讀:323來(lái)源:國(guó)知局
專利名稱:虛擬機(jī)快照和損壞抑制的制作方法
技術(shù)領(lǐng)域
本發(fā)明的實(shí)施例涉及用于管理虛擬機(jī)的執(zhí)行的技術(shù)。更具體地,本發(fā)明的實(shí)施例 涉及用于使用快照和損壞抑制技術(shù)來(lái)管理虛擬機(jī)的執(zhí)行的方法和系統(tǒng)。
背景技術(shù)
虛擬化可以用于在單個(gè)物理機(jī)器上運(yùn)行多個(gè)操作系統(tǒng)實(shí)例。例如,虛擬化可以允 許多種類型的操作系統(tǒng)在單個(gè)服務(wù)器上的虛擬機(jī)內(nèi)運(yùn)行并且共享該服務(wù)器的物理資源。因 此,計(jì)算系統(tǒng)中的虛擬化提供了眾多優(yōu)點(diǎn),諸如提高了資源利用率、減少了成本、實(shí)現(xiàn)服務(wù) 器統(tǒng)一、以及/或者回避了互操作性限制。然而,虛擬化的環(huán)境可能存在著與本地環(huán)境一樣的安全性和完整性風(fēng)險(xiǎn)。具 體地,物理機(jī)器內(nèi)的每個(gè)虛擬機(jī)可能容易受到來(lái)自各種各樣的源的入侵和攻擊。而且, 在單個(gè)計(jì)算系統(tǒng)上執(zhí)行多種類型的操作系統(tǒng)可能會(huì)使得用于計(jì)算系統(tǒng)的安全測(cè)量的實(shí) 現(xiàn)變得復(fù)雜,因?yàn)樾枰摪踩珳y(cè)量解決計(jì)算系統(tǒng)上的每種類型的操作系統(tǒng)的安全漏洞 (vulnerability)。因此,對(duì)單個(gè)物理機(jī)器內(nèi)的虛擬機(jī)的攻擊可能很難被檢測(cè)、分析和/或 管理。因此,需要有助于檢測(cè)、分析和管理虛擬機(jī)上的攻擊和漏洞(exploit)的機(jī)制。

發(fā)明內(nèi)容
某些實(shí)施例提供一種管理虛擬機(jī)的執(zhí)行的系統(tǒng)。在操作期間,該系統(tǒng)獲取虛擬機(jī) 的執(zhí)行期間的一系列虛擬機(jī)快照。如果檢測(cè)到虛擬機(jī)的異常操作,則系統(tǒng)從所述一系列快 照中的一個(gè)快照中產(chǎn)生一組快照實(shí)例,其中每個(gè)快照實(shí)例在一組限制條件中的一個(gè)限制條 件下執(zhí)行。接下來(lái),該系統(tǒng)使用那些快照實(shí)例中的沒(méi)有表現(xiàn)出異常操作的快照實(shí)例來(lái)確定 異常操作的源。最后,該系統(tǒng)使用所述快照實(shí)例更新虛擬機(jī)的狀態(tài)。在某些實(shí)施例中,使用快照實(shí)例更新虛擬機(jī)的狀態(tài)包括加速快照實(shí)例的執(zhí)行以達(dá) 到虛擬機(jī)的當(dāng)前狀態(tài)以及用快照實(shí)例替換虛擬機(jī)。在某些實(shí)施例中,加快快照實(shí)例的執(zhí)行包括緩存與虛擬機(jī)關(guān)聯(lián)的輸入事件以及使 用緩存的輸入事件按加快的速率執(zhí)行快照實(shí)例。在某些實(shí)施例中,該系統(tǒng)還從一系列快照中選擇一個(gè)快照以作為一組快照實(shí)例來(lái) 執(zhí)行。如果不能從該快照確定異常操作的源,則系統(tǒng)從該系列快照中選擇更早的快照以作 為一組快照實(shí)例來(lái)執(zhí)行。在某些實(shí)施例中,這些快照取自虛擬機(jī)的執(zhí)行期間的周期性的間隔處。
在某些實(shí)施例中,所述限制條件中的每個(gè)限制條件被用來(lái)阻斷異常操作的一個(gè)潛 在源。在某些實(shí)施例中,異常操作的潛在源對(duì)應(yīng)于端口和地址中的至少之一。


圖1示出根據(jù)一個(gè)實(shí)施例的計(jì)算系統(tǒng)。圖2示出根據(jù)一個(gè)實(shí)施例的虛擬機(jī)的受管理的執(zhí)行。圖3示出說(shuō)明根據(jù)一個(gè)實(shí)施例的管理虛擬機(jī)的執(zhí)行的處理的流程圖。在這些圖中,相同的參考標(biāo)號(hào)指示相同的附圖單元。
具體實(shí)施例方式給出以下描述以使本領(lǐng)域的任何普通技術(shù)人員能夠?qū)崿F(xiàn)并使用這些實(shí)施例,并且 其是在具體應(yīng)用及其需求的背景下被提供的。對(duì)所公開(kāi)的實(shí)施例的各種修改對(duì)于本領(lǐng)域的 普通技術(shù)人員而言是顯而易見(jiàn)的,并且這里所定義的一般原則在不偏離本公開(kāi)的精神和范 圍的條件下可以應(yīng)用到其它實(shí)施例和應(yīng)用。因此,本發(fā)明不局限于所示實(shí)施例,而是符合這 里所公開(kāi)的原則和特征相一致的最廣范圍。在該具體實(shí)施方式
中描述的數(shù)據(jù)結(jié)構(gòu)和代碼通常被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì) 上,該計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)可以是能夠存儲(chǔ)供計(jì)算機(jī)系統(tǒng)使用的代碼和/或數(shù)據(jù)的任何設(shè) 備或介質(zhì)。計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)包括,但不限于,易失性存儲(chǔ)器、非易失性存儲(chǔ)器,諸如盤(pán)驅(qū) 動(dòng)器、磁帶、CD (致密盤(pán))、DVD(數(shù)字多功能盤(pán)或數(shù)字視頻盤(pán))之類的磁的或者光的存儲(chǔ)設(shè) 備,或者現(xiàn)在已知或以后開(kāi)發(fā)出的能夠存儲(chǔ)計(jì)算機(jī)可讀介質(zhì)的其它介質(zhì)。在該具體實(shí)施方式
章節(jié)中描述的這些方法和處理可以被具體實(shí)現(xiàn)成代碼和/或 數(shù)據(jù),其可以被存儲(chǔ)在如上所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中。當(dāng)計(jì)算機(jī)系統(tǒng)讀取和執(zhí)行存儲(chǔ) 在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上的代碼和/或數(shù)據(jù)時(shí),計(jì)算機(jī)系統(tǒng)執(zhí)行被具體實(shí)現(xiàn)成數(shù)據(jù)結(jié)構(gòu)和 代碼并被存儲(chǔ)在計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)內(nèi)的這些方法和處理。 此外,下面所描述的這些方法和處理可以被包括在硬件模塊中。例如,硬件模塊可 包括,但不限于,專用集成電路(ASIC)芯片、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)、以及現(xiàn)在所公知的 或以后開(kāi)發(fā)的其它可編程邏輯器件。當(dāng)硬件模塊被激活時(shí),這些硬件模塊執(zhí)行包括在硬件 模塊內(nèi)的這些方法和處理。這些實(shí)施例提供了一種用于執(zhí)行虛擬機(jī)的方法和系統(tǒng)。該虛擬機(jī)可與許多其它虛 擬機(jī)一起運(yùn)行在一個(gè)物理計(jì)算系統(tǒng)上。另外,該虛擬機(jī)可執(zhí)行一種操作系統(tǒng)或應(yīng)用,所述操 作系統(tǒng)或應(yīng)用通過(guò)該計(jì)算系統(tǒng)上的管理程序來(lái)獲得對(duì)該計(jì)算系統(tǒng)上的物理資源的使用。更為特別地,這些實(shí)施例提供一種用于管理該虛擬機(jī)的執(zhí)行的方法和系統(tǒng)。為了 便于管理虛擬機(jī)的執(zhí)行,可以在該虛擬機(jī)的執(zhí)行期間獲取該虛擬機(jī)的一系列快照。另外,可 以監(jiān)視虛擬機(jī)的執(zhí)行中的異常操作。如果檢測(cè)到異常操作,則可以從這些快照之一產(chǎn)生一 組快照實(shí)例。每個(gè)快照實(shí)例可以在一組限制條件下執(zhí)行,該組限制條件允許異常操作的源 被識(shí)別。具體地,每個(gè)限制條件可以阻斷異常操作的一個(gè)潛在源。因此,沒(méi)有展現(xiàn)出異常行 為的快照實(shí)例可能包括阻斷異常行為的源的限制條件。此外,該快照實(shí)例可用于管理異常 操作和/或可通過(guò)替換虛擬機(jī)來(lái)對(duì)異常操作做出響應(yīng)。
圖1示出根據(jù)一個(gè)實(shí)施例的計(jì)算系統(tǒng)102。計(jì)算系統(tǒng)102包括硬件104、管理程序 106、控制域108、一組服務(wù)域110-112、以及一組訪客域114-116。下面將更為詳細(xì)地描述這 些部件中的每個(gè)部件。計(jì)算系統(tǒng)102可對(duì)應(yīng)于給用戶提供一種或多種服務(wù)或功能的電子計(jì)算設(shè)備。例 如,計(jì)算系統(tǒng)102可操作作為個(gè)人計(jì)算機(jī)、膝上型計(jì)算機(jī)、服務(wù)器和/或工作站。此外,計(jì)算 系統(tǒng)102的功能可以通過(guò)在計(jì)算系統(tǒng)102中的諸如處理器、存儲(chǔ)器、輸入/輸出(I/O)設(shè)備、 和/或網(wǎng)絡(luò)接口卡之類的硬件104部件上執(zhí)行軟件來(lái)提供。例如,計(jì)算系統(tǒng)102可包括協(xié) 調(diào)對(duì)計(jì)算系統(tǒng)102上的硬件104和軟件資源的使用的一個(gè)操作系統(tǒng),以及一個(gè)或多個(gè)執(zhí)行 針對(duì)用戶的特殊任務(wù)的應(yīng)用。更為具體地,諸如計(jì)算系統(tǒng)102上的操作系統(tǒng)和應(yīng)用之類的軟件可在一個(gè)或多個(gè) 虛擬機(jī)內(nèi)執(zhí)行。每個(gè)虛擬機(jī)可對(duì)應(yīng)于針對(duì)在硬件104上執(zhí)行的物理機(jī)器(例如計(jì)算系統(tǒng) 102)的基于軟件的虛擬環(huán)境。每個(gè)虛擬機(jī)還可被配置成獨(dú)立于計(jì)算系統(tǒng)102上的其它虛擬 機(jī)來(lái)執(zhí)行各種應(yīng)用、進(jìn)程和/或操作系統(tǒng)。換言之,多個(gè)虛擬機(jī)在單組硬件104資源上的獨(dú) 立執(zhí)行可以提供計(jì)算系統(tǒng)102的多功能性、資源利用率和/或安全性。在一個(gè)或多個(gè)實(shí)施例中,計(jì)算系統(tǒng)102用作服務(wù)器,諸如應(yīng)用服務(wù)器、web服 務(wù)器和/或電子郵件服務(wù)器。因此,計(jì)算系統(tǒng)102可被配置成處理來(lái)自多個(gè)用戶的輸 入事件和/或向用戶提供各種各樣的服務(wù)。為了增加基于服務(wù)器的功能性和性能,計(jì) 算系統(tǒng)102可在虛擬機(jī)內(nèi)執(zhí)行各種操作系統(tǒng)實(shí)例。例如,計(jì)算系統(tǒng)102可包括分別運(yùn) 行 Linux、Solaris (Solaris 是 Sun Microsystem 公司的注冊(cè)商標(biāo))以及 Microsoft Windows (Microsoft Windows 是Microsoft公司的注冊(cè)商標(biāo))的三個(gè)虛擬機(jī)。特定于一 個(gè)操作系統(tǒng)的應(yīng)用和/或進(jìn)程因此可以運(yùn)行在計(jì)算機(jī)系統(tǒng)102上包含該操作系統(tǒng)的虛擬機(jī) 內(nèi)。此外,一個(gè)操作系統(tǒng)的安全漏洞可以被限制在包含該操作系統(tǒng)的虛擬機(jī)內(nèi),并且可以不 影響計(jì)算系統(tǒng)102中的其它虛擬機(jī)上的其它操作系統(tǒng)的執(zhí)行。在一個(gè)或多個(gè)實(shí)施例中,計(jì)算系統(tǒng)102上的虛擬機(jī)可以執(zhí)行為訪客域(例如訪客 域114-116)。計(jì)算系統(tǒng)102還可包括其它域,諸如控制域108和服務(wù)域110-112。每個(gè)域 可對(duì)應(yīng)于計(jì)算系統(tǒng)102內(nèi)的一個(gè)軟件、資源和/或標(biāo)識(shí)的邏輯分組,其不同于其它域的邏輯 分組。例如,每個(gè)域可包括一個(gè)操作系統(tǒng)內(nèi)核、多個(gè)內(nèi)核補(bǔ)丁以及內(nèi)核的調(diào)整參數(shù);一組用 戶賬號(hào)和/或管理員;一組磁盤(pán);和/或一組網(wǎng)絡(luò)接口和地址。另外,對(duì)計(jì)算系統(tǒng)102上的 域的控制和執(zhí)行可以由管理程序106來(lái)開(kāi)啟。管理程序106可對(duì)應(yīng)于計(jì)算系統(tǒng)102上的固件層,其操作為針對(duì)這些域的硬件控 制。換言之,管理程序106可通過(guò)控制從每個(gè)域?qū)τ布?04資源的訪問(wèn)以及維護(hù)這些域之 間的隔離來(lái)管理這些域的執(zhí)行。例如,管理程序106可向一個(gè)給定的域分配計(jì)算系統(tǒng)102 上的處理器、存儲(chǔ)器和/或1/0資源的子集。因此,管理程序106可支持計(jì)算系統(tǒng)102上多 個(gè)操作系統(tǒng)的同時(shí)執(zhí)行,其中每個(gè)操作系統(tǒng)各在一個(gè)訪客域中??蛇x地,管理程序106可對(duì) 應(yīng)于一個(gè)托管管理程序(hosted hypervisor),其運(yùn)行在計(jì)算系統(tǒng)102上的一個(gè)本地操作 系統(tǒng)內(nèi)并且通過(guò)該本地操作系統(tǒng)獲取用于這些域的資源。在一個(gè)或多個(gè)實(shí)施例中,計(jì)算系統(tǒng)102中的這些域的管理是通過(guò)控制域108來(lái)執(zhí) 行的。更為特別地,在控制域108內(nèi)執(zhí)行域管理器118可包括通過(guò)管理程序106獲得的功 能,以創(chuàng)建并管理這些域以及向這些域分配資源。換言之,域管理器118可對(duì)應(yīng)于控制域108內(nèi)的軟件部件,其將管理程序106的能力暴露給控制域108的用戶。來(lái)自用戶的用于 管理這些域的命令可以通過(guò)域管理器118發(fā)送給管理程序106,管理程序106可通過(guò)與硬 件104進(jìn)行接口來(lái)實(shí)現(xiàn)這些命令。例如,在這些域之間的資源分配的改變可以通過(guò)域管理 器118從用戶處獲得,并且該改變可以被發(fā)送給管理程序106以便更新與這些域相關(guān)聯(lián)的 硬件104資源劃分。服務(wù)域110-112可向計(jì)算系統(tǒng)102的其它域提供虛擬設(shè)備服務(wù)122-124。例如,服 務(wù)域110-112可向其他域提供虛擬化的設(shè)備,諸如虛擬的開(kāi)關(guān)、磁盤(pán)服務(wù)器和/或網(wǎng)絡(luò)接口 卡。所述其它域還可以用它們與物理設(shè)備交互的相同形式來(lái)與這些虛擬設(shè)備進(jìn)行交互。本領(lǐng)域的普通技術(shù)人員將明白操作系統(tǒng)126-128可能包括安全漏洞。盡管安全 漏洞可能僅僅影響包括該安全漏洞的操作系統(tǒng),但是這種漏洞可能使受影響的操作系統(tǒng)所 提供的功能和服務(wù)失效或?qū)ζ湓斐刹涣加绊憽4送?,因?yàn)樵趶闹袌?zhí)行操作系統(tǒng)的虛擬環(huán)境 (例如訪客域114-116)與該虛擬環(huán)境外的監(jiān)視機(jī)制之間的語(yǔ)義差距,所述漏洞可能難以被 檢測(cè)或分析。為了解決與虛擬機(jī)相關(guān)的安全性考慮,操作系統(tǒng)102上的虛擬機(jī)的執(zhí)行可以通過(guò) 使用快照和損壞抑制技術(shù)來(lái)進(jìn)行管理,其可允許檢測(cè)、隔離和管理虛擬機(jī)的漏洞。具體地, 在執(zhí)行期間可以通過(guò)控制域108或其它域中的自查模塊(例如自查模塊120)來(lái)監(jiān)視每個(gè) 虛擬機(jī)的異常操作。每個(gè)自查模塊可對(duì)應(yīng)于基于期望的虛擬機(jī)的基礎(chǔ)操作對(duì)虛擬機(jī)進(jìn)行完整性檢查 的軟件部件。此外,每個(gè)自查模塊與虛擬機(jī)之間的語(yǔ)義差距可以跨越(bridge),因?yàn)樽圆槟?塊的操作是基于用于虛擬機(jī)的代碼的。在與本申請(qǐng)的發(fā)明人相同并且與本申請(qǐng)?jiān)谕仗峤?的、名稱為“Facilitated Virtual Machine Introspection”、序列號(hào)待定、申請(qǐng)日待定的 (代理號(hào)為No. SUN090100)、共同未決的非臨時(shí)申請(qǐng)中對(duì)自查模塊進(jìn)行了更具體的描述。另外,虛擬機(jī)的一系列快照可以由域管理器118在虛擬機(jī)的執(zhí)行期間來(lái)獲取。這 些快照可以被周期性地獲取,諸如以五分鐘為間隔。虛擬機(jī)的輸入事件還可以通過(guò)域管理 器118和/或計(jì)算系統(tǒng)102上的另一部件來(lái)緩存,供以后在分析、檢測(cè)和/或管理虛擬機(jī)的 潛在漏洞時(shí)使用。輸入事件可以包括例如網(wǎng)絡(luò)流量、硬件事件、輸入/輸出(I/O)事件、和 /或與虛擬機(jī)相關(guān)聯(lián)的其它事件。每個(gè)輸入事件還可包括時(shí)間戳和/或其它定時(shí)信息。例 如,輸入事件可包括開(kāi)始時(shí)間戳、停止時(shí)間戳和/或持續(xù)時(shí)間。定時(shí)信息可被包括在與輸入 事件相關(guān)聯(lián)的數(shù)據(jù)中(例如網(wǎng)絡(luò)分組中的傳輸控制協(xié)議(TCP)時(shí)間戳)、或者定時(shí)信息可 以由域管理器118、管理程序106和/或計(jì)算系統(tǒng)102上的另一部件來(lái)確定。例如,管理程 序106可注明硬件中斷發(fā)生的時(shí)間,并將硬件中斷和發(fā)生時(shí)間發(fā)送給計(jì)算系統(tǒng)102上的負(fù) 責(zé)緩存輸入事件的部件。虛擬機(jī)可以持續(xù)執(zhí)行,直到自查模塊120檢測(cè)到虛擬機(jī)的異常操作為止。異常操 作可對(duì)應(yīng)于由自查模塊120所評(píng)估的與虛擬機(jī)的預(yù)期操作的偏差。此外,異常操作可指示 存在導(dǎo)致虛擬機(jī)的操作發(fā)生改變的漏洞。為了能夠分析該異常操作,域管理器118可從獲取自虛擬機(jī)的一個(gè)快照產(chǎn)生一組 快照實(shí)例。每個(gè)快照實(shí)例接著可以在不同的限制條件下執(zhí)行,所述每個(gè)限制條件阻斷了異 常操作的一個(gè)潛在源。具體地,每個(gè)限制條件可對(duì)應(yīng)于一個(gè)可作為虛擬機(jī)上的異常操作的 潛在源的端口、地址、盤(pán)輸入、鍵盤(pán)輸入、和/或遠(yuǎn)程外殼程序(remoteshell)。另外,每個(gè)快照實(shí)例可以通過(guò)使用緩存的從快照被獲取開(kāi)始已發(fā)生的輸入事件,以加快的速率來(lái)執(zhí)行。 每個(gè)快照實(shí)例的加速執(zhí)行可以繼續(xù)由自查模塊120監(jiān)視異常操作。因?yàn)槎鄠€(gè)快照實(shí)例同時(shí)并行地處理多個(gè)輸入事件,所以可能會(huì)向自查模塊120表 明未表現(xiàn)出異常操作的快照實(shí)例上的被阻斷的端口或地址是異常操作的源。因?yàn)楫惓2僮?的源在該快照實(shí)例中被阻斷,所以該快照實(shí)例不處理來(lái)自異常操作的源的輸入事件,并且 可以保持不受導(dǎo)致異常操作的漏洞的影響。另一方面,其它快照實(shí)例可能在處理了執(zhí)行該 漏洞的輸入事件之后開(kāi)始表現(xiàn)出異常操作。然而,如果每個(gè)快照實(shí)例均表現(xiàn)出異常操作,則該快照可能已經(jīng)包含了漏洞,并且 對(duì)從該快照所產(chǎn)生的快照實(shí)例的自查在確定異常操作的源時(shí)可能不起作用。相反,域管理 器118可以從虛擬機(jī)的更早的快照來(lái)產(chǎn)生一組新的快照實(shí)例,并且自查模塊120可以嘗試 根據(jù)該組新的快照實(shí)例來(lái)找出異常操作的源。可以繼續(xù)遞增地選擇更舊的快照并且從更舊 的快照中產(chǎn)生快照實(shí)例,直到可以根據(jù)不包含該漏洞的快照確定異常操作的源為止??蛇x地,域管理器118可以使用分治(divide and conquer)方法來(lái)執(zhí)行快照實(shí) 例。具體地,域管理器118可以在多個(gè)限制條件下而不是單個(gè)限制條件來(lái)產(chǎn)生每個(gè)快照實(shí) 例。未表現(xiàn)出異常操作的快照實(shí)例接著被用于產(chǎn)生該快照實(shí)例的限制條件被劃分到其中的 另一組快照實(shí)例。因此,持續(xù)地用具有不斷增長(zhǎng)的限制條件特征來(lái)產(chǎn)生快照實(shí)例可以繼續(xù) 進(jìn)行,直到在一個(gè)快照實(shí)例中發(fā)現(xiàn)異常操作的特定源為止。此外,盡管具有增加的特定限制 條件的多組快照實(shí)例的順序執(zhí)行可能比執(zhí)行每個(gè)快照實(shí)例僅包含一個(gè)限制條件的大得多 的一組快照實(shí)例需要更多的時(shí)間,但是計(jì)算系統(tǒng)102可能并不包括足夠的資源用于同時(shí)執(zhí) 行該大得多的一組快照實(shí)例。換言之,分治方法可允許識(shí)別和抑制具有有限資源和/或多 個(gè)執(zhí)行虛擬機(jī)的機(jī)器中的漏洞。例如,虛擬機(jī)可能包括異常操作的60個(gè)潛在的源。當(dāng)檢測(cè)虛擬機(jī)中的異常操作 時(shí),域管理器118可產(chǎn)生第一組四個(gè)快照實(shí)例,其中每個(gè)快照實(shí)例包含15個(gè)限制條件,其阻 斷了異常操作的15種不同的潛在的源。在從該第一組中找到?jīng)]有表現(xiàn)出異常操作的那個(gè) 快照實(shí)例之后,域管理器118可以產(chǎn)生第二組五個(gè)快照實(shí)例,其中每個(gè)快照實(shí)例都包含在 該快照實(shí)例中所使用的15個(gè)限制條件中的三個(gè)限制條件。域管理器118接著通過(guò)使用該 第二組中的未表現(xiàn)出異常操作的那個(gè)快照實(shí)例來(lái)產(chǎn)生第三組三個(gè)快照實(shí)例。該第三組中的 每個(gè)快照實(shí)例可以僅僅包含在在該第二組中的那個(gè)快照實(shí)例中所找到的三個(gè)限制條件中 的一個(gè)。結(jié)果,異常操作的特定源可以在該第三組中的沒(méi)有表現(xiàn)出異常操作的那個(gè)快照實(shí) 例中找到。因此,快照實(shí)例可以被自查模塊120用作用于確定虛擬機(jī)中的異常操作的源的工 具??煺諏?shí)例還可以被域管理器118用在對(duì)導(dǎo)致異常操作的漏洞進(jìn)行響應(yīng)的損壞抑制機(jī)制 中。更為特別地,域管理器118可使用沒(méi)有表現(xiàn)出異常操作的快照實(shí)例,通過(guò)使用該快照實(shí) 例更新虛擬機(jī)的狀態(tài)來(lái)對(duì)攻擊做出響應(yīng)。為了使用該快照實(shí)例更新虛擬機(jī)的狀態(tài),域管理 器118可加速快照實(shí)例的執(zhí)行以達(dá)到虛擬機(jī)的當(dāng)前狀態(tài)并且接著用該快照實(shí)例來(lái)替換虛 擬機(jī)。為了達(dá)到虛擬機(jī)的當(dāng)前狀態(tài),域管理器118可以通過(guò)使用所緩存的虛擬機(jī)的輸入 事件,以加快的速率來(lái)執(zhí)行快照實(shí)例。如上所述,虛擬機(jī)的輸入事件在虛擬機(jī)的執(zhí)行期間可 以被緩存。在虛擬機(jī)中檢測(cè)到異常操作之后,輸入事件可以繼續(xù)被緩存。使用緩存的輸入事件對(duì)快照實(shí)例的加速執(zhí)行可以允許快照實(shí)例通過(guò)處理剩余的緩存的輸入事件以達(dá)到虛 擬機(jī)的當(dāng)前狀態(tài)。接著,該快照實(shí)例可以通過(guò)處理虛擬機(jī)的實(shí)時(shí)輸入事件,來(lái)接管虛擬機(jī)的 執(zhí)行。另外,快照實(shí)例在替換虛擬機(jī)之后可以通過(guò)繼續(xù)阻斷來(lái)自異常操作的源的輸入事件, 從而避免漏洞的再次出現(xiàn)。圖2示出根據(jù)一個(gè)實(shí)施例的虛擬機(jī)208 (例如圖1中的訪客域114-116)的受管理 的執(zhí)行。如圖2中所示,在虛擬機(jī)208在時(shí)間200上被執(zhí)行時(shí),周期性地獲取虛擬機(jī)208的 一系列快照202-206。如上所述,還可以監(jiān)控虛擬機(jī)208的執(zhí)行中的異常操作,并且虛擬機(jī) 208的輸入事件可以被緩存。虛擬機(jī)116可以持續(xù)執(zhí)行,直到檢測(cè)到異常操作為止。一旦檢測(cè)到異常操作,則可以通過(guò)選擇在檢測(cè)到異常操作之前獲取的快照204以 及從快照204中產(chǎn)生一組快照實(shí)例210-212來(lái)促進(jìn)對(duì)異常操作的分析??梢曰谂c異常操 作相關(guān)聯(lián)的試探來(lái)選擇快照204。例如,可以基于可能導(dǎo)致虛擬機(jī)208中所觀察到的那種類 型的異常操作的漏洞的典型的檢測(cè)時(shí)間來(lái)選擇快照204??蛇x地,可以通過(guò)使用更簡(jiǎn)單的試 探(諸如虛擬機(jī)208的第二最近的快照)來(lái)選擇快照204。每個(gè)快照實(shí)例210-212包括不同的限制條件214-216,其阻斷了異常操作的潛在 源。例如,限制條件214-216可阻斷快照實(shí)例210-212上的不同的端口、地址、用戶輸入和 /或遠(yuǎn)程外殼程序。另外,每個(gè)限制條件214-216可以是基于規(guī)則的或試探式的。例如,限 制條件214可以阻斷快照實(shí)例210上的網(wǎng)際協(xié)議(IP)地址,因?yàn)樵揑P地址可能頻繁地被 識(shí)別為漏洞的源。在每個(gè)快照實(shí)例210-212的執(zhí)行期間,緩存的虛擬機(jī)的輸入事件被發(fā)送給快照實(shí) 例以便進(jìn)行處理。緩存的輸入事件可以包括網(wǎng)絡(luò)流量、硬件事件、輸入/輸出(I/O)事件、 和/或輸入事件的定時(shí)信息(例如時(shí)間戳)。另外,快照實(shí)例210-212可以以加快的速率 來(lái)執(zhí)行以迅速地找到異常操作的源。因?yàn)榫彺娴妮斎胧录赡馨|發(fā)異常操作的輸入事 件,所以異常操作的源可以根據(jù)在處理了緩存的輸入事件之后未表現(xiàn)出異常操作的快照實(shí) 例(例如快照實(shí)例210)來(lái)確定。作為替代,如果所有快照實(shí)例210-212都表現(xiàn)出異常操作, 則可以選擇更早的快照(例如快照202)并將其用于產(chǎn)生快照實(shí)例,直到從一個(gè)快照實(shí)例中 確定異常操作的源為止。如上所述,每個(gè)快照實(shí)例210-212可以包括一組限制條件而不是單個(gè)限制條件。 在每個(gè)快照實(shí)例210-212中使用多個(gè)限制條件可以允許在有限的機(jī)器資源上同時(shí)運(yùn)行較 少的快照實(shí)例。此外,盡管同時(shí)執(zhí)行比虛擬機(jī)208中的異常操作的潛在源的數(shù)目少的快照 實(shí)例,但是使用上面參考圖1所描述的分治方法可以實(shí)現(xiàn)對(duì)異常操作的源的有效識(shí)別。例 如,可以通過(guò)順序地執(zhí)行三組五個(gè)快照實(shí)例,從125個(gè)潛在的源中確定虛擬機(jī)208中的異常 操作的源,其中每個(gè)后續(xù)組中的限制條件的數(shù)目是前一組中的限制條件和/或虛擬機(jī)208 的限制條件的五分之一??煺諏?shí)例210接著可被用于更新虛擬機(jī)的狀態(tài)。具體地,快照實(shí)例210的加速執(zhí) 行可以繼續(xù),直到快照實(shí)例210達(dá)到虛擬機(jī)116的當(dāng)前狀態(tài)218為止。當(dāng)達(dá)到當(dāng)前狀態(tài)218 時(shí),快照實(shí)例210可能已經(jīng)處理了除被限制條件214所阻斷的那些輸入事件之外的所有緩 存的輸入事件。快照實(shí)例210接著可以替換虛擬機(jī)208并且替代虛擬機(jī)208來(lái)處理實(shí)時(shí)輸 入事件。圖3示出說(shuō)明根據(jù)一個(gè)實(shí)施例的管理虛擬機(jī)的執(zhí)行的處理的流程圖。在一個(gè)或多個(gè)實(shí)施例中,一個(gè)或多個(gè)步驟可以省略、重復(fù)和/或以不同的次序來(lái)執(zhí)行。因此,圖3中所 示步驟的具體安排不應(yīng)該被理解成限制這些實(shí)施例的范圍。最初,監(jiān)視虛擬機(jī)的執(zhí)行中的異常操作(步驟302)。異常操作可對(duì)應(yīng)于虛擬機(jī)的 預(yù)期行為之外的操作。監(jiān)視虛擬機(jī)還可進(jìn)一步包括緩存虛擬機(jī)的輸入事件。另外,在虛擬 機(jī)的執(zhí)行期間,周期性地獲得虛擬機(jī)的快照(操作304)。虛擬機(jī)的異常操作還可以被檢測(cè)(操作306)。異常操作可能指示虛擬機(jī)的潛在漏 洞。如果沒(méi)有檢測(cè)到任何異常操作,則虛擬機(jī)在執(zhí)行期間可以繼續(xù)被監(jiān)視和獲取快照(步 驟302-304)。然而,如果檢測(cè)到異常操作,則虛擬機(jī)的一個(gè)快照被選擇(步驟308)并且從 該快照中產(chǎn)生一組快照實(shí)例(步驟310)。此外,快照實(shí)例是通過(guò)使用不同的限制條件來(lái)執(zhí) 行的(操作312),所述限制條件阻斷諸如端口或地址之類的異常操作的潛在源。結(jié)果,每個(gè) 快照實(shí)例可以通過(guò)處理除由施加在該快照實(shí)例上的限制條件所阻斷的輸入事件之外的緩 存的虛擬機(jī)的輸入事件來(lái)執(zhí)行。異常操作的源可以根據(jù)沒(méi)有表現(xiàn)出異常行為的快照實(shí)例來(lái)確定(操作314)。然 而,如果所有快照實(shí)例都表現(xiàn)出異常行為,則選擇更早的快照(步驟308),從該更早的快照 中產(chǎn)生快照實(shí)例(操作310),并且使用一組限制條件來(lái)執(zhí)行所述快照實(shí)例(操作312),直 到從不包含漏洞的快照中確定異常操作的源為止。一旦異常操作的源被確定,則加速?zèng)]有表現(xiàn)出異常操作的快照實(shí)例的執(zhí)行以達(dá)到 虛擬機(jī)的當(dāng)前狀態(tài)(操作316)。具體地,該快照實(shí)例可以繼續(xù)以加快的速率處理緩存的虛 擬機(jī)的輸入事件,直到該快照實(shí)例已經(jīng)處理了所有緩存的輸入事件并且可以處理被發(fā)送給 虛擬機(jī)的實(shí)時(shí)輸入事件為止。接著,虛擬機(jī)可以用快照實(shí)例來(lái)替換(操作318)。通過(guò)監(jiān)視虛擬機(jī)的執(zhí)行并周期性地獲取虛擬機(jī)的快照(操作302-304),新的虛擬 機(jī)(例如快照實(shí)例)的執(zhí)行可能繼續(xù)(操作320),直到異常操作被檢測(cè)到為止(操作306)。 接著,可以通過(guò)來(lái)自所選擇的虛擬機(jī)的快照的快照實(shí)例的執(zhí)行(操作308-312)以及基于快 照實(shí)例的限制條件確定異常操作的源(操作314)來(lái)分析異常操作。最后,可以通過(guò)用沒(méi)有 表現(xiàn)出異常操作的快照實(shí)例替換虛擬機(jī),克服異常操作(操作316-318)。因此,通過(guò)使用快 照實(shí)例和限制條件,虛擬機(jī)中的漏洞可以被檢測(cè)、分析和管理,直到虛擬機(jī)不再被執(zhí)行。僅僅是出于圖示和說(shuō)明的目的給出了上述對(duì)各種實(shí)施例的描述。它們不是旨在進(jìn) 行窮舉或?qū)⒈景l(fā)明的實(shí)施例限制到所公開(kāi)的形式。因此,許多修改和各種變體對(duì)于本領(lǐng)域 的普通技術(shù)人員而言是顯而易見(jiàn)。另外,上面的公開(kāi)不是旨在限制本發(fā)明的實(shí)施例。
權(quán)利要求
一種計(jì)算機(jī)實(shí)現(xiàn)的用于管理虛擬機(jī)的執(zhí)行的方法,包括在所述虛擬機(jī)的執(zhí)行期間獲取所述虛擬機(jī)的一系列快照;如果檢測(cè)到所述虛擬機(jī)的異常操作,則從所述一系列的快照中的一個(gè)快照中產(chǎn)生一組快照實(shí)例,其中所述快照實(shí)例中的每個(gè)使用一組限制條件中的一個(gè)限制條件來(lái)執(zhí)行;通過(guò)使用所述快照實(shí)例中的沒(méi)有表現(xiàn)出所述異常操作的快照實(shí)例,確定所述異常操作的源;以及通過(guò)使用所述快照實(shí)例來(lái)更新所述虛擬機(jī)的狀態(tài)。
2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述使用所述快照實(shí)例來(lái)更新所述 虛擬機(jī)的狀態(tài)包括加速所述快照實(shí)例的執(zhí)行以達(dá)到所述虛擬機(jī)的當(dāng)前狀態(tài);以及 用所述快照實(shí)例來(lái)替換所述虛擬機(jī)。
3.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述加速所述快照實(shí)例的執(zhí)行包括對(duì)與所述虛擬機(jī)相關(guān)聯(lián)的輸入事件進(jìn)行緩存;以及 使用所述緩存的輸入事件來(lái)以加快的速率執(zhí)行所述快照實(shí)例。
4.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,還包括從所述一系列快照實(shí)例中選擇一個(gè)快照以作為一組快照實(shí)例來(lái)執(zhí)行;以及 如果不能從所述快照中確定所述異常操作的源,則從所述一系列快照中選擇一個(gè)更早 的快照以作為一組快照實(shí)例來(lái)執(zhí)行。
5.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述快照是在所述虛擬機(jī)的執(zhí)行期 間以周期性的間隔獲取的。
6.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述限制條件中的每個(gè)都被用于阻 斷所述異常操作的一個(gè)潛在源。
7.根據(jù)權(quán)利要求6所述的計(jì)算機(jī)實(shí)現(xiàn)的方法,其中所述異常操作的潛在源對(duì)應(yīng)于端口 和地址中的至少一個(gè)。
8.一種用于管理虛擬機(jī)的執(zhí)行的系統(tǒng),包括自查模塊,配置成監(jiān)視所述虛擬機(jī)的執(zhí)行中的異常操作;以及域管理器,配置成在所述虛擬機(jī)的執(zhí)行期間獲取所述虛擬機(jī)的一系列快照,其中如果檢測(cè)到所述虛擬機(jī)的異常操作,則所述域管理器還被配置成從所述一系列快照中的一個(gè)快照中產(chǎn)生一組快照實(shí)例,其中 所述快照實(shí)例中的每個(gè)使用一組限制條件中的一個(gè)限制條件來(lái)執(zhí)行;以及所述自查模塊還被配置成使用所述快照實(shí)例中的沒(méi)有表現(xiàn)出所述異常操作的快照實(shí) 例,確定所述異常操作的源。
9.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述域管理器還被配置成使用所述快照實(shí)例來(lái)更 新所述虛擬機(jī)的狀態(tài)。
10.根據(jù)權(quán)利要求9所述的系統(tǒng),其中所述使用所述快照實(shí)例來(lái)更新所述虛擬機(jī)的狀 態(tài)包括加速所述快照實(shí)例的執(zhí)行以達(dá)到所述虛擬機(jī)的當(dāng)前狀態(tài);以及用所述快照實(shí)例來(lái)替換所述虛擬機(jī)。
11.根據(jù)權(quán)利要求10所述的系統(tǒng),其中所述加速所述快照實(shí)例的執(zhí)行包括 對(duì)與所述虛擬機(jī)相關(guān)聯(lián)的輸入事件進(jìn)行緩存;以及通過(guò)使用所述緩存的輸入事件來(lái)以加快的速率執(zhí)行所述快照實(shí)例。
12.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述域管理器還被配置成 從所述一系列快照中選擇一個(gè)快照以作為一組快照實(shí)例來(lái)執(zhí)行;以及如果不能從所述快照中確定所述異常操作的源,則從所述一系列快照中選擇一個(gè)更早 的快照以作為一組快照實(shí)例來(lái)執(zhí)行。
13.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述快照實(shí)例是在所述虛擬機(jī)的執(zhí)行期間以周 期性的間隔獲取的。
14.根據(jù)權(quán)利要求8所述的系統(tǒng),其中所述限制條件中的每個(gè)都被用于阻斷所述異常 操作的一個(gè)潛在源。
15.根據(jù)權(quán)利要求14所述的系統(tǒng),其中所述異常操作的潛在源對(duì)應(yīng)于端口和地址中的 至少一個(gè)。
16.一種存儲(chǔ)指令的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述指令當(dāng)被計(jì)算機(jī)執(zhí)行時(shí)使得所述計(jì)算 機(jī)執(zhí)行一種用于管理虛擬機(jī)的執(zhí)行的方法,所述方法包括在所述虛擬機(jī)的執(zhí)行期間獲取所述虛擬機(jī)的一系列快照; 如果檢測(cè)到所述虛擬機(jī)的異常操作,則從所述一系列的快照中的一個(gè)快照中產(chǎn)生一組快照實(shí)例,其中所述快照實(shí)例中的每個(gè) 使用一組限制條件中的一個(gè)限制條件來(lái)執(zhí)行;通過(guò)使用所述快照實(shí)例中的沒(méi)有表現(xiàn)出所述異常操作的快照實(shí)例,確定所述異常操作 的源;以及通過(guò)使用所述快照實(shí)例來(lái)更新所述虛擬機(jī)的狀態(tài)。
17.根據(jù)權(quán)利要求16所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述使用所述快照實(shí)例來(lái)更新 所述虛擬機(jī)的狀態(tài)包括加速所述快照實(shí)例的執(zhí)行以達(dá)到所述虛擬機(jī)的當(dāng)前狀態(tài);以及 用所述快照實(shí)例來(lái)替換所述虛擬機(jī)。
18.根據(jù)權(quán)利要求17所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述加速所述快照實(shí)例的執(zhí)行 包括對(duì)與所述虛擬機(jī)相關(guān)聯(lián)的輸入事件進(jìn)行緩存;以及 使用所述緩存的輸入事件來(lái)以加快的速率執(zhí)行所述快照實(shí)例。
19.根據(jù)權(quán)利要求16所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述方法還包括 從所述一系列快照實(shí)例中選擇一個(gè)快照以作為一組快照實(shí)例來(lái)執(zhí)行;以及如果不能從所述快照中確定所述異常操作的源,則從所述一系列快照中選擇一個(gè)更早 的快照以作為一組快照實(shí)例來(lái)執(zhí)行。
20.根據(jù)權(quán)利要求16所述的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其中所述限制條件中的每個(gè)都被用 于阻斷所述異常操作的一個(gè)潛在源。
全文摘要
本發(fā)明涉及虛擬機(jī)快照和損壞抑制。某些實(shí)施例提供一種管理虛擬機(jī)的執(zhí)行的系統(tǒng)。在操作期間,該系統(tǒng)獲取虛擬機(jī)的執(zhí)行期間的一系列虛擬機(jī)快照。如果檢測(cè)到虛擬機(jī)的異常操作,則系統(tǒng)從所述一系列快照中的一個(gè)快照中產(chǎn)生一組快照實(shí)例,其中每個(gè)快照實(shí)例在一組限制條件的一個(gè)限制條件下執(zhí)行。接下來(lái),該系統(tǒng)使用來(lái)自那些沒(méi)有表現(xiàn)出異常操作的快照實(shí)例中的快照實(shí)例來(lái)確定異常操作的源。最后,該系統(tǒng)使用所述快照實(shí)例更新虛擬機(jī)的狀態(tài)。
文檔編號(hào)G06F9/455GK101853346SQ20101015829
公開(kāi)日2010年10月6日 申請(qǐng)日期2010年3月30日 優(yōu)先權(quán)日2009年3月31日
發(fā)明者C·L·舒巴, T·P·瑪斯蘭德 申請(qǐng)人:甲骨文美國(guó)公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
澎湖县| 大冶市| 策勒县| 民和| 洞口县| 武夷山市| 祁连县| 榆中县| 磐石市| 柞水县| 宿州市| 伊金霍洛旗| 黄梅县| 靖安县| 手机| 吕梁市| 泸溪县| 临漳县| 枣庄市| 阆中市| 河曲县| 慈溪市| 永川市| 房产| 咸阳市| 桃园市| 葵青区| 吉木萨尔县| 通渭县| 潜江市| 富源县| 文成县| 曲阳县| 梁河县| 雷波县| 汶上县| 黑龙江省| 界首市| 凤翔县| 海丰县| 镇赉县|