0x01 WiFi簡介
智能手機的快速發展已將近十年左右,較之舊款的非智能手機,最大的區別應該是在于其強大的上網功能。在4G技術已經普及的今天,無奈國內的電信運營商們把移動聯網流量的價格抬的讓人無法深愛,加之家庭用戶和企業用戶對于物理網絡線纜的愈發嫌棄,WiFi技術的飛速發展給大家帶來了另一種暢游網絡的便捷。人們已經習慣于保持手機的WiFi功能打開狀態,習慣于走進一個理發店小飯館先找找墻上哪里貼著WiFi賬號密碼的標簽紙。但是便捷帶來的不僅是使用的方便,還有常被人忽視的安全隱患。
? 我們先解釋一下WiFi這個名詞。WiFi普遍的定義是一種允許電子設備連接到一個無線局域網(WLAN)的技術,有些WiFi設置成加密狀態,也有些WiFi是開放的、不需要密碼即可接入的。最常見的WiFi信號來自于無線路由器,無線路由器如果本身連接到了互聯網,那么它也可以被稱為熱點。WiFi其實就是一種把有線上網的方式轉變為無線上網方式的技術,幾乎現在所有的智能手機、平板電腦和筆記本電腦都具備WiFi接入功能。
WiFi技術是眾多無線通信技術中的一個分支,常見的無線通信技術還包括3G/4G這類基于通信基站的移動通訊技術、藍牙、紅外線連接、NFC近場通訊、射頻技術等,嚴格的講“無線網”這個名詞并不單指WiFi。在本系列文章中,我們主要介紹有關WiFi安全的知識,其他的無線通信技術暫不討論。
在這里有必要特別說明,WiFi這個名詞實際是代表了工業界成立于1999年的一個組織,稱為Wi-Fi聯盟,這個聯盟致力于解決符合IEEE 802.11標準的網絡通信產品生產以及設備兼容性的問題。久而久之人們習慣于用WiFi這個名詞代表了無線局域網(WLAN)技術。隨著科技的發展和人們對于網絡的更高需求,IEEE 802.11標準衍生出來了很多的版本,為了便于大家的理解,我們列出了如下表所示的各版本基本信息:
標準說明802.11
發表于1997年,速率2Mbit/s,2.4GHz頻道802.11a
發表于1999年,速率54Mbit/s,5GHz頻道Q802.11b
發表于1999年,速率11Mbit/s,2.4GHz頻道802.11c
符合802.11D的媒體接入控制層MAC橋接802.11d
根據多國無線電管理規定作出的調整802.11e
支持服務等級QoS802.11f
基站互連802.11g
速率54Mbit/s,2.4GHz頻道802.11h
調整無線覆蓋半徑802.11i
補充安全與鑒權方面802.11n
多重I/O和40Mbit/s通道寬度,是a/g版本的延伸
除了表中列出的版本,IEEE 802.11還有一些改進型的技術,例如802.11g+或者802.11b+。不同的版本是針對不同的使用需求所做出的調整,對于我們目前常見使用的無線路由器或AP(無線接入點)等網絡產品,IEEE 802.11b/g/n/ac版本的標準已經滿足日常使用需求,并且主流無線網絡設備均兼容這幾個版本。為了讓大家清楚直觀的了解這些版本的主要區別,請看下圖:
? 熟悉物理學中電磁知識的讀者可能比較容易理解覆蓋范圍的問題,無線電頻率越高,信息傳輸率就越高,但由此帶來的電波衍射能力也就越低,因為頻率越高波長越小,物理障礙能夠大大衰減信號強度。在目前家庭用戶的實際使用中,802.11b/g/n/ac的使用率最高,已經成為速度和可用性平衡度最高的版本。WiFi信號的這種覆蓋特性決定了其應用場景,主要有家庭網絡、校園網絡、企業內部網絡、區域范圍智能設備控制網絡、各類公共場所等。
? 前面我們說到,WiFi的這種技術實際是無線替代有線的作用,所以WiFi的網絡結構與傳統有線局域網的區別并不大,下圖展示了WiFi網絡的常見結構:
? 家庭網絡的結構通常沒有上圖所示那么復雜,但基本架構不變。上圖的AP(Access Point)即相當于無線路由器的作用,有線網絡通過無線路由器等設備,自行建立一個無線局域網環境,使得具備無線接入功能的設備以無線方式接入路由器內網,通過路由器實現上網功能。AP以每100ms一次的頻率由Beacons(信號臺)將無線網絡的SSID(Service Set Identifier)發射出去,確保覆蓋范圍內所有的無線客戶端能夠收到這個SSID廣播封包,并依據無線客戶端的需求決定是否要和此AP進行網絡連接。通俗來說,就是無線路由器不斷發射自己的“網絡名字”出去,無線客戶端的無線網卡接受到這個含有名字信號的才具備接入網絡的基本條件。
0x02 WiFi網絡的硬件組成
無線網絡主要由基本服務單元(BSS)、站點(station)、接入點(AP)、擴展服務單元(ESS)組成。這里特別說明,在破解WiFi密碼的過程中,BSS可以簡單理解為無線路由器的MAC地址,站點就是已經連接到無線路由器的手機、平板等無線終端設備,接入點AP指無線路由器本身,ESS常見的表現形式是SSID,也就是大家給無線路由器信號設置的網絡名稱。
組建一套基本的WiFi網絡環境,最常見的就是無線路由器和具備無線網卡的上網終端。無線路由器和無線網卡將傳統的有線局域網絡轉變為方便人們使用的WiFi網絡。這里我們著重介紹這兩種網絡設備。下圖就是典型的無線路由器的外觀圖片:
? 無線路由器和普通的有限路由器并沒有本質上的不同,額外多出的天線,將網絡信號以無線電方式向外發送出去。無線路由器可以視為是將單純的無線接入點和路由器二合一的擴展類產品,現在通常具備有DHCP服務器、支持VPN、支持內網帶寬管理和DDNS功能、網絡地址轉換(NAT)等。
無線網卡可以是單獨的一個設備,也可以集成在例如手機、平板電腦、筆記本電腦等具備無線聯網功能的終端中。市場上常見的無線網卡有USB接口和PCI接口兩種,下圖是一個USB接口的無線網卡的外形:
無線網卡的功能比較簡單,連接終端后以無線電的形式與無線路由器相配合,接收與發送網絡信號,形成網絡通信媒介。無線路由器和無線網卡的通信都基于802.11標準,都可以接收和發送網絡信號。在我們后續討論的基于WiFi的安全技術中,無線路由器和無線網卡扮演了最重要的角色,幾乎一切的破解過程,都在于如何建立這兩種設備的通信連接。
網絡設備的生產商不會只局限于生產某一種設備,同品牌的無線路由器和無線網卡產品在市面上層出不窮,擴展功能也是創新不斷。目前國內流行的無線網絡產品品牌有TP-LINK、D-LINK、美國網件、水星、騰達等等。在這里我們需要說明,并不是同品牌的無線路由器和無線網卡相配合就能達到更好的破解效果。在WiFi安全技術中,最在意的是802.11標準的版本、無線網卡的芯片、無線路由器和網卡的發射功率等。
在具有針對性的WiFi網絡入侵案例中,無線設備的發射功率是一個重要的考量標準。如何在更遠的距離上獲取更穩定可靠的通信線路一直是無線黑客們追求的目標。在這里,就不得不簡單的介紹一下天線技術,也就是我們常見的各類無線設備發射接收信號用的天線。
無線網絡設備的天線有外置式的,比如上圖中伸出的天線,也有內置式的,比如集成在手機里的天線。天線分為全向天線和定向天線兩種,簡單可以解釋為,全向天線的信號發射沒有固定方向,在一定范圍內全覆蓋,比如我們常用的家用路由器上伸出的兩根天線。全向天線的好處是在覆蓋范圍內幾乎所有角落都能有信號,缺點就是覆蓋范圍的半徑不會很大,因為發射的功率是360度全向散開的。定向天線一般用于工業控制和特殊需求的應用場所,是一種固定方向發射無線電信號的天線。不同于全向天線,定向天線一般發射功率較高,能夠在較遠的距離上接收和發射無線電信號,但信號傳播方向比較狹窄,需要在固定的方向上安置對應的無線設備。在做WiFi破解的時候,選擇合適的天線類型是每一個安全人員必須要考慮的問題。如果在淘寶上搜索『卡皇』、『蹭網卡』等關鍵詞,所謂的大功率網卡(例如拓實等品牌)一般都是定向天線。
在這里需要提醒大家的是,所謂的大功率蹭網卡,雖然裝備有定向天線,發射功率也比較大,但很多時候并不適用于連接較遠距離的無線路由器或者AP。無線網絡通信的穩定與速率也在于無線路由器或者AP本身的發射功率。大家知道無線電在空氣中傳播,尤其遇到障礙物后信號強度會顯著衰減,距離越遠、障礙越多,有效傳輸距離越近。所以即使購買了所謂的卡皇等定向無線網卡,能夠搜索到遠處更多的無線熱點信號,也不一定能夠建立有效連接,對方的無線路由器或AP的功率造成了這樣的限制。
0x03 必知的一些名詞和術語
SSID:Service Set Identifier,服務集標識符。用來標識某一無線局域網的唯一標識符,無線客戶端用它入網后與接入點進行通信。SSID是人為可設置的,大家在設置無線路由器的無線信號時,自定義的無線網絡名稱就是SSID。SSID的存在可以將無線局域網劃定為一個SSID名稱對應一個密碼,形成專用的一組認證機制。只有匹配成功的SSID名稱和密碼才能使無線客戶端接入對應的無線網絡。SSID信號由無線路由器或者AP進行向外發射。
WAP:Wireless Application Protocol,無線應用協議,利用它可以把網絡上的信息傳送到移動電話或其他無線通信終端上。
AP:Access Point,無線訪問點或接入點??蛻舳诵枰B接AP才能獲得登錄互聯網的能力。具備路由功能的AP就是一個無線路由器。 WEP:Wired Equivalent Privacy,802.11定義下的一種加密方式,是常見的一種無線網絡的認證機制。這種加密認證機制基本已經被淘汰,是一種WiFi早期使用的加密方式,目的是給無線網絡傳輸中的數據內容進行加密。WEP特性里使用了RSA數據安全性公司開發的rc4 ping算法。
WPA:WiFi Protected Access,常用的無線網絡認證機制之一,有WPA和WPA2兩個標準,并且分為個人和企業的WPA-Personal和WAP-Enterprise兩種。它是為了完善WEP加密方式的安全性不足應運而生的一種加密方式。
Station:站點,網絡最基本的組成部分,通常指接入網絡的無線客戶端,例如手機、筆記本電腦、平板電腦等。
BSSID:基本服務單元ID,在無線安全審計軟件中通常顯示為接入點的MAC地址。SSID和BSSID不一定一一對應, 一個BSSID在不同的信道上面可能會對應到多個SSID,但在一個信道上它們是一一對應的。
信道:Channel,是對頻段的進一步劃分,比如2.4G的頻段范圍再劃分為幾個小的頻段,每個頻段稱為一個信道,處于不同傳輸信道上面的數據,如果覆蓋范圍沒有重疊,那么不會相互干擾。信道選擇可讓設備自動進行,大家可以將網絡通信鏈路想象為高速公路,那么信道就是高速公路上的各個車道。
信道寬度:Channel Width,例如有20MHz、40MHz等,表示一個信道的寬度。
抓包:將網絡傳輸發送與接受的數據包進行截獲、重發、編輯、轉存等操作,在我們討論的WiFi安全中,通常指無線數據包的截取等。
0x04 簡單案例、防護提醒
家庭無線網絡被攻破:
目前幾乎每個家庭都有WiFi網絡,已經成為生活中不可缺少的一部分。由于家用無線路由器的信號范圍能夠達到幾十米,那么周圍的鄰居、樓下停車場的路人都有可能搜索到網絡信號。部分以蹭網下載為目的的人員很有可能破解家庭WiFi密碼,達到接入家庭網絡后利用帶寬進行大流量下載工作。如果攻擊者具有其他目的,也很有可能在攻破WiFi網絡后利用抓包,嗅探等后續的內網滲透方式攻擊家庭內部的客戶端,包括手機、筆記本電腦等,獲取敏感的賬號密碼信息,對家庭成員的財務、隱私等造成損失。
企業無線網絡被攻破:
如果一個企業的無線網絡被攻破,通常情況下,攻擊者能夠順利的加入內網環境,訪問公司內部網絡敏感資源,或者直接滲透進入敏感部門人員使用的計算機獲取重要文件等。攻擊者同樣也可以進行上傳木馬、服務器提權等一系列的攻擊手段。
WiFi的安全問題并不只有上述兩種危害,在這里給大家先行提醒幾個降低WiFi安全隱患的幾點建議:
- 手機在不用WiFi時將WiFi功能關閉,需要時手動打開,可以避免連接設有陷阱的公共釣魚WiFi信號,造成手機存儲的一些敏感數據被盜。
- 避免在公共場所,例如火車站、機場、商場等地使用密碼公開的公用WiFi。此時你和不懷好意的攻擊者處于統一內網,很容易被進行釣魚或者網絡劫持。
- 自用的WiFi,SSID最好設置成中文名稱,可以減低被破解的風險,因為國外的很多破解軟件并不支持中文,會存在亂碼問題。
- 自用的WiFi密碼一定要設置的足夠復雜,甚至像亂碼一樣,避免使用12345678這類弱口令,以及和家庭成員有關的密碼設置,比如手機號、門牌號、姓名拼音等作為密碼。
- 經常查看無線路由器的管理頁面,查看有沒有非授權用戶接入自己的WiFi網絡。
- 如果可能,在公共外出場所盡量使用手機數據流量進行上網,尤其是使用支付寶、登錄某種賬戶等操作時,免費的WiFi總有可能會帶來不安全的因素。
?
?