浅谈Wi-Fi渗透–原理篇

在这个手机比人多的移动时代,无线网络Wi-Fi遍布每个角落,殊不知隐藏其中的风云涌动

广义上无线网络应用类型如下,今天的文章就聚焦于 WLAN的一种无线局域网技术——Wi-Fi (Wireless-Fidelity) ,测试其中存在的安全风险

在 WPA/WPA2 普及率达到 99.9% 的今天,Wi-Fi 安全的最主要安全威胁就是未授权访问,攻击者通过破解密码等各种手段连接到无线网络,占用网络资源

0x00 测试环境

  • 无线网卡: TP-Link TL-WN726N免驱版(RTL8188GU)

  • 360随身WiFi3

  • 无线路由器:TP-Link TL-WR842N 7.0

  • Kali linux

    • Aircrack-NG:一套完整的工具来评估WiFi网络安全
    • macchanger:Linux修改网卡mac地址
    • 弱口令top100字典

0x01 Wi-Fi概述

WiFi的应用场所主要有家庭网络、校园网络、企业网络、各类公共场所等,应用范围十分广泛

Wi-Fi技术创建在IEEE 802.11标准上,其常见版本区别如下图:

其中,IEEE 802.11是IEEE 802标准委员会(IEEE 802 LAN/MAN Standards Committee)下属的无线局域网工作组,也指由该组织制定的无线局域网标准

知识点:Wi-Fi常见术语解读

  • WLAN:无线局域网
  • AP:接入点,本篇文章中「360随身WiFi3」和「无线路由器」即为AP

无线访问接入点(Wireless Access Piont, AP)相当于一个连接有线网和无线网的桥梁,其主要作用是将各个无线网络客户端连接到一起,然后将无线网络接入以太网 (这正是Access Point名称的本义)

  • STA:Station,工作站(客户端)

表示连接到无线网络中的设备,这些设备通过AP,可以和内部其它设备或者无线网络外部通信

  • BSS:Basic Service Set,基本服务集

  • BSSID:BSS 的 ID,简单的家庭/公司网络中 BSSID 为 AP 的 Mac 地址

  • ESS:Extended Service Set, 扩展服务集

  • ESSID:扩展服务集的 ID,简称 SSID。简单的家庭/公司网络中 SSID 即为 Wi-Fi 的名

  • AUTH:Authentication,Wi-Fi认证体系图如下

  • 开放系统认证(Open System Authentication)
  • 共享密钥认证(Shared-key Authentication)

  • WPA (Wi-Fi Protected Access, 分为 WPA/WPA2/WPA3,其中 WPA3 为 2018 年提出还没有广泛应用)
  • WEP (Wired Equivalent Privacy 有线等效保密,已完全淘汰)
  • WPA (Wi-Fi Protected Access):

分为基于 802.1x 的企业版和基于PSK认证的个人版

  • WPA/WPA2:企业版使用 Radius 服务器做802.1X认证,分发不同的密钥给各个终端用户。
  • WPA/WPA2-PSK:采用 PSK(Per-Shared Key,预共享密钥)形式,每一个用户必须输入预先配置好的相同的密钥来接入网络,就是常说的 WiFi 密码
  • 加密类型:
  • TKIP(Temporal Key Integrity Protocol 临时密钥完整性协议)
  • AES(Advanced Encryption Standard 高级加密标准)
  • Channel:信道

是以无线信号(电磁波)作为传输载体的数据信号传送通道

无线网络(路由器、AP热点、电脑无线网卡)可在多个信道上运行

0x02 破解WPA2-PSK口令

由于技术+安全的持续发展,目前市面上的路由器等AP大多都是使用 WPA2-PSK认证方式进行上网认证

攻击原理:

对目标AP「360随身WiFi3」连接的所有客户端发起解除验证攻击,然后它们会自动重连,此时进行抓取 握手包 ,然后使用air-crack工具通过配置好的字典破解握手包拿到密钥,即Wi-Fi密码

详细可自行搜索802.11认证标准

