Valuable insights
1.Refonte du code Chasing Your Tail: Le code de l'application a été significativement nettoyé et refactorisé, bien que des améliorations fonctionnelles futures soient encore envisagées par le développeur.
2.Organisation des fichiers simplifiée: L'organisation des fichiers principaux est désormais regroupée dans un seul dossier, éliminant les sous-dossiers déroutants précédents, avec des répertoires dédiés pour les journaux et les listes d'ignorance.
3.Conception de l'interface utilisateur spécifique: L'interface graphique est intentionnellement rudimentaire, conçue pour une utilisation facile sur de petits écrans tactiles de Raspberry Pi, permettant une interaction simple même en déplacement.
4.Rôle essentiel des listes d'ignorance: Les listes d'ignorance permettent d'exclure des adresses MAC ou des entités connues (amis, collègues) des alertes de suivi, assurant que seules les entités inconnues déclenchent des notifications.
5.Méthodologie de suivi temporel: La logique de suivi repose sur la détection d'un appareil à un emplacement actuel, puis la vérification s'il a été vu dans un intervalle de temps défini (5 à 15 minutes) auparavant.
6.Configuration centralisée et sans codage fixe: Le fichier config.js gère désormais toutes les options de configuration, y compris l'emplacement des journaux Kismet, évitant ainsi le codage fixe des répertoires.
7.Analyse des requêtes de sondage (Probe Analyzer): Une nouvelle fonctionnalité analyse les requêtes de sondage pour identifier les réseaux ciblés, ce qui est crucial lorsque les appareils utilisent la randomisation d'adresse MAC pour masquer leur identité.
8.Intégration de Wiggle pour la localisation: L'outil Wiggle est utilisé pour tenter de localiser géographiquement les réseaux dont les noms sont révélés par les requêtes de sondage analysées.
Refonte du Code et Organisation des Fichiers
Le code de l'application de suivi, baptisée « Chasing Your Tail » (CYT), a subi une refonte significative. L'objectif principal de cette mise à jour était de rendre le code beaucoup plus propre et structuré qu'auparavant. Toutes les principales composantes logicielles résident désormais dans un dossier unique, éliminant la confusion causée par les sous-dossiers précédents. Cette nouvelle organisation inclut un répertoire de journaux (logs directory) où les informations de Kismet sont automatiquement enregistrées, ainsi qu'un répertoire pour les listes d'ignorance.
Objectif de la Conception de l'Interface Utilisateur
L'interface utilisateur graphique (GUI) présente une apparence volontairement simplifiée, comparée à une conception de type « Fisher Price ». Cette simplicité est une décision de conception délibérée, optimisée pour une utilisation sur des écrans très petits, typiques des installations sur Raspberry Pi équipées d'un écran tactile. Le but est de permettre à l'utilisateur de lancer l'application et d'interagir avec elle de manière basique, par exemple en conduisant, sans avoir besoin de naviguer dans des menus déroulants complexes.
C'est conçu pour un écran très petit sur un Raspberry Pi, comme avec un écran tactile et votre gros doigt charnu, juste pour pouvoir l'utiliser si vous conduisez.
Le Concept des Listes d'Ignorance
Pour quiconque utilise ce type d'outil, la compréhension du concept de liste d'ignorance est fondamentale. Cette liste permet de spécifier des adresses MAC ou des entités que le système ne doit pas signaler comme étant un suivi potentiel. Si des amis, des collègues ou des dispositifs personnels sont dans la zone, ils peuvent être ajoutés à cette liste. Kismet collecte les données, et lors du démarrage d'une nouvelle session, le système ignore toute donnée correspondant aux entrées de la liste d'ignorance dans le fichier journal le plus récent.
- Toute requête de sondage (probe request).
- Toute adresse MAC spécifiée dans la liste.
Méthodologie de Détection et Améliorations du Code
La méthodologie initiale consistait à vérifier quels dispositifs étaient vus à plusieurs emplacements fixes (A, B, C). Cependant, cette approche s'avère impraticable dans des scénarios dynamiques, comme lors d'un long trajet en voiture. Le concept a donc été modifié pour se concentrer sur la temporalité : déterminer si un appareil détecté actuellement a également été observé dans une fenêtre temporelle antérieure, par exemple, il y a 10 à 15 minutes ou 5 à 10 minutes. Cette approche temporelle est plus robuste pour les situations de mobilité.
Centralisation de la Configuration
Les améliorations majeures du code incluent l'introduction du fichier config.js, qui centralise toutes les options de configuration. Il n'y a plus de répertoires codés en dur. L'emplacement où les journaux de Kismet doivent être stockés est désormais défini dans ce fichier de configuration. Bien que ce fichier contienne également une clé API optionnelle pour Wiggle, il est essentiel pour définir les chemins d'accès aux données.
Analyse Avancée des Sondages et Intégration Wiggle
Une nouvelle fonctionnalité, l'analyseur de requêtes de sondage (Probe Analyzer), est en cours d'intégration. Cette fonctionnalité vise à identifier les réseaux que les dispositifs ciblés sondent activement. Si le suivi se base uniquement sur les adresses MAC, il peut être contourné par la randomisation d'adresse MAC. Cependant, si le dispositif cible émet des requêtes de sondage, il révèle le nom du réseau qu'il recherche.
Utilisation de Wiggle pour la Géolocalisation
Lorsque le nom du réseau cible est identifié grâce aux sondages, l'outil Wiggle peut être sollicité. L'objectif est d'utiliser les données de Wiggle pour localiser approximativement l'origine de ces requêtes sur une carte. Ceci permet de transformer l'information de suivi temporel en une information spatiale potentielle. Le développeur mentionne que de nombreuses organisations révèlent involontairement des informations sensibles via leurs configurations Wi-Fi.
- Collecte des sondages après une période d'activité.
- Identification des noms de réseaux sondés (SSID).
- Utilisation de Wiggle pour tenter de cartographier ces noms de réseaux.
- Analyse des journaux pour déterminer si un suivi est confirmé.
Le code mis à jour, désormais nommé chasing your tail NG, est hébergé sous la branche de la société Elli as Labs, tout en conservant la licence MIT. Le développeur encourage la communauté à consulter cette version améliorée pour faciliter la mise en œuvre.
Questions
Common questions and answers from the video to help you understand the content better.
Quelle est la principale amélioration apportée au code de Chasing Your Tail dans cette mise à jour ?
La principale amélioration réside dans la refactorisation du code pour le rendre plus propre et dans la centralisation de la configuration via le fichier <a href="#config.js">config.js</a>, éliminant ainsi les répertoires codés en dur.
Pourquoi l'interface utilisateur graphique (GUI) de l'application est-elle délibérément simplifiée ?
L'interface est conçue pour être minimale et facile à utiliser sur de très petits écrans tactiles de Raspberry Pi, permettant une interaction rapide sans nécessiter de navigation complexe dans des menus déroulants.
Comment la fonctionnalité des listes d'ignorance fonctionne-t-elle avec Kismet ?
La liste d'ignorance permet au système d'ignorer les adresses MAC ou les entités prédéfinies lors de l'analyse du journal Kismet le plus récent, empêchant ainsi les alertes sur des dispositifs connus ou amis.
Quelle nouvelle fonctionnalité utilise l'analyse des requêtes de sondage (probe requests) ?
Le nouvel analyseur de sondages cherche à identifier les noms de réseaux (SSID) que les dispositifs cibles recherchent, ce qui est particulièrement utile lorsque ces dispositifs utilisent la randomisation d'adresse MAC.
Useful links
These links were generated based on the content of the video to help you deepen your knowledge about the topics discussed.
