專利名稱:入侵檢測系統及其檢測方法
技術領域:
本發明涉及網絡安全領域,尤其涉及一種入侵檢測系統(1此)及其檢測方法。
背景技術:
隨著網絡技術的發展,無線網絡因為其便利性,應用范圍越來越廣泛。目前,越來越多的移動設備和移動終端也支持無線傳輸功能,使得無線網絡的發展前景更加廣闊。隨著無線網絡的應用逐漸大范圍推廣,以及網絡技術的長足發展,使得無線網絡突破早期在一定空間范圍內私用的局限,進而與有線網絡融為一體,成為整個互聯網絡的一個重要組成部分,而進入公共領域。同有線網絡一樣,安全性以及訪問可控性等網絡安全技術,對于無線網絡而言,同樣需要得到高度重視。但是,由于無線網絡的特殊性,攻擊者無須物理連線就可以對無線網絡發起攻擊。更為重要的是,一部分無線路由并沒有設置進入口令,使得無線網絡的安全性非常低。即便一部分無線路由進行了無線加密協議(Wireless Encryption Protocol, TOP),Wi-Fi保護接入(Wi-Fi Protected Access, WPA)等口令設置,但是在各種破解攻略以及破解工具充斥整個網絡的環境下,這些防范性能較低的技術對攻擊者而言也是形同虛設。也有一些無線路由器具有一定安全限度的防火墻,但是目前而言功能還較為有限。總之,目前的無線網絡還不是較為安全。
發明內容
本發明所要解決的技術問題是需要提供一種入侵檢測系統,克服現有技術中無線網絡安全性較低的缺陷。為了解決上述技術問題,本發明首先提供了一種入侵檢測系統,包括攻擊事件庫,用于存儲預先設置的無線網絡攻擊事件模型;捕包模塊,用于從無線網絡上捕獲無線數據包;解碼解密模塊,用于對所述無線數據包進行解碼解密,獲得明文數據包;協議解析模塊,用于對所述明文數據包進行協議解析,獲得明文數據與無線網絡協議;檢測模塊,用于根據所述無線網絡攻擊事件模型及無線網絡協議對所述明文數據進行匹配檢測,獲得檢測結果。 優選地,該系統進一步包括接收模塊,用于從有線網絡上接收有線數據包;其中,所述攻擊事件庫進一步用于存儲預先設置的有線網絡攻擊事件模型;所述協議解析模塊進一步用于對所述有線數據包進行協議解析,獲得有線網絡數據及有線網絡協議;所述檢測模塊進一步用于根據所述有線網絡攻擊事件模型及有線網絡協議對所
4述有線網絡數據進行匹配檢測,獲得檢測結果。優選地,所述攻擊事件庫存儲的所述無線網絡攻擊事件模型,包括專門針對無線網絡的網絡攻擊模型、密碼破解模型以及用戶訪問記錄中的至少ー種。優選地,所述捕包模塊用于采用修改無線網卡驅動、數據包捕獲函數庫或者套接字,從無線網絡上捕獲所述無線數據包。優選地,所述捕包模塊采用修改無線網卡驅動捕獲所述無線數據包時,將網卡設置為“雜湊”模式;所述捕包模塊采用套接字捕獲所述無線數據包時,將網卡設置為“雜湊”模式,且將套接字類型選擇為S0CK_RAW。為了解決上述計數問題,本發明還提供了ー種入侵檢測系統的檢測方法,包括從無線網絡上捕獲無線數據包;對所述無線數據包進行解碼解密,獲得明文數據包;對所述明文數據包進行協議解析,獲得明文數據與無線網絡協議;根據預先設置的無線網絡攻擊事件模型及所述無線網絡協議對所述明文數據進行匹配檢測,獲得檢測結果。優選地,該方法進ー步包括從有線網絡上接收有線數據包;對所述有線數據包進行協議解析,獲得有線網絡數據及有線網絡協議;根據預先設置的有線網絡攻擊事件模型及所述有線網絡協議對所述有線網絡數據進行匹配檢測,獲得檢測結果。優選地,所述無線網絡攻擊事件模型,包括專門針對無線網絡的網絡攻擊模型、密碼破解模型以及用戶訪問記錄中的至少ー種。優選地,從無線網絡上捕獲所述無線數據包的步驟,包括采用修改無線網卡驅動、數據包捕獲函數庫或者套接字,從無線網路上捕獲所述無線數據包。優選地,采用修改無線網卡驅動捕獲所述無線數據包時,將網卡設置為“雜湊”模式;采用套接字捕獲所述無線數據包時,將網卡設置為“雜湊”模式,且將套接字類型選擇為 S0CK_RAffo與現有技術相比,本發明的技術方案通過對802. 11幀格式的無線數據包進行解碼解密,并通過預先設置的無線網絡攻擊事件模型對解碼解密后的明文數據進行網絡攻擊的匹配檢測,可以檢測出攻擊者對無線網絡的攻擊事件,提高了無線網絡的安全性。本發明的其它特征和優點將在隨后的說明書中闡述,并且,部分地從說明書中變得顯而易見,或者通過實施本發明而了解。本發明的目的和其他優點可通過在說明書、權利要求書以及附圖中所特別指出的結構來實現和獲得。
附圖用來提供對本發明技術方案的進ー步理解,并且構成說明書的一部分,與本發明的實施例一起用于解釋本發明的技術方案,并不構成對本發明技術方案的限制。在附圖中
圖1 (a)是802. 11協議族Mac幀結構示意圖;圖1 (b)是802. 11協議族Mac幀控制結構示意圖;圖2是802. 3幀格式的示意圖;圖3是現有技術中數據包傳輸示意圖;圖4是本發明實施例入侵檢測系統的組成示意圖;圖5為圖4所示實施例中捕包模塊捕獲無線數據包的流程示意圖;圖6是本發明實施例入侵檢測系統的檢測方法的流程示意圖。
具體實施例方式以下將結合附圖及實施例來詳細說明本發明的實施方式,借此對本發明如何應用技術手段來解決技術問題,并達成技術效果的實現過程能充分理解并據以實施。首先,如果不沖突,本發明實施例以及實施例中的各個特征的相互結合,均在本發明的保護范圍之內。另外,在附圖的流程圖示出的步驟可以在諸如一組計算機可執行指令的計算機系統中執行,并且,雖然在流程圖中示出了邏輯順序,但是在某些情況下,可以以不同于此處的順序執行所示出或描述的步驟。本發明的發明人經過分析發現,目前影響無線網絡安全的威脅主要可以分為如下幾類(1)無線網絡發現(Network Discovery);它雖為802. 11協議的一個部分,能允許客戶發現有效的接入點(Access point, AP)和網絡服務,但它也是黑客入侵攻擊無線網絡的重要一步,比如NetStumbler以及Wellenreiter等都是應用這一技術的工具。O)D0S攻擊;常見的這類威脅主要包括幀中繼網絡飽和(Network&ituration by Management Frames)、信號干擾(Signal Interference)、空刺探回應(Null Probe Reply) \)JsR PPP ΓΜτΛ Η^ (PPP ExtensibleAuthentication Protocol, ΕΑΡ) IkvEt^1 禾口(Saturation with EAP Handshake)等。(3)假冒AP(Fake Access Points);主要包括兩種方式,一種是入侵者將真實的 AP非法放置到被入侵的網絡中,另一種是將入侵者偽裝成AP。(4)竊聽(Eavesdropping);這類威脅主要包括加密認證協議如WEP,WPA等的破解。(5)身份盜竊(Identity Theft);這類威脅主要包括MAC欺騙(MACSpoof ing)、惡意 AP(Rogue Access Points)以及 MITM 攻擊(Man-In-The-Middle)等。(6)取消認證攻擊(De-authentication attack);攻擊者通過偽造無線接入點和無線客戶端,使得無線客戶端會認為所有數據包均來自無線接入點;經攻擊者的持續攻擊, 無線客戶端會被斷開連接。(7)時間攻擊(Duration Attack) ;CSMA/CA的原理是允許客戶端保留使用某個通信信道一段時間,攻擊者通過在時間快過期時發送數據幀并長時間持續,使得合法客戶端無法使用這個通信信道。入侵檢測系統(1此)是一種對網絡傳輸進行即時監視,在發現可疑傳輸時發出警報或者采取主動反應措施的網絡安全設備。其與其他網絡安全設備的不同之處便在于,IDS 是一種積極主動的安全防護技術。
本發明的發明人經過進一歩的分析發現,無線IDS與有線IDS相比,在實現原理上主要有如下幾方面的不同(1)捕包的方式及初步處理不同;無線IDS的捕包需要經過解碼以及解密等操作, 然后將獲得的數據交給鏈路層,而有線IDS在捕包之后不需要經過解碼以及解密等操作, 直接把數據交給鏈接層。(2)攻擊事件庫不同;有線IDS的攻擊事件庫是專門針對有線網絡的,而黑客攻擊無線網絡和有線網絡的整體攻擊思路,以及能夠實現的攻擊手段原理上大致上是相同的, 相比而言,主要是無線網絡比有線網絡多了ー些破解密鑰等過程。圖1 (a)是802. 11協議族Mac幀結構示意圖,圖1 (b)是802. 11協議族Mac幀控制結構示意圖。802. 11協議族Mac幀適用于無線數據包。圖2是802. 3幀格式的示意圖。802. 3Mac幀適用于有線數據包。由圖1 (a)、圖1 (b) 格式以及圖2可見,適用于無線數據包的802. IlMac幀與適用于有線數據包的802. 3Mac幀是不同的。圖3是數據包傳輸示意圖。如圖3所示,無線數據包和有線數據包在TCP/IP協議棧中是并行傳輸的,而上面的鏈路層等都是相同的。因此,本發明可以對802. 11的幀格式進行解碼并轉換,使得能夠被鏈路層識別。 本發明的技術方案中,采用802. 11驅動程序將上層協議傳遞下來的無線數據包發送到芯片端,并將芯片端接收到的無線數據包傳遞到對應的上層協議棧。鏈路層的數據包為以太網格式,但從Wi-Fi芯片收到的數據包卻是802. 11格式,因此在數據收發時都需要進行格式轉換。在對802. 11的幀格式進行解碼以及轉換之前,先要對無線數據包進行捕包處理。 本發明中的無線數據包的捕包實現,可以采用如下修改無線網卡驅動來實現,也可以采用數據包捕獲函數庫(Iibpcap)技術來實現,或者也可以采用套接字(Socket)技術來實現。當網絡采用TOP加密以后,無線網絡數據幀LLC層以上的數據是按密文形式進行傳輸的,因此有必要對加密的無線數據包進行WEP解密。具體解密過程如下步驟Si,首先設置該區域AP的基本服務單元標識符(Basic Service Setldentifier, BSSID)及對應的共享密鑰;步驟S2,捕獲到無線數據包后,判斷捕獲到的無線數據包的BSSID是否與本地設置的BSSID相同,并且判斷其是否為加密數據包;步驟S3,如果是加密數據包且BSSID也相同,則利用共享密鑰進行解密,從捕獲到的無線數據包中提取關鍵字標識符(key ID)和IV ;步驟S4,根據key ID確定無線數據包所使用的缺省密鑰,將缺省密鑰與IV向量串聯生成密鑰種子,并采用RC4算法,根據該密鑰種子自動把加密數據報解密成明文數據包。由于無線IDS與有線IDS的攻擊事件庫并不相同,因此需要預先根據無線IDS攻擊事件的特征構建針對無線IDS的攻擊事件庫。無線IDS的攻擊事件庫主要存儲有專門針對無線網絡的網絡攻擊模型、密碼破解模型或者用戶訪問記錄等信息(也可以是這些內容的各種組合),另一部分存儲即可威脅無線網絡又可威脅有線網絡的網絡攻擊模型。無線IDS攻擊事件庫可以由類似如下ー些特征構成
alert WIDS any - > any (message: “ WEP Key Crack “ ;Data = 00:DE:AD:C0:DE:00)alert WIDS any _> any (message: " Deauthentication “ ;stype = STYPE_ DEAUTH ;)。實施例一、入侵檢測系統圖4是本實施例的組成示意圖。如圖4所示,本實施例主要包括攻擊事件庫410、 捕包模塊420、解碼解密模塊430、協議解析模塊440、檢測模塊450以及報告模塊460,其中攻擊事件庫410,用于存儲預先設置的無線網絡攻擊事件模型;捕包模塊420,用于從無線網絡上捕獲無線數據包;解碼解密模塊430,與捕包模塊420相連,用于對無線數據包進行解碼解密,獲得明文數據包;協議解析模塊440,與解碼解密模塊430相連,用于對明文數據包進行協議解析, 從IP層、TCP層到應用層,層層去掉頭標志,得到相應的明文數據與無線網絡協議;檢測模塊450,與攻擊事件庫410及協議解析模塊440相連,用于根據攻擊事件庫中存儲的無線網絡攻擊事件模型,采用檢測算法如ACBM算法對協議解析獲得的明文數據進行匹配檢測,獲得檢測結果,完成對無線數據包的入侵檢測;報告模塊460,與檢測模塊450相連,用于將檢測結果上報給控制中心。如圖4所示,在本發明的另一個實施例的入侵檢測系統,還包括接收模塊470,其與協議解析模塊440相連,用于從有線網絡上接收有線數據包。上述攻擊事件庫410還存儲預先設置的有線網絡攻擊事件模型,協議解析模塊440對接收模塊470所接收的有線數據包進行協議解析,得到相應的有線網絡及有線網絡協議,檢測模塊450根據有線網絡攻擊事件模型對解析模塊440所解析的有線網絡數據進行匹配檢測,獲得檢測結果;報告模塊460可以向控制中心上報檢測結果。上述捕包模塊420捕獲無線數據包,可以采用修改無線網卡驅動的方式來實現, 也可以選用Socket技術來實現。這兩種實現方式均將網卡設置為“雜湊”模式。對于采用 Socket技術來實現,Socket類型選擇為S0CK_RAW。圖5為捕包模塊420采用Socket技術捕獲無線數據包的流程示意圖。如圖5所示,該流程主要包括如下步驟步驟S510,捕包模塊420調用Socket函數,生成套接字描述符;步驟S520,捕包模塊420調用bind函數,將與套接字描述符相應的套接字與本地地址綁定;步驟530,捕包模塊420調用recvfrom函數,將捕獲到的無線數據包從系統緩沖區讀取到用戶緩沖區。實施例二、入侵檢測系統的檢測方法圖6為本實施例的流程示意圖。結合圖4所示的入侵檢測系統實施例,圖6所示的本實施例主要包括如下步驟步驟S610,從無線網絡上捕獲無線數據包;步驟S620,對無線數據包進行解碼解密,獲得明文數據包;
步驟S630,對明文數據包進行協議解析,獲得明文數據與無線網絡協議;步驟S640,根據預先設置的無線網絡攻擊事件模型及無線網絡協議對明文數據進行匹配檢測,獲得檢測結果,完成對無線數據包的入侵檢測,并且可以向控制中心上報該檢測結果。上述方法可以進一歩包括如下步驟從有線網絡上接收有線數據包;對有線數據包進行協議解析,獲得有線網絡數據及有線網絡協議;根據預先設置的有線網絡攻擊事件模型及有線網絡協議對有線網絡數據進行匹配檢測,獲得檢測結果,完成對有限數據包的入侵檢測,并且可以向控制中心上報該檢測結
ο上述的無線網絡攻擊事件模型,包括專門針對無線網絡的網絡攻擊模型、密碼破解模型以及用戶訪問記錄中的至少ー種。上述從無線網絡上捕獲無線數據包的步驟,包括采用修改無線網卡驅動、數據包捕獲函數庫或者套接字,從無線網路上捕獲無線數據包。在采用修改無線網卡驅動捕獲無線數據包時,將網卡設置為“雜湊”模式;在采用套接字捕獲無線數據包時,將網卡設置為“雜湊”模式,且將套接字類型選擇為 S0CK_RAW。本領域的技術人員應該明白,上述的本發明的各模塊或各步驟可以用通用的計算裝置來實現,它們可以集中在單個的計算裝置上,或者分布在多個計算裝置所組成的網絡上,可選地,它們可以用計算裝置可執行的程序代碼來實現,從而,可以將它們存儲在存儲裝置中由計算裝置來執行,或者將它們分別制作成各個集成電路模塊,或者將它們中的多個模塊或步驟制作成單個集成電路模塊來實現。這樣,本發明不限制于任何特定的硬件和軟件結合。雖然本發明所揭露的實施方式如上,但所述的內容只是為了便于理解本發明而采用的實施方式,并非用以限定本發明。任何本發明所屬技術領域內的技術人員,在不脫離本發明所揭露的精神和范圍的前提下,可以在實施的形式上及細節上作任何的修改與變化, 但本發明的專利保護范圍,仍須以所附的權利要求書所界定的范圍為準。
權利要求
1.一種入侵檢測系統,其特征在于,包括攻擊事件庫,用于存儲預先設置的無線網絡攻擊事件模型;捕包模塊,用于從無線網絡上捕獲無線數據包;解碼解密模塊,用于對所述無線數據包進行解碼解密,獲得明文數據包;協議解析模塊,用于對所述明文數據包進行協議解析,獲得明文數據與無線網絡協議;檢測模塊,用于根據所述無線網絡攻擊事件模型及無線網絡協議對所述明文數據進行匹配檢測,獲得檢測結果。
2.根據權利要求1所述的系統,其特征在于,該系統進一步包括 接收模塊,用于從有線網絡上接收有線數據包;其中,所述攻擊事件庫進一步用于存儲預先設置的有線網絡攻擊事件模型; 所述協議解析模塊進一步用于對所述有線數據包進行協議解析,獲得有線網絡數據及有線網絡協議;所述檢測模塊進一步用于根據所述有線網絡攻擊事件模型及有線網絡協議對所述有線網絡數據進行匹配檢測,獲得檢測結果。
3.根據權利要求1或2所述的系統,其特征在于所述攻擊事件庫存儲的所述無線網絡攻擊事件模型,包括專門針對無線網絡的網絡攻擊模型、密碼破解模型以及用戶訪問記錄中的至少一種。
4.根據權利要求1或2所述的系統,其特征在于所述捕包模塊用于采用修改無線網卡驅動、數據包捕獲函數庫或者套接字,從無線網絡上捕獲所述無線數據包。
5.根據權利要求4所述的系統,其特征在于所述捕包模塊采用修改無線網卡驅動捕獲所述無線數據包時,將網卡設置為“雜湊”模式;所述捕包模塊采用套接字捕獲所述無線數據包時,將網卡設置為“雜湊”模式,且將套接字類型選擇為S0CK_RAW。
6.一種入侵檢測系統的檢測方法,其特征在于,包括 從無線網絡上捕獲無線數據包;對所述無線數據包進行解碼解密,獲得明文數據包; 對所述明文數據包進行協議解析,獲得明文數據與無線網絡協議; 根據預先設置的無線網絡攻擊事件模型及所述無線網絡協議對所述明文數據進行匹配檢測,獲得檢測結果。
7.根據權利要求6所述的方法,其特征在于,該方法進一步包括 從有線網絡上接收有線數據包;對所述有線數據包進行協議解析,獲得有線網絡數據及有線網絡協議; 根據預先設置的有線網絡攻擊事件模型及所述有線網絡協議對所述有線網絡數據進行匹配檢測,獲得檢測結果。
8.根據權利要求6或7所述的方法,其特征在于所述無線網絡攻擊事件模型,包括專門針對無線網絡的網絡攻擊模型、密碼破解模型以及用戶訪問記錄中的至少ー種。
9.根據權利要求6或7所述的方法,其特征在干,從無線網絡上捕獲所述無線數據包的步驟,包括采用修改無線網卡驅動、數據包捕獲函數庫或者套接字,從無線網路上捕獲所述無線數據包。
10.根據權利要求9所述的方法,其特征在干采用修改無線網卡驅動捕獲所述無線數據包時,將網卡設置為“雜湊”模式; 采用套接字捕獲所述無線數據包時,將網卡設置為“雜湊”模式,且將套接字類型選擇為 SOCK RAffo
全文摘要
本發明公開了一種入侵檢測系統及其檢測方法,克服現有技術中無線網絡安全性較低的缺陷。其中該入侵檢測系統包括攻擊事件庫,用于存儲預先設置的無線網絡攻擊事件模型;捕包模塊,用于從無線網絡上捕獲無線數據包;解碼解密模塊,用于對所述無線數據包進行解碼解密,獲得明文數據包;協議解析模塊,用于對所述明文數據包進行協議解析,獲得明文數據與無線網絡協議;檢測模塊,用于根據所述無線網絡攻擊事件模型及無線網絡協議對所述明文數據進行匹配檢測,獲得檢測結果。本發明的技術方案可以檢測出攻擊者對無線網絡的攻擊事件,提高了無線網絡的安全性。
文檔編號H04L12/26GK102571719SQ20101061634
公開日2012年7月11日 申請日期2010年12月31日 優先權日2010年12月31日
發明者肖小劍 申請人:北京啟明星辰信息安全技術有限公司, 北京啟明星辰信息技術股份有限公司