国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種針對(duì)基于Xen的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法

      文檔序號(hào):9708661閱讀:483來源:國知局
      一種針對(duì)基于Xen的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法
      【技術(shù)領(lǐng)域】
      [0001 ]本發(fā)明涉及云計(jì)算安全技術(shù)領(lǐng)域,特別是一種針對(duì)基于Xen的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法。
      【背景技術(shù)】
      [0002]隨著云計(jì)算的不斷發(fā)展,其應(yīng)用領(lǐng)域也越來越大。伴隨著云計(jì)算安全問題越來越引起人們的關(guān)注。惡意代碼攻擊是一種常見的攻擊手段,目前最新的惡意代碼尤其是內(nèi)核態(tài)的惡意代碼的隱藏性也越來越好,越來越難以被檢測(cè)到。隱藏進(jìn)程對(duì)于系統(tǒng)內(nèi)核、關(guān)鍵進(jìn)程的危害性也越來越大。傳統(tǒng)的惡意代碼檢測(cè)方法中多數(shù)把檢測(cè)工具部署在與惡意代碼相同的操作系統(tǒng)中,以特征碼識(shí)別為主要手段對(duì)惡意代碼進(jìn)行檢測(cè),這種方法能夠直接獲取被監(jiān)控操作系統(tǒng)的諸多信息,擁有高可見性,便于判斷是否受到攻擊,但是也存在以下的弊端:
      [0003]1、當(dāng)被監(jiān)控的操作系統(tǒng)被惡意代碼成功入侵時(shí),檢測(cè)工具同樣會(huì)暴露在惡意代碼的控制之下,不能發(fā)揮正常的檢測(cè)功能,從而導(dǎo)致隱藏進(jìn)程檢測(cè)不出來的問題。
      [0004]2、需要占用被監(jiān)控虛擬機(jī)的資源,對(duì)系統(tǒng)性能造成了損失。

      【發(fā)明內(nèi)容】

      [0005]本發(fā)明解決的技術(shù)問題在于提供一種可靠性、高效的針對(duì)虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,解決現(xiàn)有惡意代碼檢測(cè)工具容易受到攻擊、損耗過多資源的問題。
      [0006]本發(fā)明解決上述技術(shù)問題的技術(shù)方案是:
      [0007]所述的方法包括以下步驟:
      [0008]步驟1:將惡意代碼檢測(cè)工具部署在Xen系統(tǒng)的DomainO中;
      [0009]步驟2:啟動(dòng)Linux虛擬機(jī);
      [0010]步驟3:每隔一段時(shí)間,檢測(cè)工具使用Xen的虛擬機(jī)管理器的DomainU訪問接口層獲取Linux虛擬機(jī)中的硬件資源信息。通過這些信息構(gòu)造出進(jìn)程列表pi;
      [0011 ]步驟4:通過調(diào)用Linux虛擬機(jī)操作系統(tǒng)內(nèi)的工具,得到進(jìn)程列表p2;
      [0012]步驟5:對(duì)比pi與p2中的每一個(gè)進(jìn)程,如果進(jìn)程P出現(xiàn)在pi中,而未出現(xiàn)在p2中,則說明P為隱藏進(jìn)程;如果P出現(xiàn)在兩個(gè)進(jìn)程中,則說明系統(tǒng)是安全的,跳轉(zhuǎn)到步驟3。
      [0013]所述硬件資源指的是CPU、偽物理內(nèi)存的數(shù)據(jù)信息;
      [0014]所述的啟動(dòng)Linux虛擬機(jī)指的是啟動(dòng)Linux虛擬機(jī)的操作系統(tǒng)
      [0015]所述的DomainU訪問接口層指的是C語言庫libxc提供的兩個(gè)接口xc_vcpu_getcontext及xc_map_foreign_range,通過這兩個(gè)接口,可以實(shí)現(xiàn)在DomainO中訪問特定虛擬機(jī)DomainU中虛擬CPU和偽物理內(nèi)存。
      [0016]所述調(diào)用Linux虛擬機(jī)操作系統(tǒng)內(nèi)的工具指的是使用系統(tǒng)調(diào)用的手段調(diào)用Linux操作系統(tǒng)內(nèi)安裝的進(jìn)程信息打印工具并獲取打印信息,如調(diào)用ps命令。
      [0017]所述對(duì)比進(jìn)程指的是對(duì)比進(jìn)程的ID和進(jìn)程的名稱,如果進(jìn)程P的ID和名稱與進(jìn)程P7的ID和名稱一致,那么說明P和K是同一個(gè)進(jìn)程。
      [0018]本發(fā)明利用Xen虛擬機(jī)管理器可以有效的監(jiān)控DomainU中的硬件資源,包括虛擬CPU、偽物理內(nèi)存的數(shù)據(jù)信息。通過這些字節(jié)碼級(jí)別的底層信息構(gòu)造出來的操作系統(tǒng)進(jìn)程信息是可信賴的;利用虛擬機(jī)架構(gòu)提供的隔離的特性,保證檢測(cè)工具不受惡意代碼的攻擊。本發(fā)明的方法能產(chǎn)生如下的有益效果:
      [0019]1、本發(fā)明不需要在虛擬機(jī)內(nèi)部安裝任何惡意代碼檢測(cè)工具,避免惡意代碼檢測(cè)工具受到攻擊而失效的問題,同時(shí)避免了應(yīng)用傳統(tǒng)方式時(shí)在每臺(tái)虛擬機(jī)中安裝惡意代碼檢測(cè)工具而帶來的大工作量;
      [0020]2、本發(fā)明使用的惡意代碼檢測(cè)工具在虛擬機(jī)外進(jìn)行檢測(cè),能保證虛擬機(jī)的性能。
      【附圖說明】
      [0021 ]下面結(jié)合附圖對(duì)本發(fā)明進(jìn)一步說明:
      [0022]圖1為本發(fā)明的流程圖。
      【具體實(shí)施方式】
      [0023]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整的描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例。基于本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
      [0024]下面以8086系統(tǒng)架構(gòu)的計(jì)算機(jī)上,具體講述本發(fā)明的一個(gè)【具體實(shí)施方式】。
      [0025]首先對(duì)DomainU訪問層進(jìn)行擴(kuò)展,實(shí)現(xiàn)以下兩個(gè)函數(shù):
      [0026](1)read_register.
      [0027](2)read_kemel_vir_addr.
      [0028]read_register():在libxc庫中xc_vcpu_getcontext函數(shù)的基礎(chǔ)上實(shí)現(xiàn),對(duì)其進(jìn)行簡(jiǎn)單的封裝。通過r ead_r eg i s ter ()接口可以訪問目標(biāo)Domai n中虛擬CPU的EAX、EBX、EXC、EDX、EBP、ESP、ES1、ED 1、CRO、CR1、CR2、CR3、CR4、⑶TR、LDTR、IDTR等寄存器的數(shù)據(jù)。
      [0029]read_register是對(duì)xc_vcpu_getcontext函數(shù)的簡(jiǎn)單封裝,本文不進(jìn)行詳細(xì)敘述。
      [0030]read_kernel_vir_addr():在libxc庫中xc_vcpu_getcontex,xc_map_foreign_range函數(shù)的基礎(chǔ)上實(shí)現(xiàn)。部署在DomainO中的檢測(cè)工具通過該接口可以訪問目標(biāo)Domain中內(nèi)核態(tài)虛擬地址空間的數(shù)據(jù)。
      [0031 ]把上述修改后的接口層編譯后部署在DomainO中;
      [0032 ] 特定的虛擬機(jī)Doma i nU啟動(dòng)后,每隔一段時(shí)間通過Doma i nU訪問接口層能獲取得到目標(biāo)Domain中的內(nèi)存信息,重構(gòu)目標(biāo)Domain中的進(jìn)程控制塊鏈表,具體實(shí)現(xiàn)步驟如下:
      [0033](1)從8}^七6111.1]^。文件讀取內(nèi)核符號(hào);[11;[1:_1381^的地址,記作;[11;[1:_3(1(11',讀取配置文件,確定next_task成員的偏移量next_off,確定pid成員的偏移量pid_off,確定comm成員的偏移量comm_of f ;定義變量cur_addr,賦值為init_addr。
      [0034](2)調(diào)用read_kernel_vir_addr讀取cur_addr處長(zhǎng)度為sizeof (task_struct)大小的內(nèi)容,保存在字符數(shù)組cur_task_var中。
      [0035](3)根據(jù)pid_off,comm_off從cur_task_var中確定當(dāng)前進(jìn)程控制塊的進(jìn)程號(hào)、進(jìn)程名。
      [0036](4)根據(jù)next_off從cur_task_var中讀取下一個(gè)進(jìn)程控制塊的地址next_addr,將cur_addr賦值為next_addr。比較cur_addr與ini t_addr,如果不相同則跳轉(zhuǎn)到第(2)步。
      [0037](5)已經(jīng)重構(gòu)了目標(biāo)Domain中的所有進(jìn)程控制塊。
      [0038]以上獲得進(jìn)程列表pi
      [OO39 ]然后調(diào)用操作系統(tǒng)的p s -A命令打印所有進(jìn)程的信息。
      [0040]逐行獲取進(jìn)程的ID和進(jìn)程的名稱列表,組成進(jìn)程列表p2。
      [0041]把pi中的每個(gè)進(jìn)程與P2列表進(jìn)行對(duì)比(對(duì)比值進(jìn)程ID:進(jìn)程名稱),如果進(jìn)程P出現(xiàn)在pl中,而未出現(xiàn)在P2中,則說明P為隱藏進(jìn)程,調(diào)用處理模塊進(jìn)行處理,向系統(tǒng)管理員告塾目ο
      【主權(quán)項(xiàng)】
      1.一種針對(duì)基于Xen的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述的方法包括以下步驟: 步驟1:將惡意代碼檢測(cè)工具部署在Xen系統(tǒng)的DomainO中; 步驟2:啟動(dòng)Linux虛擬機(jī); 步驟3:每隔一段時(shí)間,檢測(cè)工具使用Xen的虛擬機(jī)管理器的DomainU訪問接口層獲取Linux虛擬機(jī)中的硬件資源信息。通過這些信息構(gòu)造出進(jìn)程列表pi; 步驟4:通過調(diào)用Linux虛擬機(jī)操作系統(tǒng)內(nèi)的工具,得到進(jìn)程列表p2; 步驟5:對(duì)比pi與p2中的每一個(gè)進(jìn)程,如果進(jìn)程P出現(xiàn)在pi中,而未出現(xiàn)在p2中,則說明P為隱藏進(jìn)程;如果P出現(xiàn)在兩個(gè)進(jìn)程中,則說明系統(tǒng)是安全的,跳轉(zhuǎn)到步驟3。2.根據(jù)權(quán)利要求1所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述硬件資源指的是CPU、偽物理內(nèi)存的數(shù)據(jù)信息; 所述的啟動(dòng)L i nux虛擬機(jī)指的是啟動(dòng)L i nux虛擬機(jī)的操作系統(tǒng)。3.根據(jù)權(quán)利要求1所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述的DomainU訪問接口層指的是C語言庫libxc提供的兩個(gè)接口 xc_vcpu_getcontext及叉(3_11^口_;1;'(^61811_13叫6,通過這兩個(gè)接口,可以實(shí)現(xiàn)在DomainO中訪問特定虛擬機(jī)DomainU中虛擬CPU和偽物理內(nèi)存。4.根據(jù)權(quán)利要求2所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述的DomainU訪問接口層指的是C語言庫libxc提供的兩個(gè)接口 xc_vcpu_getcontext及xc_map_foreign_range,通過這兩個(gè)接口,可以實(shí)現(xiàn)在DomainO中訪問特定虛擬機(jī)DomainU中虛擬CPU和偽物理內(nèi)存。5.根據(jù)權(quán)利要求1至4任一項(xiàng)所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述調(diào)用Linux虛擬機(jī)操作系統(tǒng)內(nèi)的工具指的是使用系統(tǒng)調(diào)用的手段調(diào)用Linux操作系統(tǒng)內(nèi)安裝的進(jìn)程信息打印工具并獲取打印信息,如調(diào)用ps命令。6.根據(jù)權(quán)利要求1至4任一項(xiàng)所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述對(duì)比進(jìn)程指的是對(duì)比進(jìn)程的ID和進(jìn)程的名稱,如果進(jìn)程P的ID和名稱與進(jìn)程K的ID和名稱一致,那么說明P和K是同一個(gè)進(jìn)程。7.根據(jù)權(quán)利要求5所述的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法,其特征在于:所述對(duì)比進(jìn)程指的是對(duì)比進(jìn)程的ID和進(jìn)程的名稱,如果進(jìn)程P的ID和名稱與進(jìn)程K的ID和名稱一致,那么說明P和K是同一個(gè)進(jìn)程。
      【專利摘要】本發(fā)明涉及云計(jì)算安全技術(shù)領(lǐng)域,特別是一種針對(duì)基于Xen的Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)方法。本發(fā)明首先將惡意代碼檢測(cè)工具部署在Xen系統(tǒng)的Domain0中,然后啟動(dòng)Linux虛擬機(jī),每隔一段時(shí)間檢測(cè)工具使用Xen的虛擬機(jī)管理器的DomainU訪問接口層獲取Linux虛擬機(jī)中的硬件資源信息。通過這些信息構(gòu)造出進(jìn)程列表p1;然后通過調(diào)用Linux虛擬機(jī)操作系統(tǒng)內(nèi)的工具,得到進(jìn)程列表p2;通過對(duì)比p1與p2中的每一個(gè)進(jìn)程,如果進(jìn)程P出現(xiàn)在p1中,而未出現(xiàn)在p2中,則說明P為隱藏進(jìn)程;如果P出現(xiàn)在兩個(gè)進(jìn)程中,則說明系統(tǒng)是安全的,繼續(xù)進(jìn)行檢測(cè)。本發(fā)明解決了傳統(tǒng)惡意軟件檢測(cè)工具容易受到攻擊而失效,從而導(dǎo)致隱藏進(jìn)程檢測(cè)不出來的問題;可以用于Linux虛擬機(jī)惡意代碼攻擊的隱藏進(jìn)程檢測(cè)。
      【IPC分類】G06F21/56, G06F21/53
      【公開號(hào)】CN105468967
      【申請(qǐng)?zhí)枴緾N201510801972
      【發(fā)明人】莫展鵬, 楊松, 季統(tǒng)凱
      【申請(qǐng)人】國云科技股份有限公司
      【公開日】2016年4月6日
      【申請(qǐng)日】2015年11月19日
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1