
Analyseur WiFi et Bluetooth basé sur une interface graphique de nouvelle génération pour Linux
Sparrow-WiFi est un outil de connaissance du spectre WiFi 2,4 GHz et 5 GHz et Bluetooth pour Linux. Il intègre le balayage WiFi, la découverte Bluetooth Low Energy et Classic, l'analyse du spectre par radio logicielle (HackRF, Ubertooth), le suivi GPS, la détection de drones FAA RemoteID, les opérations à distance embarquées sur drone/rover, et l'indexation ECS 8.17 dans Elasticsearch ou OpenSearch au sein d'une plateforme unique. Écrit entièrement en Python 3.
Le projet comprend quatre composants qui fonctionnent de manière autonome ou ensemble :
| Composant | Interface | Objectif |
|---|---|---|
| Sparrow-WiFi | Interface graphique de bureau PyQt5 | Balayage WiFi/BT, analyse du spectre, suivi de source, wardriving |
| Sparrow Agent | Serveur HTTP sans interface | Balayage à distance, déploiements sur drone/rover, intégration tierce |
| Sparrow DroneID | Basé sur le web (navigateur) | Détection de drones FAA RemoteID via WiFi et Bluetooth LE |
| Sparrow Elastic Bridge | Service CLI sans interface | Indexation ECS 8.17 des observations WiFi/BT dans Elasticsearch / OpenSearch |
Le Sparrow Agent et Sparrow DroneID exposent des API REST JSON qui permettent à d'autres applications d'interroger les résultats de balayage, de déclencher des balayages, de récupérer les détections de drones et d'intégrer la connaissance du sans-fil et des drones dans leurs propres flux de travail. L'Elastic Bridge consomme l'API REST de l'agent et transmet des documents ECS 8.17 avec des tableaux de bord Kibana inclus.
Cette version apporte trois améliorations significatives par rapport à la version précédente :
/wireless/networks/<iface>, l'agent lançait auparavant N appels iw scan redondants qui se sérialisaient sur le verrou par interface, multipliant la latence de balayage par le nombre de clients. La première requête est désormais le « leader » qui effectue réellement le balayage ; les requêtes concurrentes attendent sur un threading.Event et partagent le résultat du leader. Inclut également une correction TOCTOU sur la création des verrous et la sûreté des exceptions sur les verrous par interface.droneid.*), et une interface web réactive multi-appareils. Voir la section Sparrow DroneID ci-dessous.sparrow-elastic.py a été réécrit pour produire des documents ECS 8.17 (auparavant ECS 1.5), prend désormais en charge à la fois Elasticsearch 8.x et OpenSearch 2.x, initialise automatiquement des modèles d'index composables avec des politiques de cycle de vie ILM/ISM et des alias d'écriture rollover, effectue l'enrichissement du fournisseur OUI et la classification des appareils basée sur des règles (avec empreinte Fingerbank optionnelle), et fournit quatre tableaux de bord Kibana inclus ainsi que six visualisations préservées de l'ancienne version. Le pont ECS 1.5 historique est conservé dans legacy/sparrow-elastic.py. Voir Intégration Elasticsearch / OpenSearch.L'application Sparrow originale fournit un remplacement complet basé sur une interface graphique pour des outils comme inSSIDer et LinSSID, avec des capacités bien au-delà du simple balayage :
sparrowwifiagent.py) pour l'analyse distribuée, les opérations embarquées sur drone/rover et les déploiements sur Raspberry Piiw scan
Un système autonome de détection et de suivi de drones basé sur le web qui décode les diffusions d'Identification à Distance (RemoteID) imposées par la FAA. Fonctionne comme un serveur HTTP Python avec une interface utilisateur basée sur navigateur accessible depuis n'importe quel appareil du réseau.