导语:使用Raspberry Pi在Windows监视Wi-Fi数据包

Wimonitor是Hacker Arsenal的一款优秀产品,提供了Web配置界面,可以节省渗透测试人员的精力,使他们免于配置繁琐的虚拟机、挂载支持监听模式的无线网卡等操作。这款产品使用起来非常方便,只需要将设备插入以太网口中,你就可以在任何操作系统上监听Wi-Fi流量。本质上它是一个tp-link TL-MR3020路由器,搭载了具有监听功能的自定义固件,可以将监听到的数据包发往主机(或Mac),以便操作者在主机上运行Wireshark分析数据包。

虽然我尚未购买这款产品,但自上市以来,我已经听过关于该产品的许多赞誉之词。然而,从欧盟购买所需的运费实在太高,希望厂商能够尽快从欧盟区直接发货。

与此同时,我有个好想法:为什么我们不在树莓派(Raspberry Pi)上实现类似功能?

树莓派可以运行包括Kali在内的许多操作系统,之前我在渗透测试中也经常用到树莓派。树莓派3B功能非常强大,足以胜任稳定的监听工作,只需要几个简单的步骤,我们就可以将它变成Wimonitor(当然,只是功能上相似)。

Hacker Arsenal的极客们已经造出了Wimonitor这个绝妙的产品,该产品是一个性能稳定的即插即用设备,提供固件维护支持。因此,如果你是Wi-Fi安全领域的初学者,或者你想要一个简单易用的监听工具,我建议你选择Wimonitor。

所需硬件

运行Windows的主机笔记本电脑(在Windows 8.1上完成的测试和截图)

Raspberry Pi 3B,micro SD卡,电源适配器(USB 3.0电源应该足以为Pi +无线网卡供电)

以太网电缆将Pi连接到主机笔记本电脑

Wi-Fi卡支持监控模式(如TL-WN722N v1)

安装步骤

1、将RASPBIAN STRETCH LITE写入micro SD卡。这是个轻量级操作系统,本身就支持包括TL-WN722N在内许多网卡的监听模式。你可以参考此处了解写入该系统的具体步骤。

2、将Raspbian写入micro SD卡后,你需要在树莓派上启用SSH功能。具体方法是在micro SD卡上创建一个名为ssh的空白文件(注意:不需要文件扩展名)。

3、为了能让笔记本与树莓派通信,最简单的方法是通过以太网与树莓派共享笔记本的Wi-Fi。这样树莓派就能得到192.168.137.x的IP地址。具体步骤是,先转到网络连接(使用ncpa.cpl命令),在Wi-Fi适配器上点击右键,选择“属性”,在“共享”选项卡中,选择与树莓派连接的那个以太网适配器,点击确定即可。

4、准备将树莓派连接到笔记本主机。将micro SD卡插入树莓派插槽,Wi-Fi网卡插入USB接口,通过网线将笔记本主机及树莓派连接起来,启动电源。

5、树莓派启动后,会通过共享连接获得一个IP地址。想要探测树莓派的IP地址,最简单的一种方法就是在笔记本上运行nmap,探测192.168.137.1/24子网上的主机。

6、运行PuTTY,通过SSH方式接入树莓派。我们正在使用的Raspbian OS的默认用户名密码为pi/raspberry。

7、想要为树莓派设置静态IP地址的话,可以打开`/etc/dhcpcd.conf`文件,在文件尾部添加如下字段

interface eth0
static ip_address=192.168.137.100/24
static routers=192.168.137.1
static domain_name_servers=192.168.137.1

8、我推荐使用基于密钥认证的SSH登录方式。打开PuTTYgen,生成密钥对

9、在树莓派的主目录创建一个`.ssh`目录,在其中创建一个名为`authorized_keys`的文件。将PuTTYgen生成的公钥信息粘贴到`authorized_keys`文件中。记得保存PuTTYgen的私钥。重启树莓派上的SSH服务。此外,记得修改树莓派的默认密码。

10、默认情况下,Raspbian lite OS并没有集成用来监听的软件包,我们可以使用如下命令安装这些软件包:

sudo apt update
sudo apt install aircrack-ng tcpdump -y

11、测试无线网卡能否在树莓派上执行监听任务。

12、现在,我们已验证树莓派上能够正常进行监听,接下来我们可以通过SSH登录树莓派,运行tcpdump,将结果传回笔记本上正在运行的Wireshark。plink.exe是PuTTY.exe的命令行接口,可以在Windows上满足这些需求。为了便于操作,我将plink.exe以及PuTTYgen生成的私钥放在同一个文件夹中。如果这两个文件不在同一个目录,我们可以使用如下命令修改为正确的路径。

只需要如下一行语句即可:

plink.exe -ssh -i pi-monitor-ssh-key.ppk [email protected] "sudo tcpdump -ni wlan1mon -s 0 -w -" | "C:Program FilesWiresharkWireshark.exe" -k -i -

如果只需要在信道1上监听的话,我们可以运行如下命令

sudo iwconfig wlan1mon channel 1

如你所见,借助树莓派,我们不需要做太多操作就能监听Wi-Fi数据包,监听结果也能导出到Windows或其他操作系统中,通过Wireshark进行查看。

后记

上述步骤是一次性安装步骤。后续我们想继续监听时,只需将无线网卡插入树莓派,按下电源开关,运行如下命令即可使树莓派进入监听模式:

plink.exe -ssh -i pi-monitor-ssh-key.ppk [email protected] "sudo airmon-ng start wlan1"

随后,启动Wireshark,开始监听

plink.exe -ssh -i pi-monitor-ssh-key.ppk [email protected] "sudo tcpdump -ni wlan1mon -s 0 -w -" | "C:Program FilesWiresharkWireshark.exe" -k -i -

总结

优点:

1、无需庞大虚拟机。可以使用Wireshark和plink.exe在Windows上执行Wi-Fi监控。我还没有在Linux/Mac OS上尝试过,但应该可以将SSH输出管道传递给Wireshark(?)。

2、Wi-Fi监控成本廉价。如果你已经准备进入渗透测试领域或类似领域,你应该有一个树莓派以及无线网卡。

3、Wimonitor可能只能使用板载的Wi-Fi芯片,然而这种方案中,树莓派可以使用任何(或多个)支持监听模式的无线网卡。只需要使用USB集线器或者电池为树莓派及无线网卡提供电源即可。你可以考虑一下使用Yagi–Uda天线来配合树莓派的无线网卡。

4、安装起来非常简单。Raspbian以及Kali原生支持类似Alfa AWUS036NHA、TL-WN722N之类的无线网卡。前期工作准备就绪后,我们只需要将无线网卡插入树莓派,运行两条命令就可以抓包分析。

5、树莓派足以应付监听任务。在相对较为繁忙的Wi-Fi区域中,这种方案中树莓派总共只消耗了35 MB左右的内存。

缺点:

1、不像Wimonitor那样即插即用。我们需要做些初始设置(即两条命令)才能启动并运行这套装备。

2、没有Web界面能够更改配置。

3、目前仍不具备信道子集跳频功能。

源链接

Hacking more

...