工具描述
Sparrow-wifi从一开始就被打造成为下一代2.4 GHz和5 GHz Wifi频谱感知工具。从最基本的角度来看,它为inSSIDer和linssid之类的工具提供了更全面的基于GUI的替代品,这些工具专门在linux上运行。在最广泛的使用案例中,sparrow-wifi在一个解决方案中将WiFi,软件定义的无线电(hackrf),高级蓝牙工具(传统和Ubertooth),传统GPS(通过gpsd)和无人机/漫游GPS集成在一起。
Sparrow-wifi完全用Python3编写,旨在用于以下场景:
基本的WiFi SSID识别
Wifi信号源搜寻-从正常模式切换到搜寻模式,每秒可获取多个样本,并使用遥测窗口跟踪wifi信号源
2.4 GHz和5 GHz频谱视图-在wifi频谱之上实时来自Ubertooth(2.4 GHz)或HackRF(2.4 GHz和5 GHz)的重叠频谱(在重叠wifi似乎不是最重要的情况下,对于连接不良的故障排除很有用)原因)
蓝牙识别-使用标准蓝牙收听LE广告,在LE中使用完全混杂模式,并使用Ubertooth进行经典蓝牙
蓝牙源搜寻-使用遥测窗口跟踪LE广告源或iBeacon
iBeacon广告-刊登自己的iBeacon
远程操作-包含一个代理,该代理通过GUI可以与之交谈的远程代理提供所有GUI功能。
无人机/漫游器操作-代理可以在Raspberry Pi等系统上运行,并在无人机上飞行(它在Solo 3DR上进行了多次飞行),或者以GUI控制或自主扫描/记录模式连接到漫游器。
远程代理基于JSON,因此可以与其他应用程序集成
导入/导出-能够从CSV和JSON导入和导出,以便于集成和重新实现。您也可以只运行“ iw dev scan”并将其保存到文件中,然后将其导入。
当GPS坐标可用于发现的SSID /蓝牙设备或绘制随时间变化的wifi遥测时,可生成Google地图。
安装
Sparrow-wifi使用了Python3、qt5和qtchart来构建UI界面,在标准的基于Debian的平台上,已经自带了Python3和qt5,只需要单独配置qtchart即可。在Ubuntu和Kali Linux上执行下列命令:
sudo apt-get install python3-pip gpsd gpsd-clients python3-tk python3-setuptools
sudo pip3 install QScintilla PyQtChart gps3 dronekit manuf python-dateutil numpy matplotlib
工具使用
因为就系统访问而言,代理与GUI具有相同的要求,所以您还需要以root用户身份运行代理。只需运行:
sudo ./sparrowwifiagent.py
默认情况下,它将在端口8020上侦听。--help可以显示许多选项,还可以使用本地配置文件。
还可以通过以下方式指定备用端口:
sudo ./sparrowwifiagent.py --port=<myport>
有很多选项,包括IP连接限制和启动时记录本地。这是此时的--help参数列表:
usage: sparrowwifiagent.py [-h] [--port PORT] [--allowedips ALLOWEDIPS]
[--mavlinkgps MAVLINKGPS] [--sendannounce]
[--userpileds] [--recordinterface RECORDINTERFACE]
[--ignorecfg] [--cfgfile CFGFILE]
[--delaystart DELAYSTART]
Sparrow-wifi agentoptional arguments:
-h, --help
show this help message and exit
--port PORT
Port for HTTP server to listen on
--allowedips ALLOWEDIPS
IP addresses allowed to connect to this agent. Default
is any. This can be a comma-separated list for
multiple IP addresses
--mavlinkgps MAVLINKGPS
Use Mavlink (drone) for GPS. Options are: '3dr' for a
Solo, 'sitl' for local simulator, or full connection
string ('udp/tcp:<ip>:<port>' such as:
'udp:10.1.1.10:14550')
--sendannounce Send a UDP broadcast packet on the specified port to
announce presence
--userpileds Use RPi LEDs to signal state. Red=GPS
[off=None,blinking=Unsynchronized,solid=synchronized],
Green=Agent Running [On=Running, blinking=servicing
--recordinterface RECORDINTERFACE
Automatically start recording locally with the given
wireless interface (headless mode) in a recordings
directory
--ignorecfg Don't load any config files (useful for overriding
and/or testing)
--cfgfile CFGFILE Use the specified config file rather than the default
sparrowwifiagent.cfg file
--delaystart DELAYSTART
Wait <delaystart> seconds before initializing
文章来源:
https://github.com/ghostop14/sparrow-wifi
推荐文章++++