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

一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法

文檔序號(hào):7807052閱讀:219來(lái)源:國(guó)知局
一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法
【專(zhuān)利摘要】本發(fā)明涉及一種計(jì)算機(jī)安全【技術(shù)領(lǐng)域】,特別涉及一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法,包括:網(wǎng)絡(luò)控制模塊、攻擊分析模塊、進(jìn)程檢測(cè)模塊以及網(wǎng)絡(luò)流量檢測(cè)模塊。網(wǎng)絡(luò)控制模塊攔截虛擬機(jī)之間的網(wǎng)絡(luò)數(shù)據(jù)包并將獲取的流量信息轉(zhuǎn)發(fā)至攻擊分析模塊,攻擊分析模塊接收來(lái)自網(wǎng)絡(luò)控制模塊的虛擬機(jī)間的流量信息,并調(diào)用進(jìn)程檢測(cè)模塊檢測(cè)進(jìn)程是否可疑,必要時(shí)調(diào)用網(wǎng)絡(luò)流量檢測(cè)模塊對(duì)可疑流量進(jìn)行更深層的檢測(cè)。本發(fā)明針對(duì)當(dāng)前虛擬機(jī)服務(wù)器中用于各虛擬機(jī)之間流量轉(zhuǎn)發(fā)的虛擬交換機(jī)進(jìn)行擴(kuò)展,提出一個(gè)能夠攔截、檢測(cè)、重定向流量的縱深防御系統(tǒng),能夠達(dá)到預(yù)防并制止網(wǎng)絡(luò)集群內(nèi)虛擬機(jī)之間攻擊行為的目的。
【專(zhuān)利說(shuō)明】一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法
[0001]
【技術(shù)領(lǐng)域】
[0002]本發(fā)明涉及的是一種計(jì)算機(jī)安全領(lǐng)域的防御系統(tǒng),具體是一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法。
【背景技術(shù)】
[0003]現(xiàn)有很多著重于檢測(cè)被感染虛擬機(jī)并保護(hù)云中其他虛擬機(jī)不受其攻擊的技術(shù),如防火墻和入侵檢測(cè)系統(tǒng)(Intrusion Detection System, IDS)。在網(wǎng)絡(luò)層,傳統(tǒng)的網(wǎng)絡(luò)防火墻和基于網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)(Network-based Intrusion Detection System, NIDS)建立在“被監(jiān)控網(wǎng)絡(luò)內(nèi)——防火墻外”模式下。此種模式不適用于被感染虛擬機(jī)和攻擊目標(biāo)處于同一云主機(jī)內(nèi)部的情況,因?yàn)榫W(wǎng)絡(luò)防火墻和NIDS搜集的必須是進(jìn)出被監(jiān)控網(wǎng)絡(luò)的信息。在主機(jī)層,個(gè)人防火墻,HIDS,防病毒和防間諜軟件系統(tǒng)等,運(yùn)行在它們所保護(hù)的虛擬機(jī)內(nèi),使得這些工具很容易被竊取到系統(tǒng)特權(quán)的攻擊者破壞。故這些傳統(tǒng)網(wǎng)絡(luò)安全技術(shù)并不能很好的解決本文所著重解決的問(wèn)題:及時(shí)檢測(cè)有害虛擬機(jī),并在其試圖與其他虛擬機(jī)進(jìn)行連接時(shí)予以阻止,防止攻擊的發(fā)生。
[0004]目前,部分研究在虛擬化技術(shù)的基礎(chǔ)上,發(fā)展入侵檢測(cè)技術(shù)來(lái)檢測(cè)網(wǎng)絡(luò)通訊過(guò)程中的惡意行為,保障虛擬機(jī)的安全。 [0005]Tal Garfinkel等人提出的Livewire系統(tǒng)是一個(gè)虛擬化環(huán)境下的入侵檢測(cè)系統(tǒng),它將系統(tǒng)放置在被監(jiān)控虛擬機(jī)外。它構(gòu)建出的入侵檢測(cè)系統(tǒng)不僅保留了主機(jī)層技術(shù)具備的良好系統(tǒng)狀態(tài)視圖,也為IDS提供了強(qiáng)大的隔離性。然而,Livewire僅提供了對(duì)虛擬機(jī)硬件的訪問(wèn)控制,仍無(wú)法阻擋通過(guò)網(wǎng)絡(luò)流量進(jìn)行的攻擊。
[0006]ff.Yassin等人提出的一種基于云計(jì)算的框架,稱(chēng)作“基于云的入侵檢測(cè)服務(wù)”(Cloud-based Intrusion Detection Service, CBIDS)。CBIDS 能夠克服傳統(tǒng)入侵檢測(cè)技術(shù)的不足,例如傳統(tǒng)IDS —般部署在虛擬機(jī)內(nèi)部,易受攻擊;或是部署在被監(jiān)控虛擬機(jī)的同一網(wǎng)絡(luò)內(nèi),對(duì)其他虛擬機(jī)可見(jiàn),也會(huì)增加風(fēng)險(xiǎn)。同時(shí),該框架可以嗅探到網(wǎng)絡(luò)內(nèi)任意地方的網(wǎng)絡(luò)流量,感興趣的數(shù)據(jù)包會(huì)傳遞到CBIDS中進(jìn)行深度檢測(cè),然后檢測(cè)是否存在惡意行為并產(chǎn)生相應(yīng)的警告。然而,CBIDS僅能檢測(cè)網(wǎng)絡(luò)流量并提出警告,卻無(wú)法對(duì)攻擊行為作出干預(yù),本身不能阻止攻擊發(fā)生。
[0007]Marcos Laureano等人提出的一種入侵檢測(cè)方案,從被監(jiān)控虛擬機(jī)外部監(jiān)控,檢測(cè)并阻塞來(lái)自虛擬機(jī)內(nèi)運(yùn)行服務(wù)的攻擊。方案包括了入侵檢測(cè)機(jī)制和響應(yīng)機(jī)制,保證既能檢測(cè)出攻擊行為,也能阻止其發(fā)生。此方案中,檢測(cè)的是主機(jī)內(nèi)虛擬機(jī)與外界(主機(jī)以外)進(jìn)行網(wǎng)絡(luò)通訊過(guò)程中的流量,這些網(wǎng)絡(luò)通訊行為由安裝在主機(jī)內(nèi)的防火墻軟件進(jìn)行管理。因此,響應(yīng)機(jī)制中是通過(guò)該防火墻軟件阻塞虛擬機(jī)的端口并斷開(kāi)其與外界的通訊,而不能對(duì)同主機(jī)內(nèi)虛擬機(jī)與虛擬機(jī)間的通訊進(jìn)行控制。
[0008]而Flavio Lombardi等人提出了另一個(gè)安全框架-KvmSec,它是內(nèi)核為L(zhǎng)inux的虛擬機(jī)的拓展,旨在增加被監(jiān)控虛擬機(jī)的安全性。KvmSec具有以下幾個(gè)特征:1.對(duì)虛擬機(jī)透明,從虛擬機(jī)很難訪問(wèn)KvmSec ;2.能收集虛擬機(jī)信息并分析,然后做出相應(yīng)反應(yīng);3.能提供虛擬機(jī)與主機(jī)之間的安全通信。該框架是部署在Linux的主機(jī)上的,而且目前僅支持Linux虛擬機(jī)。同時(shí),它所能提供的安全通信是Qemu與虛擬機(jī)間,即主機(jī)與虛擬機(jī)間的安全通信,而不提供主機(jī)與主機(jī)之間、主機(jī)內(nèi)虛擬機(jī)與虛擬機(jī)之間的安全通信。
[0009]虛擬機(jī)監(jiān)控方面,如高性能輕量級(jí)虛擬機(jī)監(jiān)控器TiOChilidae可檢測(cè)虛擬機(jī)運(yùn)行狀態(tài),然而側(cè)重點(diǎn)不在于對(duì)網(wǎng)絡(luò)流量的監(jiān)控上。VMI技術(shù)即虛擬機(jī)自省技術(shù),是從虛擬機(jī)外部分析虛擬機(jī)內(nèi)部狀態(tài)的一種方法?;赩MI的虛擬機(jī)保護(hù)方案將安全保護(hù)工具和被監(jiān)控虛擬機(jī)予以隔離,因此無(wú)需在被監(jiān)控虛擬機(jī)中安裝任何代理。這一特點(diǎn)使得該方案抵抗攻擊的能力大大增強(qiáng),不受虛擬機(jī)的影響。現(xiàn)有部分研究也采用了此種方法。VMwatcher是另一個(gè)利用了 VMI技術(shù)的系統(tǒng),可重建虛擬機(jī)內(nèi)部的語(yǔ)義視圖,從而檢測(cè)虛擬機(jī)內(nèi)隱藏的惡意軟件。其缺點(diǎn)是,首先它僅能檢測(cè)出惡意軟件的存在,但無(wú)法做出反饋;再者,它不能檢測(cè)使用直接內(nèi)核對(duì)象操作(Direct Kernel Object Manipulation, DKOM)方式的 rootkit。Antfarm是一個(gè)基于虛擬機(jī)監(jiān)視器實(shí)現(xiàn)的在虛擬機(jī)外部的監(jiān)控系統(tǒng),它通過(guò)監(jiān)控客戶(hù)機(jī)操作系統(tǒng)與其內(nèi)存管理結(jié)構(gòu)之間的低層次交互來(lái)追蹤虛擬機(jī)內(nèi)進(jìn)程的活動(dòng)。Lycosid是一個(gè)基于虛擬機(jī)監(jiān)視器的隱藏進(jìn)程檢測(cè)識(shí)別的工具。它利用了 Antfarm來(lái)獲取虛擬機(jī)內(nèi)進(jìn)程的可信視圖,然后利用交叉視圖方式,與用戶(hù)級(jí)程序列出的進(jìn)程進(jìn)行比較,得出隱藏進(jìn)程。然而由于利用了用戶(hù)級(jí)程序的結(jié)果,可能由于此結(jié)果被篡改而導(dǎo)致誤判。

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

