渗透测试--6.1.aircrack-ng破解wifi密码
目录
1.Aircrack-ng简介
1.1 airdump-ng
1.2 aireplay-ng
1.3 aircrack-ng
2.Deauth攻击
3.aircrack-ng工具破解无线网络密码
步骤一:虚拟机连接实验需要用到的网卡
步骤二:设置网卡为监听模式
步骤三:使用wlan0mon网卡扫描附近wifi
步骤四:抓取握手包并保存为CAP文件
步骤五:使用kali上自带的字典进行密码破解
1.Aircrack-ng简介
Aircrack- NG是一个完整的工具来评估Wi-Fi网络安全套件(ex.1)。

- 捕获:airodump-ng:用于捕获无线网络数据包;
- 攻击:aireplay-ng:用于数据包注入和重放攻击;
- 破解:aircrack-ng:用于破解 WEP 和 WPA/WPA2 密码;
- 管理:airmon-ng:用于管理无线网卡和监视模式的切换。
1.1 airdump-ng
airdump-ng 是 Kali Linux 系统中的一个无线网络分析工具,主要用于扫描周围的无线网络,并收集有关这些网络的信息,包括 SSID、MAC 地址、信道、加密方式、强度等。您可以使用不同的参数来优化扫描和显示过程。
下面是一些常用的 airodump-ng 参数:
- -a:以 ASCII 码模式显示访问点和客户端名称
- -c:设置要监视的 WiFi 频道号
- -d:启用显示详细数据包信息
- -h:隐藏未广播 SSID 的访问点
- -w:指定输出文件名
- --output-format:指定输出文件的格式(csv、kismet、gps、gpsxml 等)
- --essid-regex:筛选符合正则表达式的 SSID
- --write-interval:指定写入文件的时间间隔
- --bssid:筛选指定 BSSID 的数据包
读取数据:

BSSID -- Wi-Fi的Mac地址
PWR -- 信号强度
Data -- 监听期间流量总和
CH -- WI-FI所用信道
ENC -- 加密算法
ESSID -- Wi-Fi名称
1.2 aireplay-ng
aireplay-ng 是 Kali Linux 系统中的一个无线攻击工具,可以用于注入数据包、生成恶意流量以及进行身份伪装等多种攻击。通过使用不同的参数,您可以选择不同的攻击方式和目标,
以下是一些常用的 aireplay-ng 参数:
- -0 0:表示使用 Deauth 攻击,
- -1:进行身份欺骗攻击
- -2:对 WPA/WPA2 加密方式的网络进行攻击
- -3:生成 ARP 请求并重放流量
- -4:以混杂模式发送关联请求和数据包
- -5:生成特定类型的数据包
- -6:生成 Deauth 攻击流量
- -7:生成广播 ARP 请求
- -9:生成 RTS 和 CTS 数据包来消耗 AP 和客户端上的 CPU
例如,以下命令将向名称为 wlan0mon 的网卡发送 Deauth 流量来断开与目标 BSSID 的所有客户端的连接:
aireplay-ng -0 0 -a 00:11:22:33:44:55 wlan0mon
-0 0表示使用 Deauth 攻击,(后面的0表示攻击次数,0为无限次)
-a指定攻击目标的 BSSID 地址,
wlan0mon是要使用的网卡名称。
还有一个常用的操作是,使用 aireplay-ng 向某个 AP 发送大量的探测请求,以便跟踪设备的位置或收集周围网络的信息。
以下命令将向名称为 wlan0mon 的网卡发送探测请求,以查询周围可用的无线网络:
aireplay-ng -9 wlan0mon
这个命令会发送一组数据包,其中包括 RTS 和 CTS 请求。这些请求将被发送到周围的 AP,从而产生 CPU 负载并帮助您确定 AP 的位置和数据库信息。
1.3 aircrack-ng
aircrack-ng 是 Kali Linux 系统中最常用的无线网络破解工具之一,它可以利用已捕获的 WPA/WPA2 握手包进行破解。以下是一些常用的 aircrack-ng 参数:
- -w:指定密码字典文件
- -b:指定要攻击的目标 BSSID 地址
- -e:指定要攻击的目标 SSID 名称
- -f:强制使用指定文件的格式
- -m:选择攻击方法(对于 WPA2 加密,使用 “PTK” 选项)
- -n:忽略指定字符集中的字符
- -t:设置尝试的最大次数
- -q:启用精简模式
- -s:跳过指定数量的密码字典条目
- -D:启用调试模式
- -p:指定密钥文件的后缀名
例如,以下命令将使用 rockyou.txt 字典文件对名为 target 的 WLAN 进行字典攻击:
aircrack-ng -w rockyou.txt -b 11:22:33:44:55:66 target.cap
其中 rockyou.txt 是密码字典文件,11:22:33:44:55:66 是要攻击的目标 BSSID 地址,target.cap 是已捕获的握手包文件。
如果您知道要攻击的 Wi-Fi 网络的 SSID,可以使用 -e 选项指定名称。例如,以下命令将对 SSID 为 MyWiFi 的网络进行攻击:
aircrack-ng -w rockyou.txt -e MyWiFi target.cap
在破解 WPA2 加密的无线网络时,您可以使用 -m 选项选择攻击方法。
例如,以下命令将使用“PTK”攻击方法破解 WPA2 网络:
aircrack-ng -w rockyou.txt -b 11:22:33:44:55:66 -m PTK target.cap
这是一些常用的 aircrack-ng 参数,不同的参数可以实现各种攻击方式和目标。使用它时请确保您已获得适当的授权。
2.Deauth攻击
Deauth 攻击是一种用于无线网络的攻击方式,通过向无线网络设备(如 Wi-Fi 路由器或连接到该网络的设备)发送 Deauthentication 数据包来中断目标设备与 Wi-Fi 网络之间的通信。
Deauth 攻击是利用了 802.11 协议中的漏洞,攻击者可以通过模拟目标设备与 Wi-Fi 网络之间的身份验证交换从而抵消目标设备与无线网络之间的连接。虽然这种攻击可能会干扰合法用户的网络连接,但它也是一种有用的攻击方式,特别是在安全测试和研究方面。
在 Kali Linux 中,可以使用 Aireplay-ng 工具来执行 Deauth 攻击。
以下是一些常用的 Aireplay-ng 参数:
-0:指定使用 Deauth 攻击
-a:指定要攻击的目标网络的 BSSID
-c:指定要攻击的目标设备的 MAC 地址
-e:指定要攻击的目标网络的 SSID
例如,以下命令将向名为 WLAN 的网络发送 Deauth 攻击流量,并抵消所有连接到该网络的设备:
aireplay-ng -0 0 -a <WLAN BSSID> wlan0mon
3.aircrack-ng工具破解无线网络密码
使用aircrack-ng工具集实现对某一WPA/WPA2加密的无线网络密码破解。
步骤一:虚拟机连接实验需要用到的网卡
Ralink 802.11