使用工具:

  • 目标AP:「360随身WiFi3」

    • Wi-Fi名称: test_wifi
  • 无线网卡: 「TP-Link TL-WN726N」
  • Kali:Aircrack-NG套件

① 监听

将无线网卡插入kali,ifconfig查看网卡,即wlan0

wlan0设置为监听模式,作用:监控该网卡能接收到的所有无线流量

# airmon-ng用于在无线接口上启用监视模式
airmon-ng start wlan0

如图所示,已开启监听模式

② 网络探测与抓包

开启网络探测模式:

# Airodump-ng 用于原始 802.11 帧的数据包捕获
airodump-ng wlan0

等待一会,可以看到截图分为上下两个部分,上面部分为范围内的AP捕获,得到信息

  • 测试Wi-Fi SSID:test_wifi
  • mac地址「BSSID」:B0:D5:9D:FE:8B:A5
  • 所在信道:11
  • 使用加密类型:WPA2-PSK

下面部分即为实时的不同AP所对应的客户端即STATION的mac地址,得到测试Wi-Fi 的其中一个客户端mac地址为 4A:64:8B:43:43:D8

确定完目标Wi-Fi后,我们进一步对测试Wi-Fi 进行抓包

# -c [channel]
# --bssid [ap mac]
# -w [保存路径与文件名]
airodump-ng -c 11 --bssid B0:D5:9D:FE:8B:A5 -w test_w wlan0

等待客户端进行连入测试Wi-Fi,幸运的情况下,刚好碰到有客户端正在认证,可以抓到认证握手包:WPA handshake: B0:D5:9D:FE:8B:A5

当前目录下生成test_w-01.cap

③ De-Authentication Attack

通常情况下,很久都没有新接入的客户端,该怎么办呢?

aireplay-ng 等工具进行 Deauth 攻击,迫使客户端与AP进行重新认证来抓取握手认证包

Deauth攻击的原理是因为WIFI管理数据帧没有被加密,导致攻击者可以伪造管理帧,从而让攻击者可以任意发送“取消认证”数据包来强行切断AP与客户端的连接。

# Aireplay-ng 用于注入帧,主要功能是产生流量在以后使用了 Aircrack-ng 的用于裂化 WEP 和 WPA-PSK 的密钥
# -0 也可以写成–deauth,后面跟的数字表示帧数量
# -a [ap's mac]
# -c [sta's mac]
aireplay-ng -0 10 -a B0:D5:9D:FE:8B:A5 -c 4A:64:8B:43:43:D8 wlan0

执行完命令后,客户端断开重连,左边即可抓到握手包WPA handshake: B0:D5:9D:FE:8B:A5

④ 破解握手包

# Aircrack-ng 是 802.11 WEP 和 WPA / WPA2-PSK 密钥破解程序
# aircrack-ng -w [字典] [文件名-xx.cap]
aircrack-ng -w top100.txt test_w-01.cap

测试Wi-Fi密码被成功破解!

0x03 窃取被隐藏的SSID

原理:

AP,即「无线路由器」设置关闭SSID广播,由于未广播 SSID,客户端连接时必须要在 Probe Request 帧中携带 SSID,即主动探测, AP 的回应报文为 Probe Response。

由于这种 802.11 管理帧又是广播帧且未加密,因此作为攻击者,我们也会抓到 Probe 报文,这时候就可以得到SSID 。只要有客户端连接就会得到 SSID, 因此我们可以选择等待或使用DeAuthentication 攻击进行获取。

使用工具:

  • 目标AP:「无线路由器」TP-Link TL-WR842N 7.0

    • Wi-Fi名称: 已隐藏
  • 无线网卡: 「TP-Link TL-WN726N」
  • Kali:Aircrack-NG安全套件工具

首先进行网络探测,寻找信号比较强的被隐藏的SSID

airodump-ng wlan0

可以看到,ESSID为<length: 0>时,即意味该AP已经设置为关闭SSID广播,根据信号强度可以判断该AP是测试AP,其BSSID:24:69:68:47:3D:32

