◆鄒亞君 呂沂倫 何天晴
(曲阜師范大學(xué) 網(wǎng)絡(luò)空間安全學(xué)院 山東 273100)
自互聯(lián)網(wǎng)進(jìn)入大眾視野以來(lái),網(wǎng)絡(luò)安全已進(jìn)入發(fā)展快車(chē)道,傳統(tǒng)的防火墻策略已經(jīng)無(wú)法滿足人們對(duì)網(wǎng)絡(luò)安全的要求。入侵檢測(cè)技術(shù)是一種有效策略,但是在這條道路上還面臨著挑戰(zhàn)。因此必須對(duì)入侵檢測(cè)技術(shù)有全方位多角度的了解,才能更好的應(yīng)用于網(wǎng)絡(luò)安全管理,為人民解決網(wǎng)絡(luò)安全隱患,在網(wǎng)絡(luò)安全防護(hù)市場(chǎng)中發(fā)揮關(guān)鍵性的作用。
入侵檢測(cè)是對(duì)用戶(hù)上網(wǎng)行為實(shí)時(shí)監(jiān)測(cè)和安全管理的一種手段,是對(duì)網(wǎng)絡(luò)防火墻的加強(qiáng)。它提供了用于發(fā)現(xiàn)非法行為和惡意入侵跡象的一種檢測(cè)方法。入侵檢測(cè)系統(tǒng)是一種硬件和軟件交叉結(jié)合的檢測(cè)設(shè)備,能夠?qū)θ肭中袨榘l(fā)出入侵警報(bào)。
(1)根據(jù)入侵?jǐn)?shù)據(jù)源的不同可以細(xì)分為基于主機(jī)的入侵檢測(cè)和基于網(wǎng)絡(luò)的入侵檢測(cè)。前者主要功能是監(jiān)測(cè)主機(jī)內(nèi)部行為,監(jiān)視主機(jī)系統(tǒng)的異常操作或運(yùn)行狀態(tài);后者主要功能是以網(wǎng)絡(luò)數(shù)據(jù)包為數(shù)據(jù)源,分析數(shù)據(jù)包的特征。
(2)根據(jù)對(duì)網(wǎng)絡(luò)信息源分析方法的不同又可以分為兩種:基于誤用的入侵檢測(cè)和基于異常的入侵檢測(cè)。
圖1 入侵檢測(cè)的分類(lèi)
基于主機(jī)的入侵檢測(cè)系統(tǒng)(Host-based Intrusion Detection System,HIDS)是一種能夠關(guān)注計(jì)算機(jī)系統(tǒng)內(nèi)部狀態(tài),對(duì)審計(jì)日志記錄進(jìn)行分析的一種入侵檢測(cè)機(jī)制。
HIDS 具有更高的辨識(shí)度,對(duì)特殊主機(jī)關(guān)注性較強(qiáng),可以檢測(cè)到行為特征不明顯的入侵。HIDS 針對(duì)不同的操作系統(tǒng)具有不同的操作,適用于加密與交換環(huán)境,并且HIDS 的成本低,性能也不會(huì)受到網(wǎng)絡(luò)流量的影響,具有普適性。但是HIDS 也具有以下缺點(diǎn):實(shí)時(shí)性較差,不能及時(shí)對(duì)入侵行為做出反應(yīng);只能檢測(cè)到局部數(shù)據(jù)包,入侵檢測(cè)范圍不夠全面;利用HIDS 會(huì)導(dǎo)致主機(jī)資源被占用,并且具有較差的隱蔽性和主動(dòng)性,不能在沒(méi)有用戶(hù)的參與下對(duì)攻擊行為展開(kāi)調(diào)查。
基于網(wǎng)絡(luò)的入侵檢測(cè)系統(tǒng)(Network-based Intrusion Detection System,NIDS)是一種能夠?qū)W(wǎng)段數(shù)據(jù)包內(nèi)容進(jìn)行分析,實(shí)時(shí)監(jiān)聽(tīng)網(wǎng)段流量的入侵檢測(cè)機(jī)制,當(dāng)某一數(shù)據(jù)包與內(nèi)置規(guī)則相匹配時(shí),則發(fā)出入侵警報(bào)或者自動(dòng)切斷網(wǎng)絡(luò)連接。
NIDS 會(huì)對(duì)整個(gè)網(wǎng)段的網(wǎng)絡(luò)數(shù)據(jù)包進(jìn)行檢測(cè),而不僅局限于一臺(tái)主機(jī),NIDS 與HIDS 相比實(shí)時(shí)性較好,可以及時(shí)對(duì)一般入侵行為做出反應(yīng),同時(shí)具有良好的隱蔽性,不易被發(fā)現(xiàn)也不需要任何特殊的審計(jì)和登錄管理機(jī)制,配置好網(wǎng)站的接口即可。而且NIDS 不占用主機(jī)資源,能夠節(jié)省空間。但是NIDS 還具有以下缺點(diǎn),處理范圍并不全面,雖然可以檢測(cè)一般入侵行為,但是不能有效檢測(cè)到帶有偽裝的攻擊行為,當(dāng)主機(jī)要實(shí)現(xiàn)監(jiān)聽(tīng)功能時(shí),NIDS 會(huì)增加沖突的可能性,導(dǎo)致監(jiān)聽(tīng)效果變差。此外,NIDS 規(guī)則的更新總是慢于攻擊手段的出現(xiàn),即使用戶(hù)可以自定義規(guī)則,但這也為入侵者提供了方便,入侵者可以故意規(guī)避已有規(guī)則,從而使攻擊行為不被NIDS 發(fā)現(xiàn)。
NIDS 能夠管理網(wǎng)絡(luò)引擎,用戶(hù)角色以及數(shù)據(jù)庫(kù),對(duì)數(shù)據(jù)進(jìn)行收集,將網(wǎng)卡設(shè)為混雜模式來(lái)抓取網(wǎng)段中的流量數(shù)據(jù)包,在檢測(cè)到攻擊入侵時(shí)能及時(shí)對(duì)FTP、DNS、HTTP 等事件進(jìn)行分析并做出響應(yīng)。
NIDS 發(fā)現(xiàn)入侵攻擊行為主要有以下三個(gè)特征:端口特征,即對(duì)目的IP 地址的端口號(hào)進(jìn)行檢查,如有一些非法程序的端口號(hào)出現(xiàn)則可判定為入侵行為。串特征看似是普通的字符串,實(shí)則為危險(xiǎn)信號(hào),代表攻擊,某些字符串的含義為不經(jīng)過(guò)身份認(rèn)證就可以使用該主機(jī),危害非常大;數(shù)據(jù)包頭特征即數(shù)據(jù)包的碼位含有非法組合,具有代表性的就是WinNuke 攻擊,通過(guò)TCP/IP 協(xié)議傳輸緊急數(shù)據(jù)包,當(dāng)主機(jī)收到此數(shù)據(jù)包就會(huì)死機(jī)或者藍(lán)屏。
Snort 的三種模式。嗅探器:其主要用途是探測(cè)網(wǎng)絡(luò)數(shù)據(jù)包,并將其顯示在界面上,常用命令snort -dev。網(wǎng)絡(luò)入侵檢測(cè)系統(tǒng):對(duì)網(wǎng)絡(luò)數(shù)據(jù)流協(xié)議進(jìn)行分析,并與自定義規(guī)則相比較,對(duì)有入侵特征的行為采取相應(yīng)措施。數(shù)據(jù)包記錄器:將數(shù)據(jù)包打包存儲(chǔ)到主機(jī),常用命令snort -b。
Snort 的四大組成模塊。數(shù)據(jù)包嗅探模塊:監(jiān)聽(tīng)網(wǎng)絡(luò)協(xié)議數(shù)據(jù)包,并進(jìn)行協(xié)議解析。預(yù)處理模塊:對(duì)傳入的數(shù)據(jù)包進(jìn)行整合,利用注冊(cè),初始化和調(diào)用等插件進(jìn)行端口掃描等操作。檢測(cè)模塊:數(shù)據(jù)包被發(fā)送到此核心模塊,檢測(cè)引擎根據(jù)用戶(hù)自己設(shè)置的規(guī)則,對(duì)該數(shù)據(jù)包內(nèi)容進(jìn)行檢測(cè)和匹配,當(dāng)用戶(hù)發(fā)現(xiàn)數(shù)據(jù)包的內(nèi)容與規(guī)則中content 的字符串相匹配時(shí),就發(fā)出警報(bào)。報(bào)警/日志模塊:當(dāng)數(shù)據(jù)包與檢測(cè)模塊中的某條規(guī)則相匹配,則會(huì)觸發(fā)報(bào)警,報(bào)警信息被記錄到日志文件或者數(shù)據(jù)庫(kù)中。
Snort 規(guī)則由規(guī)則頭和規(guī)則體兩部分組成。規(guī)則頭又由四部分組成:協(xié)議、源IP 地址和目的IP 地址、規(guī)則動(dòng)作、源端口信息和目的端口信息。規(guī)則體可以在規(guī)則頭的基礎(chǔ)上進(jìn)一步對(duì)數(shù)據(jù)包進(jìn)行分析,包含報(bào)警信息和需要檢查的包的具體部分。
規(guī)則一:
alert any any -> any any[2000;2021](msg:””;content:””)
解釋?zhuān)骸癮lert”表示規(guī)則動(dòng)作為報(bào)警,any 代表任意,“->”表示發(fā)送方向,因?yàn)槎丝谔?hào)之間用分號(hào)連接,則目的端口為2000—2021,如果是冒號(hào)則是獨(dú)立的兩個(gè)數(shù)值,括號(hào)里的內(nèi)容是規(guī)則體,msg 對(duì)應(yīng)的是報(bào)警信息,content 對(duì)應(yīng)的是匹配的字符串。
(1)規(guī)則動(dòng)作
規(guī)則動(dòng)作規(guī)定了Snort 在發(fā)現(xiàn)匹配的數(shù)據(jù)包時(shí)應(yīng)該作何反應(yīng)。Snort 預(yù)置的規(guī)則動(dòng)作有五種:log 是按照自定義格式對(duì)數(shù)據(jù)包進(jìn)行記錄。activate 是當(dāng)數(shù)據(jù)包與規(guī)則相匹配時(shí),會(huì)生成警報(bào)并啟動(dòng)相關(guān)的dynamic 類(lèi)型的規(guī)則。pass 是跳過(guò)對(duì)當(dāng)前數(shù)據(jù)包的分析,繼續(xù)對(duì)下一個(gè)數(shù)據(jù)包進(jìn)行分析。alert 是按照自定義格式對(duì)包進(jìn)行記錄并發(fā)出警報(bào)。dynamic 是等待activate 規(guī)則激活,激活后類(lèi)似于log。
(2)協(xié)議
當(dāng)前Snort 分析的IP 協(xié)議有四種分別是TCP,UDP,ICMP 和IP。
(3)IP 地址
規(guī)則中會(huì)給定規(guī)則的IP 地址和端口信息,any 代表任意(任意IP 地址和任意端口號(hào)),地址由數(shù)字型IP 地址和CIDR 所表示。在這個(gè)區(qū)域內(nèi)的所有IP 地址都對(duì)應(yīng)使用此規(guī)則。此部分可能會(huì)用到“!”否定運(yùn)算符,表示除給定的IP 地址外對(duì)其他的流都會(huì)報(bào)警。“111”表示端口映射器,想要測(cè)試主機(jī)必須先開(kāi)放111 端口。
規(guī)則二:
alert tcp !192.168.15.0/24 any -> 192.168.15.0/24 111(content:””;msg:””)
(4)端口號(hào)
any 可以表示任何端口,靜態(tài)端口號(hào)表示單獨(dú)的一個(gè)端口號(hào)。例如ftp 端口號(hào)為21,telnet 端口號(hào)為23,http 端口號(hào)為80,smtp 端口號(hào)為25 等。
(5)方向操作符
“->”表示規(guī)則所施加的流的方向。方向操作符左邊的IP 地址和端口號(hào)是源主機(jī),方向操作符右邊的IP 地址和端口號(hào)是目的主機(jī);“<>”雙向操作符表示IP 地址和端口號(hào)又作為源又作為目的主機(jī),記錄數(shù)據(jù)的雙向傳輸。
規(guī)則三:
log 192.168.15.0/24 any <> 192.168.15.0/24 23
圖2 數(shù)據(jù)包部分解析示例
圖3 TCP 數(shù)據(jù)包部分內(nèi)容示例
面對(duì)著如今防火墻產(chǎn)品充斥著市場(chǎng)的現(xiàn)狀,入侵檢測(cè)系統(tǒng)作為防火墻的加強(qiáng)手段有著強(qiáng)勁的上升勢(shì)頭,但是入侵檢測(cè)系統(tǒng)還有許多問(wèn)題亟待解決,一方面是虛假警報(bào)率和漏報(bào)率過(guò)高,究其原因還是匹配技術(shù)與檢測(cè)技術(shù)不精確,這還有待加強(qiáng)改善;另一方面是檢測(cè)速度太慢無(wú)法跟上當(dāng)前大數(shù)據(jù)時(shí)代越來(lái)越快的網(wǎng)絡(luò)增長(zhǎng)速度,和越來(lái)越復(fù)雜的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)的步伐。目前大多數(shù)的入侵檢測(cè)系統(tǒng)在檢測(cè)質(zhì)量和數(shù)據(jù)負(fù)荷量方面不能兼得。可見(jiàn)入侵檢測(cè)技術(shù)還未成熟,仍然是一個(gè)具有研究潛力的課題。
網(wǎng)絡(luò)安全技術(shù)是一個(gè)復(fù)雜的課題,而入侵檢測(cè)是保證網(wǎng)絡(luò)信息安全的一個(gè)必要手段,是網(wǎng)絡(luò)安全中新興的有效技術(shù)。本文針對(duì)入侵檢測(cè)技術(shù)在信息源上的分類(lèi),分別進(jìn)行了簡(jiǎn)要的敘述,并且提到了Snort入侵檢測(cè)技術(shù),但是Snort 沒(méi)有圖形界面,總體來(lái)說(shuō)比較抽象。入侵檢測(cè)技術(shù)與防火墻技術(shù)的結(jié)合,將會(huì)廣泛應(yīng)用于安全防護(hù)技術(shù)當(dāng)中。如何進(jìn)一步提高入侵檢測(cè)力度,更好迎接兩大方面的挑戰(zhàn),保障網(wǎng)絡(luò)信息安全,是以后入侵檢測(cè)方面需要著重研究的新方向。