无线攻击之aircrack-ng

无线攻击之aircrack-ng套件

一、aircrack-ng简介

Aircrack- ng 是一个完整的工具套件,以评估 WiFi 网络的安全性。它着重于WiFi 安全的不同领域:

监视:数据包捕获并将数据导出到文本文件,以供第三方工具进行进一步处理

攻击:通过数据包注入来重放攻击,取消身份验证,伪造的接入点和其他攻击

测试:检查 WiFi 卡和驱动程序功能(捕获和注入)

破解:WEP 和 WPA PSK(WPA 1 和 2)

所有工具都是命令行,允许进行大量脚本编写。许多 GUI 都利用了此功能。它主要适用于 Linux。

二、aircrack-ng常用工具介绍

(一) Airbase-ng

Airbase-ng 是多功能工具,实现的主要思想是,旨在攻击客户端,鼓励客户端与伪造的 AP 关联,而不是阻止他们访问真实的 AP。主要功能有:

实施 Caffe Latte WEP 客户端攻击

实施 Hirte WEP 客户端攻击

能够捕获 WPA / WPA2 握手的能力

可以充当临时访问点

能够充当完整的接入点

能够按 SSID 或客户端 MAC 地址进行过滤

能够处理和重新发送数据包

能够加密发送的数据包和解密接收的数据包

1、 语法格式

【语法】airbase-ng <option>

Option:

-a bssid:设置接入点 MAC 地址

-i iface:从此接口捕获数据包

-w WEP key:使用此 WEP 密钥加密 / 解密数据包

-h MAC:用于 MITM 模式的源 mac

-f disallow:禁止指定的客户端 MAC(默认值:允许)

-W 0 | 1:[不] 在信标 0 | 1 中设置 WEP 标志(默认:自动)

-q:安静(不打印统计信息)

-v:详细(打印更多消息)(长–详细)

-M:[指定的] 客户端和 bssids 之间的 MITM(当前未实现)

-A:点对点模式 (允许其他客户端对等)(Long–点对点)。

-Y in | out |Both:外部数据包处理

-c channel:设置 AP 运行的通道

-X:隐藏的 ESSID(长–隐藏)

-s:强制共享密钥认证

-S:设置共享密钥挑战长度(默认值:128)

-L:Caffe-Latte 攻击(长– 拿铁咖啡)

-N:Hirte 攻击(cfrag 攻击),针对 wep 客户端创建 arp 请求(long -cfrag)-x nbpps:每秒的数据包数(默认值:100)

-y:禁用对广播探测的响应

-0:设置所有 WPA,WEP,打开标签。不能与 - z 和 - Z 一起使用

-z type:设置 WPA1 标签。1 = WEP40 2 = TKIP 3 = WRAP 4 = CCMP 5 = WEP104

-Z type ::与 - z 相同,但适用于 WPA2

-V type ::假 EAPOL 1 = MD5 2 = SHA1 3 = 自动

-F prefix:将所有已发送和已接收的帧写入 pcap 文件

-P:即使指定 ESSID,也响应所有探测

-I interval:以毫秒为单位设置信标间隔值

-C 秒:启用信标探测的 ESSID 值(需要 - P)

过滤器选项:

-bssid :要筛选 / 使用的 bssid (简称 - b)

-bssids :从该文件读取 BSSID 列表 (j-B)

-client :客户端的 MAC 接受(短 - d)

