現(xiàn)在的無線網(wǎng)絡都是基于WPA/WPA2安全性標準,WPA(即WiFi Protected Access,WiFi網(wǎng)絡安全存取)可以有效保護無線網(wǎng)絡的數(shù)據(jù)安全,提高介入控制的安全性級別,通過采用TKIP(臨時密鑰完整性協(xié)議),建立一種動態(tài)密鑰機密和相互驗證的安全機制,使用密鑰與網(wǎng)絡上的不同設備的MAC地址及更大的初始化向量合并,讓每個網(wǎng)絡節(jié)點都使用一個不同的密鑰流對其數(shù)據(jù)進行加密,之后TKIP會使用高強度加密算法對數(shù)據(jù)進行加密,而且TKIP修改了常用的密鑰,有力地保證了網(wǎng)絡的安全性。
WPA的特點之一是使用動態(tài)密鑰,密鑰時刻處于變換中,因此WPA是目前無線網(wǎng)絡安全性最高級別之一。WPA包 含WPA-PSK和WPA-Enterprise兩個版本,前者主要針對小型網(wǎng)絡設計,其使用名為PSK(即Pre-Shared Key,預共享密鑰)的密碼,該密碼越復雜,無線網(wǎng)絡的安全性就越高。后者用于提高企業(yè)網(wǎng)的安全性,WPA提供了完整性檢查功能,來確保密鑰未受到惡意攻擊,加強了用戶認證功能,包含了對802.1X和EAP可擴展協(xié)議的支持,其中的EAP用于驗證過程中的消息交換,它通過外部的RADIUS遠程驗證撥入用戶服務,對無線用戶進行安全認證,也可以在以太網(wǎng)中使用RADIUS協(xié)議自動更改和分配密鑰。
WPA2是第二代WPA,其向后兼容于支持WPA的產(chǎn)品,兩者主要區(qū)別在于WPA2使用更加高級的加密算法對數(shù)據(jù)加密,WPA2也分 為WPA2-Enterprise和WPA2-Personal版本。在常見的無線路由器設置界面中,在無線安全模塊里,可以采用WPA-PSK或者WPA2-PSK安全模式,并分別提供了AES和TKIP等加密規(guī)則可供選擇。同TKIP相對較弱的加密功能相比,AES 是一個迭代的、對稱密鑰分組的密碼,它可以使用128、192 和256 位密鑰,并且用 128 位(16字節(jié))分組加密和解密數(shù)據(jù)。
AES提供了比 TKIP更加高級的加密技術(shù),而且在使用TKIP算法時路由器的吞吐量會下降得比較嚴重,所以一般都是選擇AES加密規(guī)則。WPA雖然安全性很高,加強了生成加密密鑰的算法,即使攻擊者收集到了分組信息并進行分析,也很難算出通用密鑰,但是其并非無懈可擊,因為它采用了較為薄弱的加密算法,攻擊者只要監(jiān)聽到數(shù)量夠多的數(shù)據(jù)包,憑借著功能強悍的破解工具,也可以突破TKIP的保護,破解并侵入無線網(wǎng)絡。
例如黑客使用Aircrackng、Cowpatty等工具,通過進行Deauthenticate驗證攻擊,迫使AP和客戶端重新進行握手驗證來截獲握手驗證數(shù)據(jù)包,當?shù)玫轿帐謹?shù)據(jù)包后,攻擊者會使用密碼字典,執(zhí)行WPA-PSK的密碼破解操作,根據(jù)密碼的復雜度,破解時間可以是幾分鐘、幾小時或者數(shù)天不等,只要攻擊者有耐心,破解無線網(wǎng)絡并非難事。值得說明的是,Deauthenticate功能往往需要多次進行才能成功,對數(shù)據(jù)包進行反復攔截,會造成在攻擊進行過程中,目標AP和無線客戶端之間無法正常通訊,出現(xiàn)頻繁斷網(wǎng)的情況。即使對于安全性更高的WPA2標準,仍然存在被破解的風險,例如在Ubuntu下,使用特定的無線網(wǎng)卡(例如Linksys USB網(wǎng)卡),配合最新版本的Airdump-ng程序,利用Deauth驗證攻擊,同樣可以截獲WPA2握手數(shù)據(jù)包,黑客利用密碼字典,對數(shù)據(jù)包進行破譯,完全可以破解其密碼。值得注意的是,在執(zhí)行針對WPA2的Deauth攻擊時,為了保證成功率需要進行反復攔截,很可能導致目標AP和別的客戶端頻繁斷網(wǎng),對于低端的AP必須重啟才行。使用Wireshark等工具,對截獲的WPA2-PSK-AES數(shù)據(jù)包進行分析,可以清楚其采用的是AES加密規(guī)格,密鑰的長度為16,對 WPA2-PSK-PKI數(shù)據(jù)包進行分析,看以看到其采用的是RC4加密規(guī)格,密鑰長度為32。

