-->
当前位置:首页 > 实验 > 正文内容

WIFI密码破解实验

Luz4年前 (2020-12-11)实验3159

实验目的

  • 了解 wifi使用常识

  • 了解WPA等加密算法的原理

  • 掌握wifi密码破解工具的使用方法

实验原理

1.WPA加密
  wpa加密算法有两个版本,一个是WPA,一个是WPA2,后者为前者的增强版本。其算法结构如下所示:
  WPA = 802.1x + EAP + TKIP + MIC = Pre-shared Key + TKIP + MIC
  WPA2(802.11i) = 802.1x + EAP + AES + CCMP = Pre-shared Key + AES + CCMP
  这里802.1x + EAP,Pre-shared Key是身份校验算法(WEP没有设置身份验证机制);TKIP和AES是数据传输加密算法(类似于WEP加密的RC4 算法);MIC和CCMP是数据完整性编码校验算法(类似于WEP中CRC32算法);EAP称为扩展认证协议,是一种架构,而不是算法。常见的有LEAP,MD5,TTLS,TLS,PEAP,SRP,SIM,AKA。其中的TLS和TTLS是双向认证模式,这个认证方式是不怕网络劫持和字典攻击的。而md5是单向认证的,无法抵抗网络劫持和中间人攻击。这里我们只讨论家用级WPA-PSK的破解。
  WPA目前没有加密体制的缺陷可被利用,破解WPA密码使用的是常规的字典攻击法。所以在破解方式上WEP和WPA有很大差异。

2.WPA认证方式
  802.1x + EAP (工业级的,安全要求高的地方用。需要认证服务器)
  Pre-shared Key (家庭用的,用在安全要求低的地方。不需要服务器)

3.WPA—PSK破解原理
  我们都知道破解WPA-PSK不是和WEP一样抓很多包就能破解的,这跟抓多少数据包一点关系也没有。破解的关键是要获取握手包,这个握手包叫4way-handshake四次握手包。
  WPA四次握手过程如下图所示:

  WPA-PSK 初始化工作:
  使用SSID和passphares使用以下算法产生PSK。
  在WPA-PSK中PMK=PSK,PSK=PMK=pdkdf2_SHA1(passphrase,SSID,SSID length,4096)
  第一次握手:
  AP广播SSID,AP_MAC(AA)→STATION
  STATION 端使用接受到的SSID,AP_MAC(AA)和passphares使用同样算法产生PSK
  第二次握手:
  STATION 发送一个随机数SNonce,STATION_MAC(SA)→AP
  AP端接受到SNonce,STATION_MAC(SA)后产生一个随机数Anonce,然后用PMK,AP_MAC(AA),STATION_MAC(SA),SNonce,ANonce 用以下算法产生PTK
  PTK=SHA1_PRF(PMK, Len(PMK), "Pairwise key expansion",MIN(AA,SA) ||Max(AA,SA) || Min(ANonce,SNonce) || Max(ANonce,SNonce))
  提取这个PTK 前16 个字节组成一个MIC KEY
  第三次握手:
  AP发送上面产生的ANonce→STATION
  STATION 端用接收到ANonce 和以前产生PMK,SNonce,AP_MAC(AA), STATION_MAC(SA),用同样的算法产生PTK。提取这个PTK 前16 个字节组成一个MIC KEY,使用以下算法产生MIC值,用这个MIC KEY 和一个802.1x data 数据帧使用以下算法得到MIC值。
  MIC = HMAC_MD5(MIC Key,16,802.1x data)
  第四次握手:
  STATION 发送802.1x data ,MIC→AP
  STATION 端用上面那个准备好的802.1x 数据帧在最后填充上MIC值和两个字节的0(十六进制)让后发送这个数据帧到AP。
  AP端收到这个数据帧后提取这个MIC。并把这个数据帧的MIC部分都填上0(十六进制)这时用这个802.1x data 数据帧,和用上面AP产生的MIC KEY 使用同样的算法得出MIC'。如果MIC'等于STATION 发送过来的MIC。那么第四次握手成功。若不等说明则AP 和STATION 的密钥不相同,或STATION 发过来的数据帧受到过中间人攻击,原数据被篡改过。握手失败了。
  综上所述:
  WPA-PSK安全体系是十分强大和完善的。但他始终是用一个密码保护的,对于这种用密码保护的安全体系,一般情况下我们都可以用一种叫字典攻击的常规攻击手段。针对WPA-PSK的破解,目前也就只有字典攻击这一种方式了。原理是通过截取WPA-PSK的四次握手包中包含的和密码有联系的信息,再依靠这个信息进行字典暴破。
  总之,想要破解WPA-PSK这种强大的加密算法,必须符合以下条件:
  需要有合法客户端,并且存在合法的通信流量,通过抓取数据包进行破解的几率为0,唯一的破解方法是抓取WPA-PSK的四次握手包然后进行字典破解。抓到四次握手包之后,最后破解的关键是字典的好坏程度,有一定的运气成分了。如果碰到强口令时千万不要钻牛角尖,趁早放弃,因为WPA-PSK的破解目前唯一有实际价值的只有弱密码字典攻击。

