張 辰,胡 亮,努爾布力
(1.吉林大學(xué) 計算機科學(xué)與技術(shù)學(xué)院,長春130012;2.新疆大學(xué) 信息科學(xué)與工程學(xué)院,烏魯木齊830046)
隨著網(wǎng)絡(luò)科技水平的日益提高,連接方式開始大規(guī)模地由有線向無線網(wǎng)絡(luò)轉(zhuǎn)變[1].相比于有線網(wǎng)絡(luò),無線網(wǎng)絡(luò)環(huán)境具有網(wǎng)絡(luò)拓撲結(jié)構(gòu)實時性動態(tài)可變、終端異構(gòu)且具有實時移動的可能、網(wǎng)絡(luò)傳輸媒介異構(gòu)、安全或可防范對象目標(biāo)不明確、極少或無終端監(jiān)控管理節(jié)點(master節(jié)點)等新特性[2-5].無線網(wǎng)絡(luò)安全方面的隱患也遠多于有線網(wǎng)絡(luò)環(huán)境,如:利用無線環(huán)境極易實現(xiàn)拒絕服務(wù)攻擊,導(dǎo)致網(wǎng)絡(luò)癱瘓,可用性及可靠性低,無線鏈路傳輸過程中重視數(shù)據(jù)是否第一時間有效送達,輕視數(shù)據(jù)本身是否合理合法、異構(gòu)終端設(shè)備導(dǎo)致兼容性極大降低,時鐘一致性難滿足破壞了數(shù)據(jù)本身的完整性等[6].針對上述已普遍出現(xiàn)的安全隱患,在網(wǎng)線網(wǎng)絡(luò)工業(yè)標(biāo)準(zhǔn)即IEEE802.11WLAN中,目前使用較多的是WEP加密協(xié)議、服務(wù)區(qū)標(biāo)識符SSID和MAC地址過濾技術(shù)3種防范機制[7].
入侵檢測數(shù)據(jù)集來源于針對原始被保護系統(tǒng)進行實時監(jiān)控與審計的大規(guī)模數(shù)據(jù)集的特征選擇與特征提取過程[8],主要服務(wù)于入侵檢測系統(tǒng)中警報產(chǎn)生前的入侵分析過程.目前,廣泛使用的入侵檢測數(shù)據(jù)集依然是KDD99安全審計數(shù)據(jù)集[9].
有線對等私密協(xié)議(wired equivalent privacy,WEP)是802.11標(biāo)準(zhǔn)中依賴通信雙方共享密鑰,實現(xiàn)保密傳輸?shù)陌踩珔f(xié)議.基于WEP協(xié)議的加解密過程如圖1所示[10].其中:PRNG表示偽隨機序列生成器;ICV表示完整性檢測器.加密過程需先針對待傳數(shù)據(jù)計算其校驗和,再將待傳數(shù)據(jù)與校驗和合并得到明文數(shù)據(jù).使用RC4算法對明文數(shù)據(jù)實現(xiàn)加密過程,最后將初始向量與密文送到無線網(wǎng)絡(luò)鏈路中.解密過程中,接收者先用之前已經(jīng)與發(fā)送者共享獲得的密鑰及實際接收的初始向量生成解密密鑰序列,再與所獲密文相異或即可獲得明文信息,同時需進行所獲數(shù)據(jù)幀的完整性信息校驗.
圖1 WEP協(xié)議的加解密流程Fig.1 Flow chart of WEP protocol encryption
算法本質(zhì)上采用電子密碼本(ECB)的對稱算法,但其實現(xiàn)過程有許多安全隱患,如:因初始向量長度過短導(dǎo)致密鑰序列被重復(fù)使用;共享密鑰的更新與管理;消息認(rèn)證與完整性檢查方法不合理等[11].
1.2.1 攻擊流程 先查看主機是否已安裝無線網(wǎng)卡并確保為激活態(tài),將其設(shè)置為monitor模式后利用命令行輸入開始抓取無線數(shù)據(jù)包;再通過ARPRequest注入方式實現(xiàn)初始向量的最快速獲取,即在發(fā)包干擾過程中,一旦發(fā)現(xiàn)有合法客戶端向已定位AP發(fā)送ARP請求包,攻擊者立即重發(fā)該包.由于IEEE802.11及WEP協(xié)議均不對鏈路中傳輸數(shù)據(jù)流的重復(fù)性進行檢查,滿足重傳相同加密幀的可能,AP接到ARP請求包后即向?qū)?yīng)客戶端及攻擊者發(fā)送回復(fù)包,由此攻擊者可獲得初始向量,當(dāng)獲得足夠數(shù)量的數(shù)據(jù)包后即可進行離線破解,完成攻擊過程[12].攻擊流程如圖2所示.
本文選取aircrack-ng作為算法破解工具,運用如下基于aircrack-ng的無線破解工具包(名稱及用途):airmon-ng:處理網(wǎng)卡工作模式;airodump-ng:抓包;aireplay-ng:發(fā)包,干擾;aircrack-ng:破解.
1.2.2 捕獲過程
1.2.2.1 捕獲原理 系統(tǒng)正常工作時,數(shù)據(jù)包由下至上經(jīng)鏈路層、網(wǎng)絡(luò)層、傳輸層后才能抵達應(yīng)用層,其中:鏈路層只響應(yīng)目標(biāo)MAC地址與本地網(wǎng)絡(luò)接口相匹配的或為“廣播地址”的數(shù)據(jù)包;網(wǎng)絡(luò)層需判斷目標(biāo)IP地址是否在本機綁定的IP地址范圍內(nèi);而傳輸層將判斷該報文中標(biāo)注的TCP或UDP目的端口本機是否已開啟,不滿足條件的數(shù)據(jù)包將被拋棄.因此,要獲得流經(jīng)無線網(wǎng)卡的所有數(shù)據(jù)包,需直接訪問網(wǎng)絡(luò)鏈路層.先將無線網(wǎng)卡的工作模式調(diào)成混雜態(tài)(Promiscuous).因為系統(tǒng)網(wǎng)絡(luò)接口處于“混雜”模式下,該接口為“廣播地址”形式,由此操作系統(tǒng)將直接訪問鏈路層,由上層應(yīng)用程序?qū)?shù)據(jù)實現(xiàn)過濾處理.利用該工作原理,可捕獲流經(jīng)網(wǎng)卡的所有數(shù)據(jù)鏈路層數(shù)據(jù)包.通過調(diào)用Libpacp庫中的信息過濾機制,可進一步去除冗雜數(shù)據(jù)包,提高效率.
1.2.2.2 捕獲流程及偽代碼 無線入侵監(jiān)測數(shù)據(jù)捕獲模塊利用Libpcap函數(shù)庫的接口函數(shù)實現(xiàn),如圖3所示.
偽代碼如下:
輸入:實時獲取的網(wǎng)絡(luò)數(shù)據(jù)包;
圖2 WEP協(xié)議的攻擊流程Fig.2 Flow chart of WEP protocol attacks
圖3 無線入侵檢測數(shù)據(jù)捕獲流程Fig.3 Flow chart of wireless intrusion detection data capture
輸出:Libpcap庫下的pcap文件.
1)環(huán)境變量初始化;
2)通過設(shè)置路徑,選擇指定無線網(wǎng)卡,調(diào)試為Promiscuous模式;
3)無線網(wǎng)卡確認(rèn)并開啟;
4)實時數(shù)據(jù)包捕獲,每捕獲一個數(shù)據(jù)包即自增1;
5)判斷實時捕獲的數(shù)據(jù)包數(shù)量,保存到已創(chuàng)建的pcap文件中;
6)判斷已寫入pcap文件的數(shù)據(jù)包數(shù)量,未達到事先設(shè)定的閾值,跳轉(zhuǎn)回步驟4);已達到則關(guān)閉Libpcap庫,程序終止.
在人工搭建的無線局域網(wǎng)上進行實驗,設(shè)備包括設(shè)為AP的PC機1臺、客戶主機1臺、攻擊主機1臺、TP-LINK無線網(wǎng)卡2塊、檢測主機1臺.作為AP的主機連接Inter網(wǎng)并設(shè)置AP熱點,客戶主機運行常用網(wǎng)絡(luò)業(yè)務(wù)(網(wǎng)頁瀏覽等),無線網(wǎng)絡(luò)使用802.11協(xié)議.檢測主機負責(zé)數(shù)據(jù)收集和預(yù)處理等入侵行為檢測.
先實現(xiàn)無線數(shù)據(jù)包獲取,進行WEP攻擊,再針對無線攻擊數(shù)據(jù)包完成捕獲,最后利用特征選擇與特征提取等數(shù)據(jù)挖掘方法實現(xiàn)WEP入侵?jǐn)?shù)據(jù)集的構(gòu)建.實驗過程如下.
1)無線網(wǎng)絡(luò)數(shù)據(jù)采集.設(shè)計并實現(xiàn)基于無線網(wǎng)絡(luò)的數(shù)據(jù)采集工具WEP_libpcap,并對其進行丟包率測試,該測試用于評價數(shù)據(jù)采集工具的抓包效率:
分別選取4種不同的時間間隔(200,100,50,0ms)重發(fā)不同次數(shù)的數(shù)據(jù)包測試該工具捕獲數(shù)據(jù)包的實際效率.其中,數(shù)據(jù)包結(jié)構(gòu)如下:23F4B3 3E23 21 54 20 30 2D54 03 12 44 00 2C10 42 5AC8 22 0D40 20 56 2A2C34EF 03 23D8 30EO 03 0FD3 02 2CA8 20 00 30.數(shù)據(jù)包重發(fā)時間間隔和丟包率測試結(jié)果列于表1.
2)WEP攻擊仿真、入侵?jǐn)?shù)據(jù)采集和分析.先仿照檢測到的共享密鑰驗證方式中發(fā)送的偽隨機數(shù)對數(shù)據(jù)進行修改,生成廣播包進行干擾,完成入侵行為,然后對入侵?jǐn)?shù)據(jù)完成采集并分析.按照數(shù)據(jù)采集工具中的相關(guān)內(nèi)容,可捕獲到入侵?jǐn)?shù)據(jù)包,進而完成破解,步驟如下:
① 修改無線網(wǎng)卡狀態(tài);
② 修改網(wǎng)卡工作模式:進入monitor狀態(tài),產(chǎn)生一個虛擬的網(wǎng)卡;
③ 查看網(wǎng)絡(luò)狀態(tài),記錄AP的MAC地址與本機MAC地址,確定攻擊目標(biāo);
④ 監(jiān)聽并抓包:生成.cap或.ivs文件;
⑤ 干擾無線網(wǎng)絡(luò):獲取無線數(shù)據(jù)包,發(fā)送垃圾數(shù)據(jù)包獲得更多的有效包;
⑥ 破解.cap或.ivs文件,從而獲得WEP協(xié)議共享密鑰,完成破解.
對捕獲的數(shù)據(jù)進行分析,在ARPRequest注入攻擊過程中主要產(chǎn)生如圖4和圖5所示的兩種數(shù)據(jù)包.
表1 工具性能測評結(jié)果Table 1 Performance results evaluation of tools
3)WEP攻擊特征數(shù)據(jù)集的構(gòu)建.參照KDD99數(shù)據(jù)集及WEP協(xié)議攻擊過程中用到的特征數(shù)據(jù),WEP特征數(shù)據(jù)集可提取如下特征.
① WEP攻擊流量統(tǒng)計特征(描述):count(總幀數(shù));Duration(幀間間隔均值);Num_data(數(shù)據(jù)幀總數(shù));Num_length(數(shù)據(jù)幀長度均值);Num_fragment(分片數(shù));Num_FromDs-ToDs(AP發(fā)出的幀總數(shù)與發(fā)往AP幀總數(shù)的差);Num_retransmission(重傳幀總數(shù));Num_multi_broad_cast(目的地址為組播和廣播幀的總數(shù));WEPValid(WEP ICV校驗通過幀占WEP加密幀的比值).
② 無線網(wǎng)絡(luò)連接特征(描述):duration(連接持續(xù)時間);Protocol_type(協(xié)議類型);service(目標(biāo)主機網(wǎng)絡(luò)服務(wù)類型);send_node(接受節(jié)點);Recv_node(發(fā)送節(jié)點);More_flag(分片標(biāo)志);land(連接是否來自/送達同一個主機/端口);Wrong_fragment(錯誤分段數(shù)量);WEP(是否加密);To_DS(發(fā)送方向);Num_failed_logins(登陸失敗次數(shù));Logged_in(成功登陸為1,否則為0);Num_compromised(滿足被攻擊條件的數(shù)量);Casting_Type(接受地址是單播,組播或廣播);Num_access_files(訪問控制文件操作的數(shù)量).
③ 基于事件的網(wǎng)絡(luò)流量統(tǒng)計特征(描述):count(過去2s內(nèi),與當(dāng)前連接具有相同目標(biāo)主機的連接數(shù));以下特征是指這些相同主機的連接:Rerror_rate(REJ錯誤連接數(shù)的百分?jǐn)?shù));Same_srv_rate(相同服務(wù)連接數(shù)的百分?jǐn)?shù));Diff_srv_rat(不同服務(wù)連接數(shù)的百分?jǐn)?shù));Srv_count(2s內(nèi)和當(dāng)前連接有相同服務(wù)的連接數(shù));以下特征是指這些相同服務(wù)的連接:Srv_rerror_rate(REJ錯誤連接數(shù)的百分?jǐn)?shù));Srv_diff_host_rate(不同主機連接數(shù)的百分?jǐn)?shù)).
圖4 ARP協(xié)議數(shù)據(jù)包Fig.4 ARP protocol packets
圖5 LLC協(xié)議數(shù)據(jù)包Fig.5 LLC protocol packets
④ 基于主機的網(wǎng)絡(luò)流量統(tǒng)計特征(描述):dst_host_count(與當(dāng)前連接具有相同目標(biāo)主機的連接數(shù));dst_host_srv_count(相同服務(wù));dst_host_same_srv_rate(相同服務(wù)的百分?jǐn)?shù));dst_host_diff_srv_rate(不同服務(wù)的百分?jǐn)?shù));dst_host_same_src_port_rate(相同源端口連接數(shù)的百分?jǐn)?shù));dst_host_src_diff_host_rate;dst_host_rerror_rate;dst_host_srv_rerror_rate.
綜上所述,無線網(wǎng)絡(luò)環(huán)境下,信道媒介相對開放,節(jié)點完成數(shù)據(jù)傳播和轉(zhuǎn)發(fā)的過程易受噪音或其他干擾的影響[13].WEP協(xié)議用于保護無線傳輸過程中鏈路級數(shù)據(jù),但其自身安全性并未得到保障,因此,WEP攻擊成為無線網(wǎng)絡(luò)環(huán)境下一種典型的安全隱患.本文通過對攻擊數(shù)據(jù)采集過程進行分析,完成了一個完整的無線網(wǎng)絡(luò)環(huán)境下WEP協(xié)議破解的攻擊過程.通過該攻擊過程,獲取入侵?jǐn)?shù)據(jù)并建立入侵檢測數(shù)據(jù)集,實現(xiàn)了對該入侵行為的分析.
[1]ZHAO Hong-wei,CHENG Yu,LI Zhuo,et al.Design of QoS Architecture in IEEE802.16d[J].Journal of Jilin University:Engineering and Technology Edition,2013,43(3):701-705.(趙宏偉,程禹,李卓,等.IEEE802.16d的服務(wù)質(zhì)量框架設(shè)計 [J].吉林大學(xué)學(xué)報:工學(xué)版,2013,43(3):701-705.)
[2]MENG Chao,SUN Zhi-xin,LIU San-min.Multiple Execution Path for Virus Based on Cloud Computing [J].Journal of Jilin University:Engineering and Technology Edition,2013,43(3):718-726.(孟超,孫知信,劉三民.基于云計算的病毒多執(zhí)行路徑 [J].吉林大學(xué)學(xué)報:工學(xué)版,2013,43(3):718-726.)
[3]ZHU Jian-ming.Security Approaches and Technology for Wireless Networks[D].Xi’an:Xidian University,2004.(朱建明.無線網(wǎng)絡(luò)安全方法與技術(shù)研究 [D].西安:西安電子科技大學(xué),2004.)
[4]WANG Zhi-tao.On Security Analysis of Wireless LAN and Its Prevention Measures[J].Technology Innovation and Application,2012(14):48.(王志濤.淺談無線局域網(wǎng)的安全分析及其防范措施 [J].科技創(chuàng)新與應(yīng)用,2012(14):48.)
[5]WU Yu-cheng,F(xiàn)U Hong-yu.Routing Strategy for Emergency Monitoring of Large-Scale Wireless Sensor Network[J].Journal of Jilin University:Engineering and Technology Edition,2013,43(3):801-806.(吳玉成,付紅玉.用于大規(guī)模無線傳感器網(wǎng)絡(luò)突發(fā)事件監(jiān)測的路由策略 [J].吉林大學(xué)學(xué)報:工學(xué)版,2013,43(3):801-806.)
[6]TIAN Yong-min.Analysis of WLAN Security Mechanism Based on Wireless Network[J].Digital Technology &Application,2011,41(5):69-70.(田永民.基于無線網(wǎng)絡(luò) WLAN安全機制分析 [J].數(shù)字技術(shù)與應(yīng)用,2011,41(5):69-70.)
[7]NIE Xiong-ding,HAN De-zhi,BI Kun.Cloud Computing Data Security [J].Journal of Jilin University:Engineering and Technology Edition,2012,42(Suppl 1):332-336.(聶雄丁,韓德志,畢坤.云計算數(shù)據(jù)安全[J].吉林大學(xué)學(xué)報:工學(xué)版,2012,42(增刊1):332-336.)
[8]Jack Koziol.Snort入侵檢測實用解決方案 [M].吳薄峰,孫默,許誠,等譯.北京:機械工業(yè)出版社,2009.
[9]YE Yu-xin,ZHAO Jian-min,MO Yu-chang,et al.CCA-Based Mining Algorithm of Modules in Complex Networks[J].Journal of Jilin University:Engneering and Technology Edition,2013,43(2):424-428.(葉育鑫,趙建民,莫毓昌,等.基于典型相關(guān)分析的復(fù)雜網(wǎng)絡(luò)模塊挖掘算法 [J].吉林大學(xué)學(xué)報:工學(xué)版,2013,43(2):424-428.)
[10]Park J S,Dicoi D.Wlan Security:Current and Future[J].IEEE Internet Computing,2003,7(5):60-65.
[11]WANG Da-h(huán)u,YANG Wei,WEI Xue-ye.Analysis of WEP Security and Its Solution[J].China Safety Science Journal,2004,14(8):97-100.(王大虎,楊維,魏學(xué)業(yè).WEP的安全技術(shù)分析及對策 [J].中國安全科學(xué)學(xué)報,2004,14(8):97-100.)
[12]LIU Yong-lei,JIN Zhi-gang.Research on Attack to WEP Protocol[J].Computer Engineering,2010,36(22):153-154.(劉永磊,金志剛.WEP協(xié)議攻擊方法研究 [J].計算機工程,2010,36(22):153-154.)
[13]SUN Yan-qiang,WANG Xiao-dong,ZHOU Xing-ming.Jamming Attacks in Wireless Network [J].Journal of Software,2012,23(5):1207-1221.(孫言強,王曉東,周興銘.無線網(wǎng)絡(luò)中的干擾攻擊 [J].軟件學(xué)報,2012,23(5):1207-1221.)