步骤二:设置网卡为监听模式
实验用到的是rt5370芯片网卡,使用airmon-ag查看网卡信息

设置为监听模式airmon-ng start wlan0,可以查看到监听模式网卡名字变成了:wlan0mon

杀死可能对网络通信抓包造成影响的进程
airmon-ng check kill

步骤三:使用wlan0mon网卡扫描附近wifi
airodump-ng wlan0mon

可以查看到我们攻击的自己手机热点:姐姐能给我微信吗
密码:88888888
对应的ch(信道):1
MAC地址: 76:87:4E:74:34:06
步骤四:抓取握手包并保存为CAP文件
airodump-ng -c 1 --bssid 76:87:4E:74:34:06 -w /home/gyp-202031070222/桌面/wifi wlan0mon

另外开一个终端,注入数据包(Deauth洪水攻击)发送认证数据包,获取握手等数据,
aireplay-ng -0 0 -a 76:87:4E:74:34:06 wlan0mon -D

注意:这个时候连接的热点的设备断开连接,会自动请求连接(建议大家手动将断开的设备进行二次连接),不要问我是怎么知道的,
进行重新连接后,就可以活到相应的握手数据包,必须要抓取到握手数据包!!!!

步骤五:使用kali上自带的字典进行密码破解
kali上自带字典足够用了,当然你的密码如果太太太复杂建议自己创建一个密码字典,如何创建请看之前文章渗透测试--5.1.Crunch创建密码字典_西柚小萌新的博客-CSDN博客
字典目录:/usr/share/wordlists/rockyou.txt
使用:gzip -d /usr/share/wordlists/rockyou.txt.gz进行解压使用。

对数据包进行密码破解,
aircrack-ng -w /usr/share/wordlists/rockyou.txt /home/gyp-202031070222/桌面/wifi-01.cap


