黃旭鵬
摘要:Honeyd是一個(gè)小巧的用于在網(wǎng)絡(luò)上創(chuàng)建虛擬主機(jī)的后臺(tái)程序。通過精心配置,將Honeyd引入到網(wǎng)絡(luò)安全防御體系中,可在無需增加安全設(shè)備的情況下利用虛擬技術(shù)快速搭建網(wǎng)絡(luò)入侵防御平臺(tái),對各類網(wǎng)絡(luò)攻擊行為進(jìn)行監(jiān)控,還可起到迷惑及拖延網(wǎng)絡(luò)入侵的作用,彌補(bǔ)傳統(tǒng)安全產(chǎn)品的不足。
關(guān)鍵詞: Honeyd;虛擬蜜罐;蜜罐;主動(dòng)防御;網(wǎng)絡(luò)安全
中圖分類號(hào):TP393 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2018)01-0078-03
Abstract: Honeyd is a small daemon that creates virtual hosts on a network. By carefully configuring, Honeyd is introduced into the network security defense system, The network intrusion prevention platform can be quickly built without increasing the security equipment, it can monitor all kinds of network attack, and can also confuse and delay the network intrusion, which makes up for the shortage of traditional safety products.
Key word: Honeyd; virtual honeypot; honeypot; active defense; network security
1 蜜罐技術(shù)簡介
1.1 蜜罐的定義
蜜罐是一種在互聯(lián)網(wǎng)上運(yùn)行的計(jì)算機(jī)系統(tǒng),是網(wǎng)絡(luò)管理員經(jīng)過精心設(shè)計(jì)而部署下的誘捕網(wǎng)絡(luò)攻擊者的一個(gè)陷阱?!懊劬W(wǎng)項(xiàng)目組”創(chuàng)始人Lance Spitzner將蜜罐定義為:“蜜罐是一種安全資源,其價(jià)值在于被掃描、攻擊和攻陷”。
蜜罐系統(tǒng)是安全人員利用蜜罐技術(shù)模擬一個(gè)或多個(gè)存在漏洞的仿真主機(jī)及開放相應(yīng)端口,故意暴露在攻擊者的視野下,是專門為吸引并誘騙非法入侵者而設(shè)計(jì)的。蜜罐并沒有向外界提供真正有價(jià)值的服務(wù),正常用戶不會(huì)與蜜罐產(chǎn)生數(shù)據(jù)流,因此所有與蜜罐系統(tǒng)發(fā)生的交互行為都被當(dāng)做疑似入侵的可疑行為。
蜜罐還有迷惑及拖延網(wǎng)絡(luò)攻擊者對真正目標(biāo)實(shí)施攻擊的用途,將蜜罐部署在真實(shí)網(wǎng)絡(luò)環(huán)境中,混淆網(wǎng)絡(luò)攻擊者對網(wǎng)絡(luò)目標(biāo)的識(shí)別和攻擊,以此來消耗攻擊者的時(shí)間。
1.2 蜜罐的價(jià)值
1.2.1 蜜罐的優(yōu)勢
蜜罐的核心價(jià)值在于監(jiān)測、監(jiān)控和分析攻擊活動(dòng),作為新型的主動(dòng)防御技術(shù),在網(wǎng)絡(luò)安全應(yīng)用中有其優(yōu)勢:
1) 數(shù)據(jù)低污染,監(jiān)測準(zhǔn)確率高。蜜罐自身不對外提供任何實(shí)質(zhì)性的系統(tǒng)服務(wù),它只針對試圖進(jìn)行非法攻擊的行為產(chǎn)生記錄,是一個(gè)低數(shù)據(jù)污染的系統(tǒng),安全監(jiān)測的準(zhǔn)確率高且漏報(bào)率小。
2) 部署成本較低,易于實(shí)現(xiàn)。蜜罐系統(tǒng)部署簡單,配置靈活,搭建真實(shí)蜜罐環(huán)境或使用虛擬蜜罐環(huán)境在部署和實(shí)現(xiàn)上都相對簡單且易于管理和維護(hù),所耗資源極少。
3) 使用簡單,適用性強(qiáng)。蜜罐系統(tǒng)對攻擊行為的監(jiān)測不會(huì)局限于某種特定的攻擊技術(shù)或攻擊行為,具有較好的適應(yīng)能力,不需要維護(hù)特征數(shù)據(jù)庫,也無需通過復(fù)雜算法來實(shí)現(xiàn),能捕獲新的攻擊技術(shù)和方法供安全人員進(jìn)行分析。
1.2.2 蜜罐的缺陷
蜜罐作為整個(gè)安全防御體系的一部分,也有其自身一些缺陷:
1) 模擬的局限性。蜜罐設(shè)計(jì)或模擬出存在漏洞的系統(tǒng),與真實(shí)系統(tǒng)相比還是存在差別,技術(shù)較高的攻擊者利用反蜜罐技術(shù)能識(shí)別出蜜罐的存在。
2) 數(shù)據(jù)收集范圍有限。蜜罐僅記錄與蜜罐系統(tǒng)產(chǎn)生交互的數(shù)據(jù)流,一旦攻擊者發(fā)現(xiàn)并繞過蜜罐對其他網(wǎng)絡(luò)設(shè)備實(shí)施攻擊,蜜罐也將無法發(fā)捕捉到攻擊者的信息。
3) 面臨一定風(fēng)險(xiǎn)。為盡可能多地收集入侵者的信息,包括攻擊所用的工具、實(shí)施攻擊的思路和方法等,安全管理人員主動(dòng)將蜜罐暴露在網(wǎng)絡(luò)中,提供一些虛擬的服務(wù)以誘導(dǎo)入侵者對其進(jìn)行攻擊。但如果蜜罐被識(shí)破,安裝蜜罐系統(tǒng)的主機(jī)系統(tǒng)存在被入侵者攻陷的風(fēng)險(xiǎn),有可能成為攻擊者對蜜罐主機(jī)所在網(wǎng)絡(luò)實(shí)施攻擊的跳板。
1.3 虛擬蜜罐技術(shù)
蜜罐按其實(shí)現(xiàn)方式可分成物理蜜罐與虛擬蜜罐,兩者本質(zhì)上是一致的。相比較而言,物理蜜罐的部署需要投入大量的硬件設(shè)備且每臺(tái)設(shè)備都需要單獨(dú)進(jìn)行配置。而虛擬蜜罐則可通過虛擬化技術(shù)在一臺(tái)硬件設(shè)備上實(shí)現(xiàn)多個(gè)蜜罐的部署。
1.3.1 Honeyd蜜罐簡介
Honeyd[1]是一個(gè)虛擬蜜罐構(gòu)建框架工具,可根據(jù)安全需要來配置及構(gòu)建虛擬蜜罐主機(jī)和由虛擬蜜罐主機(jī)虛擬出來的復(fù)雜誘騙網(wǎng)絡(luò)。它是具有低交互性、保護(hù)性的虛擬蜜罐系統(tǒng)框架,是一個(gè)小巧的用于創(chuàng)建虛擬的網(wǎng)絡(luò)上的主機(jī)的后臺(tái)程序,能讓一臺(tái)物理主機(jī)在一個(gè)模擬的局域網(wǎng)環(huán)境中配有多個(gè)地址(最多可以達(dá)到65536個(gè)),還可以依照一個(gè)簡單的配置文件虛擬出真實(shí)主機(jī)上任何類型的服務(wù)。網(wǎng)絡(luò)上其他主機(jī)可以對虛擬的主機(jī)進(jìn)行ping、traceroute等網(wǎng)絡(luò)操作。
2 Honeyd工作原理
Honeyd 主要系統(tǒng)部件包括[2]:中央包分配器、協(xié)議處理器、系統(tǒng)配置數(shù)據(jù)庫、日志數(shù)據(jù)庫和路由部件,如圖1所示:
從圖1的體系機(jī)構(gòu)可以得知honeyd的大致工作流程為:由中央包分發(fā)器接受所有感興趣的網(wǎng)絡(luò)流量,根據(jù)事先設(shè)計(jì)好的配置,創(chuàng)建不同的服務(wù)進(jìn)程來處理流量,作為交互響應(yīng)發(fā)往網(wǎng)絡(luò)的數(shù)據(jù)包被個(gè)性引擎進(jìn)行修改,根據(jù)不同類型的操作系統(tǒng)特征偽裝成真實(shí)操作系統(tǒng)。三個(gè)重要特征決定了的整體行為:對方只能從網(wǎng)絡(luò)中與交互;給定配置的數(shù)量,可以模擬等量的虛擬主機(jī);通過改變每個(gè)輸出數(shù)據(jù)包與配置的操作系統(tǒng)特征相匹配,從而可以欺騙指紋識(shí)別工具[3]。endprint
3 Honeyd測試平臺(tái)搭建
3.1 實(shí)驗(yàn)軟硬件平臺(tái)
1) 硬件平臺(tái):Honeyd對硬件要求不高,能流暢地運(yùn)行VMware虛擬機(jī)即可,實(shí)驗(yàn)所用計(jì)算機(jī)硬件配置如表1所示。
2) 軟件平臺(tái):宿主機(jī)使用Windows7+VMware Workstation 12 Pro,虛擬機(jī)采用Xubuntu 12.04.4安裝Honeyd。
3.2 Honeyd軟件的依賴庫
Honeyd軟件依賴于Libevent事件處理API、Libdnet數(shù)據(jù)包構(gòu)造與發(fā)送庫、Libpcap數(shù)據(jù)包捕獲庫、Libdnsres DNS反向解析函數(shù)庫以及Arpd工具。安裝軟件依賴庫時(shí)需對照Honeyd文檔下載相應(yīng)版本安裝包,在安裝過程中容易出現(xiàn)報(bào)錯(cuò)信息,需耐心調(diào)試。
3.3 Honeyd安裝
Honeyd是一款優(yōu)秀的開源虛擬蜜罐軟件,其版本已于早前停止更新,但仍可從官網(wǎng)(http://www.honeyd.org/)中下載,實(shí)驗(yàn)時(shí)需要下載源代碼并且編譯、安裝。
目前也有國外安全團(tuán)隊(duì)發(fā)布一些集成Honeyd的linux蜜罐平臺(tái)可供下載使用,如HoneyDrive、T-Pot等,避免了安裝軟件及在linux下需要解決軟件依賴關(guān)系等繁瑣的問題。
4 Honeyd實(shí)驗(yàn)測試
4.1 Honeyd命令格式
Honeyd 軟件的命令格式如下:
較為重要常用的選項(xiàng)包括:
-d :非守護(hù)程序調(diào)試模式,允許調(diào)試過程顯示冗長的調(diào)試信息。
-l logfile:將 honeyd 記錄的數(shù)據(jù)包和日志寫入指定的日志文件中。
-s servicelog:將 honeyd 捕捉到的服務(wù)層日志寫入到指定的服務(wù)日志文件中。
-i interface:指定監(jiān)聽的接口,可以指定多個(gè)接口。
-f file:讀取名為 file 的配置文件。
[—webserver-address address] [—webserver-port port] [—webserver-root path] [—rrdtool-path path] [—fix-webserver-permissions] 指定 Honeyd 軟件虛擬 Web 服務(wù)的地址、端口和根目錄,以及 Web 服務(wù)依賴的 RRDTool 的位置,—fix-webserver-permissions 用于修正 Web 目錄權(quán)限設(shè)置導(dǎo)致網(wǎng)頁不可讀取問題。
net:指定IP地址或者網(wǎng)絡(luò)或者IP地址范圍,如果沒有指定,honeyd將監(jiān)視它能看見 的任何IP地址的流量。
4.2 Honeyd配置實(shí)例
利用Honeyd我們可以根據(jù)需求或設(shè)計(jì)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)配置復(fù)雜網(wǎng)絡(luò),可更加有效地欺騙攻擊者,以如下網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)為例:
實(shí)現(xiàn)上圖網(wǎng)絡(luò)拓?fù)洌瑢onedy.conf文件配置如下:
4.3 Honeyd測試及結(jié)果
在系統(tǒng)配置數(shù)據(jù)庫創(chuàng)建好后啟動(dòng)Honeyd,通過其自帶的控制臺(tái)可以看到,根據(jù)網(wǎng)絡(luò)拓?fù)鋱D已成功創(chuàng)建出包含路由及虛擬蜜罐的虛擬網(wǎng)絡(luò),Honeyd開始正常工作。結(jié)果如下圖所示:
攻擊機(jī)IP為10.10.10.130 ,對幾個(gè)不同網(wǎng)段的虛擬蜜罐進(jìn)行ping命令掃描,測試結(jié)果符合我們設(shè)計(jì)的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),如圖4。
5 結(jié)束語
蜜罐技術(shù)本質(zhì)上是一種對攻擊方進(jìn)行欺騙的技術(shù),通過布置一些作為誘餌的主機(jī)、網(wǎng)絡(luò)服務(wù)或者信息,誘使攻擊方對它們實(shí)施攻擊,從而可以對攻擊行為進(jìn)行捕獲和分析,了解攻擊方所使用的工具與方法,推測攻擊意圖和動(dòng)機(jī),能夠讓防御方清晰地了解他們所面對的安全威脅,并通過技術(shù)和管理手段來增強(qiáng)實(shí)際系統(tǒng)的安全防護(hù)能力[4]。Honeyd是一款虛擬蜜罐構(gòu)建框架工具,消耗資源少且功能強(qiáng)大,具有較好的實(shí)用性和研究價(jià)值。
在后續(xù)工作中,將對Honeyd在對應(yīng)用層協(xié)議的仿真服務(wù)模擬、指紋庫改進(jìn)、日志信息提取利用以及如何將honeyd有效的融入到實(shí)際生產(chǎn)環(huán)境等內(nèi)容開展更進(jìn)一步的研究。
參考文獻(xiàn):
[1] Niels Provos.HoneyD Development. http://www.honeyd.org/
[2] 官凌青,婁嘉鵬,劉莉.蜜罐Honeyd的擴(kuò)展設(shè)計(jì)與實(shí)現(xiàn)[D].西安電子科技大學(xué),2007.
[3] 馬騰云.基于蜜罐技術(shù)的網(wǎng)絡(luò)安全預(yù)警系統(tǒng)[D].山東大學(xué),2013.
[4] 諸葛建偉,唐勇,韓心慧,段海新.蜜罐技術(shù)研究與應(yīng)用進(jìn)展[J].軟件學(xué)報(bào),2013,24(4):826.endprint