崇慶春
(射陽(yáng)縣人民政府 信息中心,江蘇 射陽(yáng) 224300)
傳統(tǒng)安全防御技術(shù)只是運(yùn)用了單一的安全設(shè)備。這些安全設(shè)備在防護(hù)過(guò)程中最常用的手段就是對(duì)鏈中的某一項(xiàng)內(nèi)容進(jìn)行阻斷或攻擊,具有單點(diǎn)性、靜態(tài)性的特征。 盡管曾經(jīng)取得過(guò)良好的安全防護(hù)效果,但由于當(dāng)前網(wǎng)絡(luò)攻擊具有較強(qiáng)的隱蔽性、全面性,因此防御效果不佳[1-2]。 怎樣才能讓防火墻核心異構(gòu)冗余集群更好地與安全設(shè)備相整合,在應(yīng)對(duì)網(wǎng)絡(luò)攻擊中產(chǎn)生良好的協(xié)同效應(yīng),能在第一時(shí)間內(nèi)響應(yīng)網(wǎng)絡(luò)攻擊,是防御技術(shù)升級(jí)、防御面擴(kuò)大的重點(diǎn)內(nèi)容。 本文以動(dòng)態(tài)聯(lián)動(dòng)機(jī)制為基點(diǎn)創(chuàng)建SDN 防火墻,希望能增強(qiáng)防御的主動(dòng)性,讓上述問(wèn)題迎刃而解。
本文設(shè)計(jì)的架構(gòu)主要包含3 大部分:SDN 防火墻、控制器集群系統(tǒng)和IDS 聯(lián)動(dòng)防御系統(tǒng)。 該設(shè)計(jì)緊密地把IDS 自動(dòng)安全架構(gòu)與冗余異構(gòu)的控制器核心集群相銜接,以聯(lián)動(dòng)、動(dòng)態(tài)的形式實(shí)施網(wǎng)絡(luò)安全防護(hù),增強(qiáng)區(qū)域之內(nèi)安全防御的主動(dòng)性。 SDN 防火墻聯(lián)動(dòng)防御架構(gòu)如圖1 所示。
圖1 控制系統(tǒng)網(wǎng)絡(luò)
如果在區(qū)域中出現(xiàn)了攻擊流量,SDN 防火墻的入侵檢測(cè)模塊將自動(dòng)化分析這一流量并及時(shí)把分析結(jié)果反饋給決策層。 如果驗(yàn)明屬于正常業(yè)務(wù)流量,則允許其通行;若認(rèn)定為惡意行為的攻擊流量,決策層會(huì)及時(shí)把流量表下發(fā)給控制器集群,并及時(shí)對(duì)安全策略進(jìn)行更新,下達(dá)新指令。 在這種情況下,決策層能及時(shí)審查每組控制器所處的狀態(tài),與主控制器組協(xié)同控制所有的控制器信息,把表流下發(fā)給下聯(lián)SDN 交換機(jī)且適時(shí)調(diào)整安全策略。 只要有惡意流量通過(guò)SDN 交換機(jī),被識(shí)別后都將會(huì)被阻攔或更改流表,自動(dòng)對(duì)惡意攻擊進(jìn)行攔截,以達(dá)到直接阻斷攻擊源的目的。
當(dāng)前,云計(jì)算已經(jīng)被引入多家企業(yè),具有規(guī)模大、體量大的鮮明特征。 流量規(guī)模如此之大是SDN 控制器不能承載的,但為了增強(qiáng)其拓展性、安全性、恢復(fù)性,避免單個(gè)控制器受到猛烈攻擊,滿足核心設(shè)備的冗余需求,需要同時(shí)運(yùn)用多個(gè)控制器,確保網(wǎng)絡(luò)運(yùn)行能始終保持穩(wěn)定[3-4]。 控制器集群之間的通信是成對(duì)出現(xiàn)的,而且要與網(wǎng)絡(luò)狀態(tài)趨于統(tǒng)一。 所以,要把同樣的共識(shí)算法引入所有的控制器之中,類(lèi)似于RAFT,PAXOS 等,采用同樣的控制器表決器增強(qiáng)SDN 防火墻控制核心的負(fù)載能力。 在這方面,Floodlight,Ryu 等都是不錯(cuò)的選擇。
SDN 防火墻與入侵檢測(cè)模塊的聯(lián)動(dòng)架構(gòu),如圖2所示。
圖2 聯(lián)動(dòng)架構(gòu)流程
通常情況下,傳統(tǒng)防火墻系統(tǒng)具有單一化的特征,0-Day 漏洞的存在必定會(huì)遭到入侵攻擊。 SDN 技術(shù)是建立在數(shù)據(jù)平面解耦與控制平臺(tái)的基礎(chǔ)之上,對(duì)分層結(jié)構(gòu)體系的控制將更加靈活。 以此為基礎(chǔ),本文設(shè)計(jì)的SDN 防火墻控制器集群架構(gòu),如圖3 所示。 該架構(gòu)的主要功能有:(1)對(duì)控制器進(jìn)行協(xié)調(diào),由此形成統(tǒng)一化、全局化的網(wǎng)絡(luò)拓?fù)鋱D。 (2)對(duì)流表策略進(jìn)行統(tǒng)一調(diào)配,增強(qiáng)控制集群核心穩(wěn)定性。
圖3 SDN 防火墻控制器集群架構(gòu)
每一種控制器系統(tǒng)集群都是由多樣化的控制器構(gòu)成的,采用控制器系統(tǒng)決策算法,能動(dòng)態(tài)化地選擇最合理的管理組控制器及時(shí)下達(dá)相應(yīng)的策略。 如果控制器系統(tǒng)遇到了攻擊者,攻擊難度會(huì)持續(xù)增加,成本也得到了控制,避免控制器被入侵之后惡意發(fā)送流表情況的發(fā)生,從整體上增強(qiáng)SDN 防火墻架構(gòu)的魯棒性。
在這個(gè)SDN 防火墻系統(tǒng)之中,控制器系統(tǒng)調(diào)度模塊主要存在于控制平面之中,這一模塊承擔(dān)著整個(gè)系統(tǒng)對(duì)控制器核心系統(tǒng)做出決策、進(jìn)行調(diào)度的責(zé)任,由如下4 部分構(gòu)成。
(1)轉(zhuǎn)發(fā):把拓?fù)渑c狀態(tài)信息及時(shí)采集并匯總,將其發(fā)送到每一個(gè)控制器系統(tǒng)之中,結(jié)合這一控制器系統(tǒng)扮演的角色檢測(cè)流表的一致性。
(2)監(jiān)測(cè):最關(guān)鍵的一項(xiàng)功能就是對(duì)控制器系統(tǒng)的鏈路連接狀態(tài)進(jìn)行檢測(cè),及時(shí)識(shí)別異常情況。 與提前設(shè)定的標(biāo)準(zhǔn)值實(shí)施對(duì)比,如果吞吐量、延遲有了較為明顯的改變,則需判斷控制器系統(tǒng)是否遭到攻擊,并及時(shí)把對(duì)比結(jié)果傳送到表決器之中。
(3)決策:主要是借助于監(jiān)測(cè)了解每一個(gè)控制器系統(tǒng)的流表情況,實(shí)施一致性對(duì)比活動(dòng)。 如果控制器系統(tǒng)的數(shù)量為N個(gè),遭到攻擊之后,只能同時(shí)影響到(N+1)/2 個(gè)控制器系統(tǒng)同,處于安全狀態(tài)的流表規(guī)則畢竟為多數(shù);如果存在與之不同的可疑控制器系統(tǒng),則需要標(biāo)識(shí)這一系統(tǒng)且對(duì)調(diào)度程序予以告知。
(4)調(diào)度:主要是從控制器集群之中的控制器系統(tǒng)做出選擇,把最合理的3 個(gè)或多個(gè)視作實(shí)時(shí)控制器系統(tǒng),對(duì)其中的流表規(guī)則實(shí)施對(duì)比。 可采取兩種方式在控制器中進(jìn)行靈活切換:第一種方式,在設(shè)定安全周期時(shí)運(yùn)用定時(shí)器,控制器系統(tǒng)工作達(dá)到設(shè)定時(shí)間之后,從集群剩余的控制器系統(tǒng)中做出新的選擇,確定合適的實(shí)時(shí)控制器系統(tǒng),在檢測(cè)時(shí)嚴(yán)格遵守控制器規(guī)則。 第二種方式,在審計(jì)對(duì)比中決策器時(shí),一旦識(shí)別異常情況要馬上發(fā)出警報(bào),按調(diào)度程序在實(shí)時(shí)控制器系統(tǒng)中做出靈活切換,確保SDN 防火墻控制器系統(tǒng)的安全性得到保障。
SDN 控制器決策模塊按如下步驟進(jìn)行:轉(zhuǎn)發(fā)器動(dòng)態(tài)化收集狀態(tài)信息,及時(shí)將其傳遞給控制器,監(jiān)測(cè)器要對(duì)控制器系統(tǒng)進(jìn)行實(shí)時(shí)跟蹤,以便于識(shí)別異常情況。如果沒(méi)有發(fā)出警報(bào),則要按提前設(shè)定的安全周期,借助于調(diào)度器向決策器發(fā)送相應(yīng)的指令,及時(shí)在各個(gè)管理組之間進(jìn)行調(diào)整、切換。 如果監(jiān)控器發(fā)現(xiàn)了不同于審計(jì)規(guī)則的內(nèi)容或是鏈路出現(xiàn)了故障,在第一時(shí)間內(nèi)將情況反饋給決策器,分析當(dāng)前的安全態(tài)勢(shì),實(shí)時(shí)化標(biāo)記入侵的控制器系統(tǒng)。 根據(jù)SDN 防火墻控制器集群中余下部分的具體情況,再次從中選擇實(shí)時(shí)控制器系統(tǒng)組,向調(diào)度器下達(dá)關(guān)閉帶有標(biāo)記的控制器系統(tǒng)的指令,新的控制器系統(tǒng)組被調(diào)用,流表規(guī)則審計(jì)功能正式恢復(fù),安全周期由此實(shí)現(xiàn)了更新。 重復(fù)上述步驟之后,SDN防火墻控制器將始終保持穩(wěn)定狀態(tài)。 SDN 防火墻控制器決策系統(tǒng)架構(gòu)如圖4 所示。
圖4 SDN 防火墻控制器決策系統(tǒng)架構(gòu)
當(dāng)系統(tǒng)中出現(xiàn)了新的網(wǎng)絡(luò)流量,流量最先進(jìn)入SDN 交換機(jī)。 由于交換機(jī)上設(shè)立了IDS 模塊,能及時(shí)對(duì)這些流量進(jìn)行掃描,辯明其是否正常,如果將其確認(rèn)為正常流量,不需要對(duì)其進(jìn)行任何處理,放行并允許其訪問(wèn)核心業(yè)務(wù)系統(tǒng)。 如果經(jīng)過(guò)監(jiān)測(cè)后將其認(rèn)定為惡意流量,IDS 模塊能直接發(fā)出報(bào)警,把具備這種特征的流量一并存儲(chǔ)于數(shù)據(jù)庫(kù)之中,且向SDN 控制器發(fā)出通知。SDN 控制器接口會(huì)對(duì)接收到的報(bào)警日志進(jìn)行讀取,了解惡意流量來(lái)自哪一個(gè)IP 地上,自動(dòng)化把這些信息匯總進(jìn)SDN 控制器的流表之中,由此制定安全策略且將其下發(fā)至SDN 交換機(jī)。 整個(gè)流程的實(shí)施,SDN與IDS 之間在安全防御方面形成了良好的協(xié)同與聯(lián)動(dòng),能自動(dòng)下發(fā)安全策略,防御效率得到了有效提升,產(chǎn)生了實(shí)時(shí)化的防御效果。 入侵檢測(cè)模塊的工作流程如圖5 所示。
圖5 入侵檢測(cè)模塊聯(lián)動(dòng)工作流程
在本系統(tǒng)中,入侵檢測(cè)模塊需要及時(shí)把生成的告警信息反饋給SDN 控制器中,確保惡意攻擊能被及時(shí)攔截在外面,如圖6 所示。 在這一模塊中,不僅要?jiǎng)討B(tài)化監(jiān)聽(tīng)網(wǎng)絡(luò)流量,而且要適時(shí)分析,結(jié)合原有特征庫(kù)、規(guī)則庫(kù)及行為標(biāo)識(shí),及時(shí)對(duì)流量進(jìn)行檢測(cè)、查詢,一旦識(shí)別了惡意流量,將自動(dòng)生成報(bào)警并在報(bào)警中對(duì)惡意流量的具體特征進(jìn)行描述。
圖6 入侵檢測(cè)過(guò)程
SDN 控制器與IDS 聯(lián)動(dòng)防御系統(tǒng)實(shí)現(xiàn)了無(wú)縫銜接。 當(dāng)防御區(qū)域有流量進(jìn)入后,SDN 交換機(jī)能自動(dòng)化將其發(fā)送至控制器之中,控制器以IDS 規(guī)則檢測(cè)為依托,把所有符合規(guī)則的流量進(jìn)行記錄且生成告警日志。警報(bào)解釋器接收告警日志之后對(duì)其中的信息進(jìn)行解析,指明攻擊類(lèi)型、攻擊的IP、來(lái)自哪一個(gè)IP 等。 對(duì)這些內(nèi)容進(jìn)行梳理并將具體情況反饋給SDN 控制器,由此生成相應(yīng)的OpenFlow 規(guī)則條目,再發(fā)布給每一個(gè)區(qū)域的SDN 交換機(jī)更新流表。 歷經(jīng)這樣的流程,將自動(dòng)攔截惡意流量,如果日后再次有此類(lèi)流量進(jìn)入系統(tǒng),利用前期生成的流量標(biāo)識(shí)與流表,能及時(shí)把流量丟棄并采用合適的對(duì)策對(duì)惡意行為予以處理,提升防護(hù)效果。
本文針對(duì)傳統(tǒng)防火墻防御聯(lián)動(dòng)機(jī)制差的問(wèn)題,提出了一種基于SDN 的防火墻主動(dòng)防御系統(tǒng),該系統(tǒng)可以進(jìn)行動(dòng)態(tài)聯(lián)動(dòng)防御機(jī)制,彌補(bǔ)了傳統(tǒng)防火墻面臨未知漏洞攻擊而防御不足的問(wèn)題。 本文的研究實(shí)現(xiàn)了自動(dòng)化網(wǎng)絡(luò)安全策略部署,可以對(duì)多數(shù)的網(wǎng)絡(luò)攻擊形成自動(dòng)攔截功能,減輕了網(wǎng)絡(luò)信息管理者的工作負(fù)擔(dān),提升了網(wǎng)絡(luò)安全防護(hù)效能。