文章目录

  • 一.前言
  • 二.准备
    • 1.网卡
    • 2.虚拟机
    • 3.系统
  • 三.原理
    • 1.原理
    • 2.步骤
  • 四.实战
    • 1.网卡设置
      • 1.1查看网卡
      • 1.2.切换网卡模式
      • 1.3再次查看网卡
    • 2.AP扫描
    • 3.mdk3创建虚拟wifi
      • 1.创建一个虚拟wifi
      • 2.创建大量wifi
    • 4.扫描连接wifi的设备
    • 5.向指定AP发起DoS攻击
    • 6.向指定AP发起取消认证攻击
      • 1.攻击单一AP
      • 2.按照信道攻击AP
  • 五.总结
  • 六.参考

一.前言

本次依然使用Kali系统,配合mdk3进行wifi伪造、连接设备查看、解除认证攻击。
本次实验只用于学习交流,攻击目标为自家的路由WiFi,请勿违法!

二.准备

1.网卡

3070或者8187网卡,博主使用的是某鱼上买的二手8187网卡。
大家也可以根据下面的表格选择合适的网卡。

在上面的表格中,列出了支持的网卡驱动、制造商、是否作为AP、是否支持监听及支持的协议模式。在表格中,?表示不确定,yes表示支持,no表示不支持。

2.虚拟机

使用Windows主流虚拟机软件:VMware虚拟机

产品:VMware® Workstation 16 Pro
版本:16.2.3 build-19376536

3.系统

系统是重点,选用的是Kali系统,也可以选用支持mdk3的ubuntu等系统。

三.原理

这里再说一下解除认证攻击。

1.原理

取消验证洪水攻击,国际上称之为De-authenticationFloodAttack,全称即取消身份验证洪水攻击或验证阻断洪水攻击,通常被简称为Deauth攻击,是无线网络拒绝服务攻击的一种形式,它旨在通过欺骗从AP到客户端单播地址的取消身份验证帧来将客户端转为未关联的/未认证的状态。对于目前广泛使用的无线客户端适配器工具来说,这种形式的攻击在打断客户端无线服务方面非常有效和快捷。一般来说,在攻击者发送另一个取消身份验证帧之前,客户站会重新关联和认证以再次获取服务。攻击者反复欺骗取消身份验证帧才能使所有客户端持续拒绝服务。
需要说明的是,De-authenticationBroadcastAttack即取消身份验证广播攻击和De-
authenticationFloodAttack即取消身份验证洪水攻击原理基本一致,只是在发送程度及使用工具上有所区别,但前者很多时候用于配合进行无线中间人攻击,而后者常用于纯粹的无线D.O.S,所以很多不够清楚的无线安全资料上会将两者放在一起提及。

2.步骤

取消身份验证洪水攻击具体步骤如下:
攻击者先通过扫描工具识别出预攻击目标(无线接入点和所有已连接的无线客户端)。
通过伪造无线接入点和无线客户端来将含有de-authentication帧注入到正常无线网络通信。
此时,无线客户端会认为所有数据包均来自无线接入点。
在将指定无线客户端“踢出”无线网络后,攻击者可以对其他客户端进行同样的攻击,并可以持续进行以确保这些客户端无法连接AP。
尽管客户端会尝试再次连接AP,但由于攻击者的持续攻击,将会很快被断开。
下图为笔者绘制的取消身份验证洪水攻击原理图,可看到攻击者对整个无线网络发送了伪造的取消身份验证报文。

四.实战

在软件硬件环境都准备好的前提下,打卡Kali系统,将网卡挂载到虚拟机,就可以开始实战了。

1.网卡设置

1.1查看网卡

使用下面命令查看我们挂载到Kali的网卡

ifconfig


wlan0就是我们的8187网卡。

1.2.切换网卡模式

要使用mdk3工具,要把网卡切换到监听(混杂)模式。
使用下面命令切换wlan0网卡为监听模式

airmon-ng start wlan0

1.3再次查看网卡

再次查看网卡状态,确认是否为监听模式

ifconfig

或者

iwconfig


现在网卡状态已经为监听(monitor)状态了

2.AP扫描

通过AP扫描,可以扫描附近的wifi信号,拿到wifi的相关信息,后面攻击要用到。
输入下面的命令进行AP扫描

airodump-ng wlan0mon

扫描一会,发现wifi的数量不怎么改变了,就可以按下ctrl+c停止扫描了
本次要攻击我自己的路由器,也就是上图中红框中的wifi。图中列出了许多扫描到的wifi,每个字段解释见下表

