【原创】无线破解Aircrack-ng套件详解(一)--airmon-ng与airodump-ng
一:Aircrack-ng详解
1.1 Aircrack-ng概述
Aircrack-ng是一款用于破解无线802.11WEP及WPA-PSK加密的工具,该工具在2005年11月之前名字是Aircrack,在其2.41版本之后才改名为Aircrack-ng。
Aircrack-ng(注意大小写,aircrack-ng是Aircrackng中的一个组件)是一个包含了多款工具的无线攻击审计套装,这里面很多工具在后面的内容中都会用到,具体见下表为Aircrack-ng包含的组件具体列表。
组件名称 |
描 述 |
aircrack-ng |
主要用于WEP及WPA-PSK密码的恢复,只要airodump-ng收集到足够数量的数据包,aircrack-ng就可以自动检测数据包并判断是否可以破解 |
airmon-ng |
用于改变无线网卡工作模式,以便其他工具的顺利使用 |
airodump-ng |
用于捕获802.11数据报文,以便于aircrack-ng破解 |
aireplay-ng |
在进行WEP及WPA-PSK密码恢复时,可以根据需要创建特殊的无线网络数据报文及流量 |
airserv-ng |
可以将无线网卡连接至某一特定端口,为攻击时灵活调用做准备 |
airolib-ng |
进行WPA Rainbow Table攻击时使用,用于建立特定数据库文件 |
airdecap-ng |
用于解开处于加密状态的数据包 |
tools |
其他用于辅助的工具,如airdriver-ng、packetforge-ng等 |
1.2 各组件详解(主要参考man手册)
1.2.1 airmon-ng
作用:该命令可以用于无线网卡的“管理模式”与“监听模式”的相互切换。当使用该命令并且不加任何选项时,将会显示无线网卡的状态。同时该命令也可以list或者终止会妨碍到无线网卡操作的进程。
a)“管理模式”与“监听模式”的相互切换
用法:airmon-ng <start|stop> <interface> [channel]
#切换前
qi@zhuandshao:~/download/-专业软件$ iwconfig
wlp2s0 IEEE 802.11 ESSID:"2s"
mode:Managed Frequency:2.467 GHz Access Point: ::5C:4A:D9:
Bit Rate= Mb/s Tx-Power= dBm
Retry short limit: RTS thr:off Fragment thr:off
Power Management:off
Link Quality=/ Signal level=- dBm
Rx invalid nwid: Rx invalid crypt: Rx invalid frag:
Tx excessive retries: Invalid misc: Missed beacon: #切换后
qi@zhuandshao:~/download/-专业软件$ sudo airmon-ng start wlp2s0 PHY Interface Driver Chipset phy0 wlp2s0 ath9k Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev ) (mac80211 monitor mode vif enabled for [phy0]wlp2s0 on [phy0]wlp2s0mon)
(mac80211 station mode vif disabled for [phy0]wlp2s0) qi@zhuandshao:~/download/-专业软件$ iwconfig
enp1s0 no wireless extensions. lo no wireless extensions. wlp2s0mon IEEE 802.11 Mode:Monitor Frequency:2.457 GHz Tx-Power= dBm
Retry short limit: RTS thr:off Fragment thr:off
Power Management:off
切换前,查看无线网卡的信息,可以看到红色底色部分展示的无线网卡的名称为wlp2s0,模式为Managed(管理模式);
切换后,再次查看无线网卡信息,可以看到红色底色部分展示的无线网卡的名称为wlp2s0mon,模式为Monitor(监听模式),并且此时无线网卡不再作为一个station接入任何无线网络。
b) 查看无线网卡状态
用法:airmon-ng
qi@zhuandshao:~/download/-专业软件$ sudo airmon-ng PHY Interface Driver(驱动程序) Chipset(芯片集) phy0 wlp2s0mon ath9k Qualcomm Atheros QCA9565 / AR9565 Wireless Network Adapter (rev )
显示出无线网卡的一些基本信息,包括驱动程序与芯片集。
c) list/kill会妨碍到无线网卡操作的进程
用法:airmon-ng <check> [kill]
列出所有可能干扰无线网卡的程序。如果参数kill被指定,将会终止所有的程序。
qi@zhuandshao:~/download/-专业软件$ sudo airmon-ng check Found processes that could cause trouble.
If airodump-ng, aireplay-ng or airtun-ng stops working after
a short period of time, you may want to run 'airmon-ng check kill' PID Name
avahi-daemon
avahi-daemon
wpa_supplicant
dhclient
NetworkManager
补充内容:无线网卡模式
被管理模式(Managed mode):当你的无线客户端直接与无线接入点(Wireless Access Point,WAP)连接时,就使用这个模式。在这个模式中,无线网卡的驱动程序依赖WAP管理整个通信过程。
Ad hoc模式:当你的网络由互相直连的设备组成时,就使用这个模式。在这个模式中,无线通信双方共同承担WAP的职责。
主模式(Master mode):一些高端无线网卡还支持主模式。这个模式允许无线网卡使用特制的驱动程序和软件工作,作为其他设备的WAP。
监听模式(Monitor mode):就我们的用途而言,这是最重要的模式。当你希望无线客户端停止收发数据,专心监听空气中的数据包时,就使用监听模式。要使Wireshark捕获无线数据包,你的无线网卡和配套驱动程序必须支持监听模式(也叫RFMON模式)。
大部分用户只使用无线网卡的被管理模式或ad hoc模式。图11-4展示了各种模式如何工作。
1.2.2 airodump-ng
作用:该命令被用作捕获原始802.11数据帧以便使用aircrack-ng破解。如果你的计算机连接的GPS接收器,airodump-ng可以记录发现的接入点的坐标。此外,airodump-ng写出一个文本文件中包含所有接入点和可见客户端的细节。
常用选项描述:
-w <prefix>, --write <prefix>:该选项可用来使用转储文件前缀;即是使用该选项指定存储文件名后,将会生成一个捕获包同名的CVS文件。
qi@zhuandshao:~/$ sudo airodump-ng -w qw wlp2s0mon
CH ][ Elapsed: s ][ -- : BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID :3D:::2C: - 54e. OPN NCWU-Uicom
:3D:::: - 54e. OPN NCWU
:3D:::2C: - 54e. OPN NCWU ^C
#可以看到转存文件(.cvs)与捕获包(.cap)
qi@zhuandshao:~/$ ls qw-.cap qw-.csv qw-.kismet.csv qw-.kismet.netxml
-i, --ivs:使用该选项后,只会保存可用于破解的IVS数据报文。通过设置过滤,不再将所有无线数据保存,这样可以有效地缩减保存的数据包大小。
qi@zhuandshao:~/$ sudo airodump-ng -i -w qw wlp2s0mon
CH ][ Elapsed: s ][ -- : BSSID(ap的MAC) PWR(信号强度) Beacons(ap发送的beacons数据包量) #Data(捕获的数据包的量), #/s CH MB ENC CIPHER AUTH ESSID :::E6:F9: - 54e WPA2 CCMP PSK xiaoyu
::5A:4A:C4: - 54e WPA2 CCMP PSK 2s BSSID STATION PWR Rate Lost Frames Probe ::5A:4A:C4: :A4:ED:B4:E9:DD - - 1e ^C
#捕获的流量包被存储为ivs文件
qi@zhuandshao:~/$ ls
qw-01.ivs
-d <bssid>, --bssid <bssid>:根据Bssid过滤,显示指定的bssid的信息。
-N, --essid:根据Essid过滤,显示指定的Essid的信息。
#显示bssid为44::5A:4A:C4: 的无线热点的信息
qi@zhuandshao:~/$ sudo airodump-ng --bssid 44:97:5A:4A:C4:68 wlp2s0mon CH ][ Elapsed: s ][ -- : BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID ::5A:4A:C4: - 54e WPA2 CCMP PSK 2s BSSID STATION PWR Rate Lost Frames Probe ::5A:4A:C4: :6B:2C::6D: - 0e- 0e
#Bssid为44:97:5A:4A:C4:68的热点上连接有MAC地址为48:6B:2C:83:6D:28机器。
-c <channel>:指定监听的信道,默认在2.4GHz频谱内跳跃。
#监听所有的在通道1上的通信
qi@zhuandshao:~/$ sud airodump-ng -c wlp2s0mon
CH 1 ][ Elapsed: s ][ -- :
输出信息详解:
qi@zhuandshao:~/$ sudo airodump-ng wlp2s0mon #不加参数可以当做扫描周边无线网络
CH ][ Elapsed: s ][ -- : BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID :::2F::2E - 54e. WPA2 CCMP PSK I love study
C4:::::6F - 54e. WPA2 CCMP PSK fuck you
D4:::2D::E4 - 54e WPA2 CCMP PSK FAST_20E4 BSSID STATION PWR Rate Lost Frames Probe (not associated) :6B:2C::6D: - -
(not associated) B6:::3C:B5:DC - -
C4:::::6F 5C:AD:CF::4C: - -
C4:::::6F AC:E0:::: - 6e- fuck you
BSSID:无线热点的MAC地址
PWR:无线热点的信号强度。个人经验一般信号强度大于-70的可以进行破解,大于-60就最好了,小于-70的不稳定,信号比较弱。(信号强度的绝对值越小表示信号越强)
Beacons:AP发送的beacons的数量。每个接入点在最低速率下,大约每秒发送10个beacons。因此会看到该数值增加非常快。
#Data:捕获的数据包量,包含广播数据包。
#/s: CH:通道. MB:AP所支持的最大的速率。如果MB = 11,就是802.11b;如果MB = 22,就是802.11b+;更高的速率是802.11g。(54.)表明短前导码的支持,”E”表明网络具有QoS(802.11e)启用。 ENC:使用的加密算法。OPN表示不加密;"WEP?"表示没有足够的数据证明是WEP或者时更高级的WPA; 没有问号标记的WEP表示静态或动态WEP;如果是 TKIP 、 CCMP 或者 MGT则代表WPA或WPA2。
CIPHER:检测的密码。 AUTH:使用的认证协议。
ESSID:也被称为SSID。
STATION:每一个相关的的工作站或搜索AP连接的工作站的MAC地址。
airodump-ng的常用使用方式:
airodump-ng最主要的作用就是捕获用于aircrack-ng破解使用的数据包(.ivs或者.cap)。使用时可以按照如下思路使用:
1.在使用时可以不加任何选项先搜索一下周边的AP,找到感兴趣的AP;
2.使用过滤(根据Bssid过滤)将感兴趣AP的详细信息展示出来;
3.之后开始捕获该AP用于破解的数据包。
//TODO
下篇将会详解Aircrack-ng套件的另外两个组件,aireplay-ng与aircrack-ng。
第三篇会演示一个无线破解示例。
【原创】无线破解Aircrack-ng套件详解(一)--airmon-ng与airodump-ng的更多相关文章
- Flume NG 配置详解(转)
原文链接:[转]Flume NG 配置详解 (说明,名词对应解释 源-Source,接收器-Sink,通道-Channel) 配置 设置代理 Flume代理配置存储在本地配置文件.这是一个文本文件格式 ...
- 【原创】无线破解Aircrack-ng套件详解--airmon-ng与airodump-ng
一:Aircrack-ng详解 1.1 Aircrack-ng概述 Aircrack-ng是一款用于破解无线802.11WEP及WPA-PSK加密的工具,该工具在2005年11月之前名字是Aircra ...
- 【原创】我的KM算法详解
0.二分图 二分图的概念 二分图又称作二部图,是图论中的一种特殊模型. 设G=(V, E)是一个无向图.如果顶点集V可分割为两个互不相交的子集X和Y,并且图中每条边连接的两个顶点一个在X中,另一个在Y ...
- ng 目录详解
在新建的项目中需要我们关注的就是package.json和src文件夹 node_modules (项目所需依赖)是package.json所创建的模块安装到node_modules中 src:是代码 ...
- [原创]python之简单计算器(超详解,只有基本功能+-*/,还有括号处理)
不想看过程的话,直接看文章最后的正式源码 作业需求及分析: 流程图 https://www.processon.com/diagraming/580c5276e4b03c844a5a9716 初期感 ...
- 【原创】纯干货,Spring-data-jpa详解,全方位介绍。
本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求.这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring ...
- 【原创】linux命令bc使用详解
最近经常要在linux下做一些进制转换,看到了可以使用bc命令,如下: echo "obase=10;ibase=16;CFFF" | bc 用完以后就对bc进行了进一步的了解, ...
- 【原创】STM32下波特率计算详解
波特率的计算 STM32下的波特率和串口外设时钟息息相关,USART 1的时钟来源于APB2,USART 2-5的时钟来源于APB1.在STM32中,有个波特率寄存器USART_BRR,如下: ...
- 【原创】纯干货,Spring-data-jpa详解,全方位介绍。(转)
本篇进行Spring-data-jpa的介绍,几乎涵盖该框架的所有方面,在日常的开发当中,基本上能满足所有需求.这里不讲解JPA和Spring-data-jpa单独使用,所有的内容都是在和Spring ...
随机推荐
- 上传文件ie7
https://www.cnblogs.com/front-end-develop/p/6214818.html 第一步:html中引入jQuery-1.7.1.js和ajaxFileUpload.j ...
- iOS 断当前时间是否在一天的某个时间段内。
应用中设置一般会存在这样的设置,如夜间勿扰模式,从8:00-23:00,此时如何判断当前时间是否在该时间段内.难点主要在于如何用NSDate生成一个8:00的时间和23:00的时间,然后用当前的时间跟 ...
- 局域网查看工具Lansee注册码
相信好多人为查看局域网IP发愁,今天给大家推荐一个工具 lansee 猛戳下载
- IntelliJ IDEA 工具技巧
IntelliJ IDEA 工具技巧 以下都是自己积累的IntelliJ IDEA 使用技巧,比较零碎,观看不便之处还望海涵,如有错误之处还望指正 自己常用,不懂的可以加群询问:244930845 S ...
- py, pyc, pyw, pyo, pyd 及发布程序时的选择 Compiled Python File (.pyc)
Python 程序扩展名(py, pyc, pyw, pyo, pyd)及发布程序时的选择 - 司开星的专栏 - CSDN博客 https://blog.csdn.net/chroming/artic ...
- css3的3d属性集合
css3的3d属性集合 想进入css3的3d世界必须知道一下几个属性及其用法. 当然在进入属性介绍之前我想你必须知道3维坐标,附上一张经典图如下: 我想不用解释了吧.之后要平移和旋转都是在这个基础之上 ...
- Python菜鸟之路:Django 数据验证之钩子和Form表单验证
一.钩子功能提供的数据验证 对于数据验证,django会执行 full_clean()方法进行验证.full_clean验证会经历几个步骤,首先,对于model的每个字段进行正则验证,正则验证通过后, ...
- 事件对象event之e.targtet || e.srcElement
p.onclick = function (event) { var e = event || window.event, target = e.target ? e.target : e.srcEl ...
- SQL Server中行列转换 Pivot UnPivot
PIVOT用于将列值旋转为列名(即行转列),在SQLServer 2000可以用聚合函数配合CASE语句实现 PIVOT的一般语法是:PIVOT(聚合函数(列)FOR 列 in (-) )AS P 完 ...
- SQL 时间函数 Datepart()与DateName()
1.Datepart() 返回代表指定日期的指定日期部分的整数 语法 Datepart(datepart,date) 返回类型 int datepart: 日期部分 缩写 year yy, yyyy ...