校園網(wǎng)中蜜罐技術(shù)應(yīng)用方案
蜜罐技術(shù)概述
蜜罐是一種安全資源,其價(jià)值在于被掃描、攻擊和攻陷。傳統(tǒng)蜜罐有著不少的優(yōu)點(diǎn),比如收集數(shù)據(jù)的保真度,蜜罐不依賴(lài)于任何復(fù)雜的檢測(cè)技術(shù)等,因此減少了漏報(bào)率和誤報(bào)率。使用蜜罐技術(shù)能夠收集到新的攻擊工具和攻擊方法,而不像目前的大部分入侵檢測(cè)系統(tǒng)只能根據(jù)特征匹配的方法檢測(cè)到已知的攻擊。但是隨著應(yīng)用的廣泛,傳統(tǒng)蜜罐的缺點(diǎn)也開(kāi)始暴露了出來(lái),綜合起來(lái)主要有3個(gè)方面:
(1)蜜罐技術(shù)只能對(duì)針對(duì)蜜罐的攻擊行為進(jìn)行監(jiān)視和分析,其視圖不像入侵檢測(cè)系統(tǒng)能夠通過(guò)旁路偵聽(tīng)等技術(shù)對(duì)整個(gè)網(wǎng)絡(luò)進(jìn)行監(jiān)控。
(2)蜜罐技術(shù)不能直接防護(hù)有漏洞的信息系統(tǒng)并有可能被攻擊者利用帶來(lái)一定的安全風(fēng)險(xiǎn)。
(3)攻擊者的活動(dòng)在加密通道上進(jìn)行(IPSec,SSH,SSL,等等)增多,數(shù)據(jù)捕獲后需要花費(fèi)時(shí)間破譯,這給分析攻擊行為增加了困難。
針對(duì)以上問(wèn)題出現(xiàn)了蜜網(wǎng)技術(shù)。蜜網(wǎng)技術(shù)實(shí)質(zhì)上是一類(lèi)研究型的高交互蜜罐技術(shù),與傳統(tǒng)蜜罐技術(shù)的差異在于,蜜網(wǎng)構(gòu)成了一個(gè)黑客誘捕網(wǎng)絡(luò)體系架構(gòu),在這個(gè)架構(gòu)中,可以包含一個(gè)或多個(gè)蜜罐,同時(shí)保證了網(wǎng)絡(luò)的高度可控性,以及提供多種工具以方便對(duì)攻擊信息的采集和分析。
蜜網(wǎng)中蜜罐所面臨的挑戰(zhàn)
蜜網(wǎng)是一個(gè)體系結(jié)構(gòu),成功地部署一個(gè)蜜網(wǎng)環(huán)境,這里有兩個(gè)嚴(yán)格的需求,這也是針對(duì)傳統(tǒng)蜜罐的缺點(diǎn)而提出來(lái)的。這兩個(gè)需求是:數(shù)據(jù)控制和數(shù)據(jù)捕獲。數(shù)據(jù)控制就是限制攻擊者活動(dòng)的機(jī)制,它可以降低安全風(fēng)險(xiǎn)。數(shù)據(jù)捕獲就是監(jiān)控和記錄所有攻擊者在蜜網(wǎng)內(nèi)部的活動(dòng),包括記錄加密會(huì)話中擊鍵,恢復(fù)使用SCP拷貝的文件,捕獲遠(yuǎn)程系統(tǒng)被記錄的口令,恢復(fù)使用保護(hù)的二進(jìn)制程序的口令等。這些捕獲的數(shù)據(jù)將會(huì)被用于分析,從中學(xué)習(xí)黑客界成員們使用的工具、策略以及他們的動(dòng)機(jī)。這正是蜜罐所要做的工作。
蜜罐應(yīng)用解決方案
1捕獲工具隱藏
1.1隱藏模塊。
捕獲數(shù)據(jù)的工具是以模塊化的機(jī)制在Linux系統(tǒng)啟動(dòng)后動(dòng)態(tài)地加載到內(nèi)核成為內(nèi)核的一部分進(jìn)行工作的。當(dāng)捕獲程序的模塊被加載到內(nèi)核時(shí),一個(gè)記載已加載模塊信息的安裝模塊鏈表里面就記錄下已加載模塊的信息,用戶(hù)可以通過(guò)內(nèi)存里動(dòng)態(tài)生成的proc文件系統(tǒng)下的module文件來(lái)查看到。當(dāng)特權(quán)用戶(hù)root調(diào)用/sbin/insmod命令加載模塊時(shí)會(huì)有一個(gè)系統(tǒng)調(diào)用sys_create_module,這個(gè)函數(shù)在Linux2.4的源代碼中位于kernel/module.c。它會(huì)將含有新加載的模塊信息的數(shù)據(jù)結(jié)構(gòu)struct module插入到名為moudle_list的模塊鏈表中去。
當(dāng)一個(gè)模塊加載時(shí),它被插入到一個(gè)單向鏈表的表頭。黑客們?cè)诠ト朊酃尴到y(tǒng)后,可以根據(jù)以上存在的漏洞,找出他們認(rèn)為是可疑的蜜罐捕獲模塊并從內(nèi)核卸載模塊,這樣蜜罐也就失去了它的功能。為了達(dá)到隱藏模塊的目的就必須在加載模塊后,將指向該模塊的鏈表指針刪除,這樣通過(guò)遍歷表查找時(shí)就再也無(wú)法找到該模塊了。
1.2進(jìn)程隱藏。
進(jìn)程是一個(gè)隨執(zhí)行過(guò)程不斷變化的實(shí)體。在Linux系統(tǒng)運(yùn)行任何一個(gè)命令或程序系統(tǒng)時(shí)都會(huì)建立起至少一個(gè)進(jìn)程來(lái)執(zhí)行。這樣蜜罐捕獲程序必定會(huì)在系統(tǒng)中運(yùn)行多個(gè)進(jìn)程,利用類(lèi)似于ps這樣查詢(xún)進(jìn)程信息的命令便可以得到所有的進(jìn)程信息,這樣很容易就會(huì)暴露蜜罐的存在。由于在Linux中不存在直接查詢(xún)進(jìn)程信息的系統(tǒng)調(diào)用,類(lèi)似于ps這樣查詢(xún)進(jìn)程信息的命令是通過(guò)查詢(xún)proc文件系統(tǒng)來(lái)實(shí)現(xiàn)的。
proc文件系統(tǒng)是一個(gè)虛擬的文件系統(tǒng),它通過(guò)文件系統(tǒng)的接口實(shí)現(xiàn),用于輸出系統(tǒng)運(yùn)行狀態(tài)。它以文件系統(tǒng)的形式,為操作系統(tǒng)本身和應(yīng)用進(jìn)程之間的通信提供了一個(gè)界面,使應(yīng)用程序能夠安全、方便地獲得系統(tǒng)當(dāng)前的運(yùn)行狀況以及內(nèi)核的內(nèi)部數(shù)據(jù)信息,并可以修改某些系統(tǒng)的配置信息。由于proc以文件系統(tǒng)的接口實(shí)現(xiàn),因此可以象訪問(wèn)普通文件一樣訪問(wèn)它,但它只存在于內(nèi)存之中,所以可以用隱藏文件的方法來(lái)隱藏proc文件系統(tǒng)中的文件,以達(dá)到隱藏進(jìn)程的目的。
判斷文件是否屬于proc文件系統(tǒng)是根據(jù)它只存在于內(nèi)存之中,不存在于任何實(shí)際設(shè)備之上這一特點(diǎn),所以Linux內(nèi)核分配給它一個(gè)特定的主設(shè)備號(hào)0以及一個(gè)特定的次設(shè)備號(hào)1,除此之外在外存上沒(méi)有與之對(duì)應(yīng)的i節(jié)點(diǎn),所以系統(tǒng)也分配給它一個(gè)特殊的節(jié)點(diǎn)號(hào)PROC_ROOT_INO(值為1),而設(shè)備上的1號(hào)索引節(jié)點(diǎn)是保留不用的。這樣可以得出判斷一個(gè)文件是否屬于proc文件系統(tǒng)的方法。得到該文件對(duì)應(yīng)的inode結(jié)構(gòu)
- d_inode;(2)if(d_inode->i_ino==PROC_ROOT_INO.&&!MAJO(d_inode->i_dev)&;MINOR(d_inode->i_dev)==1){該文件屬于proc文件系統(tǒng)}
蜜罐技術(shù)在校園網(wǎng)中的應(yīng)用,本文只為大家介紹了一部分,希望大家已經(jīng)掌握以上的內(nèi)容,在下一節(jié)中我們將會(huì)介紹此方案,希望大家多多掌握。下一篇:校園網(wǎng)中蜜罐技術(shù)應(yīng)用方案 續(xù)
【編輯推薦】