亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種基于虛擬化技術(shù)的云平臺客戶機(jī)系統(tǒng)可用性提升方法與流程

文檔序號:12664803閱讀:202來源:國知局
一種基于虛擬化技術(shù)的云平臺客戶機(jī)系統(tǒng)可用性提升方法與流程
本發(fā)明屬于虛擬化及系統(tǒng)安全
技術(shù)領(lǐng)域
,涉及基于虛擬化技術(shù)的云平臺客戶機(jī)系統(tǒng)可用性提升方法,尤其涉及一種針對安全工具誤報帶來的系統(tǒng)可用性影響問題的提升云平臺客戶機(jī)系統(tǒng)可用性的方法。
背景技術(shù)
:隨著虛擬化技術(shù)的不斷發(fā)展,云計算應(yīng)用越來越廣泛。解決面向云平臺的安全問題、保障使用云服務(wù)的客戶機(jī)系統(tǒng)安全成為云服務(wù)的重要需求之一。國內(nèi)外已有一些基于虛擬化技術(shù)或操作系統(tǒng)的安全防護(hù)技術(shù)方案,主要包括實(shí)現(xiàn)惡意代碼的檢測和分析、完整性監(jiān)控、入侵檢測、安全監(jiān)控等方面。在惡意代碼檢測與分析方面,Jiang等人(JIANGX,WANGX,XUD.Stealthymalwaredetectionthroughvmm-basedout-of-the-boxsemanticviewreconstruction[C]//Proceedingsofthe14thACMconferenceonComputerandcommunicationssecurity.ACM,2007:128-138.)提出了VMwatcher(VirtualMachineWatcher)機(jī)制,它在客戶機(jī)系統(tǒng)之外部署惡意行為檢測系統(tǒng),并在監(jiān)控層進(jìn)行語義恢復(fù),能夠檢測出系統(tǒng)存在的惡意程序。Dinaburg等人(DINABURGA,ROYALP,SHARIFM,etal.Ether:malwareanalysisviahardwarevirtualizationextensions[C]//Proceedingsofthe15thACMconferenceonComputerandcommunicationssecurity.ACM,2008:51-62.)提出基于Xen的Ether方法,整個系統(tǒng)分為兩個部分,一部分工作在監(jiān)控層下,一部分工作在Xen的特權(quán)管理域(dom0)中,利用IntelVT(IntelVirtualizationTechnology)技術(shù)對被監(jiān)控系統(tǒng)中的可疑程序進(jìn)行跟蹤。Lanzi等人(LANZIA,SHARIFMI,LEEW.K-Tracer:ASystemforExtractingKernelMalwareBehavior[C]//NDSS2009:TheNetworkandDistributedSystemSymposium,SanDiego,California,2009:255-264.)基于QEMU(QuickEmulator)提出并開發(fā)了K-Tracer惡意代碼行為分析工具,它能夠動態(tài)收集Windows內(nèi)核的執(zhí)行路徑信息,并采用后向和前向切片技術(shù)來提取惡意代碼行為。XUAN等人(XUANC,COPELANDJ,BEYAHR.Towardrevealingkernelmalwarebehaviorinvirtualexecutionenvironments[C]//RecentAdvancesinIntrusionDetection.SpringerBerlinHeidelberg,2009:304-325.)提出的Rkprofiler是一個基于沙盒的惡意代碼分析系統(tǒng),它能夠監(jiān)控并報告客戶機(jī)操作系統(tǒng)中運(yùn)行的惡意代碼的行為。在完整性保護(hù)方面,SESHADRI等人(SESHADRIA,LUKM,QUN,etal.SecVisor:AtinyhypervisortoprovidelifetimekernelcodeintegrityforcommodityOSes[C].ACMSIGOPSOperatingSystemsReview,ACM,2007,41(6):335-350.)提出的SecVisor通過創(chuàng)建一種輕量級虛擬機(jī)對操作系統(tǒng)進(jìn)行內(nèi)存保護(hù),它基于頁表對內(nèi)核模式和用戶模式下的內(nèi)存進(jìn)行內(nèi)存保護(hù)。在安全監(jiān)控方面,Payne等人(PAYNEBD,CARBONEM,SHARIFM,etal.Lares:Anarchitectureforsecureactivemonitoringusingvirtualization[C]//2008IEEESymposiumonSecurityandPrivacy(sp2008).IEEE,2008:233-247.)提出的Lares系統(tǒng)是內(nèi)部監(jiān)控的典型代表,它將安全系統(tǒng)部署在客戶機(jī)系統(tǒng)外的一個安全域中,同時在客戶機(jī)系統(tǒng)的內(nèi)核中插入鉤子函數(shù),鉤子函數(shù)用來攔截某些事件。由于鉤子函數(shù)存在于客戶機(jī)系統(tǒng)的內(nèi)核中,能夠被客戶機(jī)系統(tǒng)感知,存在被惡意程序篡改的可能性,因此需要在虛擬機(jī)管理層對鉤子函數(shù)所在內(nèi)存區(qū)域進(jìn)行保護(hù)。在入侵檢測方面,Laureano等人(LAUREANOM,MAZIEROC,JAMHOURE.Protectinghost-basedintrusiondetectorsthroughvirtualmachines[J].ComputerNetworks,2007,51(5):1275-1283.)提出了基于主機(jī)的入侵檢測系統(tǒng)的保護(hù)方法,它通過分析在外部監(jiān)控虛擬機(jī)所獲取的系統(tǒng)調(diào)用序列來判斷進(jìn)程行為是否存在異常,并采用相應(yīng)的措施。ZHANG等人(ZHANGX,LIQ,QINGS,etal.VNIDA:BuildinganIDSarchitectureusingVMM-basednon-intrusiveapproach[C]//WKDD2008,ProceedingsoftheInternationalWorkshoponKnowledgeDiscoveryandDataMining,IEEE,2008:594-600.)提出的VNIDA是通過建立一個單獨(dú)的入侵檢測域?yàn)槠渌摂M機(jī)提供入侵檢測服務(wù)。然而,這些方案均沒有考慮到云服務(wù)客戶機(jī)的可用性問題。不論是基于操作系統(tǒng)或是基于虛擬化技術(shù)的安全工具,在對系統(tǒng)進(jìn)行檢測、防御、恢復(fù)的過程中,均會對系統(tǒng)帶來可用性的影響,而在云平臺之上的客戶機(jī)對于自身可用性具有更高的要求,因此應(yīng)該盡量減少安全防護(hù)措施對客戶機(jī)正常運(yùn)行的干擾。在實(shí)際應(yīng)用場景中,安全防護(hù)工具不可避免會發(fā)生誤報行為,而安全攸關(guān)的客戶機(jī)在安全工具發(fā)生警報時,往往會進(jìn)行暫停、檢測、恢復(fù)等操作,而安全工具誤報(虛報、漏報)的發(fā)生和發(fā)現(xiàn)存在延遲,因此誤報會降低客戶機(jī)系統(tǒng)的可用性。技術(shù)實(shí)現(xiàn)要素:針對上述問題,本發(fā)明提供一種降低由安全防護(hù)工具的誤報引發(fā)的對云平臺客戶機(jī)系統(tǒng)可用性影響的方法。當(dāng)安全防護(hù)工具發(fā)生誤報時,該方法能夠確??蛻魴C(jī)持續(xù)不斷地運(yùn)行,而不用進(jìn)行回滾、暫停、重啟等操作,并維護(hù)客戶機(jī)系統(tǒng)應(yīng)有的狀態(tài)。本發(fā)明采用的技術(shù)方案如下:一種基于虛擬化技術(shù)的云平臺客戶機(jī)系統(tǒng)可用性提升方法,其步驟包括:1)在虛擬化監(jiān)控層(VirtualMachineMonitor,VMM)對上層客戶機(jī)的可疑進(jìn)程的行為進(jìn)行捕獲;所述可疑進(jìn)程即為安全防護(hù)工具報警時提供的產(chǎn)生威脅的進(jìn)程;2)根據(jù)客戶機(jī)的可疑進(jìn)程與其它進(jìn)程的行為交互,形成進(jìn)程間的依賴關(guān)系;3)在VMM層控制客戶機(jī)的可疑進(jìn)程及與其存在依賴關(guān)系的進(jìn)程的行為,同時保證這些進(jìn)程在客戶機(jī)中繼續(xù)運(yùn)行,并且可疑進(jìn)程的行為對客戶機(jī)不產(chǎn)生影響;4)當(dāng)誤報被發(fā)現(xiàn)時,若為漏報,則殺死可疑進(jìn)程及與其存在依賴關(guān)系的進(jìn)程即可;若為虛報,則釋放受控制的可疑進(jìn)程及與其存在依賴關(guān)系的進(jìn)程,使其繼續(xù)正常運(yùn)行(即將之前處于控制之下的進(jìn)程釋放掉,使系統(tǒng)狀態(tài)變?yōu)榭梢蛇M(jìn)程正常運(yùn)行到此時的狀態(tài))。下面將分為四個部分對以上步驟的具體內(nèi)容進(jìn)行詳細(xì)描述。1.本方法采用系統(tǒng)調(diào)用行為序列作為進(jìn)程行為控制的基礎(chǔ),在VMM下捕獲客戶機(jī)系統(tǒng)調(diào)用行為信息,對客戶機(jī)進(jìn)程的行為信息進(jìn)行捕獲。捕獲的行為包括文件操作和進(jìn)程操作,具體內(nèi)容見表1,其中read表示讀操作,write表示寫操作,fork和clone表示創(chuàng)建子進(jìn)程操作,mmap表示映射操作,pipe表示管道操作。捕獲到的行為信息包括系統(tǒng)調(diào)用號、進(jìn)程id以及與具體行為有關(guān)的信息,如文件操作中的文件路徑、進(jìn)程操作中的進(jìn)程id。表1.捕獲行為捕獲行為系統(tǒng)調(diào)用行為信息文件相關(guān)read、write文件路徑進(jìn)程相關(guān)fork、clone、mmap、pipe操作目標(biāo)進(jìn)程id2.由于進(jìn)程之間存在進(jìn)程間通信,因此有些行為并不是孤立的。比如A進(jìn)程被判定為可疑進(jìn)程,A進(jìn)程的行為會處于控制之下。如果B進(jìn)程和A進(jìn)程存在行為交互,那么B進(jìn)程就可能被A進(jìn)程所感染,因此B進(jìn)程的行為也應(yīng)該受到控制。產(chǎn)生進(jìn)程間交互的行為可以分為直接交互和間接交互。進(jìn)程創(chuàng)建,如fork,進(jìn)程間通信(Inter-ProcessCommunication,IPC),如pipe,是進(jìn)程間的直接交互。通過文件操作的交互可看作是間接交互,比如進(jìn)程A寫了某文件,進(jìn)程B讀了同一個文件,可以認(rèn)為進(jìn)程A、B間產(chǎn)生間接交互。同理還有mmap系統(tǒng)調(diào)用。進(jìn)程間交互行為見表2。表2.各行為控制方式3.當(dāng)漏報被發(fā)現(xiàn)時,要實(shí)現(xiàn)只需將威脅進(jìn)程殺死即可恢復(fù)系統(tǒng)安全,就要保證該進(jìn)程在漏報被發(fā)現(xiàn)之前,未對系統(tǒng)造成實(shí)質(zhì)性影響。本方法為控制客戶機(jī)的可疑進(jìn)程及與其存在依賴關(guān)系的進(jìn)程的行為,同時保證這些進(jìn)程在客戶機(jī)中繼續(xù)運(yùn)行,并且可疑進(jìn)程的行為對客戶機(jī)不產(chǎn)生影響,采取的控制措施如下:捕獲模塊捕獲到一個來自受控進(jìn)程或與之存在依賴關(guān)系的進(jìn)程行為;行為控制模塊判斷該行為是否是一個需要被修改的行為,需要被修改的行為見表2;若不是,則不做處理;若是,則按照表2進(jìn)行行為控制;修改結(jié)束之后返回給客戶機(jī),客戶機(jī)將不會察覺到VMM對該進(jìn)程的任何修改,并繼續(xù)正常運(yùn)行該進(jìn)程??刂拼胧├鐆rite系統(tǒng)調(diào)用,控制方式為在該系統(tǒng)調(diào)用執(zhí)行之前將寫的內(nèi)容清零;對于mmap系統(tǒng)調(diào)用,當(dāng)多個進(jìn)程mmap同一個文件時,就會產(chǎn)生進(jìn)程間依賴,此時的控制方式是允許其執(zhí)行,同時記錄產(chǎn)生的依賴關(guān)系。類似的還有write/read產(chǎn)生的進(jìn)程間依賴,控制方式與mmap相同。fork和clone也會產(chǎn)生進(jìn)程間依賴,但控制方式是不允許其執(zhí)行,這里通過在該系統(tǒng)調(diào)用執(zhí)行之前,修改其系統(tǒng)調(diào)用號為一個無副作用的系統(tǒng)調(diào)用(如getpid())來實(shí)現(xiàn)控制。pipe由于經(jīng)常和fork捆綁使用,當(dāng)fork無法執(zhí)行時,pipe也無法起到應(yīng)有的效果,因此這里允許其執(zhí)行。由于捕獲到進(jìn)程的系統(tǒng)調(diào)用行為時對該行為進(jìn)行修改,使其并沒有對系統(tǒng)產(chǎn)生實(shí)質(zhì)的改變,而這個被修改的行為可能會影響到該進(jìn)程及其他進(jìn)程后續(xù)的行為,因此,要對該進(jìn)程以及相關(guān)進(jìn)程的后續(xù)行為繼續(xù)采取控制措施。4.將受控進(jìn)程的行為釋放到客戶機(jī)中,使其快速恢復(fù)應(yīng)有的運(yùn)行狀態(tài)的重點(diǎn)在于在適當(dāng)?shù)臅r刻保留進(jìn)程的運(yùn)行狀態(tài)。當(dāng)某一進(jìn)程開始處于控制之下,或某一進(jìn)程與受控進(jìn)程產(chǎn)生依賴關(guān)系時,則交給行為釋放模塊進(jìn)行該進(jìn)程狀態(tài)的備份。對進(jìn)程進(jìn)行備份的方法見圖1,在該進(jìn)程處于用戶態(tài)時主動陷入到VMM中,此時對該進(jìn)程注入一個fork系統(tǒng)調(diào)用,以實(shí)現(xiàn)進(jìn)程備份。注入fork系統(tǒng)調(diào)用的方法是修改進(jìn)程代碼段中的4個字節(jié),將原代碼內(nèi)容修改為int3,int80,int3三條指令。修改代碼時需要保存該位置原來的代碼內(nèi)容,以便之后的恢復(fù)工作。代碼被修改后,還需要設(shè)置eax寄存器的值為fork系統(tǒng)調(diào)用號,這樣,當(dāng)客戶機(jī)執(zhí)行到int80指令時,就能夠正確執(zhí)行fork系統(tǒng)調(diào)用完成進(jìn)程的備份。由于eax寄存器也被修改,因此這里同樣需要將原本的eax寄存器值記錄下來。fork產(chǎn)生的子進(jìn)程作為備份進(jìn)程,應(yīng)該暫停在此狀態(tài)下,而不應(yīng)該被調(diào)度運(yùn)行;當(dāng)行為需要被釋放時,才解除其暫停狀態(tài)。這里采用的方法是,如果檢測到是子進(jìn)程被調(diào)度執(zhí)行,則注入sched_yield系統(tǒng)調(diào)用使其睡眠。另外,由于所修改的代碼段部分往往是被多個進(jìn)程所共享的,因此修改的代碼有可能被其他無關(guān)進(jìn)程所執(zhí)行,而其他進(jìn)程應(yīng)執(zhí)行原來的代碼,而不應(yīng)該執(zhí)行修改后的代碼,因此這里加入兩個int3指令,以對客戶機(jī)陷入VMM時正在運(yùn)行進(jìn)程的行為流程進(jìn)行控制。由于有兩個int3指令,因此從int3陷入的情況分為兩種:從第一個int3陷入(1stint3)以及從第二個int3陷入(2ndint3)。不同陷入情況的處理措施見圖2。如圖2所示,如果從第一個int3陷入,無論該進(jìn)程是無關(guān)進(jìn)程還是受控進(jìn)程,均需要模擬被修改的位置原來的代碼執(zhí)行效果;如果從第二個int3陷入,則判斷該進(jìn)程為受控進(jìn)程還是備份產(chǎn)生的子進(jìn)程,若是子進(jìn)程則記錄該進(jìn)程ID,若是受控進(jìn)程,則根據(jù)是否需要釋放該進(jìn)程行為進(jìn)行具體處理。本發(fā)明的有益效果是:安全工具不可避免地發(fā)生誤報,而誤報會對云平臺之上的客戶機(jī)帶來系統(tǒng)可用性影響。本發(fā)明避免安全工具因誤報而進(jìn)行系統(tǒng)恢復(fù)、回滾等操作,確保在誤報發(fā)生后,客戶機(jī)系統(tǒng)仍然能夠持續(xù)不斷地運(yùn)行,并維持正確的運(yùn)行狀態(tài)。本發(fā)明在安全工具誤報發(fā)生時能夠正確控制可疑進(jìn)程,避免該進(jìn)程對系統(tǒng)造成實(shí)質(zhì)性影響,并能保證該進(jìn)程正確運(yùn)行狀態(tài);在誤報發(fā)現(xiàn)時,客戶機(jī)系統(tǒng)能夠快速恢復(fù)到應(yīng)有的狀態(tài),從而降低安全工具對云平臺之上的客戶機(jī)可用性造成的影響。附圖說明圖1為本發(fā)明進(jìn)程備份流程圖。圖2為本發(fā)明int3陷入處理流程圖。圖3為本發(fā)明方法流程圖。具體實(shí)施方式下面結(jié)合實(shí)施例和附圖對本發(fā)明進(jìn)行進(jìn)一步詳細(xì)描述。本發(fā)明方法流程如圖3所示。當(dāng)一個安全工具產(chǎn)生報警時,本方法將接收到該信號,然后執(zhí)行以下流程:將產(chǎn)生威脅的進(jìn)程(由安全工具提供)標(biāo)為可疑進(jìn)程,將其進(jìn)程id傳遞給捕獲模塊和行為釋放模塊;行為釋放模塊對該可疑進(jìn)程進(jìn)行備份;捕獲模塊對該可疑進(jìn)程的行為進(jìn)行捕獲,并將捕獲到的行為傳遞給行為控制模塊;行為控制模塊對各進(jìn)程的行為進(jìn)行控制,并根據(jù)行為類型形成進(jìn)程間依賴關(guān)系;當(dāng)誤報被發(fā)現(xiàn)時,若為漏報,則只需殺死該可疑進(jìn)程、與其存在依賴關(guān)系的進(jìn)程以及這些進(jìn)程對應(yīng)的備份進(jìn)程即可;若為虛報,則將消息發(fā)送給行為釋放模塊,該行為釋放模塊負(fù)責(zé)恢復(fù)進(jìn)程狀態(tài),使進(jìn)程能夠持續(xù)不斷運(yùn)行。所述漏報是指安全工具未對惡意進(jìn)程進(jìn)行報警的情況;所述虛報是指安全工具將正常進(jìn)程誤報為惡意進(jìn)程的情況。下面給出兩個具體實(shí)施例??梢岳斫獾氖牵枋龅膶?shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。實(shí)施例一:針對虛報的場景我們進(jìn)行了如下實(shí)驗(yàn):兩個監(jiān)控工具A和B共同監(jiān)控客戶機(jī),當(dāng)前客戶機(jī)中正在運(yùn)行某一目標(biāo)進(jìn)程。t1時刻A對該進(jìn)程(目標(biāo)進(jìn)程)產(chǎn)生報警,B未產(chǎn)生報警,在t2時刻發(fā)現(xiàn)虛報。該目標(biāo)進(jìn)程被報警之后還執(zhí)行了其他操作,并與其他進(jìn)程形成了依賴關(guān)系。實(shí)驗(yàn)中本方法在報警過后能夠正確記錄各個進(jìn)程依賴關(guān)系,并對相關(guān)進(jìn)程的行為進(jìn)行控制。在t2時刻虛報被發(fā)現(xiàn)時,能夠使相關(guān)進(jìn)程繼續(xù)正常執(zhí)行,而不需要重新執(zhí)行。實(shí)驗(yàn)中捕獲到的行為及數(shù)量如表3所示。表3.各行為控制方式行為數(shù)量/個是否控制處理mmap5√write/read11√fork2√clone2√pipe2√實(shí)施例二:針對漏報的場景我們進(jìn)行了如下實(shí)驗(yàn):兩個監(jiān)控工具A和B共同監(jiān)控客戶機(jī),當(dāng)前客戶機(jī)中正在運(yùn)行某一目標(biāo)進(jìn)程。t1時刻A對該進(jìn)程(目標(biāo)進(jìn)程)產(chǎn)生報警,B未產(chǎn)生報警,在t2時刻發(fā)現(xiàn)漏報。由于目標(biāo)進(jìn)程行為受到控制,并未對系統(tǒng)進(jìn)行實(shí)質(zhì)性破壞,因此此時僅需殺死該進(jìn)程、與其存在依賴關(guān)系的進(jìn)程以及這些進(jìn)程對應(yīng)的備份進(jìn)程即可,而不需要進(jìn)行系統(tǒng)暫停、恢復(fù)、回滾等操作。實(shí)驗(yàn)樣本有Tsunami、Kaiten、XOR.DDoS。Tsunami,從行為上分析,該程序開始執(zhí)行之后需要clone產(chǎn)生子進(jìn)程,該子進(jìn)程與攻擊主機(jī)建立socket連接,并發(fā)送數(shù)據(jù)。接收到攻擊主機(jī)的命令后,作為僵尸網(wǎng)絡(luò)中的一臺主機(jī),被入侵主機(jī)對目標(biāo)發(fā)起DoS(DenialofService)、SYNflood等攻擊。在本實(shí)驗(yàn)中,clone系統(tǒng)調(diào)用被捕獲并受到控制,使clone不會成功執(zhí)行,因此不會發(fā)生子進(jìn)程與遠(yuǎn)程攻擊主機(jī)進(jìn)行socket連接。對另一個惡意程序樣本Kaiten進(jìn)行實(shí)驗(yàn)。該進(jìn)程會對系統(tǒng)文件,如/etc/rc.d/rc.local、/etc/rc.conf進(jìn)行寫操作。本系統(tǒng)會對寫內(nèi)容進(jìn)行控制,使寫操作無效??梢钥闯觯蛻魴C(jī)操作系統(tǒng)恢復(fù)工作量及其復(fù)雜性有所降低。XOR.DDoS開始執(zhí)行時會進(jìn)行自我復(fù)制,實(shí)現(xiàn)方式是在usr/bin、/bin、/tmp下創(chuàng)建文件并寫入二進(jìn)制內(nèi)容。處于控制之下的進(jìn)程將無法寫入數(shù)據(jù)到目標(biāo)文件中。當(dāng)前第1頁1 2 3 
當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1