This commit is contained in:
wizardforcel 2016-10-27 10:10:33 +08:00
parent 2acf8dcf61
commit 601e6c6acb
1 changed files with 97 additions and 0 deletions

97
ch6.md
View File

@ -86,3 +86,100 @@
在上一个练习中,如果客户端不自动连接到我们,我们能做什么呢?我们需要发送解除验证封包来打破正常的客户端到接入点的链接,之后如果我们的信号强度更高,客户端会连接到我们的伪造接入点上。通过将客户端连接到正常接入点,之后强迫它连接蜜罐来尝试它。
## 6.2 Caffe Latte 攻击
在蜜罐攻击中,我们注意到客户端会持续探测它们之前连接到的 SSID。如果客户端已经使用 WEP 连接到接入点,例如 Windows 的操作系统会缓存和储存 WEP 密钥。下一个客户端连接到相同接入点时Windows 无线配置管理器就会自动使用储存的密钥。
Caffe Latte 攻击由 Vivek 发明,它是这本书的作者之一,并且在 Toorcon 9, San Diego, USA 上演示。Caffe Latte 攻击是一种 WEP 攻击,允许黑客仅仅使用客户端,获取授权网络的 WEP 密钥。这个攻击并不需要客户端距离授权 WEP 非常近。它可以从单独的客户端上破解 WEP 密钥。
在下一个练习中,我们将使用 Caffe Latte 攻击从客户端获取网络的 WEP 密钥。
### 实战时间 -- 实施Caffe Latte 攻击
遵循这些指南来开始:
1. 让我们首先使用 WEP 建立正常接入点`Wireless Lab `,密钥为`ABCDEFABCDEFABCDEF12`。
![](img/6-2-1.jpg)
2. 将客户端连接到它,并使用`airodump-ng`验证连接是否成功,像这样:
![](img/6-2-2.jpg)
3. 关闭接入点,确保客户端处于未关联的状态,并搜索 WEP 网络`Wireless Lab`。
4. 现在我们使用`airbase-ng`来建立接入点,将`Wireless Lab`作为 SSID参数如下
![](img/6-2-3.jpg)
5. 一旦客户端连接到了接入点,`airbase-ng `开始了 Caffe Latte 攻击,像这样:
![](img/6-2-4.jpg)
6. 我们现在开启`airodump-ng `来收集来自这个接入点的数据包,向我们之前在 WEP 破解场景下所做的那样:
![](img/6-2-5.jpg)
7. 我们同时启动`aircrack-ng`,就像我们之前在 WEP 破解练习中那样,来开始破解。这个命令行是` aircrack-ng filename`,其中`filename`是`airodump-ng`所创建的文件名称。
### 刚刚发生了什么?
我们成功从无线客户端获得了 WEP 密钥,不需要任何真实的接入点,或者在附近存在。这就是 Caffe Latte 攻击的力量。
基本上WEP 接入点不需要验证客户端是否知道 WEP 密钥来获得加密后的流量。在连接在新的网络时,流量的第一部分总是会发送给路由器,它是 ARP 请求来询问 IP。
这个攻击的原理是,使用我们创建的伪造接入点反转和重放由无线客户端发送的 ARP 包。这些位反转的 ARP 请求封包导致了无线客户端发送更多 ARP 响应封包。
位反转接收加密值,并将其自改来创建不同的加密值。这里,我们可以接收加密 ARP 请求并创建高精确度的 ARP 响应。一旦我们发回了有效的 ARP 响应,我们可以一次又一次地重放这个值,来生成我们解密 WEP 密钥所需的流量。
要注意,所有这些封包都是用储存在客户端的 WEP 密钥加密。一旦我们得到了大量的这类封包,` aircrack-NG`就能够轻易恢复出 WEP 密钥。
### 试一试 -- 熟能生巧
尝试修改 WEP 密钥并且重放攻击。这是个有难度的攻击,并且需要一些练习来成功实施。使用 Wireshark 检验无线网络上的流量是个好主意。
### 6.3 解除验证和解除关联攻击
我们已经在之前的章节中看到了接入点上下文中的解除验证攻击,这一章中,我们会在客户端上下文中探索这种攻击。
下一个实验中,我们会发送解除验证封包给客户端并且破坏已经建立的接入点和客户端之间的连接。
### 实战时间 -- 解除客户端的验证
遵循这些指南来开始:
1. 让我们首先启动接入点`Wireless Lab `,让我们使其保持运行,以 WEP 加密,来证明即使开启加密,也可能攻击接入点和客户端之间的连接。让我们使用`airodump-ng`来验证接入点开启:
![](img/6-3-1.jpg)
2. 让我们将客户端连接到这个接入点,并使用`airodump-ng`验证:
![](img/6-3-2.jpg)
3. 我们现在执行`aireplay-ng`,将接入点连接作为目标。
![](img/6-3-3.jpg)
4. 客户端断开了连接,并尝试重新连接。我们可以使用 Wireshark 来验证。
![](img/6-3-4.jpg)
5. 我们现在看到了,即使使用了 WEP 加密,还是可以解除客户端的验证并使其断开。即使使用 WPA/WPA2 也是一样。让我们现在将接入点设置为 WPA 加密并验证。
![](img/6-3-5.jpg)
6. 让我们将客户端连接到接入点并确保已经连接。
![](img/6-3-6.jpg)
7. 让我们现在运行` aireplay-ng `来断开客户端和接入点的连接:
![](img/6-3-7.jpg)
### 刚刚发生了什么?
我们刚刚看到了如何使用解除验证帧,选项性断开无线客户端到接入点的连接,即使使用了 WEP/WPA/WPA2 加密方式。这仅仅通过发送解除验证封包给接入点来完成 -- 客户端偶对,而不是发送广播解除验证封包给整个网络。
### 试一试 -- 客户端上的解除关联攻击
在上一个练习中,我们使用了解除验证攻击来破解连接。尝试使用解除关联访问来破坏客户端和接入点之间的连接。