
Набор инструментов для цифровой криминалистики дронов DJI, который анализирует телеметрические файлы, извлекает скрытые данные с помощью стеганографии, визуализирует траектории полётов и обнаруживает аномальную активность датчиков.
DroneXtract — это комплексный набор для цифровой криминалистики дронов DJI, написанный на Golang. Он может использоваться для анализа значений датчиков дрона и телеметрических данных, визуализации карт полётов дронов, аудита на предмет криминальной активности и извлечения соответствующих данных из файлов различных форматов.
DroneXtract включает четыре основных набора для криминалистики и аудита дронов:
Вы можете визуализировать и извлекать информацию из файлов форматов DJI, таких как CSV, KML и GPX, с помощью инструмента парсинга. Извлечённая информация может быть сохранена в альтернативном формате файла при указании пути к выходному файлу. Изображение ниже содержит пример вывода распарсенного файла и тип данных, извлечённых из файла.
Стеганография относится к процессу раскрытия информации, скрытой внутри файлов. Набор стеганографии DroneXtract позволяет извлекать телеметрию и ценные данные из изображений и видео. Кроме того, извлечённые данные могут быть экспортированы в четыре различных формата файлов.
Набор визуализации телеметрии содержит генератор карт маршрута полёта и визуализатор графиков телеметрии. Генератор карт маршрута полёта создаёт изображение карты, показывающее местоположения, куда летал дрон по маршруту, и пройденный путь. Визуализатор графиков телеметрии строит графики для каждой соответствующей телеметрической величины или значения датчика для целей аудита.
Инструмент анализа полёта и целостности перебирает все телеметрические значения, записанные дроном во время полёта. После сбора значений он вычисляет максимальное допустимое отклонение для значения и проверяет наличие подозрительных пробелов в данных. Этот инструмент можно использовать для проверки на аномальные данные или любое повреждение файла, которое могло произойти.
Для сборки из исходного кода вам потребуется установленный Go.
$ export GO111MODULE=on
$ go get ./...
$ go run main.go
Для парсинга логов DJI в формате .TXT используйте инструмент анализа данных полёта Airdata.
В DroneXtract используется ряд переменных окружения. Чтобы настроить значения под ваш конкретный дрон / сценарий расследования, вы можете открыть файл .env и изменить следующие значения:
TELEMETRY_VIS_DOWNSAMPLE — коэффициент прореживания значений, используемых для визуализации телеметрии
FLIGHT_MAP_DOWNSAMPLE — коэффициент прореживания значений, используемых для построения карты полёта
ANALYSIS_DOWNSAMPLE — коэффициент прореживания значений, используемых для анализа целостности
ANALYSIS_MAX_VARIANCE — максимально допустимая разница между максимальным и минимальным значением для анализируемых величин
Чтобы узнать больше о цифровой криминалистике дронов DJI и возможностях DroneXtract, обратитесь к этой статье.
DroneXtract открыт для любых вкладов. Пожалуйста, сделайте форк репозитория и создайте pull request с функциями или исправлениями, которые вы хотите реализовать.
DroneXtract содержит тестовые файлы для всех четырёх наборов. Пример набора команд для тестирования набора стеганографии:
$ cd steganography
$ go test
Примеры файлов для тестирования находятся в каталоге test-data.
Если конкретный тест включает вывод, такой как файл или изображение, он будет сохранён в каталоге output.
Для справки в output уже находятся некоторые файлы.
Если вам понравился DroneXtract, пожалуйста, рассмотрите возможность стать спонсором, чтобы поддержать мои будущие проекты.
Чтобы ознакомиться с другими моими работами, посетите мой профиль на GitHub.