破解出密码为:88888888
相关文章:
渗透测试--6.1.aircrack-ng破解wifi密码
目录 1.Aircrack-ng简介 1.1 airdump-ng 1.2 aireplay-ng 1.3 aircrack-ng 2.Deauth攻击 3.aircrack-ng工具破解无线网络密码 步骤一:虚拟机连接实验需要用到的网卡 步骤二:设置网卡为监听模式 步骤三:使用wlan0mon网卡扫描附近wif…...
C++中的继承、以及赋值兼容转换。
一、继承的概念及定义 继承可以使代码复用,允许在保持原有类特性的基础上进行扩展。 举个例子:就好比我现在要封装老师、学生等这些人的属性和方法,但是这些人都有重复的属性和方法,比如name、age、sex等等,那么我可…...
js浏览器实现简单的实时扫一扫功能
描述:利用vue-qrcode-reader插件实现h5/wap端简单的扫一扫功能 参考文档:https://gruhn.github.io/vue-qrcode-reader/demos/Validate.html官方文档 安装插件 npm i --save vue3-qr-reader 或 yarn add vue3-qr-reader 注意项目运行必须在https下&…...
unity愤怒的小鸟学习制作(二)
终于又开始了啦啦啦,我有一个自己的相机了,真开心,诶嘿 视频链接和素材如下:视频 小鸟的飞出 想要让小鸟在拉开弹弓之后能飞出去,就必须让这个组件失活,如下 所以我们更改脚本内容,加入&#…...
干外包3年,彻底寄了...
先说一下自己的情况,大专生,18年通过校招进入湖南某软件公司,干了接近6年的功能测试,今年年初,感觉自己不能够在这样下去了,长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了6年的功能测试&…...
软考高项论文范文(三)
论信息系统项目的沟通管理 【摘要】(该摘要共313个字符) 本文讨论了ⅹⅹ省社保系统民政统一软件开发项目的沟通管理。该项目是在国家大社会保险政策指导下于2018年10月份正式启动的。该系统为用户提供了优抚安置、救灾救济等十大主要业务功能。在本文中…...
浅谈谈谈OTA召回2023
近日,国家市场监督管理总局发布特斯拉召回公告,一下子掀起了互联网热议,这次召回的范围是在2019年1月12日至2023年4月24日期间国内销售特斯拉汽车(含国产和进口共计110万辆车),在这个召回公告中有两点值得关…...
【GDI+】旋转文本/斜体字
一、需求 想要绘制如下所示的斜体字,45度 二、分析&思路 Graphics类有个 RotateTransform方法,可以传入任意角度的值来旋转画板。但是这个方法的旋转中心是画板的左上角,所以直接单单用这个方法不能满足我们的需求。此外, G…...
python3 面试题总结
Python global 语句的作用lambda 匿名函数好处Python 错误处理Python 内置错误类型简述 any() 和 all() 方法Python 中什么元素为假?提高 Python 运行效率的方法Python 单例模式为什么 Python 不提供函数重载实例方法/静态方法/类方法__new__和 __init __方法的区别…...
select poll epoll有什么区别
select/poll select 实现多路复用的方式是,将已连接的 Socket 都放到一个文件描述符集合,然后调用 select 函数将文件描述符集合拷贝到内核里,让内核来检查是否有网络事件产生,检查的方式很粗暴,就是通过遍历文件描述…...
Java基础面试题突击系列1
👩🏻 作者:一只IT攻城狮 ,关注我不迷路 ❤️《java面试核心知识》突击系列,持续更新… 💐 面试必知必会学习路线:Java技术栈面试系列SpringCloud项目实战学习路线 📝再小的收获x365天…...
go-zero和dtm分布式事务实现
go-zero是一个基于Go语言的微服务开发框架,而DTM(Distributed Transaction Manager)是一个分布式事务管理器,用于实现跨多个微服务的分布式事务。 下面是使用go-zero和DTM实现分布式事务的基本步骤: 安装和配置DTM&am…...
Springboot +Flowable,会签、或签简单使用(一)
一.简介 **会签:**在一个流程中的某一个 Task 上,这个 Task 需要多个用户审批,当多个用户全部审批通过,或者多个用户中的某几个用户审批通过,就算通过。 例如:之前的请假流程,假设这个请假流程…...
银行面试中的即兴演讲技巧,你了解吗
面试的主要形式有无领导小组讨论、结构化和半结构化面试,一些银行还会出现辩论赛、角色扮演、即兴演讲等形式,今天小编就来聊一聊面试中的即兴演讲,从如信银行考试中心了解到: 简单来说即兴演讲就是在特定情境下,自发或…...
基于LT6911UXC的LVDS视频接口调试经验
文章目录 概要整体架构流程技术名词解释技术细节小结概要 项目方案采用龙讯半导体LT6911系列 整体架构流程 CPU主芯片采用飞腾,显卡采用GP102,由于项目需要LVDS接口,GP102的HDMI口输出后经过LT6911UXC转成LVDS输出 在本方案中有两种显示屏;一个是10.4寸,一个是15.6寸。…...
【C++】OpenMP简介
一、背景知识 1、program作用 #pragma 是 C 和 C 语言中的一个预处理指令。它主要用于向编译器发送特定的信息或者指示,以便控制编译过程。#pragma 通常与编译器特定的选项或功能一起使用,因此它的具体行为和实现可能因不同的编译器而有所不同。 #pra…...
Unity HybridCLR 热更工具学习日记(一)
目录 导入HybridCLR包、安装设置相关选项 导入HybridCLR包 先找到HybridCLR包的git地址:https://github.com/focus-creative-games/hybridclr 复制包的http地址,打开unity - window - package Manager;点击左上角的 选择Add Package for…...
内网渗透(七十五)之域权限维持之DCShadow
DCShadow 2018年1月24日,在BlueHat安全会议上,安全研究员Benjamin Delpy 和 Vincent Le Toux 公布了针对微软活动目录域的一种新型攻击技术------DCShaow。利用该攻击技术,具有域管理员权限或企业管理员权限的恶意攻击者可以创建恶意域控,然后利用域控间正常同步数据的功能…...
JAVA日常练习—习题5
1.机器人类及其子类 设计一个机器人的抽象类,具有质量(double)、名字(String)等属性;具有设置属性值方法和获得并打印属性值的方法,还有一个运动的抽象方法move()。设计电动汽车类和飞行器类&a…...
nuitka打包python的PyQt5成exe可执行文件
使用nuitka打包python的PyQt5 可以打包多文件,也可以打包单文件。 使用的python版本是3.8.10 1、下载gcc 方式1:可以到网站下载,点我跳转 方式2:可以直接去网盘下载,点我跳转 提取码:8888 网盘里面也有python3.8.10的安装包,下载后直接安装即可。 下载64位 win…...
基于算法竞赛的c++编程(28)结构体的进阶应用
结构体的嵌套与复杂数据组织 在C中,结构体可以嵌套使用,形成更复杂的数据结构。例如,可以通过嵌套结构体描述多层级数据关系: struct Address {string city;string street;int zipCode; };struct Employee {string name;int id;…...
oracle与MySQL数据库之间数据同步的技术要点
Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异,它们的数据同步要求既要保持数据的准确性和一致性,又要处理好性能问题。以下是一些主要的技术要点: 数据结构差异 数据类型差异ÿ…...
【算法训练营Day07】字符串part1
文章目录 反转字符串反转字符串II替换数字 反转字符串 题目链接:344. 反转字符串 双指针法,两个指针的元素直接调转即可 class Solution {public void reverseString(char[] s) {int head 0;int end s.length - 1;while(head < end) {char temp …...
JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案
JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停 1. 安全点(Safepoint)阻塞 现象:JVM暂停但无GC日志,日志显示No GCs detected。原因:JVM等待所有线程进入安全点(如…...
代理篇12|深入理解 Vite中的Proxy接口代理配置
在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...
让回归模型不再被异常值“带跑偏“,MSE和Cauchy损失函数在噪声数据环境下的实战对比
在机器学习的回归分析中,损失函数的选择对模型性能具有决定性影响。均方误差(MSE)作为经典的损失函数,在处理干净数据时表现优异,但在面对包含异常值的噪声数据时,其对大误差的二次惩罚机制往往导致模型参数…...
基于Java+VUE+MariaDB实现(Web)仿小米商城
仿小米商城 环境安装 nodejs maven JDK11 运行 mvn clean install -DskipTestscd adminmvn spring-boot:runcd ../webmvn spring-boot:runcd ../xiaomi-store-admin-vuenpm installnpm run servecd ../xiaomi-store-vuenpm installnpm run serve 注意:运行前…...
探索Selenium:自动化测试的神奇钥匙
目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...
Spring Security 认证流程——补充
一、认证流程概述 Spring Security 的认证流程基于 过滤器链(Filter Chain),核心组件包括 UsernamePasswordAuthenticationFilter、AuthenticationManager、UserDetailsService 等。整个流程可分为以下步骤: 用户提交登录请求拦…...
Python训练营-Day26-函数专题1:函数定义与参数
题目1:计算圆的面积 任务: 编写一个名为 calculate_circle_area 的函数,该函数接收圆的半径 radius 作为参数,并返回圆的面积。圆的面积 π * radius (可以使用 math.pi 作为 π 的值)要求:函数接收一个位置参数 radi…...
