無線局域網(wǎng)安全監(jiān)護(hù)系統(tǒng)
1 系統(tǒng)方案論證
1.1 現(xiàn)狀分析
現(xiàn)有的無線局域網(wǎng)安全產(chǎn)品無法完全提供無線局域網(wǎng)的安全防護(hù),主要問題如下:
1)功能單一、缺乏綜合安全管理平臺(tái),無法實(shí)現(xiàn)無線數(shù)據(jù)監(jiān)聽、解析、還原、取證的綜合功能。
2)缺乏非法站點(diǎn)接入、合法站點(diǎn)訪問非法站點(diǎn)的有效控制手段。如果不連入有線網(wǎng)絡(luò),就無法實(shí)現(xiàn)網(wǎng)絡(luò)控制。
3)無法檢測(cè)并抵御WEP攻擊方法。WEP加密方式在一定程度上仍然廣泛應(yīng)用,現(xiàn)有的解決方案基本上是通過升級(jí)無線接入點(diǎn)和站點(diǎn)的安全模塊來防御WEP攻擊,但這種解決方案無法應(yīng)用于大量已部署的舊無線局域網(wǎng)上。
1.2 系統(tǒng)方案
根據(jù)以上現(xiàn)狀分析,有必要設(shè)計(jì)一款集無線網(wǎng)絡(luò)實(shí)時(shí)掃描、數(shù)據(jù)實(shí)時(shí)解析、內(nèi)容還原、審計(jì)取證、管理控制、攻擊檢測(cè)防護(hù)等功能于一身的無線局域網(wǎng)監(jiān)護(hù)系統(tǒng),以解決當(dāng)前無線網(wǎng)絡(luò)存在的問題。下圖為系統(tǒng)的網(wǎng)絡(luò)構(gòu)設(shè)圖:
圖1.1 網(wǎng)絡(luò)架設(shè)圖
可以看到本監(jiān)護(hù)系統(tǒng)獨(dú)立于網(wǎng)絡(luò),架設(shè)方便、靈活,可對(duì)選定的網(wǎng)絡(luò)實(shí)施監(jiān)護(hù)。系統(tǒng)是以linux為操作平臺(tái),并以PC機(jī)和兩張無線網(wǎng)卡作為硬件依托,一張無線網(wǎng)卡用于站點(diǎn)和接入點(diǎn)的掃描、數(shù)據(jù)包的截獲,另一張用于發(fā)送偽造數(shù)據(jù)包來阻止WEP攻擊。通過對(duì)網(wǎng)卡截獲的數(shù)據(jù)進(jìn)行協(xié)議解析來分析網(wǎng)絡(luò)中是否存在WEP攻擊以及非法接入和訪問,如果存在則通過另一張網(wǎng)卡發(fā)送數(shù)據(jù)包進(jìn)行防護(hù)。同時(shí)通過協(xié)議解析我們可以恢復(fù)出用戶的上網(wǎng)文件內(nèi)容,從而對(duì)用戶無線上網(wǎng)行為的審計(jì)和取證帶來方便。
2系統(tǒng)功能指標(biāo)
如表1所示,是我們這個(gè)系統(tǒng)所實(shí)現(xiàn)的功能與指標(biāo)。
表 1:系統(tǒng)指標(biāo)表#p#
3 系統(tǒng)實(shí)現(xiàn)原理、技術(shù)和流程圖
本系統(tǒng)的架構(gòu)主要包括圖形界面、各個(gè)功能模塊、模塊間接口這三個(gè)部分。而其實(shí)現(xiàn)的關(guān)鍵則在于無線網(wǎng)絡(luò)的全頻段掃描以及數(shù)據(jù)捕獲、數(shù)據(jù)的協(xié)議實(shí)時(shí)解析、內(nèi)容還原技術(shù)、以及非法網(wǎng)絡(luò)行為的檢測(cè)和防護(hù)技術(shù)。
3.2 關(guān)鍵技術(shù)分析
3.2.1無線網(wǎng)絡(luò)的全頻段掃描和數(shù)據(jù)捕獲
3.2.1.1 全頻段掃描
通過在Linux平臺(tái)下,設(shè)置無線網(wǎng)卡I/O通信端口寄存器為監(jiān)聽模式,可以對(duì)802.11a/b/g的13個(gè)頻段內(nèi)的接入點(diǎn)、站點(diǎn)以時(shí)分跳頻的方式監(jiān)聽,實(shí)時(shí)發(fā)現(xiàn)各個(gè)信道的AP以及連接AP的站點(diǎn),并分析捕獲的數(shù)據(jù),獲得AP和站點(diǎn)的加密方式、信號(hào)強(qiáng)度、MAC地址等相關(guān)信息。
3.2.1.2數(shù)據(jù)包捕獲
一旦選定需要監(jiān)護(hù)的AP,則可以通過對(duì)網(wǎng)卡端口寄存器編程來實(shí)現(xiàn)固定信道的掃描,此時(shí)不再是13個(gè)信道的時(shí)分跳頻,而是網(wǎng)卡固定于一個(gè)特定的信道來掃描獲取該信道的數(shù)據(jù)。再對(duì)捕獲的數(shù)據(jù)包進(jìn)行BSSID的過濾,這樣就可以得到該AP服務(wù)集的數(shù)據(jù)包。
3.2.2 數(shù)據(jù)的實(shí)時(shí)解析
用數(shù)據(jù)包捕獲方式得到的是802.11MAC層的通信數(shù)據(jù),根據(jù)TCP/IP協(xié)議棧與802.11的相關(guān)協(xié)議,數(shù)據(jù)恢復(fù)需要從TCP/IP協(xié)議模型的底層向上層進(jìn)行一層層的解析和重組:數(shù)據(jù)鏈路層—網(wǎng)絡(luò)層—傳輸層—應(yīng)用層(含會(huì)話、表現(xiàn)層)。
TCP、IP的協(xié)議解析是本系統(tǒng)中的一大難點(diǎn),這其中關(guān)系到IP分片和重組以及TCP流重組和重傳的解析。我們選擇了libnids開源工具對(duì)該部分協(xié)議做了具體的解析。
在TCP、IP解析的基礎(chǔ)上實(shí)現(xiàn)了對(duì)FTP協(xié)議,HTTP協(xié)議,SMTP協(xié)議,POP3協(xié)議的并行解析。由于監(jiān)聽的網(wǎng)絡(luò)同時(shí)會(huì)有多個(gè)人使用某個(gè)協(xié)議,我們建立了對(duì)應(yīng)于各個(gè)TCP連接的虛擬端口,用于區(qū)分不同TCP鏈接的通信數(shù)據(jù)。圖3.2描述了TCP連接與各個(gè)協(xié)議的關(guān)系。
圖 3.2 協(xié)議解析關(guān)系圖
同時(shí)我們給出了應(yīng)用層解析流程,見圖3.3:
圖3.3 應(yīng)用層協(xié)議解析流程圖
3.2.3 用戶網(wǎng)絡(luò)內(nèi)容的還原
3.2.3.1網(wǎng)頁內(nèi)容還原
對(duì)于HTTP,由于其網(wǎng)絡(luò)地址大多為服務(wù)器的相對(duì)地址,還原后的原始文件無法用瀏覽器打開,即使打開也只有文字信息(如圖3.4所示),缺少圖片和flash信息,這就需要后期的數(shù)據(jù)處理。3.2.3.2 郵件內(nèi)容處理
郵件內(nèi)容并不是直接傳輸ASCII碼,它有自己的傳輸編碼,所以必須根據(jù)其相應(yīng)的傳輸編碼來對(duì)其進(jìn)行解析。比如其常用的傳輸編碼方式為base64編碼。如表3.1所示:
表3.1 base64編碼
這種編碼其實(shí)就相當(dāng)于加密,當(dāng)然還有其他的傳輸編碼方式,必須做相應(yīng)的解碼才能使得其可讀。所以郵件文件的處理程序流程就是先讀文件,查找傳輸編碼方式,最后解碼還原。
3.2.4網(wǎng)絡(luò)行為控制
網(wǎng)絡(luò)行為的控制主要控制兩類事件,一是阻斷非法用戶接入AP,二是防止合法用戶訪問非法IP。其中前者的分析基于MAC層的數(shù)據(jù),后者基于IP層的數(shù)據(jù)。雖然我們的系統(tǒng)獨(dú)立于AP和站點(diǎn),但是我們可以通過偽冒成該站點(diǎn)與AP通信,向AP發(fā)送去鑒權(quán)或去關(guān)聯(lián)數(shù)據(jù)幀,中斷AP與該站點(diǎn)之間的通信或者連接,來中斷非法接入或者非法訪問。
3.2.5 WEP攻擊檢測(cè)與主動(dòng)防護(hù)
當(dāng)前最流行的WEP攻擊軟件是基于統(tǒng)計(jì)原理的PTW[7]算法,該算法可以在收集40000個(gè)有效包的情況下破解出64bit的WEP密鑰。PTW算法采用主動(dòng)攻擊的方式,假冒合法用戶大量發(fā)送已截獲的無線網(wǎng)絡(luò)中的ARP請(qǐng)求包,通過這種方式,攻擊者將會(huì)收獲大量的ARP回復(fù)和轉(zhuǎn)發(fā)包,之后采用統(tǒng)計(jì)算法[7],分析ARP包中的密鑰流和ARP包所對(duì)應(yīng)的不同IV,攻擊者即可在很短的時(shí)間內(nèi)破獲正確的密鑰,進(jìn)而實(shí)行非法操作。
事實(shí)上幾乎所有的WEP攻擊算法的都需要捕獲大量的ARP包?;诖?,我們采用在MAC層捕獲、統(tǒng)計(jì)網(wǎng)絡(luò)中的ARP包的流量去判斷是否存在WEP攻擊。
一旦發(fā)現(xiàn)有WEP攻擊,我們通過分析ARP包中源、目的端以及IV等信息,用一個(gè)偽造的密鑰和不斷遞增的IV,按照WEP加密方式構(gòu)造出一個(gè)新的ARP包,并通過網(wǎng)卡大量發(fā)送,使得攻擊者大量捕獲的是用錯(cuò)誤密鑰加密的ARP包。另一方面我們通過發(fā)送ARP包的時(shí)間間隔來偽冒成攻擊者,向AP發(fā)送去鑒權(quán)幀,使得攻擊者時(shí)而斷開與AP的連接,這樣AP就不會(huì)轉(zhuǎn)發(fā)攻擊者發(fā)送的ARP包,因此攻擊者就幾乎收不到正確密鑰加密的ARP數(shù)據(jù)包,而大量捕獲我們用偽造密鑰加密的ARP包,因而最終破獲出一個(gè)錯(cuò)誤密鑰。由于我們構(gòu)造的ARP包與正確密鑰加密的ARP包對(duì)于攻擊者來說是無法區(qū)分,因此這樣的防護(hù)方法可謂是疏而不漏。
【編輯推薦】