到此,同样有两种方式可以得到ESSID,即「Wi-Fi名称」

  • 静悄悄的等待该AP的客户端进行重连认证
  • 使用破解口令时用到的Deauth攻击法

Deauth攻击法

# aireplay-ng 用于注入帧,主要功能是产生流量在以后使用了 Aircrack-ng 的用于裂化 WEP 和 WPA-PSK 的密钥
# -0 10 也可以写成–deauth,后面跟的数字表示帧数量
# -a ap's bssid  aireplay-ng -0 10 -a 24:69:68:47:3D:32 wlan0

如下图:

  1. 不断尝试命令,直到随机到目标wlan0所在的6信道
  2. 成功进行Deauth攻击后,客户端断开重连,获取到WPA handshake握手包
  3. 同时,目标SSID成功显示Harden13

0x04 绕过MAC地址过滤

原理:

AP即无线路由器通常有一个功能叫做ip与mac绑定,就是拒绝白名单以外的mac地址连接。

那么只要找到你的目标AP连接的客户端的mac地址列表,就可以得到某个白名单中的mac地址,进而针对攻击者使用的系统选择工具进行本地网卡mac地址修改

使用工具:

  • 目标AP:「无线路由器」TP-Link TL-WR842N 7.0

    • Wi-Fi名称: Harden13
  • 无线网卡: 「TP-Link TL-WN726N」
  • Kali:
    • Aircrack-NG安全套件工具
    • macchanger:Linux修改网卡mac地址

首先进行网络探测,寻找测试目标SSID:Harden13

airodump-ng wlan0

可以看到下图中序号指示

  1. Harden13 mac地址 BSSID:24:69:68:47:3D:32
  2. 此时连接到Harden13的某一客户端白名单mac地址 STATION:CE:FE:3B:24:D8:5C

在路由器管理后台可以该mac地址所显示的设备为iPhone12

此时,我们使用macchanger将本地wlan0网卡修改成该mac地址,步骤如下

  1. 取消网卡监听模式

    airmon-ng stop wlan0
    
  2. 停用网卡

    ifconfig wlan0 down
    
  3. 检查ifconfig

  4. 修改mac地址

    # macchanger -m [STATION] wlan0
    macchanger -m CE:FE:3B:24:D8:5C wlan0
    

接着就可以连接Harden13绕过MAC地址过滤~

总结

通过本篇文章的具体了解,在我们日常生活与工作中,无论是使用家庭路由器还是随身Wi-Fi等AP,要想提高安全攻击门槛,Wi-Fi上网都应做到(组合拳):

  • Wi-Fi密码的设置应做到大小写字母+数字+特殊字符,不少于10位
  • 关闭SSID广播,家庭或公司上网手动填写Wi-Fi名称及密码进行上网
  • 设置开启ip与mac地址绑定功能,将需要连接的客户端设备一一映射绑定

PS:本文仅供学习研究,切莫用于非法用途!!!

参考

摸索Kali-linux无线渗透(1)

颖奇 L’Amore师傅:无线安全系列文章

无线网络安全测试初探