[0010]本發(fā)明主要是解決現(xiàn)有技術(shù)所存在的技術(shù)問(wèn)題;提供了一種通過(guò)對(duì)虛擬機(jī)網(wǎng)絡(luò)集群內(nèi)虛擬機(jī)之間的可疑流量進(jìn)行攔截分析,能夠達(dá)到預(yù)防并制止網(wǎng)絡(luò)集群內(nèi)虛擬機(jī)之間攻擊行為的目的的一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng)及防御方法。
[0011]本發(fā)明的上述技術(shù)問(wèn)題主要是通過(guò)下述技術(shù)方案得以解決的:
一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng),包括若干臺(tái)虛擬機(jī)、虛擬機(jī)交換機(jī)、虛擬機(jī)接口模塊、以及一臺(tái)openflow交換機(jī);其特征在于,還包括設(shè)置在受保護(hù)虛擬機(jī)外部的:
一網(wǎng)絡(luò)控制模塊:某臺(tái)虛擬機(jī)經(jīng)過(guò)虛擬機(jī)交換機(jī)發(fā)起的網(wǎng)絡(luò)連接請(qǐng)求數(shù)據(jù)包,會(huì)以openflow交換機(jī)為介質(zhì)到達(dá)網(wǎng)絡(luò)控制模塊,網(wǎng)絡(luò)控制模塊記錄下流量的信息,且虛擬機(jī)交換機(jī)中沒(méi)有該網(wǎng)絡(luò)連接請(qǐng)求相應(yīng)的流表項(xiàng);如果數(shù)據(jù)包的協(xié)議高于網(wǎng)絡(luò)層,則查看目標(biāo)物理地址是否在虛擬機(jī)交換機(jī)上有端口,如果有則廣播該包,無(wú)則生成流表項(xiàng)并轉(zhuǎn)發(fā)到目的地;如果數(shù)據(jù)包協(xié)議不高于網(wǎng)絡(luò)層,則網(wǎng)絡(luò)控制模塊將發(fā)送網(wǎng)絡(luò)連接請(qǐng)求的datapath id、源地址、源端口信息發(fā)送出;
一攻擊分析模塊:接受在數(shù)據(jù)包協(xié)議不高于網(wǎng)絡(luò)層,由網(wǎng)絡(luò)控制模塊發(fā)送的網(wǎng)絡(luò)連接請(qǐng)求數(shù)據(jù)包的datapath id、源地址、源端口 ;并調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊獲取發(fā)起請(qǐng)求的虛擬機(jī)的信息,并將判定結(jié)果返回給網(wǎng)絡(luò)控制模塊并由網(wǎng)絡(luò)控制模塊做出對(duì)策:
判定一:若判定為惡意流量,則生成流表項(xiàng)并丟包;若判定不是惡意流量則生成流表項(xiàng)并送往原目的地;
判定二:若無(wú)法判斷是否惡意,則生成流表項(xiàng)并將數(shù)據(jù)包重定向到網(wǎng)絡(luò)流量檢測(cè)模塊處;
一進(jìn)程檢測(cè)模塊:進(jìn)行進(jìn)程檢測(cè)并將進(jìn)程檢測(cè)結(jié)果發(fā)送給攻擊分析模塊,具體是:首先利用虛擬機(jī)接口模塊尋找虛擬機(jī)內(nèi)的活動(dòng)進(jìn)程鏈,在此之前,需要找到Windows加載的內(nèi)核模塊鏈表表頭,然后遍歷內(nèi)核模塊鏈表找出ntoskrnl.exe ;找到操作系統(tǒng)內(nèi)核文件ntoskrnl.exe以及其加載到內(nèi)存中的基地址后,通過(guò)分析ntoskrnl.exe的PE文件,在其中的.edata節(jié)的導(dǎo)出地址表中得到PsInitialSystemProcess的相對(duì)虛擬地址;PsInitialSystemProcess是指向系統(tǒng)進(jìn)程的EPR0CESS結(jié)構(gòu)的指針,其在內(nèi)存中的虛擬地址VA由VA=RVA+BaseAddress得出;在Windows中,活動(dòng)進(jìn)程的EPR0CESS結(jié)構(gòu)會(huì)相互連接成一個(gè)雙向循環(huán)鏈表,故得到PsInitialSystemProcess地址并尋找到system的EPR0CESS后,即可確定活動(dòng)進(jìn)程鏈,從而分析隱藏進(jìn)程以及檢測(cè)網(wǎng)絡(luò)狀態(tài),提供進(jìn)程相關(guān)信息給攻擊分析模塊;
一網(wǎng)絡(luò)流量檢測(cè)模塊:接收攻擊分析模塊發(fā)送的數(shù)據(jù)包,并進(jìn)行深層檢查,若判斷為正常流量,則直接正常轉(zhuǎn)發(fā)到原目的地并生成對(duì)應(yīng)的流表項(xiàng),若判定為惡意流量則生成流表項(xiàng)并丟包;本框架的工作在于對(duì)網(wǎng)絡(luò)流量的捕獲以及路由控制,而不在于改良現(xiàn)有的流量檢測(cè)算法,因此本模塊直接利用了開(kāi)源工具snort,將snort運(yùn)行在in-1 ine模式下,實(shí)行數(shù)據(jù)包檢測(cè)。
[0012]一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,其特征在于,包括以下步驟:
步驟1,在主機(jī)外接網(wǎng)絡(luò)控制模塊,使攻擊分析模塊控制網(wǎng)絡(luò)控制模塊;
步驟2,某臺(tái)虛擬機(jī)發(fā)起網(wǎng)絡(luò)連接請(qǐng)求經(jīng)過(guò)虛擬交換機(jī)時(shí),若有相應(yīng)的流表項(xiàng)則按照流表項(xiàng)轉(zhuǎn)發(fā),若虛擬交換機(jī)中沒(méi)有相應(yīng)的流表項(xiàng),則虛擬交換機(jī)會(huì)將流量發(fā)送給網(wǎng)絡(luò)控制模塊;
步驟3,網(wǎng)絡(luò)控制模塊記錄下流量的信息并轉(zhuǎn)發(fā)給攻擊分析模塊,攻擊分析模塊調(diào)用進(jìn)程檢測(cè)模塊來(lái)獲取發(fā)起請(qǐng)求的虛擬機(jī)的信息,進(jìn)程檢測(cè)模塊可以判斷發(fā)起者虛擬機(jī)內(nèi)所有進(jìn)程的安全狀態(tài);網(wǎng)絡(luò)控制模塊基于開(kāi)源網(wǎng)絡(luò)控制器增加了一個(gè)自循環(huán)避免環(huán)節(jié),防止廣播包在網(wǎng)絡(luò)流量檢測(cè)模塊和虛擬交換機(jī)之間循環(huán);
步驟4,若攻擊分析模塊的決策斷定發(fā)起網(wǎng)絡(luò)請(qǐng)求的進(jìn)程是可疑的,則攻擊分析模塊將會(huì)向網(wǎng)絡(luò)控制模塊發(fā)起命令,對(duì)于該進(jìn)程或該進(jìn)程所屬的虛擬機(jī)所發(fā)出的所有流量,都將在網(wǎng)絡(luò)控制模塊的控制下被虛擬交換機(jī)送至網(wǎng)絡(luò)流量檢測(cè)模塊進(jìn)行判斷;若判斷結(jié)果為安全,則轉(zhuǎn)向原目的地;若攻擊分析模塊的決策斷定發(fā)起請(qǐng)求的進(jìn)程為有害,則直接丟包;在此若只針對(duì)該進(jìn)程發(fā)出的流量進(jìn)行重定向,可以控制整個(gè)系統(tǒng)的開(kāi)銷(xiāo);若針對(duì)該進(jìn)程所屬的虛擬機(jī)發(fā)出的所有流量都進(jìn)行重定向,將會(huì)增大開(kāi)銷(xiāo)來(lái)保證系統(tǒng)的安全性。
[0013]在上述的一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,網(wǎng)絡(luò)流量檢測(cè)模塊包括兩個(gè)被添加到被監(jiān)控網(wǎng)絡(luò)所屬的虛擬交換機(jī)上的虛擬網(wǎng)卡,并設(shè)置成混雜模式用來(lái)嗅探網(wǎng)絡(luò)流量;同時(shí),配置網(wǎng)絡(luò)流量檢測(cè)模塊其中一個(gè)虛擬網(wǎng)卡僅作為接收流量的入口,另一個(gè)網(wǎng)卡僅作為正常流量的出口 ;在這種狀態(tài)下,廣播流量易引起自循環(huán),因?yàn)閺V播流量會(huì)發(fā)送到每個(gè)虛擬機(jī)中,當(dāng)此流量進(jìn)入到網(wǎng)絡(luò)流量檢測(cè)模塊入口,網(wǎng)絡(luò)流量檢測(cè)模塊會(huì)判斷是否正常,若為正常,便讓其通過(guò)出口又重回到虛擬交換機(jī)上重新進(jìn)行廣播;網(wǎng)絡(luò)流量檢測(cè)模塊包括一個(gè)自循環(huán)避免步驟,具體操作如下:
如果數(shù)據(jù)包不是產(chǎn)生于虛擬交換機(jī)的端口,則認(rèn)為該數(shù)據(jù)包不合法,丟棄;若數(shù)據(jù)包產(chǎn)生于虛擬交換機(jī)的端口且目標(biāo)物理地址為空,則觀察數(shù)據(jù)包的源地址和目標(biāo)地址;如果源地址和目標(biāo)地址同為網(wǎng)絡(luò)流量監(jiān)測(cè)模塊,則認(rèn)為該包為自循環(huán)包,遂丟棄;若不為自循環(huán)包,則執(zhí)行廣播操作;此處網(wǎng)絡(luò)流量檢測(cè)模塊是使用的開(kāi)源軟件snort。
[0014]在上述的一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,進(jìn)程檢測(cè)模塊進(jìn)行檢測(cè)的具體方法是:首先利用虛擬機(jī)接口模塊尋找虛擬機(jī)內(nèi)的活動(dòng)進(jìn)程鏈;在此之前,需要找到Windows加載的內(nèi)核模塊鏈表表頭,然后遍歷內(nèi)核模塊鏈表找出ntoskrnl.exe ;找到操作系統(tǒng)內(nèi)核文件ntoskrnl.exe以及其加載到內(nèi)存中的基地址后,通過(guò)分析ntoskrnl.exe的PE文件,在其中的.edata節(jié)的導(dǎo)出地址表中得到PsInitialSystemProcess的相對(duì)虛擬地址!PsInitialSystemProcess是指向系統(tǒng)進(jìn)程的EPR0CESS結(jié)構(gòu)的指針,其在內(nèi)存中的虛擬地址VA可由VA=RVA+BaseAddress計(jì)算得出;在Windows中,活動(dòng)進(jìn)程的EPR0CESS結(jié)構(gòu)會(huì)相互連接成一個(gè)雙向循環(huán)鏈表,故得到PsInitialSystemProcess地址并尋找到system的EPR0CESS后,即可確定活動(dòng)進(jìn)程鏈,從而分析隱藏進(jìn)程以及檢測(cè)網(wǎng)絡(luò)狀態(tài),提供進(jìn)程相關(guān)信息給給攻擊分析模塊;包括以下步驟
步驟4.1,當(dāng)網(wǎng)絡(luò)控制模塊接收到來(lái)自虛擬交換機(jī)的流量時(shí),會(huì)記錄下該虛擬交換機(jī)的datapath ID以及發(fā)送數(shù)據(jù)包的虛擬機(jī)對(duì)應(yīng)在虛擬交換機(jī)上的虛擬網(wǎng)卡號(hào)和具體發(fā)包的進(jìn)程所使用的端口號(hào);
步驟4.2,OPENFLOW交換機(jī)根據(jù)datapath ID,確定虛擬交換機(jī)所屬的虛擬機(jī)集群; 步驟4.3,虛擬交換機(jī)根據(jù)數(shù)據(jù)包來(lái)源的ofport,確定該數(shù)據(jù)包來(lái)源于何虛擬機(jī);
步驟4.4,為了了解具 體發(fā)送數(shù)據(jù)包的進(jìn)程,則調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊,列出該虛擬機(jī)內(nèi)的所有進(jìn)程,以及進(jìn)程所使用的網(wǎng)絡(luò)端口 ;
步驟4.5,將步驟4.1記錄的source port與步驟4.4中的所有進(jìn)程的網(wǎng)絡(luò)端口號(hào)--
比對(duì),找到符合的進(jìn)程號(hào)pid,再將虛擬機(jī)的ID和進(jìn)程的pid返回給攻擊分析器;
步驟4.6,攻擊分析模塊通過(guò)進(jìn)程檢測(cè)模塊獲取該虛擬機(jī)以及該進(jìn)程的安全信息并進(jìn)行分析,進(jìn)而在先驗(yàn)知識(shí)幫助下做出決策;可疑進(jìn)程列表和惡意進(jìn)程列表是可以動(dòng)態(tài)更新的,因?yàn)楣舴治瞿K每次得到進(jìn)程檢測(cè)模塊的反饋后,若確認(rèn)某進(jìn)程可疑或惡意,便會(huì)更新這兩個(gè)列表;
步驟4.7,若判定為惡意進(jìn)程,則攻擊分析模塊會(huì)終止該進(jìn)程與其他虛擬機(jī)的進(jìn)程的通訊行為;若可疑則重定向它發(fā)出的流量到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)處檢查;若正常,則按正常程序進(jìn)行轉(zhuǎn)發(fā)。
[0015]因此,本發(fā)明具有如下優(yōu)點(diǎn):1、利用了網(wǎng)絡(luò)交換模型OpenFlow構(gòu)建可編程網(wǎng)絡(luò),能夠及時(shí)捕獲可疑或惡意流量,反向定位發(fā)起流量的虛擬機(jī)和進(jìn)程,利用隱藏進(jìn)程檢測(cè)和進(jìn)程網(wǎng)絡(luò)信息獲取等安全技術(shù)確定流量的安全性,運(yùn)用網(wǎng)絡(luò)的可編程性對(duì)特定進(jìn)程發(fā)起的流量進(jìn)行控制,保證網(wǎng)絡(luò)服務(wù)質(zhì)量的同時(shí),有效阻止了虛擬機(jī)網(wǎng)絡(luò)集群中虛擬機(jī)間惡意行為的擴(kuò)散,保護(hù)了系統(tǒng)安全;2、本系統(tǒng)涉及到兩個(gè)方面的流量監(jiān)控,一為進(jìn)程級(jí),一為虛擬機(jī)級(jí)。進(jìn)程級(jí)別的流量監(jiān)控相對(duì)于虛擬機(jī)級(jí)別的流量監(jiān)控來(lái)說(shuō),可以減少對(duì)發(fā)送流量的虛擬機(jī)的干擾。而虛擬機(jī)級(jí)別的流量監(jiān)控則會(huì)更廣泛的監(jiān)控整個(gè)虛擬機(jī)內(nèi)的進(jìn)程狀況。
【專(zhuān)利附圖】

