◆王涵 卜佑軍 江逸茗 陳博 陳韻 胡先君
一種擬態(tài)蜜罐系統(tǒng)的設(shè)計與研究
◆王涵1卜佑軍2江逸茗2陳博2陳韻1胡先君1
(1.網(wǎng)絡(luò)通信與安全紫金山實驗室 江蘇 211100;2.中國人民解放軍戰(zhàn)略支援部隊信息工程大學(xué) 河南 450002)
互聯(lián)網(wǎng)一直以來受到各種各樣的網(wǎng)絡(luò)安全威脅,網(wǎng)絡(luò)攻擊方式層出不窮、手段多變且攻擊目標各異,特別是高級持續(xù)性攻擊隱蔽性很強。在攻防過程中,即使一個微小的設(shè)計疏忽都可能產(chǎn)生嚴重的漏洞,攻擊者利用這些漏洞攻擊系統(tǒng)可能產(chǎn)生嚴重的危害。而防御者則需要將系統(tǒng)或者節(jié)點的防御做到萬無一失,才能保證系統(tǒng)的安全。同時防御者對于可以來自網(wǎng)絡(luò)中的攻擊者一無所知,而系統(tǒng)或者節(jié)點則通過網(wǎng)絡(luò)完全暴露在攻擊者面前。在這樣的攻防博弈環(huán)境中,攻擊者占據(jù)著絕對優(yōu)勢的主動地位,而防御者只能處于被動地位。為打破攻防之間的不平衡態(tài)勢,本文主要設(shè)計了一種將主動防御中的蜜罐與擬態(tài)防御技術(shù)相融合,實現(xiàn)攻擊目標可誘捕,攻擊路徑可追溯,攻擊數(shù)據(jù)可分析的新型擬態(tài)蜜罐威脅感知平臺。
擬態(tài)蜜罐;擬態(tài)防御;異構(gòu)冗余;攻擊誘導(dǎo)
當(dāng)前,網(wǎng)絡(luò)安全的漏洞是誘發(fā)網(wǎng)絡(luò)安全事件的主要原因[1],現(xiàn)有的“外掛式”為主的安全防御技術(shù)體系(如入侵檢測[2]、入侵隔離[3]等),難以應(yīng)對基于未知漏洞后門的網(wǎng)絡(luò)威脅。我國在網(wǎng)絡(luò)強國戰(zhàn)略中提出“打破以補丁式的安全技術(shù)研發(fā)的慣性思維,加強擬態(tài)安全[4]等虛擬化異構(gòu)安全體系、可信計算體系、內(nèi)生安全計算機體系結(jié)構(gòu)等技術(shù)體系架構(gòu)創(chuàng)新,促進技術(shù)研發(fā)由外掛式向內(nèi)生性轉(zhuǎn)變”,同時指出“加快高新技術(shù)產(chǎn)品化、服務(wù)化、市場化,促進先進技術(shù)和最佳實踐的推廣應(yīng)用,發(fā)展壯大安全產(chǎn)業(yè)體系”。
蜜罐作為一種主動防御手段,通過在網(wǎng)絡(luò)中部署感知節(jié)點,模擬真實系統(tǒng)誘騙和分析攻擊者行為,實時感知周邊網(wǎng)絡(luò)環(huán)境,同時將感知節(jié)點日志實時存儲、可視化分析來實現(xiàn)對網(wǎng)絡(luò)環(huán)境中的威脅情況感知。然而,國內(nèi)外研究現(xiàn)狀表明,現(xiàn)有蜜罐都是通過構(gòu)建網(wǎng)絡(luò)服務(wù)綁定到端口,模擬成網(wǎng)絡(luò)服務(wù)的攻擊目標,誘騙攻擊方對其進行攻擊掃描,但這種機制交互性低、可擴展性差、安全性存在隱患。例如,如果攻擊者識別了該蜜罐,并且成功進入,利用相關(guān)逃逸0day對蜜罐展開攻擊,那么蜜罐將會被當(dāng)成跳板對業(yè)務(wù)系統(tǒng)展開攻擊,危害巨大。
擬態(tài)防御是另一種主動防御方法,借鑒融合了移動目標防御與可靠性領(lǐng)域“非相似余度構(gòu)造”的防御機理,主張構(gòu)建多個隔離且異構(gòu)空間并行工作,通過對各空間多路結(jié)果的相互驗證,感知攻擊行為和受感染目標,從而有針對性地應(yīng)對處理。本文主要研究將主動防御中的蜜罐與擬態(tài)防御技術(shù)相互融合,實現(xiàn)攻擊目標可誘捕,攻擊路徑可追溯,攻擊數(shù)據(jù)可分析的新型網(wǎng)絡(luò)攻擊誘導(dǎo)系統(tǒng)。
構(gòu)建傳統(tǒng)蜜罐與擬態(tài)防御技術(shù)相融合的攻擊誘導(dǎo)系統(tǒng)需要實現(xiàn)的核心功能為:攻擊流量管理、擬態(tài)構(gòu)造蜜罐、攻擊威脅感知、攻擊行為管理、攻擊溯源取證??傮w設(shè)計思路是借鑒融合了移動目標防御與可靠性領(lǐng)域“非相似余度構(gòu)造”的防御機理,主張構(gòu)建多個隔離且異構(gòu)蜜罐并行工作,通過對各蜜罐多路結(jié)果的相互驗證,感知攻擊行為和受感染目標,從而有針對性地應(yīng)對安全威脅。功能模塊架構(gòu)如圖1所示、擬態(tài)蜜罐架構(gòu)如圖2所示。
圖1 擬態(tài)蜜罐功能模塊圖
圖2 擬態(tài)蜜罐構(gòu)造圖
攻擊流量管理:入侵者威脅數(shù)據(jù)的采集,能夠?qū)崟r、全面的監(jiān)測入侵者的攻擊行為,為溯源定位入侵者的位置、手段、工具以及輔助感知入侵意圖提供源數(shù)據(jù)支撐,是后期關(guān)聯(lián)分析、特征提取的基礎(chǔ)。
擬態(tài)構(gòu)造蜜罐:將防御蜜罐部署在當(dāng)前網(wǎng)絡(luò)環(huán)境中,實現(xiàn)攻擊全鏈路欺騙防御,對攻擊者的戰(zhàn)術(shù)、技術(shù)和過程進行檢測、防御和響應(yīng),從攻擊者的視角進行主動誘捕,運用擬態(tài)防御思想,對蜜罐本身進行擬態(tài)防護,防止蜜罐逃逸攻擊。
攻擊威脅感知:高仿真蜜罐吸引攻擊者,在攻擊者偵查階段就有效感知入侵行為,引誘、迷惑攻擊者,總體威脅分析展示、各類威脅分析展示以及系統(tǒng)運行狀態(tài)的監(jiān)控,有效快速識別威脅,為安全決策提供依據(jù)。
攻擊行為管理:記錄攻擊行為,對攻擊行為回放,分析攻擊路徑,還原攻擊鏈,預(yù)測攻擊者的意圖,評估攻擊者下一步將采取的技術(shù)手段,同時通過syslog服務(wù)向第三方共享威脅行為數(shù)據(jù)和審計日志信息,將日志、攻擊等數(shù)據(jù)通過機器學(xué)習(xí)提取特征,向其他防御系統(tǒng)提供預(yù)警,用于支撐聯(lián)動防御。
攻擊溯源取證:定位攻擊者指紋信息,如IP地址、MAC地址、操作系統(tǒng)版本、設(shè)備型號等,追蹤攻擊者。
構(gòu)建傳統(tǒng)蜜罐與擬態(tài)防御技術(shù)相融合的攻擊誘導(dǎo)系統(tǒng)主要通過網(wǎng)絡(luò)內(nèi)部署低、高交互蜜罐系統(tǒng),誘使入侵者對其實施攻擊,減少對實際系統(tǒng)造成的安全威脅;通過對攻擊行為進行捕獲和分析,了解入侵者使用的工具與方法,推測其攻擊意圖和動機;通過數(shù)據(jù)可視化展示技術(shù)清晰、直觀的展示所面臨的安全威脅,同時通過捕獲數(shù)據(jù)的分析,與其他防御系統(tǒng)聯(lián)動增強實際系統(tǒng)的安全防護能力。
對于外部的攻擊流量首先通過入侵防御系統(tǒng),進行可疑流量分析,阻擋可疑流量。通過入侵防御系統(tǒng)的流量進入內(nèi)網(wǎng),蜜罐因具有高甜度,可以吸引攻擊者的流量,攻擊流量進入蜜罐后對其活動進行跟蹤記錄,并對其進行特征行為分析,并將提取的特征反饋給入侵防御系統(tǒng),用于阻擋同類攻擊再次出現(xiàn),具體網(wǎng)絡(luò)架構(gòu)如圖3所示:
圖3 擬態(tài)蜜罐網(wǎng)絡(luò)架構(gòu)圖
擬態(tài)蜜罐平臺中的蜜罐部分主要實現(xiàn)的是高交互蜜罐,基于KVM虛擬化技術(shù),將實體硬件進行虛擬化后實現(xiàn)的[5]。將資源轉(zhuǎn)化為虛擬機并進行蜜罐封裝后,還要進行網(wǎng)絡(luò)配置管理,并按照擬態(tài)蜜罐的技術(shù)要求,實現(xiàn)動態(tài)控制調(diào)度。為實現(xiàn)以上功能,該子系統(tǒng)需具備鏡像管理模塊、蜜罐管理模塊、虛擬網(wǎng)絡(luò)管理模塊、中間人模塊、輸出輸入裁決模塊5個主要功能模塊。
2.1.1鏡像管理模塊
鏡像管理模塊是基于KVM虛擬機鏡像技術(shù)實現(xiàn)而成,主要由異構(gòu)蜜罐鏡像、導(dǎo)入導(dǎo)出、實例化三個主要功能構(gòu)成。
(1)異構(gòu)蜜罐鏡像
擬態(tài)蜜罐技術(shù)的實現(xiàn),首先需要制作上層應(yīng)用相同而底層基礎(chǔ)架構(gòu)不同的異構(gòu)蜜罐。本次設(shè)計考慮上層構(gòu)建相同的Web應(yīng)用,而底層采用不同的操作系統(tǒng)、中間件,進而實現(xiàn)異構(gòu)。
異構(gòu)蜜罐的搭建環(huán)境如下(表1):
表1 搭建環(huán)境
編號CMS運行時Web中間件數(shù)據(jù)庫操作系統(tǒng) ACatfish v4.8.54PHP v5.4.16IIS v8.0MySQL v5.7.31Windows Server 2012 x64 BApache v2.4.6CentOS 7.8.2003 x64 CNginx v1.19.1Ubuntu 20.04 x64
當(dāng)異構(gòu)蜜罐環(huán)境搭建好后,對其進行鏡像化,轉(zhuǎn)換成KVM技術(shù)中的qcow2鏡像格式,便于復(fù)用。
以上環(huán)境中,對外統(tǒng)一的Web應(yīng)用為CMS系統(tǒng)(Catfish v4.8.54版本,運行時庫PHP v5.4.16)。對在蜜罐中的具體環(huán)境(操作系統(tǒng)、數(shù)據(jù)庫、Web中間件)進行異構(gòu)處理。
(2)導(dǎo)入導(dǎo)出
實現(xiàn)鏡像的導(dǎo)入導(dǎo)出功能,用于蜜罐基礎(chǔ)環(huán)境的修改以及多個擬態(tài)蜜罐系統(tǒng)間蜜罐環(huán)境的復(fù)用。
(3)實例化
制作蜜罐鏡像的過程本質(zhì)上屬于開發(fā)階段的工作,在系統(tǒng)配置、運行的階段,需要將提前制作好的鏡像進行實例化,也就是變成多個虛擬高交互蜜罐主機,并通過虛擬網(wǎng)絡(luò)管理模塊進行組網(wǎng)。而實例化的過程,就是將系統(tǒng)資源(CPU、內(nèi)存、硬盤、網(wǎng)卡等)通過KVM轉(zhuǎn)化成虛擬機。
通過實例化功能,可以將預(yù)先制作好的鏡像轉(zhuǎn)化為高交互蜜罐。
2.1.2蜜罐管理模塊
(1)刪除
實現(xiàn)停止蜜罐,并刪除,釋放其所占用資源。
(2)啟動、掛起、停止
支持將掛起、停止狀態(tài)的蜜罐恢復(fù)到活躍狀態(tài);
支持將活躍狀態(tài)的蜜罐暫停,掛起,掛起后的蜜罐不可訪問;
支持將活躍狀態(tài)蜜罐關(guān)機停止。
(3)快照
對蜜罐當(dāng)前的狀態(tài)進行拍攝快照保存,并且可以將蜜罐重置到已保存的某個快照狀態(tài)。
(4)回滾
對蜜罐已保存的某個歷史快照,進行回滾操作,可以重置到歷史狀態(tài)。
(5)定時訪問
蜜罐創(chuàng)建好后,如果長時間沒有訪問信息,攻擊者登錄后會更容易被懷疑。該模塊提供對Web界面提供訪問或?qū)Σ僮飨到y(tǒng)提供訪問流量。
(6)蜜罐設(shè)置
對創(chuàng)建好的蜜罐,可以修改其設(shè)置,例如啟停其上應(yīng)用及其對應(yīng)端口。
2.1.3虛擬網(wǎng)絡(luò)管理模塊
蜜罐系統(tǒng)的內(nèi)部虛擬網(wǎng)絡(luò)管理如圖4所示,具體詳細介紹如下:
(1)物理網(wǎng)卡en192,與客戶的交換機或路由設(shè)備相連。
①如果客戶需要使用vlan功能,需要將與物理網(wǎng)線相連接的端口設(shè)置為trunk屬性,并允許所有分配的vlan透過。對于非vlan1的默認網(wǎng)段由客戶交換機配置打上PVID。
②如果客戶不需要開啟vlan功能,即不要配置A中的任何參數(shù),即插即用。
③支持bond配置,當(dāng)宿主機存在多網(wǎng)卡設(shè)備時,可以充分利用物理資源,提升帶寬及可靠性。
圖4 內(nèi)部虛擬網(wǎng)絡(luò)架構(gòu)圖
(2)Openvswitch對接融合所有通用蜜罐的虛擬網(wǎng)卡和宿主機的物理網(wǎng)卡,確保通用蜜罐能夠被外部訪問。
(3)通用蜜罐群中每一個蜜罐節(jié)點底層都是一臺虛擬機。虛擬機對應(yīng)虛擬網(wǎng)卡接入到openvswitch中實現(xiàn)蜜罐網(wǎng)絡(luò)的連通性。
①每一臺虛擬機的網(wǎng)卡從宿主機上看都是一個tun/tap設(shè)備,一端通過驅(qū)動接入到虛擬機中即為“物理網(wǎng)卡”。在虛擬機中的一端即為虛擬網(wǎng)卡并接入到ovs中。虛擬機(蜜罐)即能夠被外部訪問。
②所有的蜜罐與外部交互的流量從蜜罐內(nèi)的“物理網(wǎng)卡”到宿主機的虛擬機網(wǎng)卡,再通過ovs發(fā)送到物理網(wǎng)卡ens192上轉(zhuǎn)發(fā)出去。ovs將中轉(zhuǎn)所有蜜罐的流量,可以通過flow規(guī)則進行蜜罐的流量控制,防止蜜罐被攻陷后被用來進行橫向擴展,有效保護客戶真實資產(chǎn)。
(4)虛擬網(wǎng)橋,為擬態(tài)蜜罐群中的蜜罐節(jié)點提供內(nèi)部網(wǎng)絡(luò)連通,確保宿主機與每一個擬態(tài)蜜罐的網(wǎng)絡(luò)能夠通過內(nèi)部網(wǎng)絡(luò)通信。
(5)擬態(tài)蜜罐節(jié)點,擬態(tài)蜜罐節(jié)點之間能夠通過網(wǎng)橋相互通信也能夠與網(wǎng)橋所在宿主機通信,但是擬態(tài)蜜罐不會直接被外部所訪問。
2.1.4中間人程序模塊
中間人程序的實現(xiàn)要求以圖5為例,詳細描述如下:
(1)網(wǎng)絡(luò)拓撲中主要資源列表:
①虛擬交換機(openvswitch),ip地址為192.168.1.123;
②虛擬網(wǎng)橋(bridge),ip地址為10.0.1.1;
③中間人分發(fā)程序,監(jiān)聽截獲引擎設(shè)備192.168.1.123上的80端口流量,并對流量進行復(fù)制并分發(fā)至擬態(tài)蜜罐群中的設(shè)備。
圖5 中間人程序架構(gòu)圖
(2)擬態(tài)蜜罐群:
①web擬態(tài)蜜罐A:IIS程序,Windows server操作系統(tǒng),ip為10.0.1.100;
②web擬態(tài)蜜罐B:Apache程序,CentOS 7.8操作系統(tǒng),ip為10.0.1.101;
③web擬態(tài)蜜罐C:Nginx程序,Ubuntu 20.08操作系統(tǒng),ip為10.0.1.102。
(3)通用蜜罐群:
根據(jù)客戶的需求可以任意部署一些欺騙蜜罐,此類蜜罐暫不具備擬態(tài)功能。
(4)工作模式:
中間人程序接收到外部的流量,將流量通過虛擬網(wǎng)橋分別下發(fā)至擬態(tài)蜜罐群中的所有節(jié)點。并對蜜罐內(nèi)部的重要狀態(tài)信息進行采集并發(fā)送至裁決器。經(jīng)裁決器分析判斷后,蜜罐的響應(yīng)結(jié)果將在未失陷的蜜罐中隨機挑選,并返回給攻擊者。
當(dāng)擬態(tài)蜜罐A被攻陷時(由裁決器進行分析研判),中間人程序?qū)袚Q為將擬態(tài)蜜罐B(也可能是C,切換動作取決于裁決器能夠分析出不會被攻陷的蜜罐,將其結(jié)果進行切換回饋)的相應(yīng)信息發(fā)送返回給攻擊者,擬態(tài)蜜罐A會被快速回滾至初始狀態(tài)并重新參加對攻擊者請求的響應(yīng)。以此類推,當(dāng)擬態(tài)蜜罐B被攻陷時,中間人程序會只將將擬態(tài)蜜罐C的響應(yīng)信息返回給客戶,并對擬態(tài)蜜罐B進行快速回滾至初始狀態(tài)?;貪L后的擬態(tài)蜜罐仍回接收到中間人的分發(fā)的報文,參加對攻擊者請求的執(zhí)行。
這里有一個極限情況,即三個蜜罐均被裁決器認定為被攻陷,此時操作將為三個蜜罐均進行回滾操作,上下文信息將被重置。
回滾動作由輸出裁決模塊發(fā)起,由蜜罐管理模塊執(zhí)行。中間人程序進對攻擊者輸入指令進行分發(fā),對反饋結(jié)果進行切換。
2.1.5輸出裁決模塊
對上層應(yīng)用相同底層架構(gòu)不同的異構(gòu)蜜罐,進行實時數(shù)據(jù)采集,并對其進行分析,確定是否有可能導(dǎo)致蜜罐失陷的動作發(fā)生。比對中的異構(gòu)蜜罐至少為3個,比對內(nèi)容主要為行為記錄、告警數(shù)據(jù)。分析比對后,進行判斷結(jié)果,隨機將未失陷蜜罐的反饋結(jié)果發(fā)送給中間人程序,并告知虛擬化管理子系統(tǒng)中的蜜罐管理模塊進行擬態(tài)蜜罐是否需要回滾。
數(shù)據(jù)采集系統(tǒng)主要依靠蜜罐內(nèi)部安裝的采集監(jiān)控程序或在蜜罐內(nèi)部搭載的應(yīng)用程序中埋點,實現(xiàn)對蜜罐的訪問、命令執(zhí)行、文件變動、應(yīng)用變動等情況進行數(shù)據(jù)采集。另外,系統(tǒng)對蜜罐的所有訪問流量也都實現(xiàn)流量分包存儲,通過流量采集模塊實現(xiàn)訪問流量的封裝存儲,并且將原始流量數(shù)據(jù)轉(zhuǎn)發(fā)給流量分析引擎對其威脅行為進行專項分析。數(shù)據(jù)采集子系統(tǒng)工作機制如圖6所示。
2.2.1內(nèi)置采集監(jiān)控程序
在蜜罐中內(nèi)置隱藏采集監(jiān)控程序,對蜜罐中系統(tǒng)運行狀態(tài)、系統(tǒng)日志、服務(wù)運氣情況、文件變動、命令執(zhí)行情況等信息進行采集。
2.2.2應(yīng)用埋點
高交互蜜罐中需要對外開放高交互的Web應(yīng)用、數(shù)據(jù)庫等軟件環(huán)境。為了獲取最準確的應(yīng)用內(nèi)部運行信息,需要對其中開源的軟件環(huán)境進行代碼修改以及重新編譯,將應(yīng)用信息對接至內(nèi)置采集服務(wù)中。
2.2.3流量采集程序
流量采集程序?qū)⑺性L問蜜罐的原始流量采集留存下來,封裝成PCAP格式的流量包,可用于回放、分析。并且,所有的原始流量,可以轉(zhuǎn)發(fā)給數(shù)據(jù)分析子系統(tǒng)中的流量分析模塊,進行惡意行為的分析。
圖6 數(shù)據(jù)采集子系統(tǒng)工作機制示意圖
數(shù)據(jù)預(yù)處理子系統(tǒng)是將數(shù)據(jù)采集子系統(tǒng)中采集的數(shù)據(jù),進行初步處理的板塊,數(shù)據(jù)預(yù)處理子系統(tǒng)處理過程示意流程如圖7所示。
圖7 數(shù)據(jù)預(yù)處理子系統(tǒng)處理過程示意圖
本文針對傳統(tǒng)蜜罐系統(tǒng)面臨的未知漏洞、后門等網(wǎng)絡(luò)安全威脅,設(shè)計了一種基于動態(tài)異構(gòu)冗余架構(gòu)的擬態(tài)蜜罐系統(tǒng),從系統(tǒng)架構(gòu)層面使其具有了擬態(tài)特性。基于該設(shè)計方案,原型系統(tǒng)擬實現(xiàn)如下研究目標:(1)入侵探測型威脅和實質(zhì)型威脅數(shù)據(jù)的采集,并能夠?qū)崟r、全面的監(jiān)測入侵者的攻擊行為,為溯源定位入侵者的位置、手段、工具以及輔助感知入侵意圖提供源數(shù)據(jù)支撐。(2)對網(wǎng)絡(luò)威脅感知數(shù)據(jù)的控制,主要包括:審計日志庫、攻擊威脅庫、內(nèi)置場景庫以及高甜度蜜罐庫,并能夠通過syslog服務(wù)向第三方安全防護系統(tǒng)共享威脅行為數(shù)據(jù)和審計日志信息,支撐聯(lián)動防御。(3)對新型蜜罐系統(tǒng)分析展示,主要包括:總體威脅分析、實質(zhì)型威脅分析、探測型威脅分析以及系統(tǒng)運行狀態(tài)的監(jiān)控,提供安全決策依據(jù)。
[1]SUBRAHMANIAN VS,OVEKGONN M,DUMITRAS T,et al. The global cyber-vulnerablity report[J]. Springer Int’1 Publishing,2015(10):33-64.
[2]CHUNG C J,KHATKAR P,XING T,et al.NICE:networkd intrusion detection and countermeasure selection in virtual network systems [J]. IEEE Transaction on Dependableand Secure Computing,2013,10(4):198-211.
[3]XU H,CHEN X,ZHOU J,et al. Research on basic problems of cognitive network intrusion prevention[C]//Proceedings of 9th International Conference on Computational Intelligence and Security.Piscataway:IEEE Press,2013:514-517.
[4]WU J X. Research on cyberspace mimic defense[J].Journal of Information Security,2016,1(4):1-10.
[5]崔澤永,趙會群.基于KVM的虛擬化研究及應(yīng)用[J]. 計算機技術(shù)與發(fā)展,2011(06).
國家重點研發(fā)計劃項目(2017YFB0803201,2017YFB0803204,2016YFB0801200);國家自然科學(xué)基金項目(61572519,61802429,61521003);上海市科學(xué)技術(shù)委員會科研計劃項目16DZ1120503;中國博士后基金項目44595