字段解释
BSSID接入点的MAC地址,在客户端部分,“(not associated)”表示客户端没有连接到任何接入点。在这种没有连接的状态下,它一直会搜寻接入点
PWR网卡反馈的信号水平,它的数值是驱动决定的,但是离接入点或基站越近,信号数值就会变得越大。如果接入点的PWR是-1,则表示驱动不支持信号水平;如果部分station的PWR是-1,则表示网卡能接收到接入点的数据包,但是却超出了网卡的传输范围。这就意味着我们只能监听到1/2的信息交流。如果所有station都是-1,则表明驱动不支持显示信号水平
Beacons接入点发出的公告报文的数量,每个接入点每秒大概发送10个公告包(以最低的速率1M),所以通常相距较远时也能收集到它们
Data捕捉到的数据包的数量(如果是WEP,则是不同IV的数量),包括数据广播包
CH无线信道(从beacon包中得到),注意:即使固定了信道,有时也会捕捉到其他信道的数据包,这时由于无线电干扰造成的
MB接入点支持的最大速度。如果MB=11,就是802.1b,如果MB=22,就是802.1b+,更高的就是802.1g。如上图54后的小数点表示支持短前导码,11后面的e表示该网络支持QoS
ENC表示使用的加密算法。OPN表示没有加密,“WEP?”表示不确定是WEP还是WPA/WPA2;WEP表示静态或者动态的WEP,TKIP或者CCMP表示WPA/WPA2
CIPHER检测出的密码体系,CCMP,WRAP,TKIP,WEP,WEP40和WEP104中的一种。虽然不是必须的,但是TKIP通常用于WPA,CCMP常用于WPA2。当键字索引大于0时,会显示WEP40。(40位时,索引可以是0-3;104位时,索引需为0)
AUTH使用的认证协议。GMT(WPA/WPA2 使用单独的认证服务器),SKA(WEP共享密钥) ,PSK(WPA/WPA2 预共享密钥),或者OPN(WEP开放认证)
ESSID无线网络名称。也叫“SSID”,如果开启SSID隐藏模式,则此项为空。在这种情况下,airodump-ng会尝试通过探测响应和关联请求恢复SSID

3.mdk3创建虚拟wifi

1.创建一个虚拟wifi

输入下面命令来创建一个叫做“test_wifi”虚拟wifi。

mdk3 wlan0mon b -n test_wifi


发现确实创建了一个叫做“test_wifi”的wifi。

2.创建大量wifi

输入下面命令来创建大量在信道为1随机名字的wifi

mdk3 wlan0mon b -g -c 1


不一会,就创建了几十个wifi。
PS:伪AP的名字可以通过读取本地文件创建

mdk3 wlan0mon b -f /root/names.txt -c 6 -s 1000

解释一下上面命令:读取/root/names.txt文件每隔1000ms在6信道上创建伪AP,大家可以自行尝试。

4.扫描连接wifi的设备

使用下面命令可以扫描连接wifi的设备。请自行替换目标MAC地址

mdk3 wlan0mon w -e [MAC]

5.向指定AP发起DoS攻击

这是一种验证请求攻击模式:在这个模式里,软件自动模拟随机产生的mac向目标AP发起大量验证请求,可以导致AP忙于处理过多的请求而停止对正常连接客户端的响应;这个模式常见的使用是在reaver穷据路由PIN码,当遇到AP被“pin死”时,可以用这个模式来直接让AP停止正常响应,迫使AP主人重启路由,对于有些路由器防DOS的这个不好用。

输入下面命令,向指定AP发起DOS攻击。请自行替换目标MAC地址。

mdk3 wlan0mon a -a [MAC]


这个攻击对于我的路由器貌似没什么效果,可能是我的路由器防DoS或者是攻击时间太短请求都能够正常处理。

6.向指定AP发起取消认证攻击

这个攻击测试是本篇博文的重头。

1.攻击单一AP

使用以下命令可以强制解除验证解除连接的设备。请自行替换目标MAC地址

mdk3 wlan0mon d [MAC]

连接此wifi的全部设备都会解除验证解除连接(掉线)直到停止攻击。

2.按照信道攻击AP

在这个模式下,软件会向周围所有可见AP发起循环攻击…可以造成一定范围内的无线网络瘫痪(当然有白名单,黑名单模式),直到手动停止攻击


我的手机、电脑直接掉线了。。果断ctrl+c停止了

五.总结

本次使用Kali系统演示了mdk3的一些用法,包括创建伪AP、连接设备扫描、DoS攻击路由器、取消验证攻击…撰写本篇也是参考了大量资料,所以能给我点个赞嘛?最后,望大家谨慎操作,切勿犯法!

六.参考

使用Kali MDK3无线攻击

mdk3攻击实例

无线攻击 –mdk3(基于IEEE 802.11网络破坏攻击)

取消验证洪水攻击的原理与应对措施

mdk3 无线攻击使用详解

wifi攻击的几种方式

WIFI DeAuth攻击-爬坑笔记 _