圖1 測試密碼安全性
大量的黑客入侵案例證明,WPA/WPA2安全標準并非堅不可摧,我們必須采取各種措施來強化無線網(wǎng)絡的安全性。最重要的是在WPA/WPA2上設置復雜的密碼,不給黑客可乘之機。當黑客破解無線網(wǎng)絡時,會有針對性地制作一些密碼字典,黑客需要利用這些密碼字典來破解無線網(wǎng)絡密碼。因此,在設置密碼時,要遵循一些方法和技巧。例如密碼的長度要超過8位,盡量不要使用固定的單詞、人名、詞組、生日等規(guī)律性較強的密碼,密碼中應該同時包含3種以上的大小寫字母、特殊符號等元素,要養(yǎng)成定期更換密碼的習慣,增大黑客破擊的難度。
其實,在實際設置密碼時,我們經(jīng)常采用字符串加數(shù)字的方式,例如對于“beijing19810109” 來 說,黑客破解起來并不復雜,如果將其中的字母和數(shù)字混編起來,例如將其修改為“1b9e8i1j0i1n0g9”,其密碼強度就大大提高了。要想依靠字典破解這樣的密碼,恐怕需要花費很長的時間。很多用戶習慣于設置某個單詞作為密碼,其安全性就比較低。例如對于“helloworld”來說,破譯起來就很簡單。如果將其中的某些字母進行替換處理,例如將“h”替換為“in”,第一個“o”替換為“()”,“w”替換為“1vi”,第二個“o”替換為“@”,“r”替換為“7”,“d”替換為“/v”。那么修改后的密碼就會變成“inell()1vi@7l/v”,無疑會大大提高密碼的復雜度。如果對較長的密碼進行此類替換修改,黑客就得花費幾年甚至更長時間進行猜測破譯。
在設置密碼之前,最好對其強度進行測試,例如打開網(wǎng)址“http://www.microsoft.com/zh-cn/security/pcsecurity/password-checker.aspx”,在密碼檢測器頁面(如圖1所示)中的“password”欄中輸入密碼,在“Strength”欄中顯示以色彩和說明文字表示該密碼的強度,例如綠色表示很弱,黃色表示一般,綠色表示強壯。例如對上述“inell()1vi@7l/v”密碼進行測試,顯示綠色的“Strong”字樣,表示其是合格的密碼。當然,對于14位以上并且使用三種或者四種字母、數(shù)字、特殊字符組合的密碼,會顯示“Best”字樣,表示其為最佳的密碼。對于普通的個人用戶來說,在設置WPA/WPA2密碼時,其強度應該達到“Strong”級別,對于安全性要求很高的企業(yè)網(wǎng)來說,其密碼強度應該達到“Best”級別。
在黑客對無線網(wǎng)絡進行破解時,往往出現(xiàn)快速破譯WPA密碼的情況。按照常見的方法,黑客會先有針對性地建立密碼字典,之后對攔截的數(shù)據(jù)包進行破解,而很多用戶的安全觀念并不強,往往使用生日或者簡單的單詞作為密碼,這樣就很容易被破解。不過,按照字典破解的效率來說,其破解速度是很有限的,例如當用戶采用由小寫字母和數(shù)字組成的密碼,假設黑客破解的效率是每秒測試1000個密碼的話,那么理論上其需要26天的時間,才可以破解密碼。如果用戶的密碼長度為10位的話,理論上黑客需要117000年才可以破譯。
因此,如果用戶采用復雜密碼的話,按照常規(guī)的破解方法,黑客是無法破譯密碼的。 打 開“http://lastbit.com/pswcalc.asp”,在 其中的“Password length”欄中輸入密碼長度,在“Speed”欄中輸入破譯的速度,單位為密碼 數(shù)/秒。在“Number of computers”欄長輸入主機數(shù)量,一般為單機,在其下選擇密碼的組成,包括小寫字母、大寫字母、數(shù)字、標點符號、全ASCII等,點擊“calculate!”按鈕,可以測出破解所需要的時間。
當然,抗擊非法破解的最有效的方法是強化WPA/WPA2密碼強度,在黑客制作WPA密碼表時,其設計的密碼只包括數(shù)字、字符、標點符號等。我們反其道而行之,在密碼中加入不可直接輸入的非常規(guī)字符,例如利用輸入法提供的軟鍵盤,在密碼中輸入“★○◆□”等特殊的符號,那么WPA/WPA2的密碼強度無疑會大大提高,即使黑客使用WPA密碼表對其進行破解也毫無辦法。
因為在建立WPA密碼表是必須獲得目標AP的SSID標識符,所以為了安全起見,可以每隔一段時間,對SSID進行一次修改,同時更改WPA/WPA2密碼。很多無線產(chǎn)品會默認使用品牌的名字作為 SSID,例如 Mercury,TPLink等,應該及時對其進行修改。為了安全起見,不要使用歸于簡單的單詞作為SSID名稱,應該使用不太常用的單詞或者組合詞作為其名稱。對于安全性要求較高的企業(yè)網(wǎng)來說,可以采取在無線網(wǎng)絡中部署RADIUS、VPN等安全認證體系,對登錄的用戶盡行必要的安全認證,來提高無線網(wǎng)絡的安全性。
接下來介紹如何組建和使用無線VPN,VPN全稱是Virtual Private Network,即虛擬專用網(wǎng),VPN可以建立私有的安全通信信道,使遠程用戶可以穩(wěn)定安全地連接到企業(yè)內(nèi)網(wǎng)中,VPN網(wǎng)絡由虛擬專用網(wǎng)服務器、VPN客戶端、LAN遠程訪問及隧道協(xié)議等組件構(gòu)成。對于普通的AP來說,因為其采用無線傳播的方式,在眾多的監(jiān)聽和破解工具面前,其安全性無法得到保證。為此,可以將AP放置到內(nèi)網(wǎng)的某一網(wǎng)段中,并使用防火墻將該網(wǎng)段保護起來,其作用是避免內(nèi)網(wǎng)的其他網(wǎng)段用戶與該AP建立非法連接,讓目標可以使用虛擬專用網(wǎng)軟件,來和該AP建立連接,這樣無線網(wǎng)絡的安全性可以得到明顯提高。
如果在內(nèi)網(wǎng)中存在DMZ非軍事化區(qū),作為非安全系統(tǒng)和安全系統(tǒng)之間的緩沖區(qū)的話,也可以將AP放置到該區(qū)域中。基于無線的VPN和傳統(tǒng)的有線網(wǎng)絡VPN很相似,所不同的是其通過AP或者無線路由器的中轉(zhuǎn),讓外部客戶可以通過VPN連接到內(nèi)網(wǎng),來訪問內(nèi)網(wǎng)資源,將虛擬專用網(wǎng)和無線AP結(jié)合起來,可以用多種模式來實現(xiàn)。例如,可以將AP連接到某臺服務器的接口上,使用Windows內(nèi)置的虛擬專用網(wǎng)絡軟件擴展無線通訊的范圍,其優(yōu)點是無需增加額外的硬件成本,實現(xiàn)起來很容易,缺點是增加了現(xiàn)有服務器的負擔。
也可以采用內(nèi)置了虛擬專用網(wǎng)網(wǎng)關(guān)服務的無線AP,即將普通AP和虛擬專用網(wǎng)功能集成在一起,這樣布設安裝配置管理都比較簡單,讓每個無線連接都通過虛擬專用網(wǎng)實現(xiàn)連接,加密安全性得到了有力保證。缺點是需要購買價格昂貴的設備,無法滿足新的無線局域網(wǎng)的需求等。也可以在DMZ非軍事區(qū)指定一個服務器,專門處理和無線連接、VPN網(wǎng)關(guān)、防火墻信息、開啟關(guān)閉無線網(wǎng)絡相關(guān)的管理事務。在DMZ中增加一個虛擬專用網(wǎng),可以提高機密信息傳輸?shù)陌踩浴?/p>
這里為簡單起見,介紹在Windows Server 2003中組建無線VPN服務器的方法。打開路由和遠程訪問服務器程序,點擊下一步按鈕,在向?qū)Т翱谥羞x擇“遠程訪問(撥號或VPN)”項,在下一步窗口中選擇“VPN”項,點擊下一步按鈕,在VPN連接窗口中選擇外部工作網(wǎng)卡,在下一步窗口中選擇“來自一個指定的地址范圍”項,來設定VPN客戶在執(zhí)行遠程訪問后獲得的IP地址。如果有DHCP服務器的話,可以選擇“自動”項,在下一步窗口中設置所需的IP范圍,例如192.168.10.10到192.168.10.50等,在下一步窗口中選擇“否,使用路由和遠程訪問來對連接請求進行身份驗證”項,點擊完成按鈕,完成對PPTP VPN服務器設置操作,之后系統(tǒng)會自動啟動路由和遠程訪問服務。
為了便于客戶端連接到內(nèi)網(wǎng)中的VPN服務器,需要對無線路由器進行必要的設置。在路由器設置界面中選擇對應的上網(wǎng)方式,包括撥號上網(wǎng)、小區(qū)寬帶和專線上網(wǎng)等。在LAN口設置模塊中,設置路由器在內(nèi)網(wǎng)中的IP地址,例如192.168.0.1等。為了便于客戶端使用,需要將內(nèi)網(wǎng)中的VPN服務器映射到外網(wǎng),在虛擬服務器模塊中將內(nèi)網(wǎng)VPN的1723端口映射到外網(wǎng),因為PPTP服務使用的是該端口。為了防止黑客的攻擊,有些路由器還可以設置允許訪問該映射的時間段,可以將其設置為白天時間段,避開黑客活動頻繁的夜晚時間段。這樣,內(nèi)網(wǎng)的VPN服務器就被映射到了外網(wǎng),客戶端只要連接該無線路由器,就可以通過其訪問內(nèi)部的VPN服務器。當然,事先應該建立連接的賬戶名,為其設置密碼,并在其屬性窗口中的“撥入”面板中的選擇“允許訪問”項。
在客戶端的電腦上新建一個網(wǎng)絡連接,選擇“連接到工作區(qū)”項,在下一步窗口中選擇“通過Internet使用虛擬專用網(wǎng)絡(VPN)來連接”項,在下一步窗口中輸入目標主機名稱或者IP地址以及連接的名,并設置連接用戶名和密碼,完成連接項目的創(chuàng)建操作,雙擊該連接項目,就可以連接到目標 VPN 服務器。當連接成功后,在CMD窗口中執(zhí)行“ipconfig”命令,可以顯示本機無線網(wǎng)卡當前的和與遠程VPN服務器建立連接后獲得的IP地址。在VPN服務器上打開路由和遠程訪問控制臺界面,在端口列表中雙擊狀態(tài)為“活動”的端口。可以查看登錄用戶名、驗證狀態(tài)、登錄時間、數(shù)據(jù)包傳輸狀態(tài)、使用的IP等信息。當然,這是最常見的PPTP VPN的實現(xiàn)方法,其他的更加高級的IPSEC、L2TP、SSL VPN的實現(xiàn)方法與之類似。
我們一般認為,VPN環(huán)境已經(jīng)具有相當高的安全性,可以保證數(shù)據(jù)安全穩(wěn)定的傳輸,不過事實卻沒有這么簡單,不管對于最常用的PPTP和強化的IPSec VPN,還是大型網(wǎng)絡使用的SSL VPN來說,不管是有線還是無線環(huán)境,都面臨著各種惡意攻擊的威脅。例如,對于無線PPTN VPN環(huán)境來說,黑客會使用Zenmap等工具來掃描VPN設備,并利用ettercap等工具攔截VPN交互數(shù)據(jù)包,在其中包含了用戶名和加密的Hash信息。黑客使用asleap等工具,配合密碼字典,可以破譯攔截的數(shù)據(jù)包,獲得VPN連接密碼。
對于安全性更高的IPSec VPN來說,黑客會使用諸如IPsecScan等專用工具,來掃描特定的地址段,探測使用IPsec的設備。利用IKE-Scan,可以對目標IP進行深度探測分析,獲得其加密方式、PSK預功效驗證、操作系統(tǒng)類型等相關(guān)數(shù)據(jù)。利用Cain等工具,對攔截的PSK預共享驗證散列進行破解,得到賬戶名密碼等信息。因為破解操作需要使用密碼字典,因此為了抗擊黑客入侵,需要為連接用戶設置強悍的密碼,讓黑客無從破解。為了提高安全性,最好將PPTP VPN升級到安全性較高的SSL VPN,為了防止ARP等,需要在服務器上安裝各種安全軟件,配置防火墻規(guī)則來保護其安全。