【附圖說(shuō)明】
[0016]附圖1為本發(fā)明的系統(tǒng)架構(gòu)圖。[0017]附圖2為網(wǎng)絡(luò)控制模塊工作流程圖。
[0018]附圖3為攻擊分析模塊的工作流程圖。
[0019]附圖4為進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊結(jié)構(gòu)圖。
【具體實(shí)施方式】
[0020]下面通過(guò)實(shí)施例,并結(jié)合附圖,對(duì)本發(fā)明的技術(shù)方案作進(jìn)一步具體的說(shuō)明。
[0021]實(shí)施例:
下面對(duì)本發(fā)明的實(shí)施例作詳細(xì)說(shuō)明,本實(shí)施例在以本發(fā)明技術(shù)方案為前提下進(jìn)行實(shí)施,給出了詳細(xì)的實(shí)施方式和具體的操作過(guò)程,但本發(fā)明的保護(hù)范圍不限于下述的實(shí)施例。
[0022]如圖1所示,本實(shí)施例包括:網(wǎng)絡(luò)控制模塊、攻擊分析模塊、進(jìn)程檢測(cè)模塊以及網(wǎng)絡(luò)流量檢測(cè)系統(tǒng),其中:網(wǎng)絡(luò)控制模塊攔截虛擬機(jī)之間的網(wǎng)絡(luò)數(shù)據(jù)包并將獲取的流量信息轉(zhuǎn)發(fā)至攻擊分析模塊,攻擊分析模塊接收來(lái)自網(wǎng)絡(luò)控制模塊的虛擬機(jī)間的流量信息,并調(diào)用進(jìn)程檢測(cè)模塊檢測(cè)進(jìn)程是否可疑,必要時(shí)(進(jìn)程可疑時(shí))調(diào)用網(wǎng)絡(luò)流量檢測(cè)模塊對(duì)可疑流量進(jìn)行更深層的檢測(cè)。
[0023]網(wǎng)絡(luò)控制模塊基于開(kāi)源流虛擬交換機(jī)(Open vSwitch,以下簡(jiǎn)稱(chēng)ovs),將數(shù)據(jù)轉(zhuǎn)發(fā)功能和路由控制功能分離,增加了對(duì)虛擬機(jī)之間的數(shù)據(jù)包進(jìn)行截獲、修改和重定向的功能。網(wǎng)絡(luò)控制模塊基于開(kāi)源網(wǎng)絡(luò)控制器增加了一個(gè)自循環(huán)避免環(huán)節(jié),防止廣播包在網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)和OVS之間循環(huán)。
[0024]攻擊分析模塊具有可編程性,攻擊分析模塊結(jié)合進(jìn)程檢測(cè)模塊,實(shí)現(xiàn)調(diào)用虛擬機(jī)接口模塊,檢測(cè)隱藏進(jìn)程以及分析進(jìn)程的網(wǎng)絡(luò)狀態(tài)等功能。
[0025]網(wǎng)絡(luò)流量檢測(cè)模塊(網(wǎng)絡(luò)流量監(jiān)測(cè)模塊具體做法是開(kāi)源軟件snort的工作)被放在非特權(quán)域,這樣做的好處是:1、部署動(dòng)態(tài)化和自適應(yīng)化:NIDS作為一個(gè)虛擬應(yīng)用部署,重配置并動(dòng)態(tài)遷移到任意網(wǎng)段中會(huì)變得相對(duì)容易,且無(wú)需復(fù)雜的網(wǎng)絡(luò)配置過(guò)程。NIDS工作在in-line模式下,檢測(cè)并過(guò)濾惡意流量,但無(wú)需將其配置成一個(gè)in-line的網(wǎng)關(guān)。2、減輕特權(quán)域ro的負(fù)載:由于特權(quán)域ro需要管理和配置內(nèi)存和硬件資源的訪問(wèn),如ro的負(fù)載過(guò)大,會(huì)嚴(yán)重影響VM訪問(wèn)內(nèi)存和硬件資源,故應(yīng)盡可能減輕ro的負(fù)載。NIDS的主要作用是對(duì)重定向到此處的流量進(jìn)行深度數(shù)據(jù)包檢測(cè)(Deep Packet Inspection, DPI),這一過(guò)程十分耗費(fèi)資源,故不適合放在H)內(nèi)。
[0026]另外,NIDS自身的安全也需要考慮在內(nèi)。盡管NIDS處于UPD內(nèi),但是基于以下假設(shè),仍然可以認(rèn)為它是安全的:
1、假設(shè)每臺(tái)云主機(jī)的管理器Hypervisor是受保護(hù)的,每個(gè)VM都能完全相互隔離。惡意的VM不能通過(guò)Hypervisor攻擊NIDS。
[0027]2、盡管NIDS處于uro中,能夠從ro中被訪問(wèn),但只有云管理員才能在其中維護(hù)軟件的安裝行為以及運(yùn)行管理任務(wù)。假設(shè)云管理員是可信的,那么NIDS僅能由云管理員從ro安全的訪問(wèn),未授權(quán)者無(wú)法訪問(wèn)。
[0028]NIDS對(duì)于網(wǎng)絡(luò)內(nèi)的其他VM是不可見(jiàn)的,僅有NC可以通過(guò)OVS和OFS的控制通道去控制和主導(dǎo)NIDS的行為。而控制通道是與0VS、OFS傳輸網(wǎng)絡(luò)流量的數(shù)據(jù)通道相互分離的,故控制通道的安全性值得信任。
[0029]本實(shí)施例通過(guò)以下方式進(jìn)行工作: 1、當(dāng)一個(gè)網(wǎng)絡(luò)連接請(qǐng)求被虛擬機(jī)網(wǎng)絡(luò)集群中的一臺(tái)虛擬機(jī)創(chuàng)建,該請(qǐng)求的流量會(huì)到達(dá)OVS并等候處理。由于這是個(gè)新的連接,故OVS內(nèi)不存在相應(yīng)的流表項(xiàng)。此時(shí),OVS會(huì)將流量發(fā)送給網(wǎng)絡(luò)控制模塊,向網(wǎng)絡(luò)控制模塊詢(xún)問(wèn)處理方式。由于網(wǎng)絡(luò)控制模塊在主機(jī)外部,與該主機(jī)以網(wǎng)絡(luò)交換機(jī)(OpenFlow Switches, OFS)相連接,故這一過(guò)程需要經(jīng)過(guò)0FS。這里的網(wǎng)絡(luò)控制模塊是基于開(kāi)源軟件floodlight0.9改編的,具有可編程性,可以根據(jù)使用者的選擇對(duì)流量的去向進(jìn)行操控。
[0030]2、網(wǎng)絡(luò)控制模塊的工作流程如圖2所示。當(dāng)流量被成功發(fā)送到網(wǎng)絡(luò)控制模塊后,網(wǎng)絡(luò)控制模塊記錄下流量的信息。如果數(shù)據(jù)包的協(xié)議高于網(wǎng)絡(luò)層,則查看目標(biāo)物理地址是否在OVS上有端口,如果有則廣播該包,無(wú)則生成流表項(xiàng)并轉(zhuǎn)發(fā)到目的地。如果數(shù)據(jù)包協(xié)議不高于網(wǎng)絡(luò)層,則網(wǎng)絡(luò)控制模塊將發(fā)送流量的datapath id、源地址、源端口發(fā)送給攻擊分析模塊,由攻擊分析模塊調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)模塊獲取發(fā)起請(qǐng)求的虛擬機(jī)的信息,并做出決策,若判定為惡意流量,則生成流表項(xiàng)并丟包。若無(wú)法判斷是否惡意,則生成流表項(xiàng)并重定向到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)處進(jìn)行深層檢查。若判斷為正常流量,則直接正常轉(zhuǎn)發(fā)到原目的地并生成對(duì)應(yīng)的流表項(xiàng)。
[0031]3、攻擊分析模塊的流程如圖3所示。攻擊根系模塊收到來(lái)自網(wǎng)絡(luò)控制模塊的如何轉(zhuǎn)發(fā)流量的請(qǐng)求,會(huì)定位引起警報(bào)的虛擬機(jī)和具體進(jìn)程并檢測(cè)其安全狀態(tài),從而判斷對(duì)于流量請(qǐng)求的具體處理命令。攻擊分析模塊將命令傳遞給網(wǎng)絡(luò)控制模塊,由網(wǎng)絡(luò)控制模塊控制OVS具體執(zhí)行流量處理操作,同時(shí)將該操作寫(xiě)進(jìn)流表。這種處理方式可以在惡意虛擬機(jī)試圖與其他虛擬機(jī)建立連接的時(shí)候及時(shí)阻斷連接,保證其他虛擬機(jī)不會(huì)受到威脅。由于可疑流量需要被重定向到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)中進(jìn)行深層數(shù)據(jù)包檢測(cè),網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)的兩個(gè)虛擬網(wǎng)卡會(huì)被添加到被監(jiān)控網(wǎng)絡(luò)所屬的OVS上,并設(shè)置成混雜模式用來(lái)嗅探網(wǎng)絡(luò)流量。同時(shí),配置網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)其中一個(gè)虛擬網(wǎng)卡僅作為接收流量的入口,另一個(gè)網(wǎng)卡僅作為正常流量的出口。在這種狀態(tài)下,廣播流量易引起自循環(huán),因?yàn)閺V播流量會(huì)發(fā)送到每個(gè)虛擬機(jī)中,當(dāng)此流量進(jìn)入到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)入口,網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)會(huì)判斷是否正常,若為正常,便讓其通過(guò)出口又重回到OVS上重新進(jìn)行廣播。因此,需要特別處理這種情況,避免引起自循環(huán),耗費(fèi)網(wǎng)絡(luò)資源。自循環(huán)避免算法具體操作如下:如果數(shù)據(jù)包不是產(chǎn)生于OVS的端口,則認(rèn)為該數(shù)據(jù)包不合法,丟棄。若數(shù)據(jù)包產(chǎn)生于OVS的端口且目標(biāo)物理地址為空(為廣播數(shù)據(jù)包),則觀察數(shù)據(jù)包的源地址和目標(biāo)地址。如果源地址和目標(biāo)地址同為網(wǎng)絡(luò)流量監(jiān)測(cè)模塊,則認(rèn)為該包為自循環(huán)包,遂丟棄。若不為自循環(huán)包,則執(zhí)行廣播操作。此處網(wǎng)絡(luò)流量檢測(cè)模塊是使用的開(kāi)源軟件snort。
[0032]4、進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊結(jié)構(gòu)如圖4。在進(jìn)程檢測(cè)過(guò)程中,進(jìn)程檢測(cè)模塊首先利用虛擬機(jī)接口模塊尋找虛擬機(jī)內(nèi)的活動(dòng)進(jìn)程鏈。在此之前,需要找到Windows加載的內(nèi)核模塊鏈表表頭,然后遍歷內(nèi)核模塊鏈表找出ntoskrnl.exe。找到操作系統(tǒng)內(nèi)核文件ntoskrnl.exe以及其加載到內(nèi)存中的基地址后,通過(guò)分析ntoskrnl.exe的PE文件,在其中的.edata節(jié)的導(dǎo)出地址表中得到PsInitialSystemProcess的相對(duì)虛擬地址。PsInitialSystemProcess是指向系統(tǒng)進(jìn)程的EPR0CESS結(jié)構(gòu)的指針,其在內(nèi)存中的虛擬地址VA可由VA=RVA+BaseAddress計(jì)算得出。在Windows中,活動(dòng)進(jìn)程的EPR0CESS結(jié)構(gòu)會(huì)相互連接成一個(gè)雙向循環(huán)鏈表,故得到PsInitialSystemProcess地址并尋找到system的EPR0CESS后,即可確定活動(dòng)進(jìn)程鏈,從而分析隱藏進(jìn)程以及檢測(cè)網(wǎng)絡(luò)狀態(tài),提供進(jìn)程相關(guān)信息給給攻擊分析模塊。
[0033]以下是進(jìn)程監(jiān)控的具體操作步驟:
1,當(dāng)網(wǎng)絡(luò)控制模塊接收到來(lái)自ovs的流量時(shí),會(huì)記錄下該ovs的datapath ID以及發(fā)送數(shù)據(jù)包的虛擬機(jī)對(duì)應(yīng)在ovs上的虛擬網(wǎng)卡號(hào)(ofport)和具體發(fā)包的進(jìn)程所使用的端口號(hào)(source port)。
[0034]2, OFS根據(jù)datapath ID,確定ovs所屬的虛擬機(jī)集群。
[0035]3,ovs根據(jù)數(shù)據(jù)包來(lái)源的ofport,確定該數(shù)據(jù)包來(lái)源于何虛擬機(jī)。
[0036]4,為了了解具體發(fā)送數(shù)據(jù)包的進(jìn)程,則調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊,列出該虛擬機(jī)內(nèi)的所有進(jìn)程(包括隱藏進(jìn)程),以及進(jìn)程所使用的網(wǎng)絡(luò)端口。
[0037]5,將I)記錄的source port與4)中的所有進(jìn)程的網(wǎng)絡(luò)端口號(hào)--比對(duì),找到符合
的進(jìn)程號(hào)pid,再將虛擬機(jī)的ID和進(jìn)程的Pid返回給攻擊分析器。
[0038]6,攻擊分析模塊通過(guò)進(jìn)程檢測(cè)模塊獲取該虛擬機(jī)以及該進(jìn)程的安全信息并進(jìn)行分析,進(jìn)而在先驗(yàn)知識(shí)(可疑進(jìn)程列表、惡意進(jìn)程列表)幫助下做出決策??梢蛇M(jìn)程列表和惡意進(jìn)程列表是可以動(dòng)態(tài)更新的,因?yàn)楣舴治瞿K每次得到進(jìn)程檢測(cè)模塊的反饋后,若確認(rèn)某進(jìn)程可疑或惡意,便會(huì)更新這兩個(gè)列表。
[0039]7,若判定為惡意進(jìn)程,則攻擊分析模塊會(huì)終止該進(jìn)程與其他虛擬機(jī)的進(jìn)程的通訊行為;若可疑則重定向它發(fā)出的流量到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)處檢查;若正常,則按正常程序進(jìn)行轉(zhuǎn)發(fā)。
[0040]本文中所描述的具體實(shí)施例僅僅是對(duì)本發(fā)明精神作舉例說(shuō)明。本發(fā)明所屬【技術(shù)領(lǐng)域】的技術(shù)人員可以對(duì)所描述的具體實(shí)施例做各種各樣的修改或補(bǔ)充或采用類(lèi)似的方式替代,但并不會(huì)偏離本發(fā)明的精神或者超越所附權(quán)利要求書(shū)所定義的范圍。
【權(quán)利要求】
1.一種基于軟件定義網(wǎng)絡(luò)的安全防御系統(tǒng),包括若干臺(tái)虛擬機(jī)、虛擬機(jī)交換機(jī)、虛擬機(jī)接口模塊、以及一臺(tái)openflow交換機(jī);其特征在于,還包括設(shè)置在受保護(hù)虛擬機(jī)外部的: 一網(wǎng)絡(luò)控制模塊:某臺(tái)虛擬機(jī)經(jīng)過(guò)虛擬機(jī)交換機(jī)發(fā)起的網(wǎng)絡(luò)連接請(qǐng)求數(shù)據(jù)包,會(huì)以openflow交換機(jī)為介質(zhì)到達(dá)網(wǎng)絡(luò)控制模塊,網(wǎng)絡(luò)控制模塊記錄下流量的信息,且虛擬機(jī)交換機(jī)中沒(méi)有該網(wǎng)絡(luò)連接請(qǐng)求相應(yīng)的流表項(xiàng);如果數(shù)據(jù)包的協(xié)議高于網(wǎng)絡(luò)層,則查看目標(biāo)物理地址是否在虛擬機(jī)交換機(jī)上有端口,如果有則廣播該包,無(wú)則生成流表項(xiàng)并轉(zhuǎn)發(fā)到目的地;如果數(shù)據(jù)包協(xié)議不高于網(wǎng)絡(luò)層,則網(wǎng)絡(luò)控制模塊將發(fā)送網(wǎng)絡(luò)連接請(qǐng)求的datapath id、源地址、源端口信息發(fā)送出; 一攻擊分析模塊:接受在數(shù)據(jù)包協(xié)議不高于網(wǎng)絡(luò)層,由網(wǎng)絡(luò)控制模塊發(fā)送的網(wǎng)絡(luò)連接請(qǐng)求數(shù)據(jù)包的datapath id、源地址、源端口 ;并調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊獲取發(fā)起請(qǐng)求的虛擬機(jī)的信息,并將判定結(jié)果返回給網(wǎng)絡(luò)控制模塊并由網(wǎng)絡(luò)控制模塊做出對(duì)策: 判定一:若判定為惡意流量,則生成流表項(xiàng)并丟包;若判定不是惡意流量則生成流表項(xiàng)并送往原目的地; 判定二:若無(wú)法判斷是否惡意,則生成流表項(xiàng)并將數(shù)據(jù)包重定向到網(wǎng)絡(luò)流量檢測(cè)模塊處; 一進(jìn)程檢測(cè)模塊:進(jìn)行進(jìn)程檢測(cè)并將進(jìn)程檢測(cè)結(jié)果發(fā)送給攻擊分析模塊,具體是:首先利用虛擬機(jī)接口模塊尋找虛擬機(jī)內(nèi)的活動(dòng)進(jìn)程鏈,在此之前,需要找到Windows加載的內(nèi)核模塊鏈表表頭 ,然后遍歷內(nèi)核模塊鏈表找出ntoskrnl.exe ;找到操作系統(tǒng)內(nèi)核文件ntoskrnl.exe以及其加載到內(nèi)存中的基地址后,通過(guò)分析ntoskrnl.exe的PE文件,在其中的.edata節(jié)的導(dǎo)出地址表中得到PsInitialSystemProcess的相對(duì)虛擬地址;PsInitialSystemProcess是指向系統(tǒng)進(jìn)程的EPR0CESS結(jié)構(gòu)的指針,其在內(nèi)存中的虛擬地址VA由VA=RVA+BaseAddress得出;在Windows中,活動(dòng)進(jìn)程的EPR0CESS結(jié)構(gòu)會(huì)相互連接成一個(gè)雙向循環(huán)鏈表,故得到PsInitialSystemProcess地址并尋找到system的EPR0CESS后,即可確定活動(dòng)進(jìn)程鏈,從而分析隱藏進(jìn)程以及檢測(cè)網(wǎng)絡(luò)狀態(tài),提供進(jìn)程相關(guān)信息給攻擊分析模塊; 一網(wǎng)絡(luò)流量檢測(cè)模塊:接收攻擊分析模塊發(fā)送的數(shù)據(jù)包,并進(jìn)行深層檢查,若判斷為正常流量,則直接正常轉(zhuǎn)發(fā)到原目的地并生成對(duì)應(yīng)的流表項(xiàng),若判定為惡意流量則生成流表項(xiàng)并丟包;本框架的工作在于對(duì)網(wǎng)絡(luò)流量的捕獲以及路由控制,而不在于改良現(xiàn)有的流量檢測(cè)算法,因此本模塊直接利用了開(kāi)源工具snort,將snort運(yùn)行在in-line模式下,實(shí)行數(shù)據(jù)包檢測(cè)。
2.一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,其特征在于,包括以下步驟: 步驟1,在主機(jī)外接網(wǎng)絡(luò)控制模塊,使攻擊分析模塊控制網(wǎng)絡(luò)控制模塊; 步驟2,某臺(tái)虛擬機(jī)發(fā)起網(wǎng)絡(luò)連接請(qǐng)求經(jīng)過(guò)虛擬交換機(jī)時(shí),若有相應(yīng)的流表項(xiàng)則按照流表項(xiàng)轉(zhuǎn)發(fā),若虛擬交換機(jī)中沒(méi)有相應(yīng)的流表項(xiàng),則虛擬交換機(jī)會(huì)將流量發(fā)送給網(wǎng)絡(luò)控制模塊; 步驟3,網(wǎng)絡(luò)控制模塊記錄下流量的信息并轉(zhuǎn)發(fā)給攻擊分析模塊,攻擊分析模塊調(diào)用進(jìn)程檢測(cè)模塊來(lái)獲取發(fā)起請(qǐng)求的虛擬機(jī)的信息,進(jìn)程檢測(cè)模塊可以判斷發(fā)起者虛擬機(jī)內(nèi)所有進(jìn)程的安全狀態(tài);網(wǎng)絡(luò)控制模炔基于開(kāi)源網(wǎng)絡(luò)控制器增加了一個(gè)自循環(huán)避免環(huán)節(jié),防止廣播包在網(wǎng)絡(luò)流量檢測(cè)模塊和虛擬交換機(jī)之間循環(huán); 步驟4,若攻擊分析模塊的決策斷定發(fā)起網(wǎng)絡(luò)請(qǐng)求的進(jìn)程是可疑的,則攻擊分析模塊將會(huì)向網(wǎng)絡(luò)控制模塊發(fā)起命令,對(duì)于該進(jìn)程或該進(jìn)程所屬的虛擬機(jī)所發(fā)出的所有流量,都將在網(wǎng)絡(luò)控制模塊的控制下被虛擬交換機(jī)送至網(wǎng)絡(luò)流量檢測(cè)模塊進(jìn)行判斷;若判斷結(jié)果為安全,則轉(zhuǎn)向原目的地;若攻擊分析模塊的決策斷定發(fā)起請(qǐng)求的進(jìn)程為有害,則直接丟包;在此若只針對(duì)該進(jìn)程發(fā)出的流量進(jìn)行重定向,可以控制整個(gè)系統(tǒng)的開(kāi)銷(xiāo);若針對(duì)該進(jìn)程所屬的虛擬機(jī)發(fā)出的所有流量都進(jìn)行重定向,將會(huì)增大開(kāi)銷(xiāo)來(lái)保證系統(tǒng)的安全性。
3.根據(jù)權(quán)利要求2所述的一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,其特征在于,網(wǎng)絡(luò)流量檢測(cè)模塊包括兩個(gè)被添加到被監(jiān)控網(wǎng)絡(luò)所屬的虛擬交換機(jī)上的虛擬網(wǎng)卡,并設(shè)置成混雜模式用來(lái)嗅探網(wǎng)絡(luò)流量;同時(shí),配置網(wǎng)絡(luò)流量檢測(cè)模塊其中一個(gè)虛擬網(wǎng)卡僅作為接收流量的入口,另一個(gè)網(wǎng)卡僅作為正常流量的出口 ;在這種狀態(tài)下,廣播流量易引起自循環(huán),因?yàn)閺V播流量會(huì)發(fā)送到每個(gè)虛擬機(jī)中,當(dāng)此流量進(jìn)入到網(wǎng)絡(luò)流量檢測(cè)模塊入口,網(wǎng)絡(luò)流量檢測(cè)模塊會(huì)判斷是否正常,若為正常,便讓其通過(guò)出口又重回到虛擬交換機(jī)上重新進(jìn)行廣播;網(wǎng)絡(luò)流量檢測(cè)模塊包括一個(gè)自循環(huán)避免步驟,具體操作如下: 如果數(shù)據(jù)包不是產(chǎn)生于虛擬交換機(jī)的端口,則認(rèn)為該數(shù)據(jù)包不合法,丟棄;若數(shù)據(jù)包產(chǎn)生于虛擬交換機(jī)的端口且目標(biāo)物理地址為空,則觀察數(shù)據(jù)包的源地址和目標(biāo)地址;如果源地址和目標(biāo)地址同為網(wǎng)絡(luò)流量監(jiān)測(cè)模塊,則認(rèn)為該包為自循環(huán)包,遂丟棄;若不為自循環(huán)包,則執(zhí)行廣播操作;此處網(wǎng)絡(luò)流量檢測(cè)模塊是使用的開(kāi)源軟件snort。
4.根據(jù)權(quán)利要求2所述的一種基于軟件定義網(wǎng)絡(luò)的安全防御方法,其特征在于,進(jìn)程檢測(cè)模塊進(jìn)行檢測(cè)的具體方法是:首先利用虛擬機(jī)接口模塊尋找虛擬機(jī)內(nèi)的活動(dòng)進(jìn)程鏈;在此之前,需要找到Windows加載的內(nèi)核模塊鏈表表頭,然后遍歷內(nèi)核模塊鏈表找出ntoskrnl.exe ;找到操作系統(tǒng)內(nèi)核文件ntoskrnl.exe以及其加載到內(nèi)存中的基地址后,通過(guò)分析ntoskrnl.exe的PE文件,在其中的.edata節(jié)的導(dǎo)出地址表中得到PsInitialSystemProcess 的相對(duì)虛擬地址!PsInitialSystemProcess 是指向系統(tǒng)進(jìn)程的EPR0CESS結(jié)構(gòu)的指針,其在內(nèi)存中的虛擬地址VA可由VA=RVA+BaseAddress計(jì)算得出;在Windows中,活動(dòng)進(jìn)程的EPR0CESS結(jié)構(gòu)會(huì)相互連接成一個(gè)雙向循環(huán)鏈表,故得到PsInitialSystemProcess地址并尋找到system的EPR0CESS后,即可確定活動(dòng)進(jìn)程鏈,從而分析隱藏進(jìn)程以及檢測(cè)網(wǎng)絡(luò)狀態(tài),提供進(jìn)程相關(guān)信息給給攻擊分析模塊;包括以下步驟 步驟4.1,當(dāng)網(wǎng)絡(luò)控制模塊接收到來(lái)自虛擬交換機(jī)的流量時(shí),會(huì)記錄下該虛擬交換機(jī)的datapath ID以及發(fā)送數(shù)據(jù)包的虛擬機(jī)對(duì)應(yīng)在虛擬交換機(jī)上的虛擬網(wǎng)卡號(hào)和具體發(fā)包的進(jìn)程所使用的端口號(hào); 步驟4.2,OPENFLOW交換機(jī)根據(jù)datapath ID,確定虛擬交換機(jī)所屬的虛擬機(jī)集群; 步驟4.3,虛擬交換機(jī)根據(jù)數(shù)據(jù)包來(lái)源的ofport,確定該數(shù)據(jù)包來(lái)源于何虛擬機(jī); 步驟4.4,為了了解具體發(fā)送數(shù)據(jù)包的進(jìn)程,則調(diào)用進(jìn)程檢測(cè)模塊和虛擬機(jī)接口模塊,列出該虛擬機(jī)內(nèi)的所有進(jìn)程,以及進(jìn)程所使用的網(wǎng)絡(luò)端口 ; 步驟4.5,將步驟4.1記錄的source port與步驟4.4中的所有進(jìn)程的網(wǎng)絡(luò)端口號(hào)--比對(duì),找到符合的進(jìn)程號(hào)pid,再將虛擬機(jī)的ID和進(jìn)程的pid返回給攻擊分析器; 步驟4.6,攻擊分析模塊通過(guò)進(jìn)程檢測(cè)模塊獲取該虛擬機(jī)以及該進(jìn)程的安全信息并進(jìn)行分析,進(jìn)而在先驗(yàn)知識(shí)幫助下做出決策;可疑進(jìn)程列表和惡意進(jìn)程列表是可以動(dòng)態(tài)更新的,因?yàn)楣舴治瞿K每次得到進(jìn)程檢測(cè)模塊的反饋后,若確認(rèn)某進(jìn)程可疑或惡意,便會(huì)更新這兩個(gè)列表; 步驟4.7,若判定為惡意進(jìn)程,則攻擊分析模塊會(huì)終止該進(jìn)程與其他虛擬機(jī)的進(jìn)程的通訊行為;若可疑則重定向它發(fā)出的流量到網(wǎng)絡(luò)流量檢測(cè)系統(tǒng)處檢查;若正常,則按正常程序進(jìn)行轉(zhuǎn)發(fā) 。
【文檔編號(hào)】H04L29/06GK104023034SQ201410287800
【公開(kāi)日】2014年9月3日 申請(qǐng)日期:2014年6月25日 優(yōu)先權(quán)日:2014年6月25日
【發(fā)明者】崔競(jìng)松, 郭遲, 張萌, 田昌友 申請(qǐng)人:武漢大學(xué)
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
视频| 余干县| 田东县| 惠州市| 镇安县| 新巴尔虎左旗| 安顺市| 全椒县| 牙克石市| 荥阳市| 成都市| 双江| 滨海县| 石渠县| 会同县| 东山县| 邮箱| 格尔木市| 察雅县| 密山市| 平陆县| 河西区| 高唐县| 宁远县| 吉林省| 托里县| 施甸县| 曲松县| 溆浦县| 龙游县| 阳泉市| 文昌市| 木兰县| 札达县| 澜沧| 海安县| 莆田市| 库伦旗| 上虞市| 敦煌市| 外汇|