無線安全 - 快速指南



無線安全 - 概念

在本教程中,您將踏上探索無線通訊不同方法的旅程。您將瞭解大多數人所熟知的**無線區域網**(WLAN),然後深入研究無線安全背後的實踐方面。您會驚訝地發現,使用任何瞭解使用方法的人都可以輕鬆獲得的基本工具,收集有關無線網路及其資料流的大量敏感資訊是多麼容易。

在我們深入探討無線通訊的“**入侵**”方面之前,您需要學習大量關於正常無線系統操作的理論概念和圖表。儘管如此,在本教程中,我們將盡可能減少理論內容——實踐方面才是最鼓舞人心和最令人愉快的部分!

當我們想到無線通訊時,我們會想象一些連線到天線的系統,它們使用肉眼看不見的無線電波在空中相互通訊。老實說,這完全是一個正確的定義,但為了破解(或者您更喜歡“入侵”這個詞)事物,您需要了解所有這些概念和架構是如何協同工作的。

無線術語

首先,讓我們瞭解一些與無線通訊相關的基本術語。在此過程中,我們將逐步深入更高階的內容。

無線通訊

無線通訊是指在各方之間以無線方式(透過空中)執行的任何型別的資料交換。這個定義非常廣泛,因為它可能對應於許多型別的無線技術,例如:

  • Wi-Fi 網路通訊
  • 藍牙通訊
  • 衛星通訊
  • 行動通訊

上面提到的所有技術都使用不同的通訊架構,但它們都共享相同的“無線介質”能力。

Wi-Fi

**無線保真**(Wi-Fi)指的是我們所熟知的無線區域網。它基於**IEEE 802.11**標準。Wi-Fi 是一種您幾乎隨處可見的無線網路型別,在家中、工作場所、酒店、餐廳,甚至在出租車、火車或飛機上。這些 802.11 通訊標準在**2.4 GHz 或 5 GHz ISM 無線電頻段**上執行。

這些裝置在商店中很容易買到,並且與 Wi-Fi 標準相容,它們在裝置本身上有以下影像可見。我敢打賭,您在各種商店或其他公共場所見過它數百次!

Wireless Security Wi-Fi

由於基於 802.11 的無線網路在各種環境中得到如此廣泛的使用,因此它們也是與其他 802.11 標準相比,各種安全研究的最大課題。

無線客戶端

無線客戶端被認為是任何安裝了無線網絡卡或無線介面卡的終端裝置。現在,在這個 21 世紀,這些裝置幾乎可以是任何東西:

Smartwatch
  • **現代智慧手機** - 這些是您在市場上看到的用途最廣泛的無線裝置之一。它們在一個裝置上支援多種無線標準,例如藍牙、Wi-Fi、GSM。

  • **筆記型電腦** - 這是我們每天都會使用的一種裝置!

  • **智慧手錶** - 這裡顯示的是索尼智慧手錶的示例。它可以透過藍牙與您的智慧手機同步。

  • **智慧家居裝置** - 隨著技術的進步,智慧家居裝置可能例如可以透過 Wi-Fi 控制的冰箱或溫度控制器。

Wireless Clients

可能的客戶端裝置列表每天都在增長。想到我們每天使用的所有這些裝置/工具都可以如此輕鬆地透過無線網路控制,聽起來有點可怕。但同時,請記住,透過無線介質傳輸的所有通訊都可以被任何在正確時間出現在正確位置的人攔截。

無線安全 - 接入點

接入點 (AP) 是 802.11 無線實現中的中心節點。它是所有無線客戶端關聯並與其交換資料的有線和無線網路之間的介面。

對於家庭環境,您通常在一個盒子裡有一個路由器、一個交換機和一個嵌入式 AP,這使得它非常適合此目的。

Access Point

基站

基站 (BTS) 等同於 802.11 世界中的接入點,但移動運營商使用它來提供訊號覆蓋,例如 3G、GSM 等…

Base Transceiver Station

**注意** - 本教程的內容集中在 802.11 無線網路上,因此不會包含有關 BTS 和行動通訊的更多詳細資訊。

無線控制器 (WLC)

在企業無線實現中,接入點的數量通常以數百或數千計。管理所有 AP 及其配置(通道分配、最佳輸出功率、漫遊配置、在每個 AP 上建立 SSID 等)將無法在管理上實現。

Wireless Controller

在這種情況下,無線控制器的概念就發揮了作用。它是所有無線網路操作的“核心”。這個集中式伺服器與網路上的所有 AP 具有 IP 連線,從而可以輕鬆地從單個管理平臺全域性管理它們、推送配置模板、即時監控來自所有 AP 的使用者等等。

Centralized Server

服務集識別符號 (SSID)

SSID 直接標識無線 WLAN 本身。為了連線到無線區域網,無線客戶端需要在關聯幀中傳送與 AP 上預配置的 SSID 名稱完全相同的 SSID。所以現在的問題是,如何找出您環境中存在哪些 SSID?這很簡單,因為所有作業系統都帶有一個內建的無線客戶端,該客戶端會掃描無線頻譜以查詢要加入的無線網路(如下所示)。我相信您在日常生活中已經多次執行過此過程。

Wireless WLAN

但是,這些裝置是如何僅僅透過監聽無線電磁波就知道特定無線網路以這種特殊方式命名的呢?這是因為信標幀(AP 始終以非常短的時間間隔傳輸)中的一個欄位始終以明文形式包含 SSID 的名稱,這就是整個理論。

Beacon Frame SSID

SSID 的長度最多可以為 32 個字母數字字元,並且唯一標識 AP 廣播的特定 WLAN。如果 AP 定義了多個 SSID,則它將為每個 SSID 傳送一個單獨的信標幀。

小區

**小區**基本上是 AP 或 BTS 天線(發射器)覆蓋的地理區域。在下圖中,小區用黃線標記。

Cell

通常,與客戶端裝置內建天線的效能相比,AP 的輸出功率要大得多。客戶端可以接收 AP 發出的幀這一事實並不意味著可以建立雙向通訊。上圖完美地展示了這種情況。- 在這兩種情況下,客戶端都可以聽到 AP 的幀,但只有在第二種情況下,才能建立雙向通訊。

從這個簡短的示例中得出的結果是,在設計無線小區大小時,必須考慮客戶端將使用的天線的平均輸出發射功率。

通道

無線網路可以配置為支援多個 802.11 標準。其中一些在 2.4GHz 頻段上執行(例如:802.11b/g/n),而另一些在 5GHz 頻段上執行(例如:802.11a/n/ac)。

根據頻段,為每個通道定義了一組預定義的子頻段。在同一物理區域內放置多個 AP 的環境中,使用智慧通道分配以避免衝突(來自多個源在同一時間在完全相同的頻率上傳輸的幀衝突)。

Channel

讓我們看一下包含3個單元格的802.11b網路的理論設計,這些單元格彼此相鄰,如上圖所示。左側的設計由3個不重疊的通道組成 - 這意味著特定單元格中AP及其客戶端傳送的幀不會干擾其他單元格的通訊。在右側,我們有一個完全相反的情況,所有幀都在同一個通道上飛行,導致衝突並顯著降低無線效能。

天線

天線用於將以電訊號形式在電纜內流動的資訊“轉換”到電磁場中,電磁場用於透過無線介質傳輸幀。

Antennas

每個無線裝置(無論是AP還是任何型別的無線客戶端裝置)都具有一個天線,其中包括髮射器和接收器模組。它可以是外部的,周圍的人都可以看到,也可以是內建的,就像現在大多數筆記型電腦或智慧手機一樣。

對於無線安全測試或無線網路的滲透測試,外部天線是最重要的工具之一。如果您想進入這個領域,應該獲得其中一個!與您可能在裝置中內建的大多數內部天線相比,外部天線的最大優勢之一是它們可以配置為所謂的“監視模式” - 這絕對是您需要的!它允許您使用wireshark或其他知名工具(如Kismet)從您的PC嗅探無線流量。

