破解wifi密码听起来很复杂,实际上也不是很是的复杂,极客君(微信公众账号:开发者周刊)今天教你们如何破解隔壁妹子的wifi密码。css
首先声明:本教程只用于技术交流,请勿用于非法用途。请严格遵循相关法律法规。为了保护本例中被破解密码者信息,本人不透露wifi主人所在地理位置。本人有宽带,也不会使用被破解者的wifi。nginx
目前无线网络加密形式常见的有两种,WEP和WPA/WPA2,WEP破解方法很是简单,可是如今这种加密方式因为不安全基本上见不到了。这里就没有必要讨论WEP破解方法了。数组
今天咱们要破解的正是最难破解的WPA/WPA2加密方式的密码!WPA/WPA2破解的主流方法有Pin码破解、抓包破解。安全
Pin码破解最简单成功率最高,可是必需要路由器开启wps才行,并且不少最新的路由器都有防pin码破解功能,对于Pin码破解,你们能够用虚拟机安装CDLinux系统,里面集成了相关的软件,网上百度一下就能找到相关的教程。bash
今天咱们要讲的是抓包破解,若是路由器没有开启wps,Pin码破解的方式就不能用了,对于路由器开启了wps功能建立的wifi来讲,抓包破解wifi密码的成功率要低于pin码破解,可是若是有了强大有效密码字典后,抓包破解的成功率将会骤升,就是路由器没有开启wps功能,抓包破解照样能破解wifi密码。微信
抓包破解又称暴力破解,就是对密码字典中的密码逐个试,直到找到正确的密码,你能够作个包含全部密码的密码字典(后面会有密码字典生成教程,也会提供高成功率的密码字典包),让机器逐个试,成功率百分之百,可是这种方法不科学,由于全部密码的字典包会很是很是大,里面包含不少不可能出现的密码,浪费时间。网络
本教程中使用的电脑为Mac,若是使用其余电脑也不影响,都大同小异,原理都是同样的,非Mac看完此教程后能够结合网上其余教程进行破解测试。工具
在破解wifi密码以前,咱们要有一个有效的密码字典包,里面要包含你们最经常使用的密码,还要根据你们的习惯设置相应的密码。咱们怎么看你们最经常使用的密码呢?我在某个软件里看到了常见的wifi密码,上面提示,40%的人用了这些密码,因此你得密码字典中只要包含了这些密码,你就能够破解40%的wifi密码了!你们不要关心代码,只要知道我在生成密码字典就能够了(想要获取教程中使用的密码字典请关注微信公众账号:开发者周刊,回复『密码字典』获取):测试
可是网上找不到包含这些密码的密码字典怎么办?极客君决定本身用JAVA写代码生成密码字典,极客君建立了一个数组,里面不只包含上面,还包括极客君从网上找来的其余经常使用密码:ui
可是仅仅包含这些密码还不行,由于还有很多人不是用这些密码,可是不少人也会用数字、字母、特殊符号组合,可是这些也是有规律的,数字组合除了上面经常使用的组合方式外,也会有其余组合方式。但不少人不会随便用本身都记不住的数字组合,通常都是用出生的年月日或者用年月日与其余方式组合。因此极客君又建立下面这些数组:
还有的人会拿本身或者家人的名字首字母、名字全拼或姓氏全拼与上面经常使用数字组合、出生年月日、特殊字符任意组合。因此极客君为了缩小密码字典体积,只录入了北京地区经常使用姓氏和其余我的认为常见的姓氏,以下:
对于名字全拼,为了保证覆盖面和有效性,极客君无奈只能把每一个字母列出来,而后在全部韵母与这些字母组合,只保留能够组成密码的拼音,这可着实花了极客君一段时间,下面这些拼音是否包含你的名字拼音呢:
特殊字符用的也很少,这里只收录了可能用到的特殊字符。
对于生成代码,因为代码较多,这里就不截图了,若是想要源码,请关注微信公众账号[开发者周刊]留言索取。
好了,接下来就是生成密码字典了,因为和名字全拼相关的密码字典较大,并且不是很是经常使用,极客君把它单独生成:
这两个密码生成以后比较大,可是对于电脑来讲没什么,分别为100G和358M,因此后面咱们不首先用这些密码包。
下面咱们生成经常使用的、强大的密码字典,具体包含组合方式见下面截图:
首先输入字典名称,按回车,输入3生成咱们的超级密码,对于为何这样输入你们不用关系,只知道咱们在生成字典就好了,我将文件名命名为”jikefeng.txt”,而后按回车输入3开始生成:
好了,咱们去看看生成的字典密码,一共1.15G,大小还能够,比网上几十G的密码包好太多了:
好了字典包生成好了,接下来仍是步入总体,开始破解了。首先看一下附近的wifi:
咱们选择破解信号最强的wifi,极客君住在一楼,上面wifi中最后一个ziroom101从名称上看也是在1楼,因此极客君就破解这个了。
首先要确保电脑安装 Xcode 和 MacPorts,Xcode 能够直接在 App Store下载,MacPorts 须要进入它的官网下载。MacPorts 是一个软件包管理系统,用来简化 Mac OS 系统上软件的安装,与Fink和BSD类ports套件的目标和功能相似。就像apt-get、yum同样,能够快速安装些软件。把这两个软件安装成功后就能够开始安装 Aircrack。打开终端输入命令:
sudo port install aircrack-ng
要求输入密码,输入后可能会提示 Port aircrack-ng not found ,不要紧咱们须要更新ports tree,在终端执行:
sudo port -v selfupdate
如今能够开始安装 Aircrack 了,若是还提示 not found,那么再次执行更新ports tree 命令。安装 Aircrack 会比较慢,等安装好后 ,咱们须要将 Aircrack 命令创建一个连接,相似Windows下的超级连接,在终端输入:
sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/local/bin/airport
而后在终端内输入:
airport -s
就能查看到附近的 Wifi 信息了,以下图:
SSID 是 wifi 名称,RSSI 是信号强度,绝对值越小信号越强,CHANNEL 是信道。挑一个信号强的信道进行监听抓包(好比咱们要破解的ziroom101在信道13 ),在终端输入:
sudo airport en0 sniff 13
中间会提示输入管理员密码,输入密码后回车就开始抓包了,以下图:
过几分钟后就能够按「 control + c 」退出抓包,会自动保存并提示抓得包保存路径:
接着进入 tmp 文件就能够查看咱们抓到的数据包了,进入 tmp 文件夹咱们可使用 Finder 的前往文件夹功能 ,如图:
咱们在桌面上创建文件夹,命名为”jikefeng”,将咱们以前生成的密码字典和抓的包都放进去,而且把抓的包也重命名为”jikefeng”,以下:
接着咱们输入下面命令行进入咱们在桌面上建立的”jikefeng”文件夹:
cd Desktop/jikefeng/
进入”jikefeng”文件夹后输入:
aircrack-ng -w jikefeng.txt jikefeng.cap
就能够看到cap文件内的抓包状况,Encryption 中(0 handshake)是抓包失败,(1 handshake)则是抓包成功。点击终端,按下「command + f」进行搜索1 handshake,图中看到第3行抓包成功,则在「Index number of target network ?」这里输入3后敲回车:
以后剩下的就是等待了,当破解密码成功(发现了密码)后会出现下图提示:
因此咱们破解出了ziroom101的密码为12344321,使人兴奋的是该密码正是经常使用密码之一,因此几乎秒破,一点都没有挑战难度。
利用相同的方法,我破解出了附近wifi中的其余密码(其中破解wifi名为zhouyubo密码花的时间稍微长点,但我也没管它,剩下的就交给电脑了):
zhouyubo的密码为zhouyonghu19911129
Netcore_5G的密码为xy11112222!
综合以上,怎么样才能保证密码的安全呢?没有百分百的安全,由于密码字典能够包含全部密码,只能把密码设的尽可能复杂,可是输的太复杂本身又记不住、输入起来也麻烦。因此,怎么平衡就看本身喽~
还有,在生成密码字典时候,若是你知道密码主人的一些信息,你能够根据这些信息生成更准确的密码,好比知道姓名、手机号、QQ号、出生日期等,这些均可能是密码的一部分。由于不多有人会用无心义很差记的数字作密码,就算有,准备好相应的密码字典就能够了。网上也有密码字典生成工具,也能够直接下载相应的密码字典包,可是我下载了很多发现几乎就没几个靠谱的,因此须要多找找。记住,破解密码的时候先使用弱口令密码字典,所谓弱口令密码就是最经常使用的密码,比较大部分人都会用这些密码,固然,极客君上面用的密码字典中已经包含了几乎全部的弱口令密码,而且把弱口令密码放到密码最前面,让这些密码最早被使用,这样破解起来也省事,省的来回换字典了。
想要获取教程中使用的密码字典及开发交流请关注微信公众账号:开发者周刊,回复『密码字典』获取教程中用到的全部密码字典。