终究还是写了这篇文章,本文仅限讨论无线攻防相关技术,测试所用WiFi为本人手机热点,请勿破解他人WiFi!!
「破解他人WIFI属于违法行为,涉嫌盗窃,情节严重的,将被追究刑事责任」;如果单纯的盗用信号,触犯了《民法通则》,将构成民法上的不当得利;如果通过路由器侵入他人系统,触犯《刑法》,情节严重的将构成犯罪,将负刑事责任。
本文旨在提高读者无线安全意识,并不是教授大家如何破解WiFi,因此本文教程仅提供大概流程和思路,有能力的朋友可以自己独立完成破解流程,其他没有相应能力的朋友了解一下以增强安全意识即可。
「本文使用kali Linux + 虚拟机的方式演示破解,另外需要一个USB无线网卡。」
这里我们需要提前安装VMware Workstation,VMware激活还是非常方便的,官方下载安装后,网上找几个激活码即可激活。Kali Linux是一个高级渗透测试和安全审计Linux发行版,是许多优秀的安全工具的集合。对于专业用户来说,它有难以置信的好处,但对于一些不怀好意的人来说,也可以产生很多大麻烦。小心地使用 Kali,充分利用它的巨大优势。否则,你将在某个地方(你懂的)度过你的余生。
kali Linux官网下载地址:https://www.kali.org/downloads/ 访问困难的用户也可以前往镜像站下载:https://mirror.tuna.tsinghua.edu.cn/kali-images/ (清华大学开源软件镜像站)
至于USB无线网卡,轶哥使用的是几年前360赠送的第一代随身WiFi,属于特别老旧的设备了,应该大部分USB无线网卡都可以。
以上完成即可安装kali Linux,这部分教程网上挺多,在VMware中选择你下载的kali Linux iso镜像文件,客户机操作系统选linux操作系统
,选择图形化安装即可。
先来大致体验下破解流程
1.将无线网卡插入电脑,确认已连接到虚拟机中
2.选择无线攻击
——fern wifi cracker
3.选择你的usb无线网卡
,大多为wlan0、wlan1,按顺序点击如图按钮
4.如果你的无线网卡可以正常使用,将会出现下图。按下图进行操作,图中第一步为选择WiFi;第二步为选择字典,kali linux自带的字典在/usr/share/wordlists
中;第三步点击后即开始破解
5.如果一切顺利,软件将自动进行抓包、跑密码等一系列操作。图中可以看到速度达到了1.2w+/s,但由于在虚拟机中跑包,性能损耗了不少
6.不到一分钟,简单英文加数字组合的密码就这样破解了
1.查看网卡是否支持监听模式 先以root账户登录系统,在终端输入:airmon-ng
上面列出了支持监听模式的无线网卡的各种参数,可以看到wlan0支持监听模式
2.启动监听模式 在终端输入:airmon-ng start wlan0
这里的wlan0应与上一步相对应,网卡接口变为wlan0mon
3.查看WiFi网络
在终端输入:airodump-ng wlan0mon
此时,会列出了周围的wifi和它们的详细信息,包括信号强度[PWR]、加密类型[ENC]、信道[CH]等。记住要破解wifi的信道号和BSSID。按Ctrl-C结束。这里我们测试的小米手机的BSSID为:4C:49:E3:4A:64:09
,信道为:2
4.抓取握手包
在终端输入:airodump-ng --bssid 4C:49:E3:4A:64:09 -c 2 -w / wlan0mon
参数解释: | |
---|---|
-c | 指定信道号 |
–bssid | 指定路由器bssid |
-w | 指定抓取的握手包的保存位置 |
注意此处的空格。
5.强制设备重新连接到路由器 在步骤4中,若「有用户连接/重连接到wifi,即可抓到包」。但在实际情况中,可能在很长的时间中都没有用户连接WiFi,因此,「我们需要迫使用户重新连接WiFi」。
而kali中有一个叫aireplay-ng的工具,它可以强制用户断开wifi连接;其原理是,给连接到wifi的一个设备发送一个deauth(反认证)包,让那个设备断开wifi,随后它自然会再次连接wifi。
但是,「aireplay-ng的生效前提是,wifi网络中至少有一个连接的设备」。从下图中可以看到哪些设备连接到了wifi,STATION就是连接设备的MAC地址,记住一个。这里STATION为04:EA:56:91:88:13
「新开一个终端」,输入aireplay-ng -0 6 -c 04:EA:56:91:88:13 -a 4C:49:E3:4A:64:09 wlan0mon
参数解释: | |
---|---|
-0 | 发起deauthentication攻击,后面的数字为攻击次数,这里攻击6次 |
-c | 指定强制断开的设备,即上一步的STATION |
-a | 指定无线路由器BSSID |
如果攻击成功,设备重新连接,会出现如下图。
按ctrl+c
结束抓包。
6.找到握手包 在之前设定的目录中可以找到形如xxx.cap
的握手包,复制到windows。若出现多个握手包,一般最后使用一个,或者使用其他工具查看有效的握手包。
现在的WiFi大都使用WPA/WPA2加密方式,WPA2是基于WPA的一种新的加密方式。采用了更为安全的算法。CCMP取代了WPA的MIC、AES取代了WPA的TKIP。密钥导出函数为PBKDF2。这使得WPA2几乎无懈可击。现在可行的方法就是捕获WiFi路由与客户端之间进行密码验证的数据包(俗称握手包)。之后用穷举比对的方式。将握手包中密码(被加密的Hash值),与一个包含有可能含正确密码的密码集(俗称字典。里面的密码集在比对时,需要用同样加密方式转换成hash)进行比对。如果两方Hash相同。则代表字典里的某一个密码与握手包密码相同。从而获取WiFi密码。这种方法需要大量时间与大容量字典。由于WiFi密码为8~63个ASCII字符。造成只有弱密码(人们经常使用的密码,如8888888,0000000,12345678)等可以被破解。强密码无望。
「简单来说,就是把密码一个一个试出来,字典就是一个包含有可能含正确密码的密码集」,当然直接在连接WiFi的时候尝试实在太慢,这里我们抓握手包的原因就是在软件中进行离线破解,使得效率得到几何倍数的提高。
在互联网上获取字典生成工具,猜测用户可能使用的密码进行字典生成。由于大多数家用WiFi密码喜欢使用自己的手机号作为密码,这里生成一份本地区的手机号字典。
hashcat is the world's fastest and most advanced password recovery utility, supporting five unique modes of attack for over 300 highly-optimized hashing algorithms. hashcat currently supports CPUs, GPUs, and other hardware accelerators on Linux, Windows, and macOS, and has facilities to help enable distributed password cracking. hashcat是世界上最快,最先进的密码恢复实用程序,支持五种独特的攻击模式,可用于300多种高度优化的哈希算法。hashcat当前在Linux,Windows和macOS上支持CPU,GPU和其他硬件加速器,并具有帮助启用分布式密码破解的功能。
hashcat官网:https://hashcat.net/hashcat/ github:https://github.com/hashcat/hashcat
hsahcat是个高效免费开源的利用GPU进行hash碰撞的多平台密码恢复工具,功能挺多。虽然网站为英文,但建议好好阅读wiki,会学到很多同时也能解决你的绝大多数问题。
1.cap格式的握手包需要进行转换格式,以进行下一步的操作 https://hashcat.net/cap2hccapx/
2.安装好hashcat,进入目录,启动hashcat。这里hsahcat、握手包和字典均在E:\1\hashcat
目录下。
./hashcat.exe -m 2500 2.hccapx sjh.txt
./hashcat.exe -m 2500 握手包名称 字典名称
3.中途输入s
可以查看状态
4.若破解成功,即可看到密码,在原命令后添加 --show
、打开hashcat目录下hashcat.potfile
也可查看密码。图中可看到破解用时27秒,速度290kH/s,相当于每秒尝试29w次,是上一种方式的23倍,速度极快。
在字典生成器中还有更多组合方式,若有心之人收集你的个人信息,还可定向组合更多字典。
1.「您应该使用WPA2安全性来保护对路由器的访问」,这实际上要求每个新设备都必须提交密码才能进行连接。默认情况下,几乎所有路由器都启用了此功能,但是如果您的设备上未启用该功能,请通过路由器设置将其打开。
2.「避免使用简单数字、字母组成的弱密码」,也不要使用手机号设置密码;不在多处使用相同的密码。最好包含数字、字母、大小写、特殊字符10位以上组合。
3.「关闭WPS」,具有WPS功能的无线路由,密码可通过WPS(也称为QSS,一键安全设置)漏洞,通过跑PIN码来进行暴力破解。有了这个漏洞,无论你的WiFi密码设置多长,照样破解你的密码。
4.「不要使用类似WiFi某能钥匙的软件连接WiFi」,该类软件可能会在你输入密码连接WiFi时,默认共享你的WiFi密码。若不慎已被共享,可更改密码。
5.「更新无线路由固件」,新版路由一般能修复老版本固件存在的bug,使路由器工作更稳定;提供更强的安全防护,修复系统漏洞。
无线安全技术总在发展,而我只不过是个普通的博主,本文所有破解方法均来源于互联网,任何一个有心之人均可自行完成。真正的黑客所使用的技术远远不止如此,本文内容也很可能出现谬误和不足之处。
参考资料:https://www.jianshu.com/p/15f5c51143ec
以上,就是该文章的主要内容。出于学习的目的,我做了一些尝试。对自己家的wifi进行了“分析”,其实当我操作到最后几部的时候,我已经隐约知道结果了。
这种方式说白了就是用“字典”里存储的密码,挨个去尝试。按照操作步骤,能否得到密码,取决于你的密码是否会出现在“字典”里。
我大致看了一下“字典”里前面部分的密码规律,基本都是美式或者英式的字符串,例如:Spring2017,Summer2017,Welcome123,password12。而国人的习惯一般是(如果说的不对别喷我):姓名+生日,或者姓名+电话,或者直接使用手机号做为wifi密码。
所以,折腾半天,就当练手了。而做为互联网中的一个普通用户,我们能做的,就是尽量保护好我们的隐私。