網際網路上有一篇非常好的文章(https://www.raymond.cc/blog/best-compatible-usb-wireless-adapter-for-backtrack-5-and-aircrack-ng/),有助於選擇外部無線天線,特別是對於具有監視模式功能的Kali Linux。如果您認真考慮進入這個技術領域,我真的很建議大家購買推薦的其中一個(我有一個)。

無線安全 - 網路

無線網路可以根據其提供的操作範圍分為不同的類別。最常見的分類方案將無線網路分為以下表格中列出的四類,以及簡短的示例。

類別 覆蓋範圍 示例 應用

無線個人區域網(WPAN

非常短 - 最大10米,但通常更小

藍牙、802.15、IrDA通訊

  • 智慧手機之間的資料交換
  • 耳機
  • 智慧手錶

無線區域網(WLAN

中等 - 在公寓或工作場所內。

802.11 Wi-Fi

用於以下方面的本地網路的無線擴充套件−

  • 企業
  • 市場
  • 機場
  • 家庭

無線都會網路(WMAN

整個城市

WiMAX、IEEE 802.16或專有技術

住宅和企業之間

無線廣域網(WWAN

遍佈全球

3G、LTE

從以下位置無線訪問網際網路

本教程主要介紹WLAN技術,但我們還將介紹藍牙通訊(WPAN)的各個方面。

無線技術統計

為了給您一些證明,無線技術每年都會以越來越多的方式影響我們的生活。請檢視已發現的樣本統計資料!其中一些看起來很可怕,但同時它們也簡單地表明瞭我們現在對無線通訊的依賴程度。

  • 到2020年,大約240億臺裝置將連線到網際網路,其中超過一半透過無線連線。這是真正的物聯網(IoT)。考慮到我們現在地球上有大約74億人口,這聽起來怎麼樣?

  • 所有型別的無線通訊中,約有70%是Wi-Fi(802.11標準)。

  • Wi-Fi網路的速度從802.11a - 54Mbps(1999年)增長到ac-wave 1 - 1.3 Gbps(2012年)。最重要的是,801.11ac-wave2即將到來,速度將達到多Gbps。

  • 每天,數百萬人都在使用智慧手機透過Wi-Fi進行現金轉賬和訪問銀行賬戶!

您是否仍然對無線實施中的安全重要性猶豫不決?

Wi-Fi網路

無線部署中使用的裝置選擇受部署型別的影響,無論是小型住宅、商店、大型企業網路還是酒店網路。

規模 示例 使用的裝置型別
小型部署 家庭、小型商店 最常見的是家用路由器/交換機(與無線AP整合)
大型部署 酒店、企業、大學
  • 大量AP
  • 集中式無線控制器
  • 基於RFID的服務
  • 其他型別的無線位置跟蹤服務

無線安全 - 標準

自IEEE 802.11標準誕生以來,無線網路發展迅速。人們看到了這種資料傳輸的潛力,因此802.11的後續版本每隔幾年就會出現。下表總結了我們時代使用的當前802.11標準−

標準 頻率 最大速度
802.11 2.4 GHz 2 Mbps
802.11a 5 GHz 54 Mbps
802.11b 2.4 GHz 11 Mbps
802.11g 2.4 GHz 54 Mbps
802.11n 2.4或5 GHz 600 Mbps
802.11ac 5 GHz 1 Gbps

如您所見,Wi-Fi網路變得越來越快。以下是一些限制因素,說明為什麼我們在透過Wi-Fi下載資料時看不到高速−

  • 速度和實際吞吐量之間存在差異。由於無線通訊是半雙工的(單個天線一次只能傳送或接收),因此實際吞吐量實際上約為速度的50%。當只有一個發射器和一個接收器,並且沒有其他客戶端參與且沒有干擾(導致衝突和重傳)時,此條件才成立。

  • 最先進的標準(802.11ac)在終端裝置上的支援並不廣泛。市場上的大多數筆記型電腦或智慧手機都支援802.11a/b/g/n,但尚未支援802.11ac標準。此外,某些裝置僅配備支援2.4 GHz頻段的天線,而不支援5 GHz(這導致預設情況下缺乏802.11ac支援)。

檢查您的Wi-Fi網路標準

讓我們看看如何檢查您加入的Wi-Fi網路支援哪些標準?您可以使用多種方法進行檢查。我將在此處介紹其中兩種−

透過嗅探無線信標幀

  • 每個信標幀都包含傳輸AP支援的速度列表。這些速度可以直接對映到標準。

Supported Transmitting AP
  • 上面信標幀的轉儲表明,這可能是一個AP,它在2.4 GHz頻段上啟用了802.11b/g支援。

  • 802.11b支援速率(1、2、5.5、11)。

  • 802.11g支援速率(1、2、5.5、6、9、11、12、18、24、36、48、54)

使用一些特定的無線網路發現工具。

以下螢幕截圖顯示了在Mac上執行的名為“inSSIDer”的基於無線的工具的轉儲。它直接顯示所有可見的無線網路,以及有關每個網路的一些詳細資訊。

Inssiderer

從上圖可以看出,一些WLAN的最大速度支援130Mbps(這些必須是802.11ac),其他一些支援54和36 Mbps(這些可能是802.11 A或G)。

另一方面,您還可以使用流行的基於Linux的程式“airdump-ng”(我們稍後將在演示駭客攻擊(破解Wi-Fi網路的金鑰)時更深入地探討這一點)。至於Windows環境,您可以使用流行的“Network Stumbler”。所有這些工具的工作方式都非常相似。

Airdumpng

無線安全 Wi-Fi 認證模式

在本章中,我們將簡要介紹無線部署中使用的可能的認證方案。它們是:開放式認證和基於預共享金鑰(PSK)的認證。前者基於EAP幀來派生動態金鑰。

開放式認證

術語“開放式認證”本身具有很大的誤導性。它表明某種認證已到位,但實際上,此方案中的認證過程更像是正式步驟,而不是認證機制。該過程看起來像下圖所示−

Open Authentication

用通俗易懂的語言來說,這種交換表明,在認證請求中,無線客戶端(懇求者)說“你好,AP,我想進行認證”,而AP的認證響應則表示“好的,給你”。您在此設定中看到任何安全措施了嗎?我也沒有…

因此,永遠不應該使用開放式認證,因為它允許任何客戶端在沒有正確的安全檢查的情況下對網路進行認證。

基於EAP的4路握手(帶WPA/WPA2)

當無線客戶端對AP進行身份驗證時,它們都會經歷一個稱為4路握手的4步身份驗證過程。在這些訊息交換過程中,共享密碼是在AP和無線客戶端之間派生的,而不會在任何這些EAP訊息中傳輸。

4-way Handshake

成對主金鑰(PMK)是駭客想要收集的東西,以便破解網路加密方案。PMK僅供懇求者和驗證者知道,但在傳輸過程中不會共享。

但是,會話金鑰是,它們是ANonce、SNonce、PMK、懇求者和驗證者的MAC地址的組合。我們可以將這種關係寫成數學公式−

Sessions_keys = f(ANonce, SNonce, PMK, A_MAC, S_MAC).

為了從該等式中派生出PMK,必須破解AES/RC4(取決於使用WPA2還是WPA)。這並不容易,因為唯一實用的方法是執行蠻力或字典攻擊(假設您擁有一個非常好的字典)。

這絕對是一種推薦使用的認證方法,並且肯定比使用開放式認證更安全。

Wi-Fi粉筆塗鴉

Wi-Fi粉筆塗鴉是無線區域網歷史上一個非常有趣的概念,主要在美國使用。主要思想是標記實施開放式認證或具有弱認證的WLAN的地方。透過這樣做,任何人在牆上或地上發現這個用粉筆寫的標誌的人,都可以無需身份驗證即可登入Wi-Fi系統。聰明吧?

Wi-Fi Chalking

您可能只是問自己 - 為什麼是粉筆而不是某種標記、噴漆或其他更永久的標記方式?答案很簡單,來自刑法 - 用粉筆書寫不被視為破壞行為。

無線安全 - 加密

一般來說,加密是將資料轉換為某種密文的過程,這種密文對於任何攔截資訊的第三方來說都是無法理解的。如今,我們每天都在使用加密,甚至都沒有注意到。每次訪問您的網上銀行或郵箱時,大多數情況下,當您登入任何型別的網頁或建立到公司網路的VPN隧道時,都會使用加密。

有些資訊太寶貴了,不容忽視。為了有效地保護資訊,必須對其進行加密,以防止攻擊者解密。老實說,沒有完全安全的加密方案。我們每天使用的所有演算法都可能被破解,但使用當前的技術和時間,發生這種情況的可能性有多大呢?

例如,使用新型超高速計算機破解“X”加密可能需要大約八年時間。這種風險是否大到足以停止使用演算法“X”進行加密?我對此表示懷疑,到那時,需要保護的資訊可能已經過時了。

無線加密型別

要開始討論無線加密,值得一提的是,加密演算法有兩種型別:流密碼和塊密碼。

  • 流密碼 - 它以逐位的方式將明文轉換為密文。

  • 塊密碼 - 它對固定大小的資料塊進行操作。

最常見的加密演算法彙總在下表中 -

加密演算法 加密演算法型別 資料塊大小
RC4 流密碼 ---
RC5 塊密碼 32/64/128 位
DES 塊密碼 56 位
3DES 塊密碼 56 位
AES 塊密碼 128 位

您最有可能在無線網路上遇到(某種形式)的是RC4 和 AES

WEP 與 WPA 與 WPA2

在無線網路世界中,有三種廣為人知的安全標準。這三者之間最大的區別在於它們可以提供的安全模型。

安全標準 使用者加密演算法 身份驗證方法 破解加密的可能性
WEP WEP(基於 RC4) 預共享金鑰 (PSK)
  • 初始化向量 (IV) 衝突攻擊
  • 弱金鑰攻擊
  • 重注入攻擊
  • 位元翻轉攻擊
WPA TKIP(基於 RC4) 預共享金鑰 (PSK) 或 802.1x - 在初始 4 步握手期間破解密碼(假設密碼相對較短 <10 個字元)
WPA2 CCMP(基於 AES) 預共享金鑰 (PSK) 或 802.1x

WEP 是第一個旨在新增身份驗證和加密的無線“安全”模型。它基於RC4 演算法和 24 位初始化向量 (IV)。這是實現的最大缺點,導致 WEP 在幾分鐘內即可被破解,使用任何人都可以在其 PC 上安裝的工具。

為了增強安全性,WPA2 採用了強大的加密模型(AES)和基於802.1x(或 PSK)的非常強大的身份驗證模型。WPA 只是作為向 WPA2 平滑過渡的過渡機制引入的。許多無線網絡卡當時不支援新的 AES,但它們都使用RC4 + TKIP。因此,WPA 也基於該機制,只是進行了一些改進。

弱初始化向量 (IV)

初始化向量 (IV) 是 WEP 加密演算法的輸入之一。整個機制在下圖中顯示 -

Weak Initialization Vectors

可以注意到,演算法有兩個輸入,其中一個是 24 位長的 IV(也以明文形式新增到最終密文中),另一個是 WEP 金鑰。在嘗試破解此安全模型(WEP)時,必須收集大量無線資料幀(大量幀,直到找到具有重複 IV 向量值的幀)。

假設對於 WEP,IV 有 24 位。這意味著它可以是兩幀中的任何數字(如果您足夠幸運)到 224 + 1(您收集每個可能的 IV 值,然後下一幀必須是重複的)。根據經驗,我可以說,在一個相當擁擠的無線區域網(大約 3 個客戶端一直在傳送流量)中,獲取足夠數量的幀來破解加密並匯出 PSK 值只需要 5 到 10 分鐘的時間。

此漏洞僅存在於 WEP 中。WPA 安全模型使用 TKIP,它透過將 IV 的大小從 24 位增加到 48 位並對圖表進行其他安全增強來解決弱 IV 問題。這些修改使 WPA 演算法更加安全,不易受到此類破解。

無線安全 - 破壞加密

在本章中,我們將瞭解如何破解 WEP 和 WPA 加密。讓我們從 WEP 加密開始。

如何破解 WEP 加密?

可以使用許多可能的工具來破解 WEP,但所有方法都遵循相同的思路和步驟順序。

假設您已經找到了目標網路,您將執行以下操作 -

  • 收集(嗅探)透過空中飛行的 WEP 加密資料包。此步驟可以使用名為“airodump-ng”的 Linux 工具執行。

  • 收集到足夠的資料包後(您已收集了一組具有重複 IV 向量的幀),您可以嘗試使用名為“aircrack-ng”的工具破解網路。

在高度擁塞的網路上,上述兩個步驟可能需要大約 5 到 10 分鐘甚至更短的時間。就這麼簡單!WEP 駭客攻擊的分步指南將在“滲透測試 WEP 加密 WLAN”主題下顯示。

如何破解 WPA 加密?

破解 WPA 加密的方法略有不同。使用 WPA 的無線幀使用 TKIP 加密,該加密仍然使用 IV 和 RC4 演算法的概念,但對其進行了修改以使其更安全。TKIP 透過以下指標修改 WEP -

  • 它使用臨時、動態建立的金鑰,而不是 WEP 使用的靜態金鑰。

  • 它使用排序來防禦重放和注入攻擊。

  • 它使用高階金鑰混合演算法來擊敗 WEP 中的 IV 衝突和弱金鑰攻擊。

  • 它引入了增強資料完整性 (EDI) 來擊敗 WEP 中可能的位元翻轉攻擊。

考慮到所有這些要點,它使得 WPA 標準在計算上不可能被破解(它沒有說不可能,但假設您擁有破解演算法的高階資源,它可能需要相當長的時間)。WPA 標準中使用的身份驗證也相對於 WEP 中使用的身份驗證有所改進。WPA 使用 802.1x(基於 EAP 的身份驗證)對客戶端進行身份驗證。事實上,這是您可能嘗試破解 WPA(實際上也是 WPA2)的唯一弱點

WPA 和 WPA2 標準支援兩種身份驗證型別 - 預共享金鑰 (PSK) 和基於外部身份驗證伺服器的真正的 802.1x。當使用 802.1x 身份驗證時,根本不可能破解密碼;只有在使用本地 PSK 模式時才可行。順便說一句,所有企業無線部署都使用基於外部 RADIUS 伺服器的真正的 802.1x 身份驗證,因此,您唯一可能的目標可能是非常小的企業或家庭網路。

還有一點需要注意的是,用於保護 WPA/WPA2 的 PSK 的大小必須合理地短(最多 10 個字元 - 與允許的最大長度 64 個字元相反),如果您打算破解它。這樣做的原因是,PSK 僅在初始 4 步握手期間在無線客戶端和 AP 之間傳輸一次(並非以明文形式),並且從這些資料包中匯出原始金鑰的唯一方法是暴力破解或使用良好的字典。

有一個非常好的線上計算器可以估算暴力破解 PSK 需要花費的時間 - http://lastbit.com/pswcalc.asp。假設您有一臺每秒可以嘗試 1000 個密碼的 PC(由小寫字母、大寫字母、數字和常用標點符號組成),破解密碼需要 28910 年(當然,這是最大值,如果您幸運的話,可能需要幾個小時)。

Online Calculator

破解 WPA/WPA2 加密(僅當它們使用 PSK 時)的常規過程如下 -

  • 收集(嗅探)透過空中飛行的無線資料包。此步驟可以使用名為“airodump-ng”的 Linux 工具執行。

  • 在收集資料包的同時,您應該斷開當前客戶端的連線。這樣做,您將進入客戶端需要重新進行身份驗證才能使用 Wi-Fi 網路的情況。這正是您想要的!透過這樣做,您為嗅探無線使用者連線到網路做好了準備。您可以使用基於 Linux 的工具“aireplay-ng”來斷開當前無線客戶端的連線。

  • 當您嗅探到 4 步握手(並儲存在轉儲檔案中)時,您可以再次使用“aircrack-ng”來破解 PSK。在此步驟中,您必須引用包含所有密碼組合的字典檔案,aircrack-ng 工具將使用該檔案。因此,一個好的字典檔案在這裡是最重要的元素。

WPA/WPA2 網路的詳細分步駭客攻擊將在“滲透測試 WPA/WPA2 加密 WLAN”主題下顯示。

如何防禦 WPA 破解?

我有一種感覺,在瀏覽了本教程的最後幾個部分之後,您已經對應該採取哪些措施來防止 WPA 破解(或者更確切地說:在合理的時間內使其不可能)有了一些想法。以下是保護您的家庭/小型企業無線網路的最佳實踐的一些要點 -

  • 如果有可能,請使用 WPA2 而不是 WPA。它對套件使用的加密方案有直接影響。AES(WPA2 使用)比 TKIP(WPA 使用)安全得多。

  • 正如您之前看到的,破解 WPA/WPA2 的唯一方法是嗅探身份驗證四次握手並對 PSK 進行暴力破解。為了使其在計算上不可能,請使用至少 10 個字元的密碼,密碼由小寫字母、大寫字母、特殊字元和數字的隨機組合組成(而不是任何可以在任何字典中找到的普通單詞)。

  • 停用 Wi-Fi 保護設定 (WPS) - WPS 是為了方便將新的無線客戶端連線到網路而發明的一些“酷功能”之一 - 只需輸入 AP 的一個特殊的 8 位數字 PIN 碼即可。這個 8 位數字對於暴力破解攻擊來說非常短,而且這個 8 位數字可能就印在 AP 盒子的背面。不妨試試看,看看您的家庭路由器 - 背面是否有 WPS PIN 碼?您的家庭路由器是否啟用了 WPS 功能?

Connecting Wireless Clients

無線安全 - 訪問控制攻擊

無線網路比其有線網路等效物更容易受到攻擊,這並不是什麼秘密。除了協議本身的漏洞之外,它還是一個“無線”共享介質,這使得此類網路面臨著一系列全新的攻擊面。在接下來的子章節中,我將嘗試介紹無線通訊的許多方面(或更確切地說,是威脅),這些方面可能會被惡意第三方利用。

訪問控制攻擊

訪問控制的概念是控制誰可以訪問網路,誰不能訪問網路。它可以防止惡意第三方(未經授權的)關聯到無線網路。訪問控制的想法與身份驗證過程非常相似;但是,這兩個概念是互補的。身份驗證通常基於一組憑據(使用者名稱和密碼),而訪問控制可能超出此範圍,並驗證客戶端使用者或客戶端使用者裝置的其他特徵。

無線網路中使用的一種非常著名的訪問控制機制是基於 MAC 地址白名單。AP 儲存一個授權 MAC 地址列表,這些地址有資格訪問無線網路。憑藉當今可用的工具,這種安全機制並不是非常強大,因為 MAC 地址(無線客戶端晶片組的硬體地址)可以非常簡單地被欺騙。

唯一的挑戰是找出 AP 允許哪些 MAC 地址進行身份驗證以連線到網路。但是,由於無線介質是共享的,因此任何人都可以嗅探透過空中傳輸的流量並檢視幀中帶有有效資料流量的 MAC 地址(它們在未加密的報頭中可見)。

如您在下面的圖片中看到的,在我的家庭路由器上,我設定了兩臺裝置能夠透過指定其 MAC 地址與 AP 通訊。

MAC Addresses

這是攻擊者一開始沒有的資訊。但是,由於無線介質對嗅探“開放”,因此他可以使用 Wireshark 監聽在特定時間連線並與 AP 通訊的這些裝置。當您啟動 Wireshark 進行空中嗅探時,您很可能會每秒收到數百個資料包,因此,明智的做法是在 Wireshark 中使用有效的過濾規則。我實現的過濾器型別為 -

(wlan.fc.type_subtype == 0x28) && (wlan.addr == 58:6D:8F:18:DE:C8)

此過濾器的第一部分告訴 Wireshark 它應該只檢視資料包(而不是信標幀或其他管理幀)。它是子型別 **0x28** 並且(“&&”)一方應該是我的 AP(它在無線介面上的 MAC 地址為 *58:6D:8F:18:DE:C8*)。

MAC Address on Radio Interface

您可以注意到,與 AP 交換資料包的兩個裝置是我作為管理員之前在 MAC 過濾中專門允許的裝置。擁有這兩個裝置後,您作為攻擊者唯一需要執行的配置是本地更改無線網絡卡的 MAC 地址。在本例中,我將使用基於 Linux 的工具(但對於所有可能的 作業系統都有大量其他工具) -

Linux Based Tool

這是一種繞過基於 MAC 過濾的訪問控制的簡單方法。如今,執行訪問控制的方法要先進得多。

專門的身份驗證伺服器可以透過檢視特定客戶端的無線幀的外觀並將其與特定供應商已知的“基線”集進行比較,從而區分特定客戶端是惠普生產的 PC、蘋果的 iPhone(哪種 iPhone)還是其他一些無線客戶端。但是,這並非您在家庭網路上能看到的。這些解決方案相當昂貴,並且需要更復雜的整合多種伺服器型別的基礎設施——很可能在某些企業環境中遇到。

無線安全 - 完整性攻擊

資訊的完整性是一種特徵,它確保資料在透過網路(無論是無線還是有線)從 A 點到 B 點傳輸時未被篡改。在談到無線通訊時,任何第三方都可以監聽 802.11 無線電在同一頻率通道上的傳輸。以下圖表說明了一種針對資訊完整性的簡單攻擊型別 -

Type of Attack

假設一個名為受害者的合法無線客戶端(步驟 1)正在向朋友傳送電子郵件(電子郵件將傳送到網際網路),請求退還 1000 美元並將在電子郵件中填寫銀行賬戶號碼。

假設資訊未被良好加密(或攻擊者破解了加密並有機會以明文讀取所有內容),無線攻擊者(步驟 2)讀取透過空中流向 AP 的整個資料包。攻擊者透過將銀行賬戶號碼替換為自己的銀行賬戶號碼來修改訊息,並將訊息重新注入到空中,透過 AP 傳送到網際網路。

在這種情況下,如果沒有完整性檢查可以檢測到訊息內容的變化 - 接收者將收到一條包含修改後的銀行賬戶號碼的訊息。可能,所描述的情況在現實生活中極難實現,因為所有像郵件交換之類的工具都能夠抵禦此類攻擊(透過適當的加密和訊息完整性檢查),它完美地展示了攻擊的概念。

針對此類完整性攻擊主要有兩種對策 - 加密(以便攻擊者根本無法讀取訊息)和 **訊息完整性程式碼** (MIC),它基本上是像 **MD5** 或 **SHA1** 這樣的雜湊函式,它獲取整個訊息的指紋並建立一個 128 位(MD5)或 160 位(SHA1)的雜湊值。每當資料包內容發生變化時,雜湊值也會發生變化,導致訊息被拒絕(無線路由器已經拒絕)。

無線安全 - 機密性攻擊

針對資訊機密性的攻擊的作用,只是簡單地破壞無線部署中使用的加密模型。檢視該領域各種安全模型,可以提出以下一般建議 -

  • **無加密/ WEP 加密** - 這些方法安全性不高,在任何情況下都不應使用。

  • **TKIP 加密** - 此加密模型用於 WPA 部署中。它尚未被破解,但由於使用了較弱的 RC4 演算法,因此 TKIP 不被認為是一種強大的加密手段。

  • **CCMP 加密** - 這用於 WPA2。到目前為止,它被認為是最安全的加密模型,基於不可破解(至少在今天)的 AES 演算法。

各種攻擊的主要目標都是破解加密並獲取金鑰的值。這將為攻擊者提供兩件事:破壞其他使用者的機密性和直接訪問無線網路。

無線安全 - 拒絕服務攻擊

旨在停用服務(使目標不可用)或降低其效能(降低可用性)的攻擊屬於 **拒絕服務 (DoS)** 攻擊的範疇。對於受害者或以電子商務為基礎的企業來說,此類攻擊的成本可能非常高昂。他們可以根據其網路服務不可用的時間長度來計算攻擊的成本,以數百萬美元計。

無線網路在員工的工作效率中也發揮著至關重要的作用。我們都在工作場所使用無線筆記型電腦和智慧手機。如果無線網路無法工作,我們的工作效率就會降低。

針對可用性的 DoS 攻擊可以分為三種類型 -

  • 第 1 層 DoS
  • 第 2 層 DoS
  • 第 3 層 DoS

我們將在後面的章節中詳細討論這些攻擊。

無線安全 - 第1層拒絕服務

這是射頻干擾(無論是故意的還是無意的)的結果。最常見的是在 2.4 GHz 頻段上看到無意的干擾,因為該頻段非常繁忙。諸如射頻攝像機、無線電話或微波爐等裝置可能會使用此頻段。至於故意的干擾,有一些射頻干擾器可能會干擾 802.11 WLAN。射頻干擾器可以是硬體單元或軟體工具(如下所示的“Websploit”框架示例)。

Websploit Framework

使用第 1 層 DoS 的最常見的 WiFi 攻擊是 **昆士蘭攻擊**。

昆士蘭攻擊

這用於破壞 802.11 WLAN 的操作。無線網絡卡被配置為發出恆定的射頻訊號(很像窄帶訊號發生器)。同時,其他有效的無線客戶端永遠沒有機會訪問介質,因為每當它們執行清晰通道評估(在透過無線傳送任何流量之前檢查“空氣”的簡短過程)時,無線介質都會被這個恆定的發射器佔用。

干擾攻擊也可用於啟動其他型別的攻擊。透過使用干擾工具,可以強制無線客戶端重新進行身份驗證。之後,可以使用協議分析器(嗅探器)來收集身份驗證過程(如果是 LEAP 或 WPA/WPA2 個人,則為四次握手)。此時,攻擊者將擁有執行 **離線字典攻擊** 所需的所有必要資訊。窄帶干擾也可以用作中間人攻擊的輔助工具。

使用軟體(使用 Websploit)建立第 1 層干擾器非常容易。我將使用我自己的名為“home_e1000”的家庭無線網路來說明攻擊。首先使用 **airodump-ng**,我將收集有關 WLAN 本身的資訊(BSSID、通道)。

Layer 1 Jammer

Home Wireless Network

如您所見,“home_e1000”無線網路正在使用 BSSID 為 58:6D:8F:18:DE:C8 的 AP,並在通道 6 上執行。這是我們需要的一組資訊,作為 Websploit 框架執行干擾攻擊的輸入。

與我們的場景相關的模組位於“無線模組”下,我們將使用 Wi-Fi/wifi_jammer 模組。

Wireless Modules

“RQ”欄位列代表“必需”,因此您需要在此處填寫所有值 -

  • **interface** - 這是 WLAN 介面,如 **ifconfing** 中所示,在我的情況下,它是 wlan0。

  • **bssid** - 這是 AP 的無線介面卡的 MAC 地址。您可以在前面步驟中解釋的 airodump-ng 中獲取此地址。

  • **essid** - 這是您要干擾的 WLAN 的名稱。

RQ Field Column
  • **mon** - 監控介面的名稱,如 ifconfig 或 airmon-ng 中所示。在我的情況下,它是 mon0。

  • **channel** - 顯示 airodump 中的資訊。我的目標網路“home_e1000”正在通道 6 上執行,如 airodump-ng 輸出所示。

airodumpng Output

現在,當所有必要的資訊都設定在websploit框架中時,您只需要鍵入“run”命令。一旦命令執行,攻擊就會開始。

正如您在下面的螢幕截圖中看到的,websploit框架會自動啟動aireplay-ng工具並干擾網路。

aireplay-ng Tool

這次攻擊的結果(您看不到),是我的無線電腦和我的智慧手機斷開了連線,並且在使用“stop”命令停止攻擊之前,我無法真正連接回去。

無線安全 - 第2層拒絕服務

這些攻擊是最有可能被惡意攻擊者發起的攻擊。此攻擊背後的主要思想是篡改802.11無線幀並將其注入(或重新傳輸)到空中。

最常見的第2層DoS攻擊涉及解除關聯或身份驗證管理幀的欺騙。之所以如此有效,是因為這些幀不是請求幀,而是通知!

Layer 2 DoS Attacks

由於身份驗證過程是關聯的先決條件(如上所示),因此身份驗證解除幀也會自動解除客戶端的關聯。

這種攻擊可能(再次)使用aireplay-ng工具啟動。您能看到這個工具有多強大嗎?

再次以我的家庭網路為目標,其ESSID為“home_e1000”,我首先使用airodump-ng檢查連線的客戶端。

ESSID of Home

我的智慧手機是連線到home_e1000網路的裝置,其MAC地址為98:0D: 2E: 3C:C3:74。然後,我針對我的智慧手機發出一個身份驗證解除DoS攻擊,如下面的螢幕截圖所示 -

Deauthentication DoS Attack

結果,我的目標家庭裝置(智慧手機)再次與Wi-Fi網路斷開連線。

針對此類攻擊的緩解技術是使用802.11w-2009標準管理幀保護(MFP)。簡單來說,此標準要求管理幀(如解除關聯或身份驗證解除幀)也由受信任的AP簽名,如果它們來自惡意客戶端或偽造的AP,則應忽略它們。

無線安全 - 第3層拒絕服務

這種第3層DoS的想法是用大量流量淹沒主機以進行處理,導致主機崩潰。大多數情況下,此類攻擊源自一組駭客擁有的主機,稱為殭屍網路,並以網際網路上的受害者伺服器為目標。

三種最常見的第3層DoS攻擊是 -

Fraggle攻擊

攻擊者向IP廣播地址傳送大量UDP回顯請求。源IP地址被欺騙並設定為受害者IP地址。這樣做是為了將廣播子網上的客戶端發起的回覆傳送回受害者。

Ping泛洪攻擊

攻擊者使用ping向目標計算機發送大量ICMP資料包。想象一下,一個擁有數千臺PC的殭屍網路的惡意方。如果我們想象從所有這些PC同時執行一次ping泛洪攻擊,那麼它可能會變得非常嚴重。

Smurf攻擊

與Fraggle攻擊的情況完全相同的逐步操作。唯一的區別是,Smurf攻擊使用ICMP回顯請求資料包,而Fraggle攻擊使用UDP資料包。

這些型別的第3層DoS攻擊並非專門針對無線技術攻擊。它們可以透過任何第2層技術使用,無論是乙太網、幀中繼、ATM還是無線。此攻擊成功的首要條件是攻擊者控制著大量被接管的PC(殭屍網路)。然後,從殭屍網路中每個受感染的主機向目標傳送特定的資料包 - 假設殭屍網路有1000多個裝置,累積流量可能很大。從單個PC使用第3層DoS根本無效。

無線安全 - 身份驗證攻擊

如您可能現在所知,身份驗證是驗證所呈現的身份和憑據的方法。無線設定中使用的大多數身份驗證方案都透過適當的加密進行了保護。

我們已經描述了基於WPA/WPA2中使用的EAP身份驗證方案,以及PSK身份驗證方案的場景。透過嗅探客戶端和身份驗證器(AP)之間的四次握手,可以執行暴力攻擊(例如 - 離線字典攻擊)來破解加密並推匯出PSK值。

另一個示例可以是LEAP(輕量級可擴充套件身份驗證協議)。它在過去被用作生成動態WEP金鑰的機制。在此設定中,密碼雜湊透過MS-CHAP或MS-CHAPv2演算法(這兩個演算法都可透過離線字典攻擊破解)進行空中雜湊。可能應用於LEAP的身份驗證攻擊的簡要說明包括以下步驟 -

  • 使用者名稱以明文傳送。

  • 挑戰文字以明文形式存在。

  • 響應文字被雜湊化。

  • 可以在這裡使用辦公室字典攻擊(使用aircrack-ng工具)嘗試“function(password,challenge) = response”數學公式中密碼的所有組合,以找到正確的密碼。

此類攻擊的示例將在接下來的章節中逐步說明。

Rogue 接入點攻擊

當我們考慮企業網路時,企業WLAN是網路資源的授權且安全的無線門戶。Rogue接入裝置(AP)是任何連線到企業網路(通常連線到某些網路交換機)的未經授權的WLAN無線電。

大多數由員工(惡意使用者或錯誤)安裝的Rogue接入點實際上與組織中的IT部門使用的AP不同,而是某些小型辦公室家庭辦公室(SOHO)無線路由器 - 與您可能在家中使用的路由器相同。在它們配置錯誤或未配置任何安全性的情況下,它會開啟下一個攻擊面,以便輕鬆訪問非常安全的網路)。

隨著IT行業的不斷發展,Rogue接入點可能隱藏得非常好,並且極其難以找到。如果您將Raspberry Pi連線到您的網路交換機,並將其放置在機架後面,隱藏在數百根網路電纜之間,您能否輕鬆發現它?我敢肯定,你根本不會發現它!

Rogue Access Point

如果網路資源暴露於Rogue接入點,則可能會識別出以下風險 -

  • 資料盜竊 - 公司資料可能會受到損害。

  • 資料破壞 - 資料庫可能會被刪除。

  • 服務丟失 - 網路服務可能會被停用。

  • 惡意資料插入 - 攻擊者可能會使用門戶上傳病毒、鍵盤記錄器或色情內容。

  • 第三方攻擊 - 公司的有線網路可能被用作針對網際網路上其他網路的第三方攻擊的啟動平臺。

無線安全 - 客戶端錯誤關聯

您可能已經遇到過這種情況,當您帶著電腦在家使用無線網路時,您的電腦會自動連線到WLAN,而無需您執行任何操作。這是因為您的筆記型電腦會記住您過去連線過的WLAN列表,並將此列表儲存在所謂的首選網路列表(在Windows世界中)。

惡意駭客可能會利用此預設行為,並將自己的無線AP帶到您通常使用Wi-Fi的物理區域。如果該AP發出的訊號優於原始AP發出的訊號,則筆記型電腦軟體將錯誤地關聯到駭客提供的偽造(Rogue)接入點(認為它是您過去使用過的合法AP)。這些型別的攻擊在一些大型開放空間(如機場、辦公環境或公共區域)中很容易執行。這些型別的攻擊有時被稱為蜜罐AP攻擊

建立偽造的AP不需要任何物理硬體。貫穿本教程使用的Linux發行版是Kali Linux,它有一個名為airbase-ng的內部工具,可以使用單個命令建立具有特定MAC地址和WLAN名稱(SSID)的AP。

讓我們建立一個以下場景。過去,我在歐洲的一個機場使用過“Airport-Guest”的SSID。這樣,我知道我的智慧手機已將此SSID儲存在PNL(首選網路列表)中。因此,我使用airbase-ng建立了此SSID。

Preferred Network List

建立WLAN後,我使用了前面描述的第2層DoS攻擊,不斷地從Home_e1000無線網路中解除智慧手機的身份驗證。此時,我的智慧手機檢測到另一個SSID(Airport-Guest),並且鏈路質量非常好,因此它會自動連線到它。

這是您在上面從21:48:19開始看到的轉儲內容。在這一點上,我們處於有利的位置,可以執行一些額外的攻擊,以獲得此初始連線。它可以是中間人攻擊,將所有無線流量轉發到攻擊者的PC(攻擊流量交換的完整性和機密性)。或者,您可以從攻擊者的PC直接連接回智慧手機,利用Metasploit框架中的某些漏洞……有大量可能的途徑可以繼續前進。

錯誤配置的接入點攻擊

配置錯誤的AP是一種安全表面,如果檢測到,則最容易被突破。您最有可能遇到配置錯誤的AP的地方是家庭無線網路或非常小的企業。大型無線環境很可能使用集中式管理平臺來控制數百或數千個AP並保持它們同步,因此不太可能在那裡遇到任何配置錯誤。

導致無線破解的最常見配置錯誤區域是 -

  • 某些AP配置保持出廠預設值,例如使用者名稱和密碼或廣播的預設WLAN(SSID),並且預設設定可以在網際網路上特定供應商的手冊中找到。

  • 人為錯誤 - 在整個組織的一組AP上配置了高階安全策略,而其他AP則被遺忘並保留了預設的弱安全設定。

作為針對配置錯誤的AP的對策,組織應將持續的現場調查作為監控安全無線環境的工具。

一些Linksys無線家庭裝置的預設使用者名稱/密碼資料庫示例為 -

型號 使用者名稱 密碼
BEFSR系列 (無)或admin admin
E系列 admin或(無) admin或(無)
EA系列 admin admin或(無)
WAG系列 admin或(無) admin或(無)
WRT系列 (無) admin

Ad-Hoc 連線攻擊

Ad-Hoc連線攻擊是一種非常嚴重的攻擊型別,攻擊者(惡意使用者)使用第三方合法使用者作為攻擊者裝置和AP或其他型別的閘道器之間的附加跳躍中間人

需要在“中間裝置”上執行的Ad-Hoc無線網路功能可以在Windows或Linux裝置上配置,它允許在客戶端裝置之間設定Ad-Hoc(對等)無線鏈路(無需任何額外的網路基礎設施,如AP)。在幕後,您實際上是在PC上建立虛擬軟體AP,另一個裝置與您建立的SSID關聯(有效地建立無線鏈路)。

使用Linux時,您可以使用本章前面介紹的稱為“airbase-ng”的工具。另一方面,使用Windows時,可以使用“配置新連線或新網路”在無線網路設定中建立WLAN。

以下情況將描述Ad-Hoc攻擊。讓我們想象一下,攻擊者可能是計算機2、3或4中的任何一個。受害者(中間人)將是計算機1。這檯筆記本電腦將是執行併為周圍環境提供無線連線的筆記型電腦,並且將有其他介面連線到有線網路以訪問網際網路。

Ad-hoc Attack

攻擊者可以連線到計算機1廣播的WLAN,然後使用它透過這臺受害者PC將所有流量路由到網際網路。從網際網路的角度來看,它看起來像是計算機1發起了流量!從計算機1到所有攻擊者的無線鏈路不必是Wi-Fi連線 - 它可以是藍牙或所有嘗試相互通訊的各方支援的任何其他型別的無線技術。

無線安全 - 駭客方法

在本篇章中,您將對各種常用工具有更深入的瞭解,這些工具可用於執行特定的攻擊(或作為更高階攻擊中的一個步驟)。稍後,在最後一節中,您需要將所有這些工具知識結合起來,並執行更高階和更復雜的無線攻擊型別。本教程的最後一節將逐步介紹無線安全入侵場景,並使用您之前見過的工具以及您將在本篇章中找到的工具。

Wi-Fi 發現

Wi-Fi 發現是一個用於瞭解環境中 WLAN 存在情況的過程。Wi-Fi 發現過程本身不違反任何法律,因為您在任何時候都沒有采取攻擊性行為,您只是簡單地使用無線客戶端被動監聽 Wi-Fi 頻段。

為了發現存在哪些型別的 WLAN 網路,您需要使用特定的工具,這些工具使用無線硬體並在 2.4GHz 或 5GHz 頻段上進行監聽。其中一些工具內置於作業系統中(通常對於詳細的 WLAN 分析非常無效),而另一些工具則是簡單的工具,您可以在網際網路上找到。市場上有數百甚至數千種這樣的工具。

我將向您介紹其中兩個,由於其簡單性,我非常喜歡它們。在閱讀這些章節的過程中(或者您已經從經驗中瞭解),您會發現,為 Windows 作業系統提供的工具具有更好的圖形介面和一些花哨的圖形功能,這與基於 Linux 的工具形成對比。但我可以向您保證,基於 Linux 的工具提供完全相同的資訊(只是以更多文字格式呈現)。另一方面,編寫指令碼稍微容易一些,這些指令碼將一個工具的輸出作為另一個工具的輸入。

對於 Windows 使用者,您應該看看 **Xirrus Wi-Fi Inspector**(可以免費使用)。這是一個簡單的工具,可以識別附近存在的 WLAN。另一個在 Windows 環境中執行相同功能的工具是 **NetStumbler**。

Xirrus Wi-Fi Inspector

您可以從上面截圖底部表格中提取的資訊提供了您可能需要的所有內容,例如 SSID 名稱、接收到的訊號強度、使用的 802.11 標準、WLAN 上設定的加密和認證、**BSSID**(AP 的 MAC 地址,如果您想建立具有相同 MAC 地址的偽造 AP)以及它執行的通道。資訊量非常大!您還可以看到非常花哨的圖形“雷達”,顯示特定網路距離您當前位置的遠近 - 同樣的資訊可以從 **訊號 (dBm)** 欄位讀取。

另一方面,當使用 Linux 時(我使用 Kali 發行版用於滲透測試 - 您也應該嘗試),等效的工具稱為 airodump-ng。airodump-ng 輸出給使用者的的資訊集如以下截圖所示。此外,我們還有另一個眾所周知的工具,稱為 Kismet。

Airodump-ng Output to User

Wardriving(無線網路漫遊)

Wardriving 是指一個人在汽車中使用其個人筆記型電腦、智慧手機或其他無線客戶端工具查詢無線網路(無線網路發現)的過程。基本上,目的是找到一些免費訪問的無線網路,惡意使用者可以無需任何法律義務地使用這些網路。例如,一些提供免費 Wi-Fi 但無需註冊的市場,或者您可以使用虛假資料註冊的酒店。

查詢這些 WLAN 的方法與上面無線發現部分描述的完全相同。

GPS 對映

有許多衛星環繞地球執行,每個衛星都向其覆蓋的地球區域傳送低功率無線電訊號。您使用的 GPS 裝置(例如啟動了 Google 地圖應用程式的智慧手機)同時接收來自多個衛星的訊號。裝置本身將這些訊號組合在一起,並計算出地球上的當前地理位置。

GPS 對映的思想是將使用者遇到的無線網路對映到無線網路的全球地圖上,並參考其地理位置。可以使用前面提到的 Kismet 工具將無線網路對映到地理位置,然後將其座標放到 Google 地球地圖上。

網際網路上有一個網站 http://wigle.net,您可以使用它檢視有多少 WLAN 被 GPS 對映。您也可以使用此網站來對映 GSM 蜂窩網路。

Map GSM Cellular Network

無線安全 - 流量分析

無線流量分析過程可能對取證調查或故障排除非常有幫助,當然,這也是一種很好的自學方式(只需瞭解應用程式和協議如何相互通訊)。為了使流量分析成為可能,首先需要以某種方式收集此流量,此過程稱為流量嗅探。最常用的流量嗅探工具是 Kismet 和 Wireshark。這兩個程式都提供適用於 Windows 和 Linux 環境的版本。

出於滲透測試和無線網路入侵的目的,有價值的收集資料型別包括 **BSSID、WEP IV、TKIP IV、CCMP IV、EAP 四向握手交換、無線信標幀、通訊雙方的 MAC 地址等**。無線流量轉儲中還有更多資訊可供您使用。您獲得的大部分資訊都將用於最後一章中介紹的所有攻擊。例如,它們可以用作離線暴力破解攻擊的輸入,以破解 WLAN 部署中使用的加密和認證模型。

Wireshark 在 Windows 和 Linux 中的使用非常直觀 - 兩種環境都提供一個對兩個系統都相同的 GUI。程式啟動後,您只需要指示用於流量嗅探的物理介面(您可以選擇任何介面,無論是線纜介面還是無線介面),然後繼續進行流量嗅探。無線網絡卡收集的無線資料包示例如下面的截圖所示。

Wireless Packets

輸出佈局始終相同 - 從頂部開始,您有:

  • **過濾器欄位** - Wireshark 配備了一個非常好的過濾工具,允許限制即時流量輸出。當您需要從每秒從周圍所有無線客戶端接收到的數百個資料包中提取特定的流(在特定 MAC 地址之間或在特定 IP 地址之間)時,它非常有用。

  • **流量輸出** - 在此部分,您可以看到所有顯示出來的資料包,這些資料包是在無線介面上逐個嗅探到的。在此部分輸出中,您只能看到流量特徵的基本摘要,例如 – **源/目標 MAC 地址、協議(在本例中為 Wi-Fi 802.11)** 和有關資料包的簡要資訊。

  • **資料的解碼引數** - 此部分列出了幀中存在的所有欄位(所有標頭 + 資料)。使用示例轉儲,我們可以看到,某些資訊集以不可讀資料的形式出現(可能已加密),並且在 802.11 標頭中您可以找到 CCMP 資訊(它確認流量已使用 AES 加密),因此它一定是 WPA2 Wi-Fi 網路。

  • **十六進位制轉儲** - 十六進位制轉儲與上面“資料的解碼引數”中的資訊完全相同,但以十六進位制格式顯示。這樣做的原因是,十六進位制表示是資料包的原始外觀,但 Wireshark 有數千個“流量模板”,用於將特定十六進位制值對映到已知的協議欄位。例如,在 802.11 標頭中,第 5 到 11 個位元組始終是無線幀的 MAC 地址的來源,使用相同的模式對映,Wireshark(和其他嗅探器)可以重建和解碼靜態(和眾所周知的)協議欄位。

您可以使用常見的 **.pcap** 格式儲存所有流量轉儲,這些轉儲稍後可以作為輸入,例如,用於執行收集流量的一些高階操作的 Python 指令碼(例如破解加密模型)。

Python Scripts

您應該瞭解的另一個工具是 **Kismet**。啟動 Kismet 工具並指定 **mon0** 介面後,它將列出您環境中檢測到的所有 SSID。

Kismet 執行期間,所有無線資料包都會被收集並存儲在 **.pcap** 檔案中。退出程式時,您會收到一條訊息,指示所有無線資料包轉儲都已儲存,您可以之後訪問它們。

Wireless Packet Dumps

在上面提供的示例中,所有資料包轉儲都已儲存在二進位制檔案中(當您使用“more”或“vi”或“nano”等開啟這些檔案時,它們不是可讀格式)。

more vi nano

要正確開啟它們,您必須再次使用 Wireshark!

Use Wireshark

無線安全 - 發起無線攻擊

所有型別的無線攻擊可以分為兩類:**被動攻擊和主動攻擊**。大多數情況下,被動攻擊(或更確切地說是被動資訊收集)是發起無線攻擊本身(攻擊的主動部分)之前的第一個步驟。

被動攻擊是指攻擊者不需要與任何其他方通訊或注入任何流量的所有攻擊。在被動攻擊期間,受害者無法檢測到您的活動(因為您沒有采取行動),您只是隱藏並監聽無線電頻率。

被動攻擊本身不被視為違法行為,但是使用透過被動攻擊獲得的資訊可能會被視為違法行為。例如,您可以自由地嗅探(監聽)未加密的流量,將其收集在一起,並檢視實際上這是兩個人之間的對話,但閱讀它並在某些地方使用此私人對話中包含的資訊違反了法律。

被動攻擊示例

現在讓我們看看一些被動攻擊的示例:

破解 WEP 加密

在幕後破解 WEP 加密需要嗅探大量資料包。下一步是在無線幀中獲取相同的 IV 向量,最後一步是離線破解 WEP 加密模型。攻擊中沒有單個步驟需要攻擊者以任何方式與受害者通訊。

破解 WPA/WPA2 加密

要破解 WPA/WPA2 加密,需要嗅探無線客戶端與 AP 之間的 EAP 四向握手。之後,對收集到的加密資料包進行離線字典(或離線暴力破解攻擊)。如果您足夠幸運,您可能根本不需要與受害者通訊,並且攻擊被視為純粹的被動攻擊。

但是,您可能會遇到受害者在您介入之前很久就已經向 AP 進行了身份驗證的情況,並且您不想再等待。然後,您可以在一般的被動攻擊中使用“主動攻擊步驟” - 注入無線去認證幀,強制無線受害者去認證然後重新認證,從而嗅探新的身份驗證四向握手。

嗅探通訊雙方之間的流量

假設您以某種方式知道加密金鑰,您可以嗅探各方之間的通訊(例如使用 Wireshark),然後解碼對話(因為您知道金鑰)。假設各方沒有使用任何本身使用加密的協議(例如純文字 HTTP),您可以自由地檢視使用者正在做什麼並跟蹤他在網際網路上的操作。

另一方面,主動攻擊是指需要主動參與無線流量轉發或注入影響 WLAN 操作的無線幀的攻擊。執行主動攻擊會留下惡意活動的痕跡,因此在某些特定情況下,受害者(使用 Wireshark)收集的轉儲或取證調查人員關於您活動從 WLAN 網絡卡收集的轉儲可能是法庭上反對您的有效證據。如果您決定以惡意方式使用您的知識。

主動攻擊示例

以下是一些主動攻擊的示例:

  • **注入無線流量** - 透過泛洪去認證幀實現的經典第 2 層拒絕服務攻擊示例。攻擊者直接注入影響無線客戶端的無線資料包(告訴他們去認證),導致無線使用者狀態不斷從已認證到去認證地波動,並使整體無線體驗變得非常糟糕。

  • 干擾攻擊 − 如你所知,這是一種第1層拒絕服務攻擊。干擾裝置用於對 Wi-Fi 網路的有效射頻造成干擾,從而導致 WLAN 服務降級。由於攻擊者直接影響無線行為,因此它是一種主動攻擊。

  • 中間人攻擊 − 攻擊者配備了兩張無線網絡卡,可以使用其中一張連線到原始 AP 作為客戶端;並使用第二張無線網絡卡透過模擬 AP 的軟體(airbase-ng 軟體工具)廣播一些虛假的 SSID。這樣,客戶端就會關聯到攻擊者剛剛建立的“偽造 AP”,並且所有客戶端到網際網路的流量都會直接轉發到攻擊者裝置(然後攻擊者可能會對這些資料做任何事情)。

大多數你見過的攻擊,都將是被動步驟和主動步驟的組合。被動的步驟始終是瞭解環境、做好功課並儘可能多地獲取有關潛在受害者的資訊等的良好起點。

同樣的方法適用於你可能看到的任何型別的駭客攻擊,無論是 Web 應用程式駭客攻擊還是社會工程學駭客攻擊或任何其他駭客攻擊方法。至少 80% 的時間將用於被動地收集有關目標的資訊並收集對你下一步攻擊有價值的資料。然後,主動攻擊本身是你整個“攻擊”時間的最後 20%。

無線安全 - 破解無線攻擊

無論何時你可能需要“破解”無線網路,任務都是破解加密、身份驗證或雜湊演算法以獲得某種秘密密碼。

有很多方法可以實現它 -

  • 你可以嘗試使用較弱的加密演算法來破解。這可能是可行的,但坦率地說,現在沒有人會使用可能被破解的演算法,因此,除非你是高階密碼分析師,否則這不會是前進的方向。

  • 大多數方法都集中在使用某種字典或暴力破解攻擊。

為了讓你簡單瞭解這種攻擊是如何執行的,假設我們有一個“我們不知道”的密碼 - “MySecretPassword”。以某種方式,我們獲得了 MD5 和 SHA1 簽名,如下面的螢幕截圖所示 -

MD5 SHA1 Signatures

作為攻擊者,我們的目標是破解這些雜湊演算法並推匯出原始密碼。有很多現成的工具可以用於此目的;我們也可以建立自己的工具。

下面是一個簡單的指令碼(用 Ruby 編寫),可用於字典(型別 – 暴力破解)攻擊 -

Simple Script Ruby

我們將使用一個簡化的字典檔案(我在幾秒鐘內建立的檔案),如下面的螢幕截圖所示。通常在現實生活中,你會使用包含數十萬條詞條的字典檔案(從網際網路下載準備好的字典檔案很流行,你可以嘗試找到一個)。

Simplified Dictionary File

此指令碼背後的想法是遍歷每個密碼,如果計算出的雜湊與簽名匹配,我們就會“嗅探”網路,這意味著我們找到了密碼。

Calculated Hash Matches Signature

我必須說明這是一個簡化的例子,但它完美地展示了概念本身。

在無線網路破解過程中,你很可能會使用一個名為aircrack-ng的工具。它專門用於破解WEP/WPA/WPA2。在 WPA/WPA2 破解的情況下,它將使用字典攻擊(類似於我們上面介紹的簡化版本),並使用兩種可能的字典型別。第一種型別是可以自己準備(或從網際網路下載)的型別,只需在指令碼中引用它即可。另一種方法是依靠預設情況下隨工具安裝的內部airolib-ng字典,這是一種內部字典資料庫。

在不進行任何實際破解的情況下,我將展示如何使用 aircrack-ng。我將使用我在上面示例中建立的非常小的字典(裡面只有 7 個短語,與你在真實字典檔案中找到的數百萬個短語相反)。此外,我不會即時監控任何流量,但我會使用一個.pcap檔案,其中包含我之前使用Kismet工具嗅探的無線流量。

Using Kismet Tool

如你所見,這裡有一堆 WLAN,其中一些使用 WEP 加密,大多數使用 WPA/WPA2。我現在就可以說,在這種情況下,任何型別的破解都會失敗,因為 -

  • 對於使用 WEP 加密的 SSID,我們沒有收集任何流量(“無資料”)。

  • 對於使用 WPA/WPA2 加密的 SSID,我們沒有嗅探到任何握手。如你所知,初始 4 路握手的資料是唯一可能導致破解網路的資訊。資料包本身已加密且能夠抵禦我們的攻擊。

但是,假設我們想嘗試一下,我將以我自己的家庭無線網路“Home_e1000”(索引為 6)為目標。

Home_e1000 Index 6

正如我預測的那樣,我們失敗了。下次,我將確保我們不會失敗,你將能夠學習如何獲勝並破解無線網路 - 我可以告訴你,這感覺很棒。

無線安全 - 射頻監控工具

監控射頻 (RF) 空間的目的是瞭解環境中頻段的使用情況(它是 OSI 層的第 1 層)。大多數情況下,射頻監控是在排除無線連線問題的故障或進行無線站點勘測期間進行的。它們的目標都是相同的,即查詢可能影響 WLAN 網路執行的任何潛在的射頻發射裝置。

可能影響無線網路執行的射頻發射裝置的示例包括微波爐、無線攝像頭或無繩電話。一些其他射頻技術的現實生活示例通常由執法機構使用,當受害者被軟禁時,他們通常會被戴上腳踝上的手環,這是一個射頻發射器。此外,還有一個射頻監控基站,它接收特定射頻頻率上的電磁場。此設定允許機構檢查受害者是否在家中或已離開(如果不再檢測到電磁射頻訊號)。

Cisco Spectrum Expert

你可以用於射頻監控的工具之一是Cisco Spectrum ExpertCisco AP結合使用。一些系列的 Cisco AP 具有名為“CleanAir”的特殊功能,允許將 AP 用作射頻監控器。

Cisco Spectrum Expert

透過將此 Cisco Spectrum Expert 連線到 AP,可以獲得如下面的螢幕截圖所示的頻率利用率圖表。

Frequency Utilization Clients

此螢幕截圖清楚地說明了客戶端在第 6 個通道上使用無線 802.11b 標準的典型頻率利用率。

另一方面,以下螢幕截圖說明了第 1 層頻率掃描的另一個示例,這次檢測到藍牙裝置的使用情況。

Usage of Bluetooth Device

藍牙操作基於跳頻擴頻 (FHSS) 技術,這意味著藍牙裝置將從一個頻率跳到另一個頻率(每秒大約 1600 跳),並影響整個 2.4 GHz 頻譜(如上所示,所有通道從 1 到 11 都受到負面影響)。在無線站點勘測期間進行的適當的射頻檢查應檢測到此活動,無線工程師應針對 802.11 無線訊號傳播的潛在問題發出警報。

AirSleuth Spectrum Analyzer

你可以檢視的另一個工具是AirSleuth Spectrum Analyzer。你可以在以下網站上找到此軟體的資訊和價格 - http://nutsaboutnets.com/airsleuth-spectrum-analyzer/

該工具本身是 802.11 網路發現工具和 2.4 GHz 頻譜分析的組合(Cisco CleanAir AP 支援 2.4 GHz 和 5GHz 兩個頻段)。結果與使用 Cisco Spectrum Expert 獲得的結果非常相似。你擁有擴充套件到 X 軸的 2.4 GHz 頻段,以及直接顯示在圖表上的訊號強度。

AirSleuth Spectrum Analyzer

以下螢幕截圖中的頻率分析是微波爐傳輸的電磁訊號的示例。它具有相當穩定的訊號(與上面藍牙的“跳躍”訊號相比),在為 802.11 Wi-Fi 網路保留的所有 2.4 GHz 頻率上可見。再次完美地說明了干擾,這將降低在 2.4GHz 頻段上執行的 802.11 無線網路的效能。

無線安全 - 藍牙入侵

藍牙是一種無線通訊技術(在 IEEE 802.15.1 標準下描述),可在有限的距離內工作(通常約為 10 米,但根據標準最多可達 30 米)。它在與 2.4 GHz WLAN 部署相同的頻率範圍內工作(從 2.4 GHz 到 2.485 GHz),因此,如果兩者在同一區域使用,則使用藍牙通訊會干擾 WLAN 網路。

Bluetooth communication

為了使用藍牙技術與另一臺裝置通訊,你需要一張特殊的藍牙卡。你在筆記型電腦或智慧手機上使用的普通 Wi-Fi 卡用於 802.11 技術,與基於 802.15 標準的藍牙不相容。市場上一些非常好的藍牙介面卡的示例包括 -

這兩者都與 Kali Linux 系統相容。我個人在本節中使用 CSR4.0 型號。

藍牙裝置可以在三種可用的安全模型之一中執行 -

  • 安全模式 1 - 無保護 − 在此模式下,不使用任何加密或身份驗證。藍牙裝置本身以非區分模式(廣播)工作。

  • 安全模式 2 - 基於應用程式/服務的 − 在此模式下,一旦建立連線,安全管理器就會執行身份驗證,從而限制對裝置的訪問。

  • 安全模式 3 - 鏈路層 PIN 身份驗證/MAC 地址加密 − 在建立連線之前執行身份驗證。即使使用了加密,裝置仍然可能受到攻擊。

無線安全 - 藍牙協議棧

當我們使用 Wi-Fi 通訊(基於 802.11 協議)時,其 OSI 模型的所有層都參與通訊。你始終具有第 1 層,它將是無線物理層(調製和編碼)。接下來,在第 2 層,你將擁有 802.11 標頭。然後,在第 3 層 - 所有 IP 資訊,等等。

對於藍牙協議棧,情況有所不同,因為裝置不必使用協議棧中的所有協議(通訊模型的所有層)。這是因為藍牙是為各種通訊應用程式而開發的,並且是應用程式指定通訊使用藍牙棧的哪一部分。

Bluetooth Stack Communication

藍牙協議層及其關聯協議如下 -

  • 藍牙核心協議基帶 − LMP、L2CAP、SDP

  • 電纜替換協議 − RFCOMM

  • 電話控制協議 − TCS 二進位制、AT 命令。

  • 已採用的協議 − PPP、UDP/TCP/IP、WAP。

協議棧上還可以看到一個額外的元素主機控制器介面 (HCI)。此 HCI 為基帶控制器、鏈路管理器、硬體狀態、暫存器提供命令介面。因此,用於藍牙通訊的所有 Linux 工具的名稱都以“hci”開頭;例如 -“hciconfig”、“hcidump”、“hcitool”。你將在以下部分中看到所有這些工具的實際操作。

無線安全 - 藍牙威脅

如今,每種技術都存在其獨特的威脅和漏洞,藍牙也不例外。藍牙技術的威脅和漏洞可能源於以下幾個方面:

RFCOMM協議棧實現過程中的不良編碼

  • 安全協議棧實現的失敗可能導致緩衝區溢位。

  • 一些製造商可能不會為其部署在終端裝置上的原始程式碼版本釋出任何補丁。

不同協議重用舊服務

  • 一些高度特權的服務處於開放狀態。

IrMC許可權

  • IrMC定義了一組針對常用藍牙物件的訪問許可權。

  • 有時許可權未被遵守或完全開放,從而導致對開放的IrMC服務的利用。

所有提到的漏洞並沒有直接說明——使用藍牙裝置的真正威脅是什麼(知道這些漏洞的存在)。舉幾個例子,攻擊者可能能夠:

  • 竊取資訊。

  • 使用藍牙對終端裝置執行DoS攻擊。

  • 遠端執行程式碼。

  • 注入病毒或蠕蟲。

  • 注入精心設計的連線,透過藍牙裝置(充當代理)進行傳輸。

無線安全 - 藍牙駭客工具

在網際網路上,已經存在數百種可以促進藍牙駭客攻擊的工具。當然,不可能瞭解並知道所有這些工具,在我看來,所需的根本知識是瞭解用於偵察階段的工具。

當你透過這個階段後,你需要決定駭客攻擊的目標是什麼?是注入一些檔案?還是竊取資料?或者執行惡意軟體?根據你的方向,你需要使用不同的工具集。

因此,我們將本章的目標集中在偵察(發現階段)和Kali Linux內部的藍牙駭客工具上。

hciconfig

hciconfig是用於與藍牙裝置(藍牙介面卡)互動的主要Linux命令列實用程式。如果你熟悉Linux,你可能已經看到過其他工具的引用,例如**ifconfig**或**iwconfig**。

ifconfig or iwconfig

從hciconfig輸出中讀取的資訊包括:

  • 介面名稱 - "**hci0**"。

  • 它如何連線到PC(透過USB或內建),這裡指的是USB介面卡。

  • 藍牙介面卡的MAC地址 - 10:AE:60:58:F1:37。

  • 它當前正在執行(UP標誌),並且你可以看到接收(RX)和傳送(TX)的資料包。

hcitool

hcitool是Kali Linux中實現的一個非常強大的CLI工具,允許使用者與藍牙協議棧互動。它也是一個非常棒的工具,你可以在自己的指令碼中使用它。

CLI Tool Kali Linux

hcitool最常用的選項是**scan**和**inq**。

hcitool scan允許你查詢正在傳送其發現信標的藍牙裝置(類似於AP傳送的802.11信標幀)。

Hcitool Scan

正如你所看到的,在附近,兩個啟用藍牙的裝置正在傳送信標幀,以通知它們已準備好接受藍牙連線。你可以嘗試使用**hcitool inq**查詢有關這兩個裝置的更多藍牙資訊。

Hcitool inq

此輸出表示以下裝置屬於類別**0x5a020c**(你可以在此處找到類別的描述和對映:(https://www.bluetooth.com/specifications/assigned-numbers/service-discovery )

sdptool

Kali Linux還內建了一個用於執行**服務發現**(SDP)的工具。它允許你列舉藍牙裝置上執行的所有服務。

Sdptool

l2ping

我們都瞭解IP世界中的ping實用程式,它用於使用**ICMP協議**檢查IP節點之間的連線性。藍牙世界也有自己的等效工具,稱為l2ping。此發現工具允許使用者檢查特定裝置是否在範圍內,並且是否可用於藍牙通訊。

l2ping

這些是允許你使用藍牙技術並對其操作進行良好偵察的基本工具。前面提到的**hcitool**工具,如果你真的想在這個藍牙滲透測試領域發展,你應該花一些時間研究它。

無線安全 - 藍牙攻擊受害者

首先,讓我們定義Bluejacking的含義。它是一個透過藍牙向其他裝置傳送所謂的“電子名片”的過程。我們所知的電子名片型別是包含聯絡資訊(姓名、電子郵件、電話號碼)的卡片,你可以傳送給其他使用者。Bluejacking的工作方式相同,但它不傳送聯絡資訊;取而代之的是,它傳送一些惡意內容。Bluejacking的一個示例如下面的影像所示。

這是你在大多數網際網路資源中看到的Bluejacking定義,這被認為是錦上添花。藍牙駭客攻擊的基本原理是它會為你提供多種選擇。首先是與其他裝置配對。一旦執行此步驟,你就可以在網際網路上查詢執行某些特定惡意功能的工具。這些可能是:

  • 上面提到的,例如傳送帶有惡意附件的電子名片。

  • 從受害者的裝置中提取機密資料。

  • 接管受害者的裝置並進行呼叫、傳送訊息等,當然是在使用者不知情的情況下。

我們現在將向你解釋如何達到與受害者裝置配對的程度。接下來你想做什麼,只取決於你在網際網路上找到的工具和方法,但它幾乎可以是任何事情。

第一步是在本地PC上啟用藍牙服務。

Bluetooth Service

接下來,我們需要啟用藍牙介面並檢視其配置(與物理乙太網介面和無線介面一樣,藍牙介面也有一個稱為BD地址的MAC地址)。

Wireless Interfaces

當我們知道介面已啟動並正在執行時,我們需要掃描藍牙網路以查詢附近可見的裝置(這相當於802.11無線世界中的airodump-ng)。這是使用名為**btscanner**的工具完成的。

Wireless World

從上面的螢幕截圖中你可以看到:

  • 我們本地藍牙裝置的MAC地址是A0:02:DC:11:4F:85。

  • 目標藍牙裝置的MAC地址是10:AE:60:58:F1:37。

  • 目標藍牙裝置的名稱是“Tyler”。

這裡的主要思想是,Tyler的裝置已透過身份驗證並與另一個藍牙裝置配對。為了讓攻擊者將自己偽裝成“Tyler”並直接與其他節點配對,我們需要欺騙我們的MAC地址並將我們的藍牙名稱設定為“Tyler”。

僅供參考,Windows作業系統也有一個**BTScanner**版本。以下是該工具的Windows版本的示例螢幕截圖。

Bluetooth Scanner

為了偽造藍牙資訊,我們需要使用一個名為**spooftooth**的工具(相當於**macchanger**,我們必須使用它來繞過WEP場景中使用MAC過濾的MAC身份驗證)。我們在下面所做的是將我們的藍牙介面卡(hci0裝置)的MAC地址更改為我們使用btscanner找到的地址。我們還將藍牙裝置的名稱更改為“LAB”。這是我用於兩個智慧手機之間藍牙配對設定的本地名稱。

Spooftooth

成功!現在,我們已經克隆了參與藍牙智慧手機到智慧手機通訊的其中一個客戶端的藍牙設定。它允許我們直接與藍牙配對中的另一個裝置通訊。當然,我們需要確保我們已欺騙其憑據的合法裝置已從網路中消失。在現實生活中,這可能需要一些時間,我們必須等到使用者離開藍牙範圍或在其裝置上停用藍牙服務。

無線安全 - 工具

如今,在無線網路中正確實施安全控制至關重要,因為它直接影響到一些企業的盈利能力和資訊機密性。無線安全工具應定期用於測試(稽核)無線實施。良好的無線安全審計不僅是實際測試,還包括適當的文件,包括如何使WLAN更安全的建議。

人們可以嘗試執行許多可能的審計,包括:

  • 第1層審計
  • 第2層審計
  • WLAN安全審計
  • 有線基礎設施審計
  • 社會工程審計
  • 無線入侵防禦系統(WIPS)審計

Wi-Fi安全審計工具

在前面部分,我們列出了一系列可以執行的審計,以評估無線實施的安全狀況。我們將嘗試逐點進行,首先了解特定審計的相關性,其次瞭解如何執行它。

第1層和第2層審計

第1層審計的目標是確定RF覆蓋範圍(基於效能的現場勘測的一部分)並找出潛在的RF干擾源(用於識別第1層DoS源的安全審計的一部分)。在無線安全審計期間,人們會進行頻譜分析以檢測任何連續發射器或故意放置的RF干擾器(導致第1層DoS)。

對於第2層無線審計,目標是檢測任何惡意裝置或未經授權的802.11裝置。在未部署無線IPS(WIPS)監控的環境中執行第2層審計至關重要(否則WIPS將自動執行此工作,因為這是其工作)。

稽核員在執行第2層現場勘測時應關注的要點列表包括:MAC地址、SSID、正在使用的裝置型別、流量型別、正在使用的通道、可能的預設配置、可能發生的第2層攻擊、自組織客戶端等。

在執行第1層或第2層審計時,稽核員可能會使用以下工具:

  • 協議嗅探器/分析器(例如Wireshark)

  • 2.4/5 GHz訊號注入器。

  • 攻擊性工具(mdk3、Void11、Bugtraq、IKEcrack、FakeAP等)。

例如,我將向你展示一個名為**mdk3**的多功能工具。它是一個概念驗證工具,允許利用無線網路。僅舉幾個例子,它允許你執行:

  • 洪泛偽造信標工具(作為模擬偽造AP的一種方式)。

  • 身份驗證幀的DoS(如果存在漏洞,可能會導致AP凍結或重啟)。

  • 解除關聯/身份驗證幀的洪泛(將有效使用者踢出網路)。

  • 802.1X無線安全測試。

  • 濫用無線入侵防禦/檢測系統(WIPS/WIDS)以及其他許多有害行為。

Layer1 Layer2 Audit

使用你的Kali Linux(mdk3工具)建立解除身份驗證幀的第2層DoS非常簡單,可以透過單個命令實現,如下面的螢幕截圖所示。

De-authentication Frames

當然,始終有多種方法可以獲得相同的結果。你可以使用**aireplay-ng**工具獲得相同的效果。"-a"之後的MAC地址是廣播特定WLAN網路的AP的BSSID值。

Aircrack-ng Tool

WLAN安全審計

WLAN安全審計的目標是調查特定WLAN是否以及如何可能被入侵。潛在攻擊者會尋找的弱點型別(以及無線安全稽核員應關注的弱點)主要與身份驗證、加密、已部署WLAN的型別、使用的弱金鑰等相關。

適合此用途的工具包括:

  • 協議嗅探器/分析器(例如Wireshark)。

  • 無線發現工具(例如NetStumbler、Kismet、Win Sniffer、WiFiFoFum等)。

  • 加密/身份驗證破解(測試)工具(aircrack-ng、自定義指令碼、各種密碼分析工具)。

WLAN Security Audit

如你所見,基本的 WLAN 安全審計並不需要專門的軟體。使用智慧手機上的應用程式就可以完成這項工作!

有線基礎設施審計

關於無線網路通訊,為了使整個系統被認為是安全的,其有線部分也需要得到保護。有線基礎設施審計應涵蓋以下要點:

  • 檢查用於限制 WLAN 使用者訪問某些網路資源的防火牆。

  • 應停用未使用的交換機埠介面。

  • 應使用強密碼,並在可能的情況下使用具有內建加密功能的協議(HTTPS、SSH)。

社會工程審計

社會工程是一種利用非技術手段獲取資訊的“攻擊”。與其嘗試破解無線密碼,不如直接索取?也許獲取 WPS PIN 更容易,這樣就可以連線到受保護的 WLAN 了?

這些場景聽起來很不可思議,但我可以向你保證,它們在現實生活中也確實存在。為了防止這種情況發生,最重要的是要意識到哪些資料應該保密,哪些資料可以共享。在家庭環境中,你是網路的“管理員”,只有你才能決定哪些資料應該保密。另一方面,在企業環境中,安全部門將負責釋出安全意識宣傳活動,教育員工如何正確使用無線網路以及哪些行為屬於濫用。

無線入侵防禦系統

在有線網路中,入侵防禦系統 (IPS) 用於執行對穿越資料包的深度資料包檢查,以查詢異常、木馬或其他惡意程式碼。

在無線世界中,原理類似,但側重於對非法無線裝置做出反應,而不是安全事件。無線入侵防禦系統 (WIPS) 專注於檢測和防止未經授權的無線裝置的使用。WIPS 背後的整個理念是在您的基礎設施中配置一些專用於 WIPS 模式下的 AP(不廣播任何 WLAN 網路或允許使用者關聯)。這些 AP 預先配置了特定的頻率通道,並且始終監聽頻譜,查詢異常。

另一種方法是使用一組專用的被動感測器(而不是 AP)來執行此工作。您可能期望看到的不同型別的異常包括:大量身份驗證解除幀或大量關聯解除幀、檢測到由未知 BSSID 的 AP 廣播的 WLAN 等。如果您想到深度資料包檢查或惡意程式碼檢測,它們仍然需要在有線網路上使用專用的 IPS/IDS 裝置進行檢測。

作為攻擊者,您無法執行 WIPS 解決方案,因為它是一種防禦性技術措施。由於其價格和管理開銷,只有大型企業才會執行它(儘管仍然很少見)。WIPS 解決方案的一種可能的部署可以基於思科無線基礎設施模型。思科無線解決方案(在其最簡單的形式中)基於無線區域網控制器 (WLC) 和一組 AP。WIPS 解決方案將假定某些 AP 從常規 WLAN 服務中移除,並設定為 IPS 模式,並專門用於檢查頻譜。

思科無線區域網控制器 (WLC) 的主頁面如下所示(機密欄位已用黑色填充的圓圈覆蓋)。

Wireless Intrusion Prevention Systems

此特定 WLC 當前正在管理 38 個已加入的 AP。所有 AP 的詳細列表,以及它們的 MAC 地址、IP 地址和 AP 模式,可以在“無線”選項卡下檢視。

Wireless Tab

當前已加入的所有 AP 都設定為“本地模式”。這意味著它們專用於提供常規無線覆蓋,並宣佈所有已配置的 WLAN。為了將特定 AP 轉換為我們所知的“IPS 模式”,我們需要點選其中一個 AP 並將其“AP 模式”更改為特殊的“監控模式”。

Monitor Mode

將 AP 設定為“監控”模式並應用更改後,AP 將重新啟動。從那時起,它的唯一工作就是監聽頻譜並檢測無線側攻擊。預設情況下,WLC 有一組預定義的 AP 將查詢的簽名。它們列在以下螢幕截圖中:

Monitor Mode Screenshot

如您所見,專案編號 9 是“Deauth 泛洪”,幀型別為管理,相應操作為報告(這意味著它只會使用日誌訊息通知攻擊,但不會採取任何操作)。

透過我們這裡設定,當潛在攻擊者使用 mdk3 或 aireplay-ng 工具干擾現有 WLAN 網路時,基於思科無線基礎設施 - 攻擊將被檢測到,網路管理員將收到通知。還有其他產品可以將無線安全提升到一個新的水平。使用無線跟蹤服務,該工具可以在一些非常安全的位置檢測您的確切地理位置,也許警衛會來檢查攻擊源,或者可能會報警。

正如我之前提到的,您只能在企業環境中遇到這樣的設定。在較小的部署或家庭環境中,您不會遇到此類安全措施。

無線安全 - Wi-Fi 滲透測試

在本節中,我們跳過所有技術的理論方面,直接進入純粹的實踐活動。請注意,本節中的所有攻擊都在家庭模擬無線環境中執行。使用此處描述的步驟來破壞現實生活中那裡的無線網路是違法的。

無線滲透測試

無線系統的滲透測試比在有線網路上執行更容易。您無法真正對無線介質應用良好的物理安全措施,如果您位於足夠近的位置,您就可以“聽到”(或者至少您的無線介面卡能夠聽到)透過空中傳輸的所有內容。正如您迄今所見,有許多工具隨時準備供您使用。

執行**無線網路滲透測試**所需的額外軟體和硬體如下。這是我個人使用的並且效果很好的套件。

Kali Linux(舊版 Backtrack)

您可以將 Kali 作為 PC 上唯一的作業系統安裝,也可以執行 .iso 檔案。我使用的是第二個選項,即**Oracle VM VirtualBox**(免費軟體),您開啟 Kali Linux 的 .iso 檔案。

無線網絡卡

如果您在 VM VirtualBox 中將 Kali Linux 作為虛擬機器執行,則可以直接在 VM 中使用 PC 的無線網絡卡。為此,您將需要一個外部無線介面卡(良好無線網絡卡的描述已在本文件的初始章節中進行)。我個人使用的是**ALFA AWUS036NH**,我絕對可以感受到它的“強大”。它具有高輸出功率(1W)和內建 5dBi 天線。您可以嘗試將其用於 Wi-Fi 連線,因為它比大多數筆記型電腦附帶的一些“英特爾”網絡卡快得多。

擁有了這些,您就可以開始了。

無線滲透測試框架

無線網路的滲透測試始終分為兩個階段:**被動階段和主動階段**。您可以想象的任何可能的攻擊(無論是無線攻擊還是任何其他攻擊),都始於某種形式的被動階段。

在被動階段,滲透測試人員(或攻擊者)收集有關其目標的資訊。攻擊的不同型別的被動部分可能包括:

  • 對環境進行偵察。

  • 從網際網路、新聞中瞭解目標的安全措施。

  • 與合法使用者討論安全控制。

  • 嗅探流量。

某些測試可能在此階段就已停止。攻擊者有可能直接從不知情的合法使用者那裡獲取了所需的所有資料,或者嗅探到的流量足以執行一些離線攻擊(離線暴力破解、離線字典或相關資訊,例如密碼以明文形式傳輸在嗅探到的資料包中)。

另一方面,如果這還不夠,那麼就會進入第二個階段,即主動階段。攻擊者在此階段直接與受害者互動。這些可以是:

  • 傳送網路釣魚電子郵件直接索取使用者憑據。

  • 注入無線幀以刺激某些特定操作(例如:身份驗證解除幀)。

  • 建立假 AP,合法使用者將使用該 AP 連線到無線網路。

本章中描述的所有攻擊都屬於被動攻擊或被動攻擊和主動攻擊的組合。當讀者瀏覽這些攻擊時,很容易發現被動階段何時結束以及主動階段何時開始。

未加密WLAN的滲透測試

當使用未加密的 WLAN(開放式身份驗證)時,您的無線網路沒有任何保護。任何位於 AP 周圍並且可以聽到訊號的人都可以加入並使用網路。整個身份驗證過程非常簡化,包括如下所示的身份驗證/關聯交換:

Pentesting Unencrypted WLAN

在實驗室設定中,我準備了一個 SSID 為“LAB-test”且使用開放式身份驗證的 WLAN。作為攻擊者,您首先需要進行一些被動掃描以檢測此類網路,所以讓我們開始吧!第一步,我將啟用我的無線網絡卡並使用 airmon-ng 實用程式建立一個 WLAN 監控介面。

WLAN Monitoring Interface

下一步是使用“airmon-ng mon0”檢查無線網絡卡聽到的 WLAN。

Check WLANs

我的無線網絡卡能夠看到通道 1 上的“LAB-test”SSID,由 MAC 地址(BSSID)為 00:18:0A:6D:01:30 的 AP 廣播。在加密列中,您可以看到字母“OPN”——這意味著存在開放式身份驗證(實際上,這意味著根本沒有身份驗證)。

在 Windows PC 上,具有開放式身份驗證的 WLAN 用感嘆號標記,作為不安全 WLAN 環境的警告,如下所示(與受保護 WLAN 旁邊缺少其他標記相比):

Warning Unsecure WLAN Environment

我們可以嘗試模擬無線客戶端是否能夠連線到此 SSID。我們可以使用**aireplay-ng**實用程式來實現。

Connect SSID

如您所見,身份驗證和關聯過程順利進行,任何無線客戶端都可以加入網路。

改進此不安全環境安全性的唯一機制是實施MAC地址過濾。此功能在前面已經描述過,因此我將直接跳到實踐部分。

在AP本身,我將實施MAC地址過濾,只允許MAC地址為98:0d: 2E:3C:C3:74的客戶端加入無線網路(這是我的智慧手機)。

然後,當我使用aireplay-ng重複身份驗證過程時,這次它失敗了。

Authentication Process Fails

在我將mon0介面的MAC地址更改為我的智慧手機的MAC地址後,我再次獲得了成功的身份驗證。

Change MAC Address

如今,您不太可能遇到開放式身份驗證WLAN。但瞭解所有這些舊的部署型別也是非常好的。

無線安全 - WEP加密WLAN

如前所述,WEP是第一個無線“安全”模型,它添加了身份驗證和加密功能。它基於RC4演算法和24位的初始化向量(IV)——這是實現的最大缺點,導致WEP在幾分鐘內即可被破解,我將在接下來的頁面中展示。

我將再次使用“LAB-test” WLAN,這種型別使用以下金鑰“F8Be4A2c39”進行WEP加密。它由數字和字母組成,長度為10個字元——從密碼強度角度來看——金鑰相對較強。

與上一個示例相同,我們將從airodump-ng開始,被動地收集有關WLAN的一些資訊。

Collect Information about WLAN

如您所見,“LAB-test”在通道1上由BSSID為00:18: 0A:6D:01:30的AP廣播。加密模型為WEP,以及WEP密碼(基於弱RC4演算法)。在下方您可以看到有關STATION的資訊——實際上這是連線到特定WLAN的無線客戶端列表。在BSSID 00:18:0A:6D: 01:30(即我們的LAB-test)上,我們有98: 0D:2E: 3C:C3:74(猜猜那是什麼?是的,是我的智慧手機)。

我們需要執行的下一步是收集此客戶端透過空中交換的資料包。您還記得,資料包包含IV向量。如果我們收集到足夠包含IV的資料包,我們最終將達到擁有弱IV向量集的程度——這將使我們能夠推匯出WEP密碼。所以讓我們開始吧!首先,我們將使用已知的實用程式airodump-ng來嗅探特定BSSID(LAB-test的BSSID)的無線通訊。

Derive WEP Password

如您所見,隨著流量的流動,收集到的資料包數量也在增加。此時我們有61個數據包,明智的做法是至少有25000個!

幾分鐘後,當計數器達到至少25000時,我們可以嘗試使用工具aircrack-ng推匯出金鑰。

aircrack-ng Tool1

aircrack-ng Tool2

如您所見,僅僅透過被動監聽網路(並收集足夠的資料包),我們就能夠破解WEP加密並推匯出金鑰。現在,您可以自由訪問無線網路並使用網際網路。

滲透測試WPA/WPA2加密WLAN

WPA/WPA2是安全無線網路的下一個發展階段,它是在WEP被證明不安全後出現的。這些協議使用的演算法更加安全(WPA:TKIP和WPA2:CCMP/AES),使得使用我們對WEP所採用的相同方法來破解網路變得不可能。

破解WPA/WPA2基於相同的思想——嗅探最初的4路握手並應用暴力破解攻擊來破解加密密碼。

為了說明此示例,我將再次使用“LAB-test” WLAN,這次使用以下金鑰“F8BE4A2C”進行WPA2加密。您還記得從前面的章節中,成功和暴力破解密碼所需的時間取決於密碼的複雜性。我在這裡使用的密碼可能足夠弱,可以在相對合理的時間內被破解。在實際環境中,您應該只看到長度超過10個字元且包含所有型別的字母數字符號的密碼——這樣,暴力破解它將需要數年時間。

與上一個示例相同,我們將從airodump-ng開始,被動地收集有關WLAN的一些資訊。

WLAN Information

如您所見,確實有使用CCMP加密的WPA2保護的“LAB-test”SSID。當前連線到LAB-test的客戶端是我的另一臺PC,其MAC地址為84: A6:C8:9B: 84:76。

Lab-test

第一步是啟用對(這次我們不太關心資料包)LAB-test上的流量的嗅探,以便收集AP和無線客戶端(我的PC)之間的初始4路握手。

Enable Sniffing

如您在下面看到的,每次有新使用者加入網路時,airodump都會嗅探4路握手。

New User Joins Network

由於我們已將這些握手收集到一個檔案中,因此我們已準備好破解密碼。唯一缺少的元素是包含可能密碼的字典檔案。您可以使用許多工具,如john、crunch,或者您甚至可以從網際網路上下載字典檔案。在此示例中,我將展示crunch,但請隨意嘗試您可能找到的所有解決方案。請記住,天空才是極限。

Crack Password

如您所見,crunch可以為您建立字典。假設我們想要擁有所有長度不超過8個字元的數字和字母密碼。並且假設數字可以是0到9,字母可以是A到F。為什麼我們要設定這些限制(關於密碼的假設)?——因為,如果您想要擁有一個包含所有由數字0-9、字母a-z和A-Z組成的密碼組合的檔案,您將需要18566719 GB的空間(!!!)。

所以首先我們建立所有組合並將它們放入字典檔案中。

Dictionary File

然後,我們使用aircrack實用程式引用此字典檔案以嘗試推匯出正確的金鑰,如下所示:

Aircrack Utility

aircrack-ng在檔案中找到了8個BSSID,因此它會詢問您——您想要破解哪個WLAN——我引用了編號2——“LAB-test”網路。

逐一檢查每個密碼是一個非常漫長的過程。找到正確密碼所需的時間取決於密碼在字典檔案中的位置(如果您幸運,您可以在第一次猜測時找到密碼,如果密碼位於字典檔案的第1行)。在此示例中,如您所見,我找到了密碼,但這花費了8小時47分鐘(!!!)。使用10個字元而不是8個字元的密碼可能會將時間增加到幾天甚至幾周。

Found Password

您必須記住,字典越長,破解密碼所需的時間就越長。而且,正如我之前多次強調的那樣,如果密碼非常複雜且很長,則在計算上根本無法執行破解(在有限的時間內,比如不到10年)。

LEAP 加密WLAN滲透測試

輕量級可擴充套件身份驗證協議(LEAP)是基於Cisco的傳統身份驗證協議,它使用外部RADIUS伺服器來驗證使用者身份。它使用雜湊函式(MS-CHAP和MS-CHAPv2)執行無線客戶端和身份驗證伺服器的偽雙向身份驗證。

LEAP的漏洞在於:

  • 使用者的使用者名稱以明文傳送——因此駭客只需要獲取使用者的密碼,例如,使用社會工程學。

  • 使用者的密碼使用MS-CHAPv2被破解——該演算法容易受到離線字典攻擊。

與之前的情況一樣,讓我們從airodump-ng開始,找出環境中廣播了哪些WLAN。

Broadcast WLANs

如您所見,WLAN“LAB-test”顯示為WPA2網路。此型別的身份驗證模式更改為“MGT”——這意味著沒有靜態預共享金鑰(PSK),但身份驗證服務已移至外部身份驗證伺服器(例如RADIUS)。此時,您無法判斷特定WLAN網路是基於LEAP、PEAP、EAP-TLS、EAP-TTLS還是其他型別的EAP技術。

下一步是啟用Wireshark,以便檢視資料包詳細資訊——它為滲透測試人員提供了許多有價值的資訊。

Enable Wireshark

如您所見,身份驗證伺服器首先嚐試協商EAP-TTLS,但客戶端拒絕了。在接下來的2條訊息中,他們同意使用LEAP。

在前2條訊息中,身份驗證伺服器請求使用者名稱(標識),客戶端回覆——如您所見,客戶端的回覆以明文傳輸。

Clients Reply

此時,我們已經知道無線客戶端的有效使用者名稱是“LAB_user”。為了找出密碼,我們將檢視請求/響應交換。

Request Response

在802.1x身份驗證報頭的底部,您可以看到身份驗證伺服器使用挑戰文字“197ad3e4c81227a4”向無線客戶端發起了挑戰。然後,在後臺,無線客戶端使用了與LAB_user的密碼結合的MS-CHAPv2演算法,並得到了值“ef326a4844adb8288712a67e2dc659c4f9597dc4a7addc89”的雜湊值,並將其傳送回身份驗證伺服器。正如您從前面的章節中瞭解到的,幸運的是,對我們來說,MS-CHAPv2容易受到離線字典攻擊。為此,我們將使用一個非常常見的破解LEAP密碼的工具,稱為asleap

Asleap

如您所見,基於資料包捕獲,asleap能夠推匯出802.1X資料包交換中的所有資訊並破解MS-CHAPv2雜湊。使用者“LAB_user”的密碼是“f8be4a2c”。

再說一次,您極不可能在生產環境中看到LEAP身份驗證——至少現在您已經非常清楚原因了。

廣告