从无线探测到谷歌地图:利用经纬度定位SSID的完整指南

本文详细介绍了如何使用树莓派、Kismet和GPS设备进行无线网络探测,将捕获的SSID数据与经纬度信息结合,并通过Python工具转换为CSV格式,最终在谷歌地图上可视化显示无线网络分布情况。

从WarDriving到在谷歌地图上显示带经纬度的SSID

Jordan Drysdale //

步骤1:构建捕获设备

树莓派3、Kali Linux、电池组、2个支持的无线网卡(本次使用Alfa Black)。最终成品:

太阳能电池组、树莓派、Alfa网卡,准备就绪

1
xz -cd kali-2017.01-rpi2.img.xz | dd of=/dev/mmcblk0 bs=4M iflag=fullblock oflag=direct status=progress

可能需要安装Kismet:

1
apt-get install kismet

安装GPS相关工具:

1
apt-get install gpsd gpsd-clients

连接GPS接收器,确认设备路径(/dev/ttyUSBx 或 /dev/ttyAMAx),然后运行:

1
gpsd -b -N -D 3 -n -F /var/run/gpsd.sock /dev/ttyUSB0

1
2
service gpsd start
cgps -s

GPSd正常运行预期效果

步骤2:配置Kismet监控两个802.11b/g信道,覆盖所有美国合法的2.4GHz频率

监控箭头所指信道以覆盖所有美国合法的2.4GHz频段

添加源…配置信道…重要的Kismet选项

WarDriving时锁定在3和8信道

步骤3:步行/驾驶/骑行

War-Walking路径

此时需要优雅退出Kismet,这将保持结果文件的完整性以便进一步分析。

步骤4:处理结果并上传

此仓库可以轻松将netxml文件转换为可用于最后步骤的CSV:

1
git clone https://github.com/MichaelCaraccio/NetXML-to-CSV.git

运行转换工具:

1
python3 main.py file.netxml result.csv

将结果上传到地图: https://www.google.com/maps/d/

精确定位的SSID和经纬度输出

在此案例中,企业名称已被隐去。关键在于我们从无线网络泄露的信息量过大。开放网络无处不在,我们都知道某些网络的PSK过短。广播与企业名称相关的SSID肯定会泄露比预期更多的信息。让我们退一步思考:我们真的需要提供开放免费的无线接入吗?

我们展示了基本无线设计中的缺陷:

正确实施无线安全的唯一方法是通过证书验证的客户端配置、强用户密码以及持续的测试和验证。否则,您的无线网络就是一个威胁。

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