通过字典破解WPA/WPA2加密的WIFI密码 wpa2密码破解教程

Wpa2密码破解教程(通过字典破解WPA/WPA2加密WIFI密码)
前言当客户端连接到无线热点时,它们之间会交换一些数据 。如果我们能捕捉到这些数据,我们就能得到这个无线热点的密码 。阅读本文后,您将获得:
客户端使用正确的密码连接到无线热点的过程
用于捕获连接时传输的数据并从中分析密码的方法 。
在本文实验之前,请确保基本环境已经准备好:
并且,已经知道了Kali系统的一些基本命令行操作,并且准备了今天实验所必需的无线网卡:
学习过程中,如有疑问,可以私信作者,或在文章下评论 。我会尽力为读者解答问题 。
可能无聊但是请耐心听完的理论讲解在这一部分,我们将了解WIFI认证过程中的四次握手,这是我们下一个实验的知识储备 。
首先,我们的数据是无线传输的,也就是以电磁波(也就是光)的形式,没有有线(电)传输那么安全 。因为电传输的媒介是电线,有线网络的媒介是网线,网线到哪里,数据就传输到哪里,而无线网络以光的形式向外辐射,光能到达哪里,数据就能到达哪里 。
因此,在无线传输中,必须有一个可靠的加密算法来保护我们的数据,防止它被不该知道的人知道 。
首先提出的加密方法是WEP,它是有线等效隐私的简称 。翻译,即有线等效保密 。最初提出时,它是作为IEEE 802.11的一部分提出的 。提出这种算法的委员会认为这种加密方法和有线传输一样安全,因此将其命名为 。
不幸的是,这种被称为“与有线一样安全”的加密方法的生命周期只持续了不到五年(1999年9月提出的IEEE802.11在2003年被WPA淘汰) 。它的漏洞非常严重,解决其安全问题的唯一方法是替换更安全的WPA或WPA2 。
"...针对WEP安全问题,最广泛推荐的解决方案是改用WPA或WPA2,这样比WEP更安全 。”——百度百科
取而代之的是WPA,Wifi保护访问,字面意思是Wifi保护访问 。2004年,IEEE802.11i发布,修订了之前的WPA,提出了一个更可靠、更安全的WPA2 。这种加密方法一直被用来保护无线通信的安全 。下面,我们来简单了解一下在使用这种加密方式加密的无线热点认证过程中,客户端和路由器之间发生的故事,即四次握手:
①路由器向客户端发送一个随机数(记录为随机数1) 。这是第一次握手 。
②客户端收到这个随机数1后,自己生成一个随机数(记录为随机数2) 。然后客户端通过与随机数1、随机数2、输入Wifi密码三个参数的函数关系生成密码(记录为PTK) 。
然后,客户端将随机数2(它计算的PTK数)发送回路由器 。这是第二次握手 。
③路由器收到随机数2,知道自己的Wifi密码,所以也通过随机数1、随机数2和自己的Wifi密码三个参数,在客户端通过同样的函数关系生成一个PTK 。
将客户端发送的PTK与自己的PTK进行比较,如果通过固定的函数关系计算结果相同,即发送的PTK等于自己计算的PTK,这意味着三个参数(随机数1、随机数2、输入密码)相同,即客户端输入的密码是自己的Wifi密码,已经通过认证 。否则,握手结束 。
在这里可能有的读者会问:一个输入只对应一个输出,但是一个输出却未必只对应一个输入?也就是说凭什么就这样认为输入的密码和正确的Wifi密码相同?也有可能是虽然不相同,但是函数运算出相同的结果呢?这是一个好问题,能够问出这个问题,就说明您已经确实地在思考了 。生成PTK的这个算法,是我们软件运算中最常见的,Hash,也叫散列运算 。它将不同长度的输入映射成长度相同、独一无二的输出,并且,没有办法从输出确定唯一的输入,因此,我们可以通过比较输出来在不知道输入的情况下比较输入 。的确存在两个输入映射成同样的输出的情况出现,这也称为哈希碰撞 。是有办法避免哈希碰撞的情形的,采取某种措施,可以将碰撞的几率降低到可以忽略的程度 。有兴趣的读者可以在网上自行了解 。因此,在这里,就认为输入的密码正是正确的Wifi密码 。身份验证成功后,路由器会向客户端发送另一个密钥 。这是三次握手 。
④客户端收到密钥后,向路由器发送消息,告知对方已经收到密钥 。这是第四次握手 。
四次握手包都是明文传输的,所以我们可以通过捕获四次握手包(简称握手包)得到随机数1、随机数2和PTK 。
列出可能的Wifi密码,并编一本字典 。我们对每个密码和两个随机数执行相同的操作,然后将其与PTK进行比较 。如果相同,说明密码是正确的Wifi密码 。
更加有趣的实际操作部分首先我们设置一个Wifi,密码设置为12345678 。

推荐阅读