0x00 进行渗透时需知晓的基础知识,1.WPA2:是WPA的升级版,是针对保护无线网络安全而设计的无线网络保护系统,引入了PSK(预共享密钥模式)秘钥,加强了WPA的不足之处,但是因为使用了PSK,所以只要攻击者知晓目标的PSK秘钥,就能十分轻易加入无线网络。
2.WPA3:是近几年新出现的无线网络安全保护系统,在WPA2的基础上实现了针对字典法暴力密码破解的难度,如果失败次数过多,AP将直接锁定攻击行为,以及取代了PSK使用对等实体验证(SAE),3.AP:特指无线网络接入点,就是路由器等设备的广泛称呼,PS.实现无线网络攻击一般都需要两张或更多网卡,有时候也需要一些社工手段!购买无线网卡强烈建议购买支持802.11ac协议的网卡!!!
0x01 WPA2渗透思路,如果实在嫌跑密码的进度过慢或者没有好的字典,可以试一试wpa2的秘钥重装攻击(KRACK),PS.本文所用的方法绝大部分没有使用大佬提供的POC,旨为了能够完全细化并理解KRACK攻击的步骤,0x02 秘钥重装攻击复现步骤>
秘钥重装攻击(KRACK):
此攻击针对WPA2协议中创建一个Nonce(一种共享密钥)的四次握手。
0x03 KRACK的原理>
WPA2的标准预期有偶尔发生的Wi-Fi断开连接,并允许使用同样的值重连第三次握手,以做到快速重连和连续性。因为标准不要求在此种重连时使用不同密钥,所以可能出现重放攻击。
攻击者还可以反复重发另一设备的第三次握手来重复操纵或重置WPA2的加密密钥。每次重置都会使用相同的值来加密数据,因此可以看到和匹配有相同数据的块,识别出被加密密钥链的数据块。随着反复的重置暴露越来越多的密钥链,最终整个密钥链将被获知,攻击者将可读取目标在此连接上的所有流量。
WPA2通常用于移动设备至固定接入点或家庭路由器的连接,尽管某些流量本身可能被SSL/TLS等协议加密,但风险仍十分严重。(资料来自百度百科),1.启动网卡的混杂模式,sudo airmong-ng start
2.对目标AP进行信息收集
先用,sudo airodump-ng
3.找到目标AP的BSSID
这是我家中的2.4g无线网络,第一个使用桥接模式桥接了CMCC,因为两个路由器都已经安装了最新的固件把秘钥重装漏洞修复了,所以该次实验不会对我的路由器与设备造成损伤或是成功渗透,但是针对现实中像是咖啡店、机场、图书馆类的场景,路由器的固件很有可能并没有升级到最新版本,所以该攻击可能依然有效,4.锁定目标BSSID后,使用,sudo airodump-ng
5.嗅探该AP中的所有成员,
如果没有成员的话可以插拔一下网卡(我才不会因为在复现过程中没看到网卡关闭等了十几分钟这件事说出来),6.克隆Wi-Fi钓鱼热点
需要伪造一个同名,同mac地址的钓鱼热点
更改网卡mac地址步骤>
伪造热点:
配置DHCP:
进入下一配置文件,将at0指定为dhcp请求网卡
sudo service isc-dhcp-server restart //重启dhcp服务
配置dnsmasq
重启dnsmasq服务,sudo service dnsmasq restart
设置iptables进行流量转发:
克隆Wi-Fi后成功获取到成员进入网络提示信息
7.但是我们也不能白等新的冤大头连上我们的热点,所以我们可以对目标AP的成员使用断网攻击使其强制掉线重连
aireplay-ng攻击>
mdk3/mdk4攻击:
稍等一会后,所有目标均已离线,2.4gAP网络用户断网连接后一般来说都可以直接获取到握手包
8.获取四次握手的数据包
当左上角出现>
就说明我们拿到了握手包
接着打开wireshak,将上一步的01号数据包到wireshark打开搜索字符串Message
需要找到
然后右键选择标记分组,
之后选择左上角"文件"->导出特定分组->选择仅选中分组,
保存第三条握手包
7.实行攻击
(因为我这硬件条件实在不允许,就说一下实行攻击 的具体步骤,并且贴出大佬的POC吧)
(1)使用scapy伪造含有CSA(信道切换公告)信标的beacon管理帧,使成员强制连接到钓鱼热点
CSA信息元素>
(2)向成员设备发送3号握手包多次,并允许1、2号握手包通过,阻断4号握手包使其强制安装秘钥,在此演示使用scapy发送三号握手包
sudo scapy //打开scapy,
在wireshark中我们可以看到Message 3 of 4被成功重传,
攻击完成,攻击者打开wireshark监听,可以发现成员在目标AP内浏览的所有TCP明文,WPA3攻击思路,因为Dragonblood漏洞组并没有公布相关的攻击方式与POC,所以这一节我们来了解一下我在github上找的一个WPA3在线字典攻击工具----wacker
在使用工具前,我们需要先编译作者自改的wpa_supplicant
首先下载工具
git clone https://github.com/blunderbuss-wctf/wacker.git
cd wacker,
split.sh是用来为多个网卡进行分配破解工作而进行生成单次列表
使用:sudo ./split.sh <份数> <单词列表>
wacker.py是程序本体
使用方法与选项>
使用例>
社会工程学/密码泄露手段,俗话说得好,当你不知道的时候建议直接去问,这也同样适用直接询问Wi-Fi密码
还有一种手段那就是直接使用Wi-Fi万能钥匙等这种密码泄漏工具,使用手机自带的生成Wi-Fi二维码功能,再配合扫码就能直接得到密码。
路由器后台渗透思路,在进入无线局域网后,我们可以对无线路由器的后台进行渗透,渗透后台的方法包括但不限于:漏洞、跑包、弱密码,后台密码很大概率会与Wi-Fi密码相同
这里贴出一些常用路由器的默认后台账号密码>
谈到对路由器的漏洞攻击手段,不得不提到大名鼎鼎的routersploit
routersploit项目地址//github.com/threat9/routersploit.git
routersploit的安装(kali下):,routersploit的使用:
耐心等待扫描结束,如果该漏洞对路由器有效的话,会直接列出来,如果可能对该路由器有用会列出可能有效的漏洞,
作者:Tug0u_Fenr1r