在 Fluxion 中启动 Captive Portal 攻击

Beginner
立即练习

介绍

在本实验中,你将学习如何使用 Fluxion 发起一个 Captive Portal 攻击。Fluxion 是一个安全审计和社会工程研究工具。它是 vk496 的 linset 的重制版,拥有一个更少 bug 且功能更强大的界面。

Captive Portal 攻击是一种社会工程技术,它创建一个假的 Wi-Fi 网络(一个“流氓”接入点),模仿一个合法的网络。当用户连接到这个假网络时,他们会被重定向到一个欺诈性的网页(“captive portal”),该网页会提示他们输入 Wi-Fi 密码。

本实验将引导你通过 Fluxion 的交互式菜单来配置和发起此攻击。我们将假设你已经完成了扫描网络并捕获目标 WPA/WPA2 握手的先前步骤。

选择带有捕获握手的目标网络

在此步骤中,我们将从 Fluxion 检测到的网络列表中选择目标网络,开始整个过程。要使 Captive Portal 攻击生效,我们必须事先从目标网络捕获到 WPA/WPA2 握手。Fluxion 会清晰地标记出哪些网络已捕获握手。

想象一下你刚刚启动了 Fluxion。选择语言和无线适配器后,你将看到目标选择屏幕。下方是你将看到的界面的表示。星号 * 表示已为 LabEx_WiFi 网络捕获到握手。

FLUXION - Select a target
─────────────────────────────────────────────────────────────────────────────────────────
      ##      BSSID              ESSID         CH  ENCR    POWER  CLIENTS  HANDSHAKE
      1      XX:XX:XX:XX:XX:A1  LabEx_WiFi    6   WPA2    95%    3        *
      2      XX:XX:XX:XX:XX:B2  GuestNet      1   WPA2    80%    1
      3      XX:XX:XX:XX:XX:C3  CorpNet       11  WPA2    75%    8
─────────────────────────────────────────────────────────────────────────────────────────
[<] Rescan for networks   [>] Select a target with a handshake and skip to attacks
[fluxion] Select an option:

我们将选择第一个网络 LabEx_WiFi,这是我们的目标网络,并且已具备所需的握手。在实际的 Fluxion 会话中,你将输入 1 并按 Enter。在本实验中,我们将通过将此选择记录到日志文件中来模拟这一操作。

执行以下命令来记录你的选择:

echo "Target: 1" >> ~/project/fluxion_choices.log

选择“Captive Portal”攻击向量

在此步骤中,选择目标网络后,Fluxion 将向你展示可用攻击向量的菜单。两个主要选项通常是 Handshake SnooperCaptive Portal

  • Handshake Snooper: 此攻击被动等待捕获新的握手。如果你还没有握手,这个选项很有用。
  • Captive Portal: 这是一种主动攻击,它创建一个假的接入点,诱使用户在假的登录页面输入密码。

由于我们的目标是执行 Captive Portal 攻击,我们将选择该选项。以下是此阶段 Fluxion 菜单的表示:

FLUXION - Select an attack
─────────────────────────────────────────────────────────────────────────────────────────
      ##      ATTACK
      1      Captive Portal
      2      Handshake Snooper
─────────────────────────────────────────────────────────────────────────────────────────
[<] Return to network selection
[fluxion] Select an option:

我们将选择选项 1 来继续进行 Captive Portal 攻击。为了记录我们模拟中的此选择,请运行以下命令:

echo "Attack: 1" >> ~/project/fluxion_choices.log

选择用于 Rogue AP 的“hostapd”方法

在此步骤中,我们需要选择将用于创建我们的 Rogue(伪造)接入点(Access Point)的软件。Rogue AP 是攻击的关键组成部分,因为这是用户会在不知情的情况下连接的网络。

Fluxion 提供了几种创建基于软件的 AP 的方法。最常见且可靠的选项是 hostapdhostapd 是 Linux 上用于接入点和认证服务器的标准用户空间守护进程(daemon)。它得到了良好的支持且非常稳定,是此攻击的理想选择。