实验环境

1.操作系统
  操作机: Linux_Kali(Windows_7为实际本地环境,实验运行在虚拟机中的Kali系统)
  操作机默认用户名: root 密码:123456
2.实验工具
  (1)带有芯片的无线网卡

  内置无线WIFI芯片的网卡,,并通过USB接口传输的网卡,连接电脑USB接口,安装完成驱动以后,电脑网卡列表中会出现新的无线网卡设备。


  (2)VMware 虚拟机

  VMWare虚拟机软件是一个"虚拟PC"软件,它使你可以在一台机器上同时运行二个或更多Windows、DOS、LINUX系统。与"多启动"系统相比,VMWare采用了完全不同的概念。多启动系统在一个时刻只能运行一个系统,在系统切换时需要重新启动机器
  主要功能:
  1.不需要分区或重开机就能在同一台PC上使用两种以上的操作系统。
  2.完全隔离并且保护不同OS的操作环境以及所有安装在OS上面的应用软件和资料。
  3.不同的OS之间还能互动操作,包括网络、周边、文件分享以及复制贴上功能。
  4.有复原(Undo)功能。
  5.能够设定并且随时修改操作系统的操作环境,如:内存、磁碟空间、周边设备等等。


  (3)Aircrack-ng

  Aircrack-ng是一款用于破解无线802.11WEP及WPA-PSK加密的工具,该工具在2005年11月之前名字是Aircrack,在其2.41版本之后才改名为Aircrack-ng。
  Aircrack-ng主要使用了两种攻击方式进行WEP破解:一种是FMS攻击,该攻击方式是以发现该WEP漏洞的研究人员名字(Scott Fluhrer、Itsik Mantin及Adi Shamir)所命名;另一种是KoreK攻击,经统计,该攻击方式的攻击效率要远高于FMS攻击。当然,最新的版本又集成了更多种类型的攻击方式。对于无线黑客而言,Aircrack-ng是一款必不可缺的无线攻击工具,可以说很大一部分无线攻击都依赖于它来完成;而对于无线安全人员而言,Aircrack-ng也是一款必备的无线安全检测工具,它可以帮助管理员进行无线网络密码的脆弱性检查及了解无线网络信号的分布情况,非常适合对企业进行无线安全审计时使用。

实验步骤

  1.1 打开虚拟机,将从网址https://www.kali.org/downloads/,下载的Linux操作系统,创建虚拟机;打开虚拟机,将外置的无线网卡插到电脑上,连接到kali虚拟机上,双击打开终端,我们这里使用系统自带的破解工具Aircrack-ng:

 

图 1

  1.2输入如下命令,查看我们的网卡是否成功连入虚拟机,这里我们看见我连接的无线网卡wlan0mon已经连入。

  • 无线网卡查找命令:ifconfig

 

图 2

  1.3输入命令,开启网卡扫描;

  • airmon–ng start wlan0

 

图 3

  1.4输入如下命令,开始扫描周围无线wifi;

  • airodump–ng wlan0mon

 

图 4

  1.5扫描出现的结果,我们可以看到我想破解的Hongya13579,它的频道(CH)值为11;

 

图 5

 

图 6

  1.6通过wlanmon无线网卡,对CH值11的信道发送数据包。

  • 执行命令:airodump–ng –c 11 –w hongya wlan0mon

 

图 7

  1.7查看破解抓包出来的文档,我们发现最后一个.cap文件是hongya-02.cap文件,工具会在分析产生的最后一个.cap文件解析出来密码;(每次发送的数据包都会重新产生新的数据文件),运行命令。

  • 查看获取的数据包:ls

 

图 8

  1.8解析hongya-02.cap文件,运行命令。

  • aircrack–ng –w password hongya-02.cap

 

图 9

  1.9最终密码破解出来了:

 

图 10

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。