浅谈Wi-Fi渗透--原理篇相关推荐

  1. 浅谈Rem 及其转换原理

    浅谈Rem 及其转换原理 今天有小伙伴问了我Rem的转换原理,那我就写篇博客记录一下吧! rem 是 CSS3 新增的相对长度单位,是指相对于元素 html 的 font-size 计算值 的大小. ...

  2. 浅谈动感歌词-歌词生成篇

    1引言 在写这生成篇时,我还是在烦恼应该是先写歌词解析篇,还是先写歌词生成篇,后来我想一想,其实还是要先有歌词文件,才有解析嘛,当然,我们也可以通过现有的歌词(krc.trc和ksc等)直接跳过这一步 ...

  3. 深入浅谈,CPU设计原理

    首先,声明这是一篇转载文,这篇文章是,从卡饭论坛 看到的一篇文章<深入浅谈,CPU设计原理>,是一篇连载,文章,卡饭论坛,是我高中的时候,经常去的论坛,里面有很多好的文章,推荐给大家.也许 ...

  4. 浅谈人工智能的工作原理

    众所周知人工智能现在快速发展,并且为众人所熟知,不仅如此,人工智能也在各行各业中广泛使用.那么人工智能的工作原理是什么呢? 浅谈人工智能的工作原理 人类智能由三个部分构成(还有些其他生物学和科学现象也 ...

  5. 动态磅是怎么原理_浅谈动态地磅的原理及未来发展方向

    浅谈动态地磅的原理及未来发展方向: 文章介绍了动态地磅的结构和工作原理,针对动态地磅的分类做了全面的概述,分别对不同的动态地磅做了对比及详细的阐述,说明选择和使用动态地磅器的注意事项,凸显了轴组式动态 ...

  6. 浅谈 git 底层工作原理

    浅谈 git 底层工作原理 系统复习到这里也快差不多了,大概就剩下两三个 sections,这里学习一下 git 的 hashing 和对象. 当然,跳过问题也不大. config 文件 这里还是会用 ...

  7. 伺服驱动器生产文件_浅谈伺服驱动器的工作原理

    原标题:浅谈伺服驱动器的工作原理 目前,主流的伺服驱动器均采用数字信号处理器(DSP)作为控制核心,可以实现比较复杂的控制算法,实现数字化.网络化和智能化.功率器件普遍采用以智能功率模块(IPM)为核 ...

  8. 浅谈代理服务器工作的原理

    浅谈代理服务器工作的原理 (1) 代理服务原理 代理服务器有很多种,大体来说有http,ftp,socks代理三种,其中又分透明代理和不透明代理.其中透明代理一般是网关,是硬件.所以这里讨论不透明代理 ...

  9. 浅谈elasticsearch的分词原理

    这篇文章主要是来浅谈一下elasticsearch的分词原理,让各位同学对分词不再陌生~ 废话不多说,我们直接上干货 前言一 我们创建一个文档 PUT test/_doc/1 {"msg&q ...

最新文章

  1. 适用于AMD ROC GPU的Numba概述
  2. SAP PM入门系列3 - 设备主数据里无‘检验类型‘栏位,那何处定义维护订单可以触发检验批?
  3. 让iPhone帮你找钥匙钱包?这事还真的可行
  4. python语言怎么学-Py列为黑客应该学的四种编程语言之一 新手该怎么学
  5. TortoiseSVN图标设置在注册表中的位置
  6. ssh能够连接而sftp不能连接的解决方法
  7. 《openssl编程》之BIO
  8. js 操作cookies 方法
  9. android的多行文本框的值,Swift - 多行文本输入框(UITextView)
  10. iOS项目的命名规范
  11. display:inline的用法
  12. 嵌入式软件工程师_嵌入式软件工程师适合去芯片公司吗?
  13. VS2013 C++工程调试加断点不能停
  14. Julia也能做爬虫?可以,但没必要
  15. 根据select的内容来批量修改一个表的字段
  16. 服务器 IIS主机的Rewrite伪静态组件下载与配置
  17. 对PX4参数THR_MDL_FAC的理解
  18. xmind打不开的问题
  19. ecshop 要求php,使用ecshop需要什么环境才可以运行
  20. python批量检索文献_快解锁新姿势,教你如何用Python搞定文献搜索和科研图片!...

热门文章

  1. Cisco(37)——BGP的十三条选路原则演示
  2. 封装、继承、多态 通俗理解
  3. 大数据培训 | 电商用户行为分析之订单支付实时监控
  4. Python | 使用时间模块编写倒计时程序
  5. 23个Python爬虫开源项目代码:微信、淘宝、豆瓣、知乎、微博...
  6. 运用简单C语言代码打印一棵圣诞树
  7. 计算机输入输出接口分类,以cpu为中心配上存储器输入输出接口电路及系统总线所组成的计算机称为什麽...
  8. linux系统中shell脚本最全详解二shell条件判断语法介绍函数分析
  9. GSM-GPRS-WCDMA-LTE-5g 的总结
  10. 自动化学报- Teleoperation