引言
欢迎来到本实验,我们将学习如何设置一个受控环境用于 Wi-Fi 安全测试。在尝试任何形式的渗透测试之前,拥有一个专用且隔离的实验环境是绝对必要的。在你不拥有的任何网络上执行这些活动都是非法且不道德的。一个受控的实验环境可以确保你能够以安全、合法且有效的方式练习和磨练你的技能。
在本实验中,你将了解构建自己的 Wi-Fi 攻击实验环境所需的五个关键组成部分。这包括配置目标接入点(access point)、设置攻击者机器(attacker machine)、指定客户端设备(client device)、确保网络隔离(network isolation)以及记录用于验证的凭据(credentials)。完成本实验后,你将拥有一个安全且功能齐全的练习环境的完整蓝图。
配置个人路由器作为目标 AP
在本步骤中,你将配置你的实验环境的核心:目标接入点(AP)。这是你将尝试攻击的 Wi-Fi 网络。使用你自己拥有的路由器至关重要,并且不能是你日常上网的主要路由器。
首先,准备一个备用的 Wi-Fi 路由器。它可以是你不再使用的旧路由器,也可以是便宜的新路由器。
接下来,访问其管理设置。这通常是通过连接到它,然后在浏览器中导航到类似 192.168.1.1 或 192.168.0.1 的 IP 地址来完成的。
请遵循以下配置指南:
- 设置一个新的无线网络。 为其指定一个唯一的名称(SSID),例如
TestNet。 - 配置安全设置。 选择 WPA2-PSK (AES) 安全性,因为这是你将遇到的常见标准。
- 设置密码。 选择一个你可以记住的相对简单的密码,例如
password123。稍后你将需要它进行验证。 - 确保隔离。 最重要的是,不要将路由器的 WAN(互联网)端口连接到你的调制解调器或主网络。目标是创建一个完全隔离且没有互联网访问的网络。
现在,这个路由器就是你指定的攻击目标。所有后续活动都将针对这个隔离的 TestNet 网络进行。
使用 Kali 虚拟机配合 USB Wi-Fi 适配器作为攻击者
在本步骤中,你将准备你的“攻击者”机器。这是你将用于发起练习攻击的计算机。此目的的行业标准是 Kali Linux,它预装了大量的渗透测试工具。
本实验需要你准备两个关键组件:
- Kali Linux: 你可以使用 VirtualBox 或 VMware 等软件将其作为虚拟机(VM)进行安装。这可以将测试环境与你的主操作系统隔离开。
- 兼容的 USB Wi-Fi 适配器: 你计算机内置的 Wi-Fi 网卡通常不适合这些任务。你需要一个外部 USB 适配器,它支持监听模式(monitor mode)和数据包注入(packet injection)。常见的芯片组包括 Atheros AR9271、Ralink RT3070 和 Realtek RTL8812AU。
一旦你在虚拟机中运行了 Kali Linux,请插入你的 USB Wi-Fi 适配器。你必须将 USB 设备从你的宿主机“传递”给客户机虚拟机。
在你的 Kali 虚拟机终端中,你可以使用以下命令来验证适配器是否被识别。首先,检查 USB 设备:
lsusb
然后,检查无线接口:
iwconfig
你应该会看到一个接口,通常命名为 wlan0 或 wlan1,它代表你的 USB 适配器。如果看到这个,说明你的攻击者机器已准备就绪。
使用智能手机或笔记本电脑作为客户端设备
在本步骤中,你将指定一个“客户端”设备。在许多 Wi-Fi 攻击中,目标是捕获合法客户端连接到或与接入点通信时产生的信息。因此,你需要一个你可以控制的客户端设备。
这可以是任何你拥有的支持 Wi-Fi 的设备,例如:
- 一部旧智能手机
- 一台平板电脑
- 另一台笔记本电脑
关键在于你拥有明确的许可来在你的测试中使用此设备。
本步骤的任务很简单:拿出你选择的客户端设备,并将其连接到你在步骤 1 中创建的 TestNet Wi-Fi 网络。输入密码(在我们示例中是 password123),并确保它成功建立了连接。
此设备现在是你受控环境中的“受害者”。它的连接和流量是你将在未来的练习中针对的目标。
确保目标网络上没有其他用户
在本步骤中,你将进行最终检查,以保证你的实验环境的完整性和隔离性。确保只有你指定的客户端设备连接到目标网络至关重要。
这有两个目的:
- 安全: 防止你意外地针对或影响任何未经授权的设备。
- 有效性: 确保你监控和捕获的流量仅属于你的目标客户端,这使得分析更加简单和准确。
要执行此检查,请返回你的目标路由器的管理界面(与你在步骤 1 中使用的相同)。查找一个通常标记为“Connected Devices”、“Client List”或“DHCP Leases”的部分。
在此列表中,你应该只看到 一个 设备:你在步骤 3 中连接的客户端。如果你看到任何其他设备,请立即断开它们的连接。只有当你确切知道谁在网络上时,你的实验才是真正可控的。
记录用于验证的已知正确 Wi-Fi 密码
在这个最后的设置步骤中,你将记录你的测试网络的密码。虽然在真实场景中密码是你试图找到的未知变量,但在实验环境中,知道密码是一个要求。它允许你验证你的攻击是否成功。
在你执行攻击(例如捕获 WPA2 握手并运行破解工具)后,你需要一种方法来确认结果是否正确。通过写下已知密码,你可以轻松地将其与你破解的结果进行比较。
在此步骤中,让我们在此 LabEx 环境中创建一个文件来模拟此文档过程。使用 echo 命令创建一个名为 credentials.txt 的文件,并保存你在步骤 1 中创建的密码。我们将使用我们的示例密码 password123。
在你的终端中执行以下命令:
echo "password123" > ~/project/credentials.txt
你可以使用 cat 命令验证文件是否已正确创建:
cat ~/project/credentials.txt
你应该看到以下输出:
password123
至此,你的实验设置已完成并已记录。
总结
恭喜!你已成功完成了针对受控和隔离的 Wi-Fi 渗透测试实验的概念性设置。
在这个实验中,你学习了正确测试环境的五个基本组成部分:
- 一个专用且隔离的**目标接入点 (Access Point)**。
- 一台具备能力的**攻击者机器 (attacker machine)**,运行 Kali Linux 和兼容的 USB Wi-Fi 适配器。
- 一个你拥有并控制的指定**客户端设备 (client device)**。
- 一个通过验证已连接客户端来确保网络隔离的过程。
- 记录已知密码以验证未来攻击成功的重要性。
有了这个环境,你现在可以安全合法地练习各种 Wi-Fi 安全技术了。
