戰爭駕駛就是指使用相應的硬體和軟體打造的無線區域網路偵察平台,通過徒步或利用相應交通工具的方式在各個城鎮的每個街道尋找不設防的無線訪問點(AP)的一種統稱。
基本介紹
- 中文名:戰爭駕駛
- 外文名:WarDriving
- 簡介:使用硬體和軟體打造的偵察平台
- 方式:徒步或利用相應交通工具
來源,什麼是戰爭駕駛,戰爭駕駛需要的裝備,戰爭駕駛設備的組裝,一些防範戰爭駕駛的安全建議,
來源
隨著無線區域網路(WLAN)技術的不斷興起,越來越多的人們通過在家和單位部署無線區域網路,來享受無線網路帶來的樂趣,與此同時,無線區域網路不斷凸顯出來的安全問題也隨之成為人們廣泛關注的焦點。在這些為數眾多的無線區域網路安全問題之中,“戰爭駕駛”恐怕還沒有被廣大的普通無線用戶所關注,這主要是由於許多人對於戰爭駕駛還沒有太多了解所至。
對於戰爭駕駛,戰爭駕駛愛好者可以通過它給自己帶來無窮的樂趣,也給無線區域網路用戶帶來了相應的安全威脅。作為普通的無線用戶,我們也可以通過戰爭駕駛所使用的技術來了解自己所部署的無線區域網路是否安全,並由此找到相應的無線區域網路安全解決之法。
鑒於戰爭駕駛的這些作用,本文將從戰爭駕駛的原理出發,通過一個具體的戰爭駕駛實例來和大家一起討論它是如何進行的,從而了解應當使用什麼方法來防範和降低戰爭駕駛帶來的安全風險,以及如何使用戰爭駕駛的技術來幫助我們找到無線區域網路中的安全弱點。
什麼是戰爭駕駛
我們在這裡所指的戰爭駕駛就是指使用相應的硬體和軟體打造的無線區域網路偵察平台,通過徒步或利用相應交通工具的方式在各個城鎮的每個街道尋找不設防的無線訪問點(AP)的一種統稱。由於這種發現不設防的無線區域網路的方式與以前黑客通過免費電話尋找不設防的拔號網路的戰爭拔號相似,又由於為了尋找更大範圍內的不設防的無線區域網路,通常會駕駛相應的交通工具(如腳踏車或小車)來進行,由此就形像地稱它為戰爭駕駛。
對於戰爭駕駛來說,有時的目的不只是為了找出不設防的無線訪問點這么簡單,戰爭駕駛者還會通過使用GPS設備定位每個開放的無線AP的經緯度,然後通過GPS繪圖軟將這些找到的開放AP按具體的經緯度在GPS地圖中標識出來,並且,還會將這些信息連同無線訪問點的名稱、SSID和無線AP所在機構名稱等信息都公布到網際網路上的相應網站或論壇中。
現在,已經存在許多進行戰爭駕駛的團體,團體成員一般都是某個具體的城市或地域中的戰爭駕駛愛好者,他們會經常團體進行戰爭駕駛活動,然後將找到的不設防的無線區域網路信息公布到相關網路上。這些戰爭駕駛愛好者經常在一些論壇,進行戰爭駕駛經驗交流,以及發布找到的開放的無線區域網路信息。
對於純粹進行戰爭駕駛的愛好者來說,他們的活動僅僅只是為了發現儘量多的不設防的無線訪問點,最多也就是測試一下被檢測到的AP的信號強度,以及通過這些無線AP免費地連線到網際網路上。甚至有些戰爭駕駛愛好者還會通過在網路上公布信息或其它方式,來提醒不安全的無線區域網路用戶進行安全防範。但是,對於不懷好意的以攻擊為樂的人來說,這些不設防的無線區域網路就是他們進行網路入侵和獲取機密數據最好的途徑。
因此,本文的主要目的也只是為了讓無線區域網路用戶對戰爭駕駛有一個清楚的認識,並不是一篇用來講述如何攻擊一個無線區域網路的文章,希望對此有興趣的朋友只是通過戰爭駕駛獲得相應的樂趣,或者通過它來了解自己所在無線區域網路的安全狀況,並為無線安全做出力所能及的貢獻。
戰爭駕駛需要的裝備
要進行戰爭駕駛就必需為此準備下列所示的這些裝備:
1、戰爭駕駛所需的硬體設備
戰爭駕駛的硬體通常是指筆記本電腦或PDA,主要原因是這兩種設備都具有可移動的特點,可以讓戰爭駕駛者隨身攜帶它們走街穿巷。這些硬體設備通常都內置或可外接不同的無線網卡,利用電池供電,並具有強大的數據處理能力,完全能滿足尋找無線訪問點的需求。尤其是現在具有WIFI和GPS功能的手機和PDA的出現,讓戰爭駕駛變得越來越輕鬆,但是,PDA具有的功能卻遠遠比不上筆記本電腦,因此,筆記本電腦仍然是戰爭駕駛最好的設備。本文所描述的內容也只是針對使用筆記本電腦進行戰爭駕駛來說的。
2、戰爭駕駛所需的軟體
進行戰爭駕駛主要是通過各種無線偵察軟體來搜尋使用802.11a/b/g協定,以及即將成為下一代無線區域網路標準的802.11n協定的無線區域網路信號,因而還得為戰爭駕駛選擇相應的無線偵察軟體。就目前來說,市面上出現的無線偵察軟體雖然已經不少,但它們既有免費和商業之分,也有運行的系統平台之分,並且還得了解它們支持哪些類型的無線網卡晶片。因此,我們在選擇需要的無線嗅探軟體時,就必需在了解這些軟體的主要作用和支持的運行平台的基礎上再來進行選擇。
下面,簡單地對三款被廣大戰爭駕駛愛好者使用的無線區域網路檢測軟體做一個簡短的介紹:
(1)、Netstumbler
NetStumbler是一個免費的用來尋找使用IEEE802.11a/b/g/n標準的無線區域網路檢測工具。它支持包括PCMCIA無線網卡在內的絕大多數主流無線網卡,同時,還加入了對全球GPS衛星定位系統的支持。NetStumbler可以用來驗證無線客戶和無線AP的配置是否存在弱點;可以用來檢測干擾無線區域網路信號的原因;可以用來檢測一些沒有經過授權的無線接入點;與GPS配合,還可以用來定位檢測到的不設防的無線AP的具體方位。NetStumbler可以將搜尋到的無線訪問點的SSID名稱、MAC地址、IP位址,以及是否套用了加密等信息全部顯示出來。
NetStumbler可以在Windows98及以上的作業系統版本中運行,它現在的最新版本是NetStumbler0.4.0。
(2)、Ministumbler
MiniStumbler是一個WindowsCE下的無線偵察工個,它可以檢測到使用802.11a/b/g協定建立的無線區域網路。
MiniStumbler實際上就是NetStumbler軟體的精簡版,我們可以使用它來驗證無線區域網路的安全設備,查找無線區域網路信號不能到達的具體位置,檢測是否存在其它無線信息在干擾自己的無線區域網路,還能檢測出已經連線到無線區域網路中的沒有授權的無線訪問終端,以及可以在部署分散式無線區域網路時來幫助各中繼AP之間的最佳連線位置。它還有一個最大的功能就是可以用它來輕便地通過PDA或智慧型手機進行娛樂性質的戰爭駕駛。
目前,MiniStumbler只能在HPC2000、PocketPC3.0,、PocketPC2002和WindowsMobile2003中使用,這樣就限制了它的通用性。如果想使用它來進行戰爭駕駛,就應當選擇支持它的PDA產品。MiniStumbler軟體的最新版本是MiniStumbler0.4.0。
(3)、Kismet
它還能識別無線訪問點和無線客戶中無線適配器的製造商和工作模式,與GPS合作,繪製無線訪問點和無線客戶所在位置的網路地圖,以及可以和更多的其它軟體合作,來擴展這些軟體的套用範圍,例如可以與snort合作作為無線入侵檢測系統。Kismet甚至能檢測出無線網路中安裝有NetStumbler軟體的主機,以此來找到非法無線接入者。
Kismet可以在Linux2.0及以上的發行版本中運行,也可以在Windows2000及以上系統上運行。當Kismet在Linux系統中運行時,我們應當下載它的Kismet-2008-05-R1二進制安裝包,還需要libpcap二進制安裝包檔案,有些Linux發行版本,如Fedora系列默認已經安裝好了。
如果要在Windows2000及以上系統中運行,我們就需要從上述網站中下載setup_kismet_2008-05-R1.exe安裝檔案,還必需下載AirPcap的setup_airpcap_3_2_1.exe檔案來安裝。
不過,在Windows系統下運行,有時不能找到筆記本中內置的無線網卡,而需要重新安裝AirPcap支持的USB接口或PCMCIA接口的無線網卡,因而,我推薦它在Linux系統下運行,這樣又好為Kismet指定無線網卡類型。
實際上,使用筆記本電腦進行戰爭駕駛,NetStumbler和Kismet是必備的二款戰爭駕駛軟體,在進行戰爭駕駛之前,我們一定要將這們準備好,它們的安裝和配置我會在接下來的內容中具體說明。
3、戰爭駕駛所需的無線網卡選擇
戰爭駕駛的另一個必要的條件就是選擇被所使用的無線區域網路檢測軟體支持的無線網卡,最主要的原因就是一個無線區域網路檢測軟體可能只支持一種或幾種使用某種無線晶片的無線網卡。因此,在決定使用什麼樣的無線網路檢測軟體之前,要先了解它支持哪些無線網卡。
在這裡所說的無線網卡類型,並不是指無線網卡的生產廠商,而是指無線網卡所使用的晶片的類型。目前,以下所示的這幾種無線網卡晶片可以用來進行戰爭駕駛:
(1)、Hermes晶片:使用這種無線網卡晶片的廠商有Dell、IBM、Sony和Lucent。
(2)、Prism2/2.5/3晶片:使用這種無線網卡晶片的廠商有Intel、Linksys、Netgear、proxim、SMC和ZOOM。
(3)、Aironet晶片:使用這種無線網卡晶片的廠商只有Cisco。
(4)、Atheros晶片:使用這種無線網卡晶片的廠商有Netgear、D-Link、IBM和東芝。
在選擇無線網卡時,我們還應當確定無線網卡是否支持監控模式,以及目前筆記本電腦上使用的作業系統是否支持設定無線網卡為監控模式。為了能得到最好的兼容性和戰爭駕駛的效果,我們還要確定無線網卡信號的最大功率,以及是否支持其它的擴展功能,例如外接天線等。
4、戰爭駕駛相關的其它硬體
當然,有一些戰爭駕駛愛好者特別喜歡使用PDA或智慧型手機來進行戰爭駕駛,因而,擁有一台可以安裝MiniStumbler或其它相似無線網路檢測軟體的PDA或智慧型手機是最基本的條件。有時,我們在選擇這些手持設備時,選擇一些同時內置GPS功能的設備能省去我們許多不必要的麻煩。很幸運的是,現在這樣的手持設備越來越多,也越來越便宜,這樣就讓戰爭駕駛愛好者多了一種方式選擇。
戰爭駕駛設備的組裝
準備好上述這些與戰爭駕駛相關的必要裝備之後,並不意味著這樣就可以開始進行戰爭駕駛活動了。在進行具體的戰爭駕駛活動之前,我們還必需按一定的要求將這些必要的戰爭駕駛裝備組合起來,達到能滿足進行戰爭駕駛活動的條件。
打造戰爭駕駛設備主要包括無線網卡的安裝,無線嗅探軟體及GPS繪圖軟體的安裝,以及GPS等硬體設備的安裝。這些設備和軟體的安裝都很簡單,尤其是在Windows系統下進行安裝時,只要按安裝程式的提示就可以完成相應軟體的安裝,而硬體安裝只需與筆記本電腦連線正確後,再安裝相應系統平台下的驅動程式就可以。
下面我只描述一下Kismet在Linux系統下的安裝方法,因為它的安裝和配置要比Netstumbler複雜。
在安裝Kismet之前,我們應當已經下載了它的二進制安裝包kismet-2008-05-R1.tar.gz。我使用的Fedora10Linux系統,因此捕包檔案libpcap0.9在安裝系統時已經一同安裝好了,我們可以在系統終端下通過rpm–qlibpcap命令來查看系統上是否已經安裝了這個包檔案。由於是以二進制檔案方式安裝Kismet,因此,還要確保系統中已經安裝了qt-4、gcc和glibc-header等與二進制檔案編譯相關的檔案包。
如果要支持GPS,還需要安裝GPSD軟體,如果要繪製地圖,就需要Imagemagick軟體。GPSD和Imagemagick的安裝都很簡單,就不再在此做詳細的說明。
在安裝Kismet之前,還要了解所使用的無線網卡在Kismet下的表式方式,例如我筆記本電腦上的Intel5100AGN無線網卡,在kismet下以iwl4965表示。無線網卡的表式方式會在配置Kismet時使用以,也只有正確指定了無線網卡在Kismet下的表式方式才能被它識別。
當然,這一切都應該在無線網卡已經被所使用的作業系統正確識別,並安裝好了相應的驅動程式的前提下進行的。
完成上述這些準備工作之後,就可以開始在Linux系統下安裝Kismet。
在本文實例中,我已經將kismet-2008-05-R1.tar.gz保存到了/home/ly/wardrive目錄下,在安裝時,先以根(root)身份登錄系統終端,然後進入/home/ly/wardrive目錄,再按下列步驟完成Kismet的安裝:
1、解壓kismet-2008-05-R1.tar.gz,在系統終端提示符下輸入下列命令:
tar–xzvfkismet-2008-05-R1.tar.gz
2、然後使用cdkismet-2008-05-R1命令進入解壓後的目錄,再在終端提示符下輸入下列命令進行安裝:
./configure
Make
Makeinstall
(1)、suiduser=liuyuan
設定的帳戶最好不是根用戶,可以是系統中原本已經存在的帳戶,也可
以是剛建立的帳戶。
(2)、Source=type,interface,name[,channel]
其中type就是指無線網卡在Kismet下的表式方式,例如我筆記本中的是Intel5100AGN無線網卡用iwl4965來表示;Interface是指無線網卡所用接口的名稱,在Linux系統下很容易就可以指定無線網卡的接口名稱,例如在Fedora10下就以wlan0表示第一塊無線網卡,第二塊無線網卡以wlan1表示,其它的以次類推;name可以是一個用一個好記的名字來代替,例如intel5100;至於channel可以指定也可以不指定。在本例中完成此項設定後的內容為Source=iwl4965,wlan0,intel5100。
(3)、logtemplate=/home/ly/kismetlog/,這裡用來指定Kismet日誌檔案保存目錄。
完成kismet.conf配置檔案的這些設定後,按“Esc”鍵,再按“Shift”+“:”組合鍵,進入VI的命令模式,在命令模式下輸入“wq”,按回車後就可以保存上述設定。
接下來,為了能在GNOME下啟kismet的圖形前端,我們還要修改/var/local/etc/kismet_ui.conf配置檔案中的gui=curses,這樣就能更加直觀地使用Kismet。
完成Kismet的安裝和基本配置後,要想它能夠正常工作,我們還應當對無線網卡按下列方式進行設定:
ifconfigwlan0down#先閉無線網卡
iwconfigwlan0modemonitor#設定無線網卡為監控模式
ifupwlan0up#重新啟用無線網卡
完成無線網卡的這些設定後,就可以在系統終端下輸入Kismet命令運行它了。
Netstumbler在WindowsXP下的安裝非常簡單,要使用它必需在系統上安裝Winpcap捕包檔案,如果在安裝Netstumbler之前沒有安裝這個包檔案,那么在安裝Netstumbler的過程中會提示是否安裝Winpcap的最新版本,此時,直接單擊安裝就可以了。
如果還要使用GPS設備來定位和繪製無線AP地圖,那么,就應當在筆記本上安裝所使用的GPS的驅動程式和繪圖軟體。如果是在Linux系統下使用Kismet來進行戰爭駕駛,那么可以安裝GPSMAP軟體就能夠完成無線AP地圖的繪製。如果是在Windows系統下通過Netstumbler來進行戰爭駕駛,那么可以安裝Stumbverter來繪製GPS地圖。
在使用Stumbverter來繪製無線AP地圖時,我們應當將Netstumbler產生的“.nsl”檔案轉換成Wi-Scan格式,以及將Kismet產生的“.CSV.GPS.XML”檔案轉換成Wi-Scan格式。能夠將Netstumbler和Kismet產生的檔案轉換成Netstumbler所支持格式的軟體還有Warglue軟體。
一些防範戰爭駕駛的安全建議
現在,我們了解了戰爭駕駛是如何進行的,也應該認識到了它所帶來的安全風險。對於純粹性質的戰爭駕駛來說,最多只是利用我們開放的無線AP連線網際網路,但是,對於一些不懷好意的攻擊者來說,他就可以通過此得到我們計算機上的隱私信息,或者控制我們的計算機進行其它的網路攻擊活動。這些都是我們無法忍受的,因此,我們必需通過一些安全措施來防止這種事情在我們身上發生。
對於防範戰爭駕駛來說,我們可以從兩個主要方面出發:其一就是防範戰爭駕駛發生在我們的無線區域網路之上,其二就是通過一些手段來及時發現和減少戰爭駕駛帶來的危害。第一種方法主要在構建無線區域網路時進行,主要用來減少被戰爭駕駛的可能,第二種方法通常在無線區域網路運行當中進行,主要用來及時發現非授權的非法無線接入終端,防止無線攻擊事態進一步發展,降低戰爭駕駛帶來的風險。我們不可能就這么輕易地將無線AP無償地奉獻給沒有授權的人使用,下面我們就來了解如何實現這兩種防範戰爭駕駛的具體安全措施。
1、防止我們的無線區域網路被戰爭駕駛
要防止我們的無線區域網路被戰爭駕駛,我們就應當按下例給出的方式來加固我們的無線區域網路:
(1)、儘管一些基本的無線區域網路安全防範措施不能起到最好的效果,但是隱藏無線區域網路的SSID號,使用WEP或WPA加密,實施MAC地址過濾,進行802.1x認證,以及禁止以單機adhoc模式接入網路總是應該完成的基本安全措施。
(2)、從戰爭駕駛的方式我們可以知道,尋找不設防的無線區域網路的先決條件,就是要檢測到無線區域網路的無線信號。要是我們能夠將無線信號控制在一定的範圍之內,那么,攻擊者就不可能在這個範圍之外檢測到無線信號了,這樣也就減少了被攻擊的風險,這要比其它的安全方式要來得好得多。
目前,我們可以使用專門的無線信號禁止設備來限制無線區域網路信號範圍,還可以使用一種神奇的能禁止802.11a/b/g及藍牙等無線信號的油漆來控制無線信號在一定的範圍內有效,這種神奇的油漆名叫defendairradioshield。
(3)、在設計和部署無線局域時,我們應當慎重考慮無線區域網路信號的有效範圍,選擇的安裝無線AP的位置既要滿足正常無線用戶網路連線的需求,又要減少無線信號對外的泄漏範圍。我們可以通過本文中給出的戰爭駕駛方法來實驗無線AP最佳的安裝位置。
2、檢測戰爭駕駛的方法
我們可以通過下列方法來發現無線區域網路中是否有非授權的無線接入終端:
(2)、在無線區域網路的無線AP之前接入專門的無線防火牆,來防止非授權無線終端的接入。
(3)、使用Kismet可以檢測到附近是否有通過Netstumbler的主機存在,這主要是利用Netstumbler傳送的數據包特徵來檢測。
(4)、通過在無線區域網路主機中安裝OmniPeek之類的無線區域網路監控工具,可以實時監控無線區域網路中正常存活的無線終端狀況,並能實時發現非授權的無線接入終端。
(5)、在無線區域網路中套用網路訪問控制設備,強制無線終終端的接入。
由於無線區域網路本身設計的開放性和不安全性,因此,我們必需在完成必要的無線安全加固措施之後,還可以通過戰爭駕駛的方法來檢測安全加固後的無線區域網路是否真的能防範這些無線攻擊方法的威脅,證明它的完全性後才能將無線區域網路交付使用,並且在無線區域網路的運行過程中對它進行實時監控。
總的來說,我們可以按照本文所示的方法來進行娛樂性質的戰爭駕駛,也可以通過戰爭駕駛來檢驗自身所在無線區域網路的安全性。無論使用戰爭駕駛進行哪種活動,我們都應當堅持從安全形度去考慮它的使用。