孫中廷
(江蘇聯(lián)合職業(yè)技術(shù)學(xué)院徐州機(jī)電工程分院江蘇徐州 221011)
隨著計(jì)算機(jī)技術(shù)的不斷進(jìn)步和互聯(lián)網(wǎng)規(guī)模的不斷擴(kuò)大,存在于網(wǎng)絡(luò)中的攻擊行為也在不斷增多,網(wǎng)絡(luò)安全和信息安全問(wèn)題日益凸顯。傳統(tǒng)上使用的網(wǎng)絡(luò)安全和網(wǎng)絡(luò)防御技術(shù)都只能被動(dòng)地對(duì)攻擊行為進(jìn)行檢測(cè)和阻隔,無(wú)法對(duì)可能發(fā)生的攻擊進(jìn)行預(yù)測(cè),處于被動(dòng)挨打的狀態(tài)。而在近年來(lái)興起的主動(dòng)防御技術(shù)則可以改變這一狀態(tài),其通過(guò)對(duì)攻擊者意圖的分析和預(yù)測(cè),化解可能發(fā)生的攻擊。基于蜜罐的網(wǎng)絡(luò)欺騙技術(shù)正是主動(dòng)防御和入侵檢測(cè)技術(shù)的代表,該技術(shù)除了可以防御入侵者的攻擊外,還可以對(duì)攻擊行為進(jìn)行分析和取證,具有很高的實(shí)用價(jià)值[1,2]。
蜜罐技術(shù),是一種在需要保護(hù)的網(wǎng)絡(luò)附近運(yùn)行的,存在一定漏洞的網(wǎng)絡(luò)系統(tǒng),用于對(duì)主動(dòng)發(fā)起攻擊者進(jìn)行欺騙,吸引其對(duì)蜜罐網(wǎng)絡(luò)發(fā)起攻擊,把原來(lái)可能針對(duì)目標(biāo)網(wǎng)絡(luò)的攻擊轉(zhuǎn)移到蜜罐網(wǎng)絡(luò)上,而蜜罐網(wǎng)絡(luò)中又不存在有價(jià)值的信息,這樣就成功轉(zhuǎn)移了攻擊目標(biāo),使得受保護(hù)目標(biāo)免于受到攻擊。同時(shí),由于蜜罐網(wǎng)絡(luò)中不對(duì)外提供有價(jià)值的服務(wù),因此所有對(duì)蜜罐網(wǎng)絡(luò)的訪問(wèn)都可以被視為是攻擊行為,在蜜罐中可以部署日志記錄服務(wù)器,對(duì)攻擊行為進(jìn)行記錄和分析,并且保存證據(jù)。簡(jiǎn)單的說(shuō),蜜罐就是用于欺騙攻擊者的一個(gè)陷阱。蜜罐技術(shù)具有以下一些優(yōu)勢(shì)[3,4]:
①記錄攻擊行為的正確率:由于蜜罐服務(wù)器本身不會(huì)對(duì)外提供任何有價(jià)值的服務(wù),因此不會(huì)有用戶對(duì)蜜罐服務(wù)器進(jìn)行訪問(wèn),只有當(dāng)攻擊者對(duì)網(wǎng)絡(luò)進(jìn)行攻擊,對(duì)網(wǎng)絡(luò)中的服務(wù)器進(jìn)行掃描時(shí)才會(huì)有請(qǐng)求進(jìn)入到蜜罐系統(tǒng)中。因此可以認(rèn)為蜜罐系統(tǒng)收到的請(qǐng)求都是來(lái)自于攻擊者。排除了正常用戶訪問(wèn)請(qǐng)求的干擾,檢測(cè)正確率得到了大幅提升;
②適應(yīng)性強(qiáng):蜜罐系統(tǒng)對(duì)攻擊行為的監(jiān)測(cè)不會(huì)局限于某種特定的攻擊技術(shù)或者是特定的攻擊行為,對(duì)不同的攻擊行為有較好的適應(yīng)能力,即使攻擊者使用新的攻擊技術(shù),在一定程度上也可以對(duì)其進(jìn)行防御;
③成本較低:蜜罐系統(tǒng)構(gòu)建簡(jiǎn)單,只需要在網(wǎng)絡(luò)的特定位置搭建簡(jiǎn)單的服務(wù)器就可以構(gòu)建蜜罐系統(tǒng),一般的機(jī)構(gòu)或是公司都有能力在網(wǎng)絡(luò)中搭建多個(gè)蜜罐系統(tǒng),并且其維護(hù)和升級(jí)都比較簡(jiǎn)單,不需要投入太多的資金和人力。
在此基礎(chǔ)上,采用VB.NET 編寫(xiě)專門(mén)的數(shù)據(jù)庫(kù)應(yīng)用程序,利用DATA 控件來(lái)動(dòng)態(tài)訪問(wèn)數(shù)據(jù)庫(kù),便于客運(yùn)站問(wèn)詢工作管理人員對(duì)相關(guān)表單中的記錄進(jìn)行錄入、修改、刪除、查詢、統(tǒng)計(jì)和打印等操作[10]。
根據(jù)蜜罐和攻擊者之間信息交互的頻率和數(shù)量不同,將蜜罐分為不同交互程度的等級(jí),其特點(diǎn)和比較如表1 所示[5,6]。
表1 不同交互度的蜜罐系統(tǒng)比較
從表1 中可以看出,隨著蜜罐和攻擊者之間交互程度的變化,蜜罐的風(fēng)險(xiǎn)性和獲取到的信息業(yè)在不斷的提高,在實(shí)際的應(yīng)用中,根據(jù)需要保護(hù)網(wǎng)絡(luò)的基本特點(diǎn)和蜜罐系統(tǒng)部署的實(shí)際位置來(lái)選擇合適交互程度的蜜罐。目前,中等交互程度的蜜罐由于其部署的復(fù)雜性較高但是獲得的信息較少一般不被使用,在實(shí)際的應(yīng)用中形成高交互度和低交互度蜜罐的互相搭配使用,可以取得更好的效果。
根據(jù)需要保護(hù)網(wǎng)絡(luò)的規(guī)模和實(shí)際情況,將蜜罐系統(tǒng)部署的位置如圖1 所示[4]。
圖1 蜜罐部署位置
A 位置在需要保護(hù)的網(wǎng)絡(luò)防火墻之外,主要目的是可以誘導(dǎo)攻擊者對(duì)該網(wǎng)絡(luò)進(jìn)行攻擊,轉(zhuǎn)移對(duì)需要保護(hù)網(wǎng)絡(luò)的攻擊,同時(shí)可以對(duì)攻擊行為進(jìn)行分析和統(tǒng)計(jì),由于該蜜罐系統(tǒng)可以檢測(cè)所有攻擊行為,因此被攻破的概率很大,并且由于網(wǎng)絡(luò)中大量存在攻擊行為,可能會(huì)導(dǎo)致該網(wǎng)絡(luò)經(jīng)常癱瘓,所以很少將蜜罐部署在該位置。
B 位置部署在需要保護(hù)網(wǎng)絡(luò)內(nèi)部,并且在隔離區(qū)(demilitarized zone,DMZ)中,其功能是監(jiān)測(cè)對(duì)被保護(hù)網(wǎng)絡(luò)高風(fēng)險(xiǎn)的攻擊行為,這類(lèi)蜜罐系統(tǒng)和其他服務(wù)器一樣被部署在需要保護(hù)的網(wǎng)絡(luò)中,使其功能行服務(wù)類(lèi)似于其他服務(wù)器。當(dāng)攻擊者開(kāi)始對(duì)網(wǎng)絡(luò)中的各個(gè)端口和服務(wù)進(jìn)行掃描時(shí),該蜜罐系統(tǒng)就可以對(duì)其攻擊行為進(jìn)行響應(yīng),并且通過(guò)和其進(jìn)行信息交互獲取攻擊者的信息,可以實(shí)現(xiàn)對(duì)攻擊進(jìn)行分析和取證。該位置部署的蜜罐可能被攻擊者繞過(guò),但是如果監(jiān)測(cè)到攻擊行為,都可以視為高風(fēng)險(xiǎn)的入侵行為,是目前最常用的蜜罐部署方案。
C 位置的蜜罐主要監(jiān)測(cè)用于來(lái)自網(wǎng)絡(luò)內(nèi)部的攻擊行為,根據(jù)相關(guān)研究表明,最常見(jiàn)并且危害性最大的攻擊都是來(lái)自于網(wǎng)絡(luò)內(nèi)部。在該位置部署蜜罐系統(tǒng),可以有效監(jiān)測(cè)來(lái)自內(nèi)部的攻擊行為,是目前使用較多的針對(duì)內(nèi)部攻擊的蜜罐部署方案。
D 位置的蜜罐部署在防火墻之后,主要是監(jiān)測(cè)突破防火墻之后的攻擊行為,該位置的蜜罐主要用于對(duì)攻擊者的欺騙,引誘其對(duì)蜜罐服務(wù)器進(jìn)行攻擊,轉(zhuǎn)移其攻擊目標(biāo)或者是拖延入侵者對(duì)需要保護(hù)網(wǎng)絡(luò)的攻擊時(shí)間,以此來(lái)對(duì)目標(biāo)網(wǎng)絡(luò)進(jìn)行保護(hù),同時(shí)也可以通過(guò)交互實(shí)現(xiàn)取證和分析。
對(duì)蜜罐系統(tǒng)的性能和防御效果進(jìn)行分析時(shí),引入防御期望值,該值為蜜罐數(shù)量和網(wǎng)絡(luò)中存在的總服務(wù)器數(shù)量之比,以在圖1 中的C 位置部署蜜罐為例,如果蜜罐數(shù)量增加,需要保護(hù)服務(wù)器被攻擊的概率就會(huì)降低,這樣防御期望值就會(huì)提高[7,8]。
假設(shè)在網(wǎng)絡(luò)中只存在一臺(tái)需要保護(hù)的服務(wù)器,設(shè)N 為蜜罐數(shù)量,P 為防御期望值,可以得到公式
并且可以得到
防御期望值和蜜罐數(shù)量之間的關(guān)系,如圖2 所示。
圖2 防御期望值和蜜罐數(shù)量之間的關(guān)系
同時(shí)可以得到防御期望值的增長(zhǎng)和蜜罐數(shù)量增長(zhǎng)之間的關(guān)系如圖3 所示
圖3 防御期望值增長(zhǎng)和蜜罐數(shù)量之間的關(guān)系
從圖3 中可以看出,隨著蜜罐數(shù)量的增長(zhǎng),防御期望值增長(zhǎng)速度在不斷下降,因此在部署時(shí)需要選擇合適的蜜罐數(shù)量,達(dá)到防御效果和經(jīng)濟(jì)效益的最優(yōu)。假設(shè)存在一個(gè)最優(yōu)值可以表示蜜罐數(shù)量和網(wǎng)絡(luò)中需要保護(hù)主機(jī)數(shù)量的比值,R=N/m 其中m 為需要保護(hù)主機(jī)的數(shù)量,N 為蜜罐數(shù)量,就可以得到當(dāng)R 值最優(yōu)時(shí)其性質(zhì)為[9,10]:
根據(jù)分析和計(jì)算可以得到當(dāng)R=2 時(shí),蜜罐保護(hù)效果和經(jīng)濟(jì)效果之間達(dá)到最優(yōu),也就是蜜罐數(shù)量是需要保護(hù)主機(jī)數(shù)量的2 倍。
取證服務(wù)器是蜜罐系統(tǒng)中最重要的控制中心,其功能是用來(lái)記錄攻擊者對(duì)網(wǎng)絡(luò)的入侵證據(jù),并且要防止攻擊者在攻陷蜜罐系統(tǒng)后將其作為橋梁繼續(xù)攻擊需要保護(hù)的服務(wù)器。在部署時(shí)取證服務(wù)器和其他服務(wù)器之間使用橋相連,由于在橋連接時(shí)工作在數(shù)據(jù)鏈路層,使得取證服務(wù)器不需要IP 地址,沒(méi)有路由信息也不會(huì)產(chǎn)生TTL的消耗,這樣可以做到對(duì)攻擊者隱藏蜜罐系統(tǒng)的存在。同時(shí)取證服務(wù)器還兼具網(wǎng)關(guān)功能,可以將蜜罐系統(tǒng)和其他需要保護(hù)的服務(wù)器隔離開(kāi)來(lái),一旦發(fā)現(xiàn)攻擊就可以實(shí)現(xiàn)攔截,讓入侵者無(wú)法再攻擊其他服務(wù)器。
當(dāng)入侵者進(jìn)入蜜罐系統(tǒng)后,一般會(huì)使用明文通信協(xié)議比如HTTPhe FTP 等進(jìn)行操作,會(huì)產(chǎn)生一定的數(shù)據(jù)交互,通過(guò)對(duì)交互信息的記錄和重現(xiàn),取證服務(wù)器就可以記錄下所有入侵者的行動(dòng),保留下入侵行為的證據(jù)。如果入侵者使用加密手段對(duì)會(huì)話中的數(shù)據(jù)傳輸進(jìn)行加密,取證服務(wù)器可以記錄下加密的數(shù)據(jù)流,同時(shí)在系統(tǒng)內(nèi)核中記錄下攻擊者對(duì)系統(tǒng)的操作行為,同樣可以獲取到入侵者的控制命令或者傳輸?shù)奈募?,其行為在取證服務(wù)器面前一覽無(wú)余。
對(duì)攻擊行為進(jìn)行取證,首先需要進(jìn)行數(shù)據(jù)捕捉。在Linux系統(tǒng)中,攻擊者通過(guò)輸入命令對(duì)系統(tǒng)進(jìn)行遠(yuǎn)程控制,并且可能會(huì)使用加密手段對(duì)會(huì)話中的數(shù)據(jù)傳輸進(jìn)行加密。可以在內(nèi)核中對(duì)這種行為加以捕捉,可以修改系統(tǒng)內(nèi)核中的相關(guān)接口,加入記錄攻擊行為的相關(guān)操作,并使得自己定義的接口成為系統(tǒng)調(diào)用的一部分,在攻擊者使用系統(tǒng)命令時(shí),就調(diào)用了自定義的接口,可以將攻擊行為進(jìn)行記錄。
可以自定義new_read 接口代替系統(tǒng)函數(shù)read,在new_read 函數(shù)中添加了寫(xiě)日志的相關(guān)操作,這樣當(dāng)系統(tǒng)進(jìn)行調(diào)用時(shí),其實(shí)是調(diào)用了自定義的new_read 接口,就可以保存下所有的攻擊數(shù)據(jù)。
對(duì)攻擊數(shù)據(jù)進(jìn)行捕捉和記錄后,需要將其發(fā)送到監(jiān)控服務(wù)器中,如果直接使用UDP 或者TCP 通信協(xié)議來(lái)發(fā)送數(shù)據(jù)包,會(huì)在網(wǎng)絡(luò)中產(chǎn)生數(shù)據(jù)流,入侵者通過(guò)簡(jiǎn)單的抓包工具就可以截取數(shù)據(jù)并且意識(shí)到蜜罐系統(tǒng)的存在,就可以有意識(shí)的繞過(guò)蜜罐系統(tǒng)攻擊其他服務(wù)器。所以需要一種隱蔽的方式對(duì)數(shù)據(jù)包進(jìn)行處理,在實(shí)際部署中蜜罐系統(tǒng)對(duì)數(shù)據(jù)包進(jìn)行處理的方法和流程如圖4 所示。
圖4 蜜罐系統(tǒng)數(shù)據(jù)包處理流程
在定義新接口new_read 時(shí),直接將攻擊行為封裝成數(shù)據(jù)包,數(shù)據(jù)包中記錄下調(diào)用該接口的時(shí)間、用戶名、會(huì)話過(guò)程和數(shù)據(jù)流信息等。數(shù)據(jù)包產(chǎn)生后不使用TCP/IP 協(xié)議進(jìn)行傳輸,而是直接將其發(fā)送到網(wǎng)絡(luò)驅(qū)動(dòng)器中。這樣在主機(jī)中進(jìn)行操作的用戶無(wú)法使用抓包工具對(duì)本機(jī)發(fā)送的數(shù)據(jù)包進(jìn)行截取,也無(wú)法使用IPTABLES 對(duì)網(wǎng)絡(luò)傳輸進(jìn)行控制,保證了數(shù)據(jù)傳輸?shù)碾[蔽性和安全性。
另外,當(dāng)系統(tǒng)中含有多個(gè)蜜罐系統(tǒng)時(shí),為了防止蜜罐系統(tǒng)之間互相監(jiān)測(cè),需要在發(fā)送數(shù)據(jù)包包頭上封裝一個(gè)隨機(jī)數(shù),并且所有蜜罐系統(tǒng)使用相同的隨機(jī)數(shù)發(fā)生器,當(dāng)蜜罐系統(tǒng)捕捉到數(shù)據(jù)包后首先對(duì)該隨機(jī)數(shù)進(jìn)行校驗(yàn),如果發(fā)現(xiàn)是其他蜜罐系統(tǒng)發(fā)送的數(shù)據(jù)包就忽略,如果隨機(jī)數(shù)不一致或是不存在該隨機(jī)數(shù)就認(rèn)為是攻擊數(shù)據(jù)包。
根據(jù)上述分析,在局域網(wǎng)中進(jìn)行了小規(guī)模實(shí)現(xiàn),使用Solaris ftp 服務(wù)器作為蜜罐服務(wù)器,該服務(wù)使用缺省安裝使其還存在一些漏洞,然后使用端口掃描軟件對(duì)該局域網(wǎng)中的主機(jī)進(jìn)行掃描,取證服務(wù)器中顯示的日志信息,如圖5 所示,測(cè)試結(jié)果表明該蜜罐系統(tǒng)可以實(shí)現(xiàn)對(duì)攻擊行為進(jìn)行捕捉和記錄的功能。
圖5 取證服務(wù)器日志顯示
作為一種新型的主動(dòng)防御安全系統(tǒng),蜜罐技術(shù)已經(jīng)越來(lái)越在網(wǎng)絡(luò)安全防護(hù)技術(shù)中占據(jù)重要的地位。通過(guò)分析蜜罐技術(shù)的主要特點(diǎn),分析其部署位置和部署數(shù)量,得到了蜜罐系統(tǒng)個(gè)數(shù)和網(wǎng)絡(luò)中需要保護(hù)服務(wù)資源個(gè)數(shù)的最佳配比,然后對(duì)蜜罐系統(tǒng)中關(guān)鍵部分取證服務(wù)器的實(shí)現(xiàn)進(jìn)行了研究,并進(jìn)行了實(shí)驗(yàn)測(cè)試。測(cè)試結(jié)果表明該蜜罐系統(tǒng)可以實(shí)現(xiàn)對(duì)攻擊行為進(jìn)行捕捉和記錄的功能。蜜罐系統(tǒng)最大優(yōu)勢(shì)是可以對(duì)攻擊者進(jìn)行欺騙,引導(dǎo)其對(duì)蜜罐系統(tǒng)進(jìn)行攻擊,然后對(duì)攻擊者的攻擊行為進(jìn)行記錄和分析,基于蜜罐系統(tǒng)的網(wǎng)絡(luò)欺騙技術(shù)將會(huì)在未來(lái)有更多的應(yīng)用場(chǎng)景。
[1]楊 雄,朱宇光,徐則中.基于蜜罐識(shí)別的僵尸網(wǎng)絡(luò)多時(shí)區(qū)改進(jìn)擴(kuò)散模型[J].計(jì)算機(jī)工程與設(shè)計(jì),2011(3):400-404.
[2]張建忠,張 健,董大凡.網(wǎng)絡(luò)安全高級(jí)軟件編程技術(shù)[M].北京:清華大學(xué)出版社,2010(4):150-176.
[3]諸葛建偉,唐 勇,韓心慧,等.蜜罐技術(shù)研究與應(yīng)用進(jìn)展[J].軟件學(xué)報(bào),2013,24(4):825-842.
[4]石樂(lè)義,姜藍(lán)藍(lán),賈春福,等.蜜罐誘騙防御機(jī)理的博弈理論分析[J].電子與信息學(xué)報(bào),2012,34(6):1420-1424.
[5]喬佩利,岳 洋.蜜罐技術(shù)在網(wǎng)絡(luò)安全中的應(yīng)用研究[J].哈爾濱理工大學(xué)學(xué)報(bào),2009(3):37-41.
[6]崔志磊,房 嵐,陶文林,等.一種全新的網(wǎng)絡(luò)安全策略--蜜罐及其技術(shù)[J].計(jì)算機(jī)應(yīng)用與軟件,2004,21(2):99-101.
[7]ARTAIL H,SAFA H,SRAJ M.A Hybrid Honeypot Framework for Improving Intrusion Detection Systems Inprotecting Organizational Networks[J].Computers and Security,2006(4):274-288.
[8]DURAISWAMY K,PALANIVEL G.Intrusion Detection System in UDP Protocol[J].International Journal of Computer Science and Network Security,2010(3):1-5.
[9]ARTAIL H,SARA H,SRAJ M.A Hybrid Honeypot-frame-work for Improving Intrusion Detection Systems in Protecting Organizational Networks[J].Computers&Security,2006(4):274-288.
[10]CHUVAKIN A.Honeynets:High Value Security Data:Analysis of Real Attacks Launched at a Honeypot[J].Network Security,2003(8):11-15.