初探無線安全審計設備WiFi Pineapple Nano系列之PineAP

前言:   

以前曾經介紹過國外無線安全審計設備The WiFi Pineapple Nano的SSLsplit模塊和ettercap模塊及實驗php

在玩WiFi Pineapple Nano 設備的過程當中,鑑於我的手頭只有幾塊網卡,測試下來發現Nano可以支持的網卡芯片有:RTL8187L 、RT3070、AR927一、RT5370…,諸位朋友在本身測試的過程當中若是發現網卡識別不到的狀況,請參考採用剛纔提到的幾塊芯片的網卡。html

今天給你們介紹下Pineapple Nano的一個主要功能模塊PineAP和其餘幾個涉及配合PineAP工做的幾個模塊的使用方法。web

0×01 Recon模塊

目前來講,針對無線掃描類的工具可分爲兩大類型:被動式(passive)和主動式(active)。瀏覽器

被動式掃描的原理是按照不一樣的channel上,監聽(monitor)信道中全部無線信號的通訊數據包,經過分析數據包內容來獲取AP和客戶端的信息。安全

主動式掃描是採起週期性的向周圍發射探測類的請求數據包(Probe Request),帶有無線網卡的筆記本開機後網卡自動接入操做系統已知AP熱點的過程即是主動式掃描的一個實例。因爲兩者實現的原理不一樣,簡單來講被動式掃描的效果比主動式掃描會好不少。app

下面咱們來看一下WiFi Pineapple Nano中Recon模塊的具體功能。ide

WiFi Pineapple Nano中Recon模塊的具體功能

首先,Recon模塊採用被動式掃描方式,掃描過程會自動將網卡設置爲監聽模式,監聽周圍不一樣信道上的(客戶端)發出的各類數據包。工具

Recon可以掃描出SSID、MAC地址、加密方式、是否啓用了WPS功能、信道及信號強度等信息,Recon甚至還能掃描出當前未鏈接任何AP的客戶端。測試

WiFi Pineapple Nano中Recon模塊的具體功能

在執行掃描操做時,只須要按照預設的掃描時間(如15s、30s、60s…)等,點擊「Scan」便可一鍵式啓動。若是勾選「Continuous」的話,掃描將會持續進行,即不停地向周圍進行探測並將結果顯示出來。加密

在你們使用Recon模塊過程當中,最可能會遇到的問題是出現此種狀況:在點擊「Scan」後,出現「There was an error starting Recon…」

WiFi Pineapple Nano中Recon模塊的具體功能

出現此問題時建議你們先檢查下Networking設置下面的WiFi Client Mode,其中的Interface名稱是不是「wlan1」。

WiFi Pineapple Nano中Recon模塊的具體功能

由於在該模塊的代碼層面,採用的默認接口的變量名稱就是「wlan1」,若是Interface的名稱不是默認「wlan1」的話,便會出現上圖的錯誤。

解決辦法有兩種:

第一種,只插一塊外置網卡默認名自動爲wlan1;

第二種是修改Recon模塊的變量名爲當前顯示的Interface名稱(例如改成wlan二、wlan3…)。

WiFi Pineapple Nano中Recon模塊的具體功能

總的來講,Recon模塊的基本功能就是如此,簡單而強大。

0×02 Logging模塊

PineAP模塊在Logging中對日誌進行Filter

上圖是PineAP模塊在Logging中對日誌進行Filter,例如能夠進行去重、刷新、刪除、下載等操做,還支持根據SSID或MAC地址功能進行過濾。

Nano system系統日誌

上圖爲Nano system系統日誌

總的來講,WiFi Pineapple Nano的Logging模塊比較簡單,主要是用來過濾查詢PineAP模塊的日誌。

0×03 Landing Page

Landing Page

本質上來講Landing Page功能並不屬於一個獨立的模塊,僅僅放置在了Pineapple Nano中Configuration的設置下。

Landing Page啓用後能夠將全部鏈接到Pineapple Nano上的客戶端,強制定位到的一個門戶web頁面,這個web能夠有咱們自定義,支持html、js、php語言等,後面咱們會看到一個關於Landing Page功能的簡單實例用法。

0×04 PineAP模塊

PineAP模塊

接下來介紹咱們本文的主要角色:PineAP,提到PineAP可能有部分同窗沒有聽過它的名字,但熟悉無線安全測試領域的同窗確定聽過Karma,基本上PineAP等同於Karma(一樣只能對於曾鏈接過OPEN模式的客戶端起做用)。

簡單說,PineAP是經過僞造的Probe Response響應包來響應周圍的客戶端(多是筆記本、手機、pad等等),讓客戶端覺得周圍存在着曾經成功鏈接過的無線AP,而用來欺騙客戶端進行鏈接咱們的Pineapple Nano設備。

(Probe Response對應咱們上文提到過的掃描請求數據包Probe Request,對於PineAP或Karma的功能還有疑問的同窗,可參考freebuf上的其餘幾篇相關文章

下面咱們對PineAP在web界面中的幾個選項作一個解讀。首先,開啓PineAP功能須要點擊圖中「Switch」按鈕,使其「Enable」,而後勾選上面三個選項「Allow Associations」、「Log Probes」、「Log Associations」,再勾選下面「Beacon Response」選項,再將Beacon Response Interval的模式選擇爲「Normal或Aggressive」,最後Save一下便可。

Allow Associations:啓用後容許(接受)全部周圍客戶端的探測或鏈接請求,一般是配合Filters模塊進行過濾時候來用,通常狀況下咱們都是Allow。

Log Probes、Log Associations:一個是記錄周圍客戶端對Pineapple Nano的請求日誌,另外一個是客戶端與Pineapple Nano的鏈接日誌,這些日誌信息記錄在Logging模塊中,方便咱們進行查詢。

Beacon Response:啓用後即模擬真實的無線AP來響應那些周圍的對Pineapple Nano發出Probe Request請求的客戶端(採用一對一,而非廣播模式)。

Beacon Response Interval:是用來選擇Beacon Response響應包的發送速率,通常是Normal或Aggressive,須要注意的是Aggressive模式將消耗更多的cpu資源。

以下圖所示,在點擊Save後,就啓用了PineAP的功能,過一會咱們就能夠在Logging中查看周圍有哪些客戶端以及它們曾經都鏈接過那些AP了。

啓用PineAP的功能

繼續等待一段時間後,即可以看到有兩個客戶端被咱們成功欺騙,鏈接了上來。

(這裏可否成功鏈接到咱們Pineapple Nano設備與周圍客戶端的具體設備狀況和真假AP的信號強度有關,本文在實驗過程當中也是試了好久)

PineAP模塊

當這個時候,咱們若是啓用上文提到過的Landing Page功能惡搞這些客戶端一下呢?這些客戶端在訪問任意網頁時候就會看到這樣:

PineAP模塊

甚至在Dashboard面板上,咱們能夠看到有多少客戶端的瀏覽器訪問過咱們設計的Landing Page頁面。

Landing Page頁面

若是咱們在作的深刻一點:

Landing Page頁面

相似作成下圖這樣:

Landing Page頁面

更多具備創造性的頁面設計,留給全部感興趣的同窗本身去親自嘗試吧。

相關文章
相關標籤/搜索