王廣峰
摘要:計算機(jī)網(wǎng)絡(luò)已經(jīng)滲透到了社會的各個領(lǐng)域,人們在享受網(wǎng)絡(luò)帶來的共享資源及信息交流方便快捷的同時,也不得不面對越來越多來自網(wǎng)絡(luò)的惡意攻擊,各種黑客攻擊技術(shù)在網(wǎng)上垂手可得,而且日新月異。入侵檢測作為一種積極主動的安全防護(hù)技術(shù),從網(wǎng)絡(luò)安全立體縱深、多層次防御角度出發(fā),通過檢測受保護(hù)系統(tǒng)的狀態(tài)和活動,提出了對內(nèi)部攻擊、外部攻擊和誤操作的實(shí)時保護(hù),在網(wǎng)絡(luò)系統(tǒng)受到危害之前攔截和響應(yīng)入侵。IDS能較好的彌補(bǔ)防火墻存在的不足,能對非法侵入進(jìn)行跟蹤并做出響應(yīng),適當(dāng)?shù)臅r候還可作為計算機(jī)取證的一種技術(shù)手段,擒獲非法入侵者。
【關(guān)鍵詞】入侵檢測 數(shù)據(jù)解析 概念敘述
1 入侵檢測的概念與發(fā)展
1.1 概念
對于入侵檢測的使用,人們總會問這樣一個問題:如果已經(jīng)安裝了防火墻,給操作系統(tǒng)打了補(bǔ)丁,并為安全設(shè)置了密碼,為什么還要檢測入侵呢?答案非常簡單:因為入侵會不斷發(fā)生。舉個例子,就像人們有時候會忘記鎖上窗戶,人們有時也會忘記正確的升級防火墻規(guī)則設(shè)置即使在最高級別的保護(hù)措施下,計算機(jī)系統(tǒng)也不是百分之百的安全。
1.2 發(fā)展旅程
隨著存儲器價格的降低,審計日志轉(zhuǎn)移到網(wǎng)上且開發(fā)出了分析相關(guān)數(shù)據(jù)的程序。然而,分析過程慢且需頻繁而密集計算,因此,入侵檢測程序往往是在系統(tǒng)用戶登錄量少的夜問進(jìn)行。所以,大多數(shù)的入侵行為還是在發(fā)生后才被檢測到。
90年代早期,研究人員開發(fā)出了實(shí)時入侵檢測系統(tǒng),即對審計數(shù)據(jù)進(jìn)行實(shí)時評估。由于實(shí)現(xiàn)了實(shí)時反應(yīng),且在一些情況下,可以預(yù)測攻擊,因此,這就使攻擊和試圖攻擊發(fā)生時即可被檢測到成為可能。
近年來,很多入侵檢測方而的努力都集中在一些開發(fā)的產(chǎn)品上,這些產(chǎn)品將被用戶有效配置在廣大網(wǎng)絡(luò)中在計算機(jī)環(huán)境不斷持續(xù)變化和無數(shù)新攻擊技術(shù)不斷產(chǎn)生的情況下,要使安全方而也不斷升級是個非常困難任務(wù)。
2 程序概述
按照上述入侵檢測系統(tǒng)模型及各個模塊的功能,我們采用C語言順序結(jié)構(gòu)開發(fā)了一款windows系統(tǒng)下的網(wǎng)絡(luò)入侵檢測系統(tǒng)。該程序基于微軟WinPcap驅(qū)動編寫,采用誤用入侵檢測方法,能檢測出以太網(wǎng)下其他主機(jī)對本主機(jī)的若干入侵行為。首先從檢測的網(wǎng)絡(luò)適配器接口抓取數(shù)據(jù)連路層數(shù)據(jù)包,過濾出需要處理的包,然后將過濾的數(shù)據(jù)包進(jìn)行剝離分析,得出要檢測的參數(shù)。最后將得出的參數(shù)與入侵行為的特征模式進(jìn)行匹配,檢測其是否為入侵?jǐn)?shù)據(jù)包。如果是入侵?jǐn)?shù)據(jù)包,就進(jìn)行告警并記錄入侵主機(jī)IP地址及入侵時問。
由于采用誤用入侵檢測模式,所以該程序目前只能檢測出如下入侵行為:
(1) Synflood攻擊;
(2) Teardrop攻擊;
(3) Land攻擊:
(4) TCP UDP端口掃描。
入侵檢測程序中的數(shù)據(jù)結(jié)構(gòu)設(shè)計:
2.1 IPv4數(shù)據(jù)報頭部包含的信息
如圖1所示。
2.2 TCP數(shù)據(jù)報頭部包含的信息
如圖2所示。
2.3 UDP數(shù)據(jù)報頭部包含的信息
如圖3所示。
以上3個數(shù)據(jù)結(jié)構(gòu)用于在獲取的數(shù)據(jù)鏈路層幀中定位IP數(shù)據(jù)報、TCP數(shù)據(jù)報、UDP數(shù)據(jù)報首部及獲取需要檢測的參數(shù)。
2.4 四個字節(jié)的IP結(jié)構(gòu)
如圖4所示。
2.5 二維數(shù)組u_short port_atk[65536][2];
二維數(shù)據(jù)u_short port_atk中,port_atk[m][o]用于存儲m端口接受到的Synflood攻擊數(shù)據(jù)報,port atk[m][1]用于識別m端口是否接受過數(shù)據(jù)報。存儲端口信息之所以采用二維數(shù)組,原因在于端口數(shù)是固定的且相對較少,采用數(shù)組可以根據(jù)維數(shù)直接定位端口進(jìn)行進(jìn)行操作,效率高。
3 結(jié)語
對于入侵檢測,還有很多熱點(diǎn)問題亟待解決,譬如:如何減少入侵檢測的誤報警,如何提高入侵檢測的效率等。因此,還需要加大對入侵檢測的研究力度,進(jìn)一步加強(qiáng)計算機(jī)網(wǎng)絡(luò)的安全。
參考文獻(xiàn)
[1]蘇家洪.入侵檢測系統(tǒng)新技術(shù)介紹[J].中國新技術(shù)新產(chǎn)品,2012 (03).
[2]王鵬,入侵檢測系統(tǒng)在計算機(jī)網(wǎng)絡(luò)安全中的設(shè)計與應(yīng)用[J].無線互聯(lián)科技,2017 (12).endprint