
Suite de criminalistique numérique pour drones DJI qui analyse les fichiers de télémétrie, extrait des données cachées via stéganographie, visualise les trajectoires de vol et détecte les activités anormales des capteurs.
DroneXtract est une suite complète de criminalistique numérique pour drones DJI développée en Golang. Elle permet d'analyser les valeurs des capteurs et les données de télémétrie des drones, de visualiser les cartes de vol des drones, d'auditer les activités criminelles et d'extraire des données pertinentes à partir de multiples formats de fichiers.
DroneXtract propose quatre suites principales pour la criminalistique et l'audit des drones. Elles comprennent :
Vous pouvez visualiser et extraire des informations à partir des formats de fichiers DJI tels que CSV, KML et GPX à l'aide de l'outil d'analyse. Les informations analysées peuvent être enregistrées dans un autre format de fichier en spécifiant un chemin de fichier de sortie. L'image ci-dessous montre un exemple de sortie d'un fichier analysé et le type de données extraites du fichier.
La stéganographie désigne le processus de révélation d'informations cachées dans des fichiers. La suite de stéganographie de DroneXtract vous permet d'extraire des données de télémétrie et des données précieuses à partir de formats d'image et de vidéo. De plus, les données extraites peuvent être exportées vers quatre formats de fichier différents.
La suite de visualisation de la télémétrie contient un générateur de cartographie de trajectoire de vol et un visualiseur de graphique de télémétrie. Le générateur de cartographie de trajectoire de vol crée une image d'une carte indiquant les emplacements visités par le drone en route et le chemin emprunté. Le visualiseur de graphique de télémétrie trace un graphique pour chacune des valeurs de télémétrie ou de capteur pertinentes à des fins d'audit.
L'outil d'analyse du vol et de l'intégrité parcourt toutes les valeurs de télémétrie enregistrées par le drone pendant son vol. Une fois les valeurs collectées, il calcule la variance maximale supposée par la valeur et vérifie la présence d'intervalles de données suspects. Cet outil peut être utilisé pour vérifier les données anormales ou toute corruption de fichier qui aurait pu se produire.
Pour construire à partir des sources, vous aurez besoin de Go installé.
$ export GO111MODULE=on
$ go get ./...
$ go run main.go
Pour extraire les journaux de vol .TXT des DJI, veuillez utiliser l'outil d'analyse des données de vol d'Airdata.
Un ensemble de variables d'environnement est utilisé dans DroneXtract. Pour adapter les valeurs à votre drone ou scénario d'enquête spécifique, vous pouvez vous rendre dans le fichier .env et ajuster les valeurs suivantes :
TELEMETRY_VIS_DOWNSAMPLE nombre de sous-échantillonnage pour les valeurs à utiliser pour la visualisation de la télémétrie
FLIGHT_MAP_DOWNSAMPLE nombre de sous-échantillonnage pour les valeurs à utiliser pour la cartographie de trajectoire de vol
ANALYSIS_DOWNSAMPLE nombre de sous-échantillonnage pour les valeurs à utiliser pour l'analyse d'intégrité
ANALYSIS_MAX_VARIANCE variance maximale autorisée entre la valeur max et min pour les valeurs d'analyse
Pour en savoir plus sur la criminalistique numérique des drones DJI et les fonctionnalités de DroneXtract, consultez cet article.
DroneXtract est ouvert à toute contribution. Veuillez forker le dépôt et soumettre une pull request avec les fonctionnalités ou correctifs que vous souhaitez mettre en œuvre.
DroneXtract contient des fichiers de test pour les quatre suites. Un exemple de commande pour tester la suite de stéganographie
$ cd steganography
$ go test
Des exemples de fichiers pour les tests sont inclus dans le répertoire test-data.
Si un cas de test spécifique produit une sortie telle qu'un fichier ou une image, elle sera stockée dans le répertoire output.
Il y a déjà quelques fichiers dans output à titre de référence.
Si vous avez apprécié DroneXtract, veuillez envisager de devenir sponsor afin de financer mes futurs projets.
Pour découvrir mes autres travaux, visitez mon profil GitHub.