-clients :从该文件中读取 Mac 列表 ((短 - D)

-essid :指定单个 ESSID(短 - e)

-essids :从该文件中读取 ESSID 列表 (短 - E)

2、 使用示例

(1)airbase-ng -c 9 -e WiFiClass -N -W 1 wlan0

-c 9 指定通道

-e teddy 过滤单个 SSID

-N 指定 Hirte 攻击

-W 1 强制信标指定 WEP

rausb0 指定要使用的无线接口

(2)捕获 WPA 握手包

airbase-ng -c 9 -e WiFiClass -z 2 -W 1 wlan0

-c 9 指定通道

-e teddy 过滤单个 SSID

-z 2 指定 TKIP

-W 1 设置 WEP 标志,因为有些客户机没有它。rausb0 指定要使用的无线接口

必须根据客户端使用的密码来更改 - z 类型。TKIP 是 WPA 的典型代表。

(二) Airmon-ng

可用于在无线接口上启用监视模式。它也可以用于从监视模式返回到托管模式。输入不带参数的 airmon-ng 命令将显示接口状态。

1、语法格式

【语法 1】airmon-ng <start|stop> <interface> [channel]

【语法 2】airmon-ng <check> [kill]

start|stop:启动或停止监听模式

interface:监听接口

channel:监听信道

check:列出所有可能干扰无线网卡的程序

kill:结束所有可能干扰无线网卡的进程

2、使用示例

(1)列出所干扰无线网卡工作程序、结束所有干扰进程

注意:kill 后,网络管理器进程将被结束,若需要重新启用,则使用命令:

systemctl enable –now NetworkManager

(2)启用监听模式

(3)停用监听模式

(三) Airodump-ng

Airodump-ng 用于原始 802.11 帧的数据包捕获,尤其适用于收集 WEP IV(初始化矢量),以用于将其与 aircrack-ng 一起使用

1、语法格式

【语法】airodump-ng <options> <interface>[,<interface>,…]

Option:

-H,–help:打印帮助信息界面

-i,–ivs:只保存 IVs(只对破解有用).如果指定了此选项,则必须提供转储前缀(–write 选项)

-g,–gpsd:指示 airodump-ng 应该尝试使用 GPSd 获取坐标。

-w <prefix>,–write <prefix>:要使用的转储文件前缀。如果没有提供这个选项,它将只在屏幕上显示数据。在该文件旁边将创建与捕获文件相同文件名的 CSV 文件

-e,–beacons:它将记录所有的信标到 cap 文件。默认情况下,它只记录每个网络的一个信标

-u <secs>,–update <secs>:延迟<秒>显示更新之间的延迟(默认为 1 秒)。适用于 CPU 速度慢的情况。

-showack:打印 ACK / CTS / RTS 统计数据。有助于调试和一般的注入优化。它表明如果你注入,注入太快,到达 AP,帧是有效的加密帧。允许探测“隐藏”的站,因为它们太远,无法捕获高比特率帧,因为 ACK 帧以每秒 1Mbps 的速度发送。-h:隐藏的站点.

–berlin <secs>:当不再接收到任何数据包时,从屏幕上删除 AP/client 之前的时间(默认为120 秒)。

-c <channel>[,<channel>[,…]],–channel <channel>[,<\channel>[,…]]:指出要监听的频道。默认情况下,airodump-ng 在所有 2.4GHz 通道上跳转。

-b <abg>,–band <abg>:指出 airodump-ng 应该跳的波段。它可以是“a”、“b”和“g”字母的组合(“b”和“g”使用 2.4GHz,“a”使用 5GHz)。与——通道选项不兼容。

-s <method>,–cswitch <method>:定义 airodump-ng 在使用多个网卡时设置通道的方式。 有效值:0 (FIFO,默认值)、1(轮询)或 2(最后一跳)。

-2,–ht20:将通道设置为 HT20 (802.11n)。

-3,–ht40+:设置通道为 HT40+ (802.11n)。它要求 20MHz 以上的频率是可用的(4 通道以上),因此一些通道在 HT40+中是不可用的。HT40+在美国只有 7 个频道可用(欧洲大部分地区有9 个)。

-5,–ht40-:将通道设置为 HT40-(802.11n)。它要求 20MHz 以下的频率是可用的(4 个通道是低的),因此一些通道在 HT40-中是不可用的。在 2.4GHz 中,HT40 通道从 5 通道开始。

-r <file>:从文件中读取数据包。

-x <msecs>:主动扫描模拟(发送探测请求并解析探测响应)。

-M,–manufacturer:显示一个制造商列,其中包含从 IEEE OUI 列表获得的信息。

-U,–update:显示从其信标时间戳获得的 APs 正常运行时间。

-W,–wps:显示 WPS 列,其中包含 WPS 版本、配置方法、从 APs 信标或探针响应(如果有的话)获得的 AP 设置锁定。

–output-format <formats>:定义要使用的格式(用逗号分隔)。可能的值是:pcap, ivs, csv, gps, kismet, netxml。默认值为:pcap、csv、kismet、kismt -newcore。“pcap”是用于以 pcap 格式记录捕获的,“ivs”是用于 ivs 格式的(它是—ivs 的快捷方式)。“csv”将创建一个 airodump-ng csv 文件,“kismet”将创建一个 kismet csv 文件,“kismet-newcore”将创建一个 kismet netxml文件。“gps”是 gps 的简写。除 ivs 和 pcap 外,这些值可以合并。

-I <seconds>,–write-interval <seconds>:输出文件的写入间隔为 CSV, Kismet CSV 和 Kismet NetXML,以秒为单位(最少 1 秒)。默认:5 秒。注意,间隔太小可能会减慢 airodump-ng。

-K <enable>,–background <enable>:覆盖自动后台检测。使用“0”强制前台设置,使用“1”强制后台设置。它不会使 airodump-ng 作为守护进程运行,它将跳过后台自动检测和强制启用/禁用交互模式和显示更新。

–ignore-negative-one:删除“固定通道<接口>:-1”的消息

Filter options: 过滤选项:

-t <OPN|WEP|WPA|WPA1|WPA2>,–encrypt <OPN|WEP|WPA|WPA1|WPA2>:将只显示与给定加密匹配的网络。可以多次指定:’-t OPN -t WPA2’

-d <bssid>,–bssid <bssid>:将只显示与给定 bssid 匹配的网络。

-m <mask>,–netmask <mask>:将只显示网络,匹配给定的 bssid ^网掩码组合。需要–bssid(或-d)需要指定。

-a:只显示关联的客户端。

-N,–essid:通过 ESSID 过滤 APs。可以多次使用以匹配一组 ESSID。

-R,–essid-regex:使用正则表达式通过 ESSID 过滤 APs。

2、使用示例

(1)只显示 ivs 信息,不保存扫描文件

airodump-ng -i wlan0mon

1.BSSID–无线AP(路由器)的MAC地址,如果你想PJ哪个路由器的密码就把这个信息记下来备用。
2.PWR–这个值的大小反应信号的强弱,越大越好。很重要!!!
3.RXQ–丢包率,越小越好,此值对PJ密码影响不大,不必过于关注、
4.Beacons–准确的含义忘记了,大致就是反应客户端和AP的数据交换情况,通常此值不断变化。
5.#Data–这个值非常重要,直接影响到密码PJ的时间长短,如果有用户正在下载文件或看电影等大量数据传输的话,此值增长较快。
6.CH–工作频道。
7.MB–连接速度
8.ENC–编码方式。通常有WEP、WPA、TKIP等方式,本文所介绍的方法在WEP下测试100%成功,其余方式本人 并未验证。
9.ESSID–可以简单的理解为局域网的名称,就是通常我们在搜索无线网络时看到的列表里面的各个网络的名称

(2)以 ivs 格式保存扫描文件为 test

airodump-ng -i -w test wlan0mon

(3)获取位置信息

airodump-ng -g wlan0mon

(4)扫描指定信道

airodump-ng -c 6 wlan0mon

(5)将扫描到指定信道的信息包含位置信息保存到文件 test 中,将生成 6 个新文件

airodump-ng -c 6 -w test -g wlan0mon

(6)将扫描到指定信道的信息包含位置信息保存到文件 test 中,并指定输出格式为 pcap,将生成两个新文件

airodump-ng -c 6 -w test -g –output-format pcap wlan0mon

(四) Aireplay-ng

Aireplay-ng 用于注入帧。主要功能是产生流量在以后使用了 Aircrack-ng的用于裂化 WEP 和 WPA-PSK 的密钥。为了捕获 WPA 握手数据,伪造的身份验证,交互式数据包重播,手工制作的 ARP 请求注入和 ARP 请求重新注入,有多种攻击可能会导致取消认证。

1、语法格式

【语法】aireplay-ng <options> <replay interface>

*过滤器选项:*

-b bssid:MAC 地址,访问点

-d dmac:MAC 地址,目标

-s smac:MAC 地址,源

-m len:最小数据包长度

-n len:最大数据包长度

-u type:帧控制,类型字段

-v subt:帧控制,子类型字段

-t tods:帧控制,至 DS 位

-f fromds:帧控制,从 DS 位开始

-w iswep:帧控制,WEP 位

对于除身份验证和伪身份验证以外的所有攻击,您可以使用以下过滤器来限制将哪些数据包呈现给特定攻击。最常用的过滤器选项是 “-b”,用于选择特定的接入点。对于典型用法,“-b”是您唯一使用的一个。

*重播选项:*

-x nbpps:每秒的数据包数

-p fctrl:设置帧控制字(十六进制)

-a bssid:设置接入点 MAC 地址

-c dmac:设置目标 MAC 地址

-h smac:设置源 MAC 地址

-e essid:对于 fakeauth 攻击或注入测试,它设置目标 AP SSID。当未隐藏 SSID 时,这是可选的。

-j:arpreplay 攻击:注入 FromDS pkts

-g value:更改环形缓冲区的大小(默认值:8)-k IP:在片段中设置目标 IP

-l IP:在片段中设置源 IP

-o npckts:每个突发的包数(-1)

-q sec:保持活动之间的秒数(-1)

-y prga:共享密钥验证的密钥流

-B 或 -bittest:比特率测试(仅适用于测试模式)

-D:禁用 AP 检测。如果未听到 AP 信标,则某些模式将无法继续。这将禁用此功能。

-F 或 -fast:选择第一个匹配的数据包。对于测试模式,它仅检查基本注入并跳过所有其他测试。

-R 禁用 /dev/rtc 使用。一些系统遇到 RTC 的锁定或其他问题。这将禁用用法。

*来源选项:*

iface:从此接口捕获数据包

-r 文件:从该 pcap 文件中提取数据包

****攻击方式****(仍然可以使用数字):

–deauth count:取消对 1 个或所有工作站的认证(-0)

–fakeauth 延迟:与 AP 的伪认证(-1)

–interactive:交互式帧选择(-2)

–arpreplay:标准 ARP 请求重播(-3)

–chopchop:解密 / 斩波 WEP 数据包(-4)

–fragment:生成有效的密钥流(-5)

2、使用示例

获取握手包

airodump-ng –bssid [目标wifimac] -c [目标wifi信道] -w [保存的文件名] wlan0mon

这里-c指定的扫描信道就是后续攻击的信道

注意!!!这里一定要与对方wifi信道相同否则抓不到握手包,也攻击不了

重新扫描一遍:由于是开的个人热点进行攻击,所以指定协议为WAP2

然后在上面命令运行的同时,再开一个终端进行攻击:

aireplay-ng -0 5 -a 8A:99:70:05:47:05 -c 7C:B2:7D:64:49:FC wlan0mon

获取到了握手包WPA handshake 8A:99:70:05:47:05

解释:-0为模式中的一种:冲突攻击模式,后面跟发送次数(设置为0,则为循环攻击,不停的断开连接,客户端无法正常上网,-a 指定无线AP的mac地址,即为该无线网的bssid值,上图可以一目了然。

-0:取消认证攻击

1:攻击 1 次

-a:要攻击的 AP MAC 地址

-c:客户端的 MAC 地址

Wlan0mon:使用的接口

(五) Aircrack-ng

Aircrack-ng 是 802.11 WEP 和 WPA / WPA2-PSK 密 钥 破 解 程 序 。 一 旦使用airodump-ng 捕获了足够的加密数据包,Aircrack-ng 即可恢复 WEP 密钥。为了破解 WPA / WPA2 预共享密钥,仅使用字典方法。

1、语法格式

【语法】aircrack-ng [options] <capture file(s)>

*常用选项:*

-a amode:强制攻击模式(1 = 静态 WEP,2 = WPA / WPA2-PSK)

-e essid:如果设置,将使用来自具有相同 ESSID 的网络的所有 IV。如果未广播 ESSID (隐藏),则 WPA / WPA2-PSK 破解也需要此选项。

-b bssid:长版–bssid。根据接入点的 MAC 地址选择目标网络

-p nbcpu:在 SMP 系统上:要使用的 CPU 数量。此选项在非 SMP 系统上无效

-q none:启用安静模式(在没有找到密钥之前不输出状态)

-C MACs:长版–combine。将给定的 AP(以逗号分隔)合并为虚拟 AP

-l file name:(小写 L,ell)将密钥记录到指定的文件。覆盖文件(如果已存在)

*WEP 和 WPA-PSK 破解选项:*

-w words:单词列表或“-”的路径,用逗号分隔多个单词表

-N file:创建一个新的破解会话并将其保存到指定的文件

-R file:从指定文件还原破解会话

*WPA-PSK 选项:*

-E file: 创建 EWSA 项目文件 v3

-j file:创建 Hashcat v3.6 + Capture 文件(HCCAPX)

-J file:创建 Hashcat Capture 文件

-S none:WPA 破解速度测试

-Z sec:WPA 破解速度测试执行时间,以秒为单位

-r database:利用 airolib-ng 生成的数据库作为输入来确定 WPA 密钥。如果 aircrack-ng 尚未使用 sqlite 支持进行编译,则输出错误消息

2、使用示例

使用字典 wordlist.txt 破解 hack-02.cap 握手包对应 AP 的密码

这是上一步抓到的握手包,新建一个wordlist.text进行攻击:

aircrack-ng -w wordlist.txt thekai-01.cap

(六) ifconfig:用于查看和修改网卡状态

1、语法格式

【语法】ifconfig [-a] [-s] [interface] [down|up]

-a:列出连接到当前系统的所有接口详细信息

-s:列出所有可用接口

interface:接口相关参数

down:关闭指定网卡

up:激活指定网卡

2、使用示例

(1)查看本机接口信息

(2)列出所有可用接口

(3)关闭指定网卡

(4)激活指定网卡

(七) macchanger:伪造 MAC 地址

1、语法格式

【语法】macchanger [option] device

-a:伪造一个同厂的同类型随机 MAC 地址

-A:伪造一个不同厂商不同类型的 MAC 地址

-e:伪造一个同厂的随机 MAC 地址

-s,–show:打印当前的 MAC。 当未指定其他选项时,这是默认操作。

-r,–random:设置完全随机的 MAC。

-m xx:xx:xx:xx:xx:xx

–mac=xx:xx:xx:xx:xx:xx 修改为指定的 mac 地址

-p,–permanent:将 MAC 地址重置为其原始的永久硬件值

2、使用示例

(1)伪造一个同厂的同类型随机 MAC 地址。注意:若网卡为激活状态,则无法修改 MAC 地址,会显示设备忙。

(2)伪造一个不同厂商不同类型的 MAC 地址

(3)伪造一个同厂的随机 MAC 地址

(4)修改为指定的 MAC 地址

(5)取消伪造的 MAC 地址

(八) iwconfig:配置无线网络设备或显示无线网络设备信息

1、语法格式

【语法】iwconfig [interface] [option]

auto:自动模式

essid:设置 ESSID

nwid:设置网络 ID

freq:设置无线网络通信频段

chanel:设置无线网络通信频段

sens:设置无线网络设备的感知阀值

mode:设置无线网络设备的通信设备

ap:强迫无线网卡向给定地址的接入点注册

nick <名字>:为网卡设定别名

rate <速率>:设定无线网卡的速率

rts <阀值>:在传输数据包之前增加一次握手,确信信道在正常的

power:无线网卡的功率设置

2、使用示例

(1)查看无线网卡信息

(2)设备无线网卡工作模式为 monitor。注意:若网卡在激活状态,则会显示设备繁忙

三、aircrack-ng Wifi 密码破解基本步骤

四、Wifi 密码破解实例

1、Down 掉网卡:ifconfig wlan0 down

2、伪造 MAC 地址:macchanger –e wlan0

3、激活网卡:ifconfig wlan0 up

4、设置监听模式

(1)结束占用无线网卡的进程:airmon-ng check kill

(2)开启无线网卡监听模式:airmon-ng start wlan0

(3)查看无线网卡状态:iwconfig

5、探测网络,查看周围 Wifi 信息:airodump-ng wlan0mon

6、监听抓包:airodump-ng –ivs –bssid AP_MAC –w hack wlan0mon

7、攻击网络(需新开一个终端):aireplay-ng -0 1 –a AP_Mac –c Client_Mac wlan0mon

在监听抓包时,需要要求指定的 AP 有正在进行连接认证的客户端以获取握手包,若无正在认证客户端,将会导致长时间无法抓包成功,这时可以人为的将已经连接的客户强制断开。因为在连接 Wifi 时一般都选择了自动连接,所以一旦断开,客户端将会立即重新连接,此时就可以捕获到握手包。若一次不成功,则可以多攻击几次,但攻击次数过多有可能引起目标 AP 警觉,严重时可导致 AP 死机。

8、破解密码:aircrack-ng –w wordlist.txt thakai-05.ivs

上一篇:
vulnhub靶机渗透RAVEN1
下一篇:
java书城全开发流程