环境配置
- 安装有 Kali Linux 操作系统的计算机
- 支持监控模式(monitor mode)的无线网卡(一般笔记本都支持)
- 合适的密码字典文件
- 时间和耐心(破解的时间都比较长根据密码的复杂度可能好几天,也可以找专门的跑包服务一般两天跑出来,跑包 1、跑包 2)
破解加密方式为 WEP、WPA/WPA2 的无线密码
无线网络的加密方式一般有 WEP、WPA/WPA2 两种方式,WEP 已经过时,目前一般很少使用了
查看无线网卡是否支持监控模式
airmon-ng
输出的网卡接口名称一般为wlan0。如果没有任何输出,表示无线网卡不支持监控模式。
开启无线网卡的监控模式
开启监控模式之前可以先运行命令以结束可能有影响的进程
airmon-ng check kill
开启监控模式
airmon-ng start wlan0
开启监控模式后,网卡接口变为wlan0mon
扫描附近的 Wi-Fi
airodump-ng wlan0mon
将列出附近所有无线网络的详细参数,包括无线 AP 的地址(BSSID)、信号强度(PWR)、频道(CH)、加密方式(ENC)、认证类型(AUTH)、无线 ID(ESSID)等。
找到要破解的无线网络后,按 Ctrl+C 结束扫描。
参数详细说明如下:
- BSSID:无线 AP 的 MAC 地址
- PWR:信号强度
- CH:频道号
- ENC:使用的加密方式。OPN 表示无加密。WEP?表示 WEP 或者 WPA/WPA2 模式,WEP 表示静态或动态 WEP,TKIP 或 CCMP 表示 WPA/WPA2
- CHIPER:检测到的加密方式。TKIP 表示 WPA,CCMP 表示是 WPA2
- AUTH:认证类型。常见的一般为 PSK。常用的有 MGT(WPA/WPA2 使用独立的认证服务器,平时我们常说的 802.1x、radius 和 eap 等)、SKA(WEP 的共享密钥)、PSK(WPA/WPA2 的预共享密钥)或者 OPN(WEP 开放式)
- ESSID:所谓的 SSID 号,就是我们说的无线网络名称。
记录下要破解的无线网络的 BSSID 和 CH 号。
抓取数据包
得到包含握手包的数据包文件后即可以破解 WPA/WPA2 加密的密码;如果是 WEP 加密,只需要获取足够大的数据包(100000+)即可破解密码。
airodump-ng --ivs -c 4 --bssid E0:xx:xx:xx:xx:xx -w wifidata wlan0mon
参数说明:
- --ivs:通过设置过滤,不再将所有无线数据保存,而只是保存可用于破解的 IVS 数据报文,这样可以有效地缩减保存的数据包大小
- -c :指定频道号。后面写频道号数值。
- --bssid:指定无线 AP 的 BSSID。后面写无线 AP 的 MAC 地址。
- -w:指定保存捕获数据的文件名。
WPA/WPA2 加密
WPA/WPA2 加密方式关键是要获取到包含握手包的数据包。运行上面的抓包命令后,我们只要等用户连接/重连接 wifi,运气不好也许要很长时间。为了减少等待时间,我们使用 aireplay-ng 工具给连接到 wifi 的一个设备发送一个 deauth(反认证)包,使此设备强制断开 wifi 连接,它自然会再次连接 wifi,这样我们可以快速就得到握手包。
新开一个终端窗口,发送 Deauth 包强制握手,命令如下:
aireplay-ng -0 2 -a E0:xx:xx:xx:xx:xx -c C8:xx:xx:xx:xx:xx wlan0mon
参数说明:
- -0:表示发起 deauthentication 攻击。后面填写攻击次数,根据实际情况增加
- -a:指定无线 AP 的 BSSID
- -c:指定需要强制断开的设备的 MAC 地址(运行抓取握手包的命令后即可以看到连接到此无线 AP 的所有设备的 MAC 地址(STATION 列))
成功获取到握手包后,运行抓取数据包命令的窗口右上角将显示 WPA handshake:E0:xx:xx:xx:xx:xx。按 Ctrl+C 结束抓包,airmon-ng stop wlan0mon 结束无线网卡的监控模式。
WEP 加密
WEP 加密只需要获取足够大的数据包(100000+)即可破解密码。新开一个终端窗口,用命令发送大量数据包给无线 AP,以加快数据的收集速度,命令如下:
aireplay-ng -3 -b E0:xx:xx:xx:xx:xx -h C8:xx:xx:xx:xx:xx wlan0mon
参数说明:
- -b:无线 AP 的 BSSID
- -h:客户端的 MAC 地址
同样,获取到足够的数据后,按 Ctrl+C 结束抓包,airmon-ng stop wlan0mon 结束无线网卡的监控模式。
破解密码
aircrack-ng -b E0:xx:xx:xx:xx:xx -w password.txt wifidata-01.cap
参数说明:
- -b:指定无线 AP 的 BSSID
- -w:指定密码字典文件和握手包文件
这个过程取决与密码字典以及计算机的计算能力,时间很长可能需要好几天,也可以找专门的跑包服务付费跑包。
当窗口出现 KEY FOUND!时表示找到密码了。后面括号里为密码。
破解开启了 WPS 功能的无线密码
路由器 WPS 的 pin 码并没有加密,可以使用 Reaver 工具暴力破解 pin 码,找到 pin 码也就找到了密码。一般用时也不短。但要求:无线网卡支持数据包注入,一般笔记本的无线网卡不支持。
找到开启了 WPS 功能的无线路由器
wash -i wlan0mon -C
破解密码
reaver -i wlan0mon -b E0:xx:xx:xx:xx:xx -vv