Fluxion 菜单将如下所示:

FLUXION - Select a rogue AP creation method
─────────────────────────────────────────────────────────────────────────────────────────
      ##      METHOD
      1      hostapd
      2      Airbase-ng
─────────────────────────────────────────────────────────────────────────────────────────
[<] Return to attack selection
[fluxion] Select an option:

我们将选择选项 1 来使用 hostapd。通过执行以下命令来记录此选择:

echo "RogueAP: 1" >> ~/project/fluxion_choices.log

选择“aircrack-ng”去认证方法

在此步骤中,我们将配置攻击的去认证(deauthentication)部分。为了鼓励用户连接到我们的 Rogue AP,我们首先需要断开他们与合法 LabEx_WiFi 网络的连接。这是通过发送特制的“去认证数据包”来完成的,这些数据包会伪装成真实的接入点。

Fluxion 在此任务中利用了其他知名的工具。aircrack-ng 套件包含一个名为 aireplay-ng 的工具,它是用于注入无线帧(包括去认证数据包)的行业标准。它在强制客户端断开连接方面非常有效。

Fluxion 中的选择菜单将如下所示:

FLUXION - Select a deauthentication method
─────────────────────────────────────────────────────────────────────────────────────────
      ##      METHOD
      1      aircrack-ng (aireplay-ng)
      2      mdk4
─────────────────────────────────────────────────────────────────────────────────────────
[<] Return to rogue AP method selection
[fluxion] Select an option:

我们将选择选项 1 来使用强大且可靠的 aircrack-ng 方法。使用以下命令记录此选择:

echo "Deauth: 1" >> ~/project/fluxion_choices.log

启动完整的 Captive Portal 攻击序列

在最后这个步骤中,我们已经配置了攻击所需的所有必要组件。Fluxion 拥有它需要的所有信息:目标、攻击向量、Rogue AP 方法和去认证方法。

此时,Fluxion 已准备好发起攻击。它通常会打开几个新的终端窗口来同时管理不同的进程:

  • Rogue AP: 一个运行 hostapd 的窗口,用于广播伪造的 LabEx_WiFi 网络。
  • Deauthenticator: 一个运行 aireplay-ng 的窗口,用于持续将客户端从真实网络断开。
  • DNS Server: 一个管理 DNS 请求的窗口,将所有流量重定向到我们的 Captive Portal。
  • Web Server: 一个托管伪造登录页面的窗口。
  • Credential Catcher: 主窗口,将显示捕获到的任何密码。

在启动之前,Fluxion 会请求最终确认。菜单将如下所示:

FLUXION - Attack Ready
─────────────────────────────────────────────────────────────────────────────────────────
      All parameters are set. Fluxion is ready to launch the attack.
      Multiple terminal windows will be spawned to handle each process.

      ##      ACTION
      1      Start Attack
─────────────────────────────────────────────────────────────────────────────────────────
[<] Return to deauthentication method selection
[fluxion] Select an option:

要开始攻击,你需要选择 1。让我们记录下这个最终操作,以完成我们的模拟设置。

echo "Start: 1" >> ~/project/fluxion_choices.log

启动后,你将监控这些窗口的活动,等待用户连接到你的 Rogue AP 并在其 Captive Portal 中输入凭据。

总结

在本实验中,你已成功完成了使用 Fluxion 发起 Captive Portal 攻击的配置步骤。虽然我们模拟了交互过程,但你已经了解了攻击的完整逻辑流程。

你学会了如何:

  • 选择一个已捕获握手包的目标网络。
  • 选择 Captive Portal 作为期望的攻击向量。
  • 选择 hostapd 作为创建 Rogue Access Point 的可靠方法。
  • 选择 aircrack-ng 来执行去认证攻击,迫使客户端离开合法网络。
  • 发起完整的攻击序列。

这些知识为你提供了关于 Wi-Fi 社会工程攻击如何构建和执行的基础理解。请记住负责任地使用这些知识,并仅用于道德和教育目的。