引言
在本实验中,你将探索 Wi-Fi 安全评估中一项基本技术:创建伪造的接入点(AP)。伪造 AP 是指在网络上安装的未经授权的接入点。一种常见的伪造 AP 类型是“Evil Twin”,它通过复制合法 AP 的名称(ESSID)来模仿合法 AP,从而诱骗用户连接到它。
我们将使用 Fluxion,一个流行的安全审计工具,来自动化此过程。你将学习如何发起创建伪造 AP 的攻击,了解 Fluxion 如何自动克隆目标 ESSID,然后使用其他工具来验证你新创建的伪造 AP 的属性,特别是其 BSSID(MAC 地址)。
本实验在一个模拟的 Wi-Fi 环境中进行。你将为了教育目的与预先配置的虚拟无线网络进行交互。
发起任何创建 AP 的 Fluxion 攻击
在此步骤中,你将开始启动 Fluxion 工具。Fluxion 是一个基于脚本的工具,因此你需要导航到其目录并以正确的权限执行它。
首先,打开终端并导航到在 ~/project 目录中为你克隆的 fluxion 目录。
cd ~/fluxion
接下来,使用 sudo 运行 Fluxion 脚本。这是必需的,因为 Fluxion 需要控制你的无线接口并执行低级网络操作。
sudo ./fluxion.sh
运行脚本后,Fluxion 将首先检查是否缺少依赖项。如果一切正常,它会要求你选择一种语言。按 1 选择 English,然后按 Enter。
[+]========================================================================[+]
[+] F L U X I O N [+]
[+]========================================================================[+]
[+] By: Delta(Δ) [+]
[+]========================================================================[+]
[+] Version: 6.9 [+]
[+]========================================================================[+]
[*] Checking for dependencies...
[+] All dependencies are installed.
[+]========================================================================[+]
[+] Select a language.
[+]========================================================================[+]
[1] English
...
[#] Please select your language: 1
选择语言后,你将看到一个可用攻击列表。在本实验中,我们将使用 Captive Portal 攻击,因为它涉及到创建一个伪造的接入点。输入 1 并按 Enter 选择它。
确保选择了目标网络
在此步骤中,Fluxion 将扫描可用的无线网络,你需要选择要作为目标进行攻击的网络。这是一个关键步骤,因为所有后续操作,包括克隆 ESSID,都将基于此选择。
在上一阶段选择 Captive Portal 攻击后,Fluxion 会要求你选择一个无线适配器来扫描目标。你应该会看到一个列出的虚拟适配器,很可能是 wlan1。通过输入其编号并按 Enter 来选择它。
然后,Fluxion 将开始扫描所有信道上的网络。片刻之后,它将显示检测到的网络列表。在我们的模拟环境中,你应该会看到一个名为 TargetNetwork 的网络。
[+]========================================================================[+]
[+] Select a target network. [+]
[+]========================================================================[+]
[#] BSSID CH PWR ENC ESSID
--- ----------------- -- --- ------ --------------------
[1] 00:11:22:33:44:55 6 -20 WPA2 TargetNetwork
...
[+]========================================================================[+]
[+] Stop scan (s) Rescan (r) Select (1-...) Exit (x)
[+]========================================================================[+]
[#] Awaiting input...
要选择目标,请输入相应的编号(在本例中为 1)并按 Enter。然后,Fluxion 将在攻击的剩余时间锁定此目标。
进入创建接入点(Access Point)的步骤
在此步骤中,你将继续浏览 Fluxion 菜单,直到它创建伪造接入点(rogue Access Point)的阶段。
选择目标网络后,Fluxion 会要求你选择一种针对该网络的攻击方法。我们将使用 FakeAP - Hostapd 方法,该方法通常比较可靠。通过输入其编号并按 Enter 来选择此选项。
接下来,Fluxion 会询问存储握手包(handshakes)的路径。你可以直接按 Enter 来接受默认位置。
然后,你会被要求选择一种验证方法。选择 pyrit。
之后,你会被提示选择检查握手包的频率。选择 checked on-the-go。
最后,你将选择一种创建伪造接入点的方法。再次选择 Hostapd。
然后,你会被要求选择一个 Captive Portal 页面。为了本实验的目的,任何选项都可以。选择第一个选项 Generic (Default)。
完成这些选择后,Fluxion 将拥有所需的所有信息,并准备好启动伪造接入点。
验证 Fluxion 是否自动克隆了 ESSID
在此步骤中,你将观察到 Fluxion 已自动使用目标网络的名称(ESSID)来创建伪造接入点(rogue AP)。然后,你将使用一个外部工具来确认其存在。
此时,Fluxion 将显示攻击参数的摘要。请注意,ESSID 已自动设置为 TargetNetwork,这是你之前选择的网络名称。这证实了 Fluxion 默认会克隆 ESSID。
现在,让我们从外部视角进行验证。Fluxion 攻击正在你当前的终端中运行。你需要打开一个新的终端来执行下一个命令。 你可以通过终端菜单(File -> Open Tab)或键盘快捷键来完成此操作。
在新的终端标签页中,使用 airodump-ng 来扫描无线网络。你需要指定监听模式接口(monitor mode interface),很可能是 wlan1mon 或 Fluxion 创建的类似名称。
sudo airodump-ng wlan1mon
查看输出。现在你应该看到两个 ESSID 为 TargetNetwork 的网络。一个是原始的模拟 AP,另一个是你刚刚用 Fluxion 创建的伪造 AP。这证实了 ESSID 已成功克隆。
BSSID PWR Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:11:22:33:44:55 -25 10 0 0 6 54e WPA2 CCMP PSK TargetNetwork
XX:XX:XX:XX:XX:XX -30 8 0 0 6 54e. OPN TargetNetwork
(注意:XX:XX:XX:XX:XX:XX 是你伪造 AP 的 MAC 地址的占位符。)
你可以让此扫描继续运行,为下一步做准备。
使用外部工具确认伪造 AP 的 BSSID 不同
在此步骤中,你将分析 airodump-ng 的输出,以检查伪造 AP 的 BSSID。BSSID 是接入点(access point)无线电的唯一 MAC 地址。
查看第二个终端中的 airodump-ng 输出。重点关注两个名为 TargetNetwork 的网络的 BSSID 列。
你将注意到:
- 原始的
TargetNetwork具有其原始 BSSID(00:11:22:33:44:55)。 - 你的新的伪造
TargetNetwork具有一个不同的、随机生成的 BSSID。
这展示了一个关键点:默认情况下,Fluxion 会克隆人类可读的 ESSID,但不会克隆硬件 BSSID。虽然这通常足以欺骗不明就里的用户,但也是安全工具和精明用户区分真实网络和虚假网络的一种方式。
一旦你观察到这种差异,就可以停止这些工具了。
- 在第二个终端(运行
airodump-ng)中,按Ctrl+C停止扫描。 - 切换回第一个终端(运行
fluxion),按Ctrl+C停止攻击并退出 Fluxion。
你已成功创建了一个伪造 AP 并验证了其属性。
总结
在本实验中,你获得了使用 Fluxion 工具创建伪造接入点(rogue Access Point)的实践经验。你完成了选择目标网络并启动 Captive Portal 攻击的过程,该攻击会自动创建一个虚假 AP。
你学习了两个关键概念:
- Fluxion 会自动克隆目标网络的 ESSID(网络名称),使伪造 AP 对用户看起来合法。
- 默认情况下,Fluxion 不会克隆 BSSID(硬件 MAC 地址),而是为伪造 AP 分配一个新的、随机生成的 BSSID。
你使用 airodump-ng 作为外部验证工具,在模拟环境中观察了这两个事实。这些知识对于理解“Evil Twin”攻击如何工作以及如何检测它们至关重要。
