1. 程式人生 > >ESP8266 wifi釣魚

ESP8266 wifi釣魚

原文連結:

https://www.cnblogs.com/xiaowuyi/p/6980072.html

https://www.cnblogs.com/xiaowuyi/p/7110652.html

0×00 前言

         前段時間用TPYBoard v202 做了一個簡單的WIFI干擾攻擊器(ps :沒有看過的小夥伴,可以看一下:http://www.freebuf.com/column/136985.html ),最近幾天,一直在想,如何用微控制器實現一次較完整的wifi攻擊。於是結合釣魚考慮是否能利用微控制器成功拿到wifi的登陸密碼。

0×01 攻擊構思 

        第一步,利用tpyboard v202將wifi干擾;

        第二步,將v202的ssid和通道改為與受干擾wifi相同的SSID及通道;

        第三步,製作釣魚頁面;

        第四步,受干擾使用者極有可能去連線虛假的WIFI,當用戶連線後,無論使用者訪問哪個網路都會跳出偽裝的釣魚頁面,從而誘導其寫入密碼。

        第五步,當密碼寫入後,v202後嘗試驗證密碼的正確性,如果正確將停止干擾,並將密碼通過tpyboard存入TF卡,否則繼續幹擾。 

0x02 搭建開發環境

         1、首先你的需要TPYB oard v202和TPYBoard V102(用於接收密碼資訊)開發板各一塊,tpyboard V102自帶TF卡,而且用python程式設計,相對來說操作較簡單,且能支援儲存。 

         2、網上下載了一個使用esp8266 製作Deauth無線攻擊的 開源韌體,是arduino開發的。 github下載地址:

https://github.com/PakchoiFood/TPYBoard-v202-v102-EvilPlans 裡面包含了arduino IDE(arduino-1.8.2-windows.exe )、韌體原始碼(esp8266_wifi.rar )、TPYBoard v102的原始碼(TPYBoard v102.rar)和串列埠除錯工具(XCOM V2.0.rar )。另外,還需要esp8266開發包(Arduino15-2.rar )可以從下面連結:http://pan.baidu.com/s/1pLnwz7l  下載。

        3、下載完畢後,解壓

 

esp8266_wifi.rar的韌體是在上一篇【邪惡改裝:TPYBoard製作廉價WIFI干擾器】的實驗基礎上做了修改,使用串列埠和TPYBoard v102進行連線,將獲取到的WIFI密碼傳遞給v102,v102接收到正確的密碼後,進行TF卡的儲存,同時也記錄下攻擊日誌。

        4、雙擊arduino-1.8.2-windows.exe 安裝arduino IDE。(如果你已經安裝過arduino IDE,這步可以省略)。

        5、安裝完畢後,開啟arduino,選單找到 檔案—》首選項,點選紅色區域進入SDK目錄。我的路徑是:C:\Users\Sen\AppData\Local\Arduino15。

 

 

        6、解壓Arduino15-2.rar,將裡面的全部內容直接覆蓋C:\Users\Sen\AppData\Local\Arduino15下的檔案。

 

0x03編譯燒寫韌體及程式程式碼

        1、如果你對V102及V202的使用方法不熟悉,可以參考TPYBoard 官方docs網站http://docs.tpyboard.com/zh/latest/tpyboard/tutorial/ 

TPYBoard v102 原始碼(main.py)

 

複製程式碼
import pyb
from pyb import UART
 
u4=UART(4,115200)
mkdir_='/sd/log.txt' #需先插入TF卡 新建log.txt 
pyb.LED(2).on()
while True:
    if(u4.any()>0):# 判斷串列埠是否有資料
        _mag=''
        pyb.LED(3).toggle()
        f=open(mkdir_,'a')
        _data=u4.readline()#讀取一行資料
        _dataMsg=_data.decode('utf-8')#將位元組資料轉碼成utf-8 編碼的字串
        print('_dataMsg:',_dataMsg)
        #解析資料
        _index_h=_dataMsg.find('tpyboardpwd')
        _index_e=_dataMsg.find('*')
        if _index_h>-1 and _index_e>-1 and (_index_e-_index_h)>11:
            _dataMsg=_dataMsg.replace('tpyboardpwd','').replace('*','')
            print('GetPwd:',_dataMsg)
            _mag=_mag+'---------------attack log------------\r\n'
            _mag=_mag+'SSID:'+_dataMsg.split('+')[0]+'--'+'PWD:'+_dataMsg.split('+')[1]
            print('-------------------------\r\n')
            pyb.LED(4).toggle()
        if _mag!='':
            f.write(_mag)#將獲取到的SSID和PWD 儲存在日誌檔案中
        f.close()
複製程式碼

 

        2、TPYBoard v202的使用

        (1)解壓esp8266_wifi.rar,arduino IDE選單欄 檔案-》開啟esp8266_wifi原始碼包下的esp8266_deauther\esp8266_deauther.ino

       (2)TPYBoard v202 使用micro USB資料線接入電腦。檢視安裝的usb轉串的埠。開啟電腦的裝置管理器(這裡是COM44)。

 

        (3)工具-》埠,選擇COM44(根據自己的實際埠號選擇)

 

 

        (4)選單欄下面的綠色圖示選單區,選擇上傳,開始編譯,燒寫韌體

 

 

        (5)檢視最下方的日誌區域

等待編譯完成,出現上圖資訊(狀態:變為“上傳”)時,按住FLASH的同時,按一下RST按鍵鬆開,讓TPYBoard v202復位一下,繼續按著FLASH,出現下面的資訊時就可以鬆開FLASH按鍵了。

 

0x04硬體的連線

        程式碼和程式都完成了,接下來需要將TPYBoard v102和TPYBoard v202 的串列埠連線起來。 連線示意圖:

連線實物圖:

0x05 測試效果

1、 用自己家的WIFI做測試,先用手機接入WIFI(Tend_01CB30)。

2、解壓XCOM V2.0.rar(或者使用其它的串列埠工具),解壓雙擊執行XCOM V2.0.exe 串列埠助手。開啟串列埠選擇V202所在串列埠(我的是COM44), 波特率改為115200 ,其餘預設,開啟串列埠,就可以看到v202列印的資訊了。

ps:剛才v202燒寫完韌體後會馬上自啟動所以這裡先復位一下v202按一下RST,這樣我們就可以看到從開始到最後的整個過程了

 

 

        3、大家可以看到,v202啟動會搜尋到了很多附近的WIFI,然後它就判斷出那一個訊號最強,我這裡剛好是我家的最強,於是v202開始攻擊[Tend_01CB30] 這個WIFI,同時也會建立一個開放的[Tend_01CB30]熱點。攻擊時,v202上的小藍燈會常亮。

 

 

        4、此時手機已經連線不到原有路由器的[Tend_01CB30]的WIFI。這時,如果換成完全不知情的別人,極有可能會去手機設定裡面看,怎麼連線不上網路了?

        5、此時,他只能連線到我們偽裝的WIFI上來。

        6、當其成功連線到偽裝的WIFI後,只要開啟瀏覽器,輸入任何網址,都會自動跳轉到虛假網路密碼確認頁面。

 

 

 

        7、測試輸入12345678點選確認,串列埠除錯助手中可以看到獲取到的WIFI密碼,然後停止攻擊,小藍燈會熄滅。

        8、同時,v202會自己先去嘗試連線,來驗證密碼的準確性,如果連線成功的話,會自動將密碼傳送給v102 進行儲存;如果連線失敗,v202會繼續進行干擾攻擊。

 

 

        9、檢視一下TF卡中的log.txt檔案,是否記錄了剛才破解的密碼。

0×06 擴充套件

        本實驗做的有點粗,可以再做精細一點,比如V202完全由V102來供電(將V102的5V、GND與V202的VIN、GND連線),這樣就是一整套裝置,只需要加個電源供電就可以長期放在一邊,靜等密碼了。呵呵。

 

【免責宣告】

        以上方法,僅做學術研究,請不要在非合法情況下實施攻擊,這種行為將會被視作非法活動。由本軟體所造成的任何不良後果,作者將不承擔任何責任,請各位謹慎使用。