一、概述
Libnids(Library Network Intrusion Detection System)是一個用于網絡入檢測開發的專業編程接口。它實現了基于網絡的入侵檢測系統的基本框架,并提供了一些基本的功能。使用Libnids可以快速地構建基于網絡的入侵監測系統,并可以在此基礎上進一步擴展開發。Libnids實現了入侵檢測系統的底層功能,使開發者可以專注于高層的功能開發。
Libnids是基于Libpcap和Libnet而開發,所以它具有Libpcap和Libnet的優點,具有較強的移植性,效率高,使用簡單。Libnids是仿照linux 2.0.x內核中的TCP/ip協議部分而實現的,具有高可靠性,并通過了很多測試。
Libnids的主要功能包括捕獲網絡數據包、IP碎片重組、TCP數據流重組以及端口掃描攻擊檢測和異常數據包檢測等。Libnids使用了Libpcap捕獲數據包的功能,它是仿照Linux內核中的IP重組而實現的,所以非常可靠。Libnids提供了TCP數據流重組功能,這是Libnids所不具備的,利用TCP數據流重組,可以分析基于TCP協議的各種應用層協議。另外,Libnids還提供了檢測TCP端口掃描攻擊的功能,檢測異常數據報的功能,這是入侵檢測系統(IDS)最基本的功能。
Libnids是由Rafal Wojtczuk而開發的,很多其他人人員也參與了開發。Libnids可以在多個平臺下運行,包括Linux,Solaris以及各種BSD類操作類型。在Windows平臺下有對應的開發包Libnids是在GPL許可證下發布的,可以從網站上直接下載,其主頁為:http://libnids.sourceforge.net/。
二、Libnids的適用范圍
總結起來,Libnids可以用在一下幾個方面,但并不局限于此。
1、入侵檢測系統
Libnids的設計是作為入侵檢測系統的一個部件來設計的,它實現了入侵檢測系統中非常基礎的功能,如數據包捕獲、協議分析接口等。另外,它還專門針對入侵檢測系統的特性,實現了TCP數據流重組更能,這對于分析對TCP協議的各種攻擊是很有效的。還有,他已經實現了IP碎片重組功能、對異常數據包的檢測功能以及對TCP端口掃描的檢測功能。最重要的是,Libnids為入侵檢測系統更深入的開發提供了開發接口。因此,開發人員可以更關注與對入侵檢測技術的研究,而不用考慮底層的實現細節。
2、網絡協議分析
Libnids是在Libpcap基礎上開發的,所以它具備了Libpcap的功能,可以實現各種協議的分析,并在Libpcap的基礎上開發了更多有用的功能,如TCP數據流重組。這樣,在利用Libnids分析基于TCP的各種協議時,不僅可以分析各種單個TCP數據包,而且可以分析整個TCP連接過程。這對于分析FTP協議、HTTP協議、POP3協議等基礎TCP的應用層協議是非常有幫助的。
3、網絡嗅探
網絡嗅探也稱網絡監視,主要是指檢測網絡信息,查看網絡內容。針對不同的目的,有各種各樣的網絡嗅探。例如,對于網絡管理員來說,為了掌握整個網絡的運行狀況,想檢測網絡出現的故障,他可以利用網絡嗅探技術來獲得所需的內容,如密碼、用戶,賬號等。所以說,Libnids是一把雙刃劍。除此之外,利用Libnids還可以重現網絡內容,還原網絡數據,如重現HTTP協議中傳輸的網頁、pop3協議中傳輸的電子郵件等。
新聞熱點
疑難解答