DroneXtract:一款针对无人机的网络安全数字取证工具

server/2025/2/4 5:35:53/

关于DroneXtract

DroneXtract是一款使用 Golang 开发的适用于DJI无人机的综合数字取证套件,该工具可用于分析无人机传感器值和遥测数据、可视化无人机飞行地图、审计威胁活动以及提取多种文件格式中的相关数据。

功能介绍

DroneXtract 具有四个用于无人机取证和审计的主要模块。它们包括:

DJI文件解析模块

该模块可以从DJI文件格式中可视化地提取信息,例如CSV、KML和GPX等。输入输出文件路径后,解析的信息可以保存为其他文件格式。下图包含解析文件输出的示例以及从文件中提取的数据类型:

隐写模块

隐写模块可以处理泄露存储在文件中的信息,该模块允许我们从图像和视频格式中提取遥测数据和有价值的数据。此外,提取的数据可以导出为四种不同的文件格式:

遥测可视化模块

遥测可视化套件包含飞行路径映射生成器和遥测图形可视化工具。飞行路径映射生成器会创建一张地图图像,显示无人机在途中经过的位置和所走的路径。遥测图形可视化工具会为每个相关遥测或传感器值绘制一张图形,用于审计目的:

飞行和完整性分析模块

飞行和完整性分析工具会遍历无人机在飞行过程中记录的所有遥测值。收集到这些值后,它会计算该值所假设的最大方差并检查是否存在可疑的数据缺口。此模块可用于检查是否存在异常数据或可能发生的任何文件损坏:

工具要求

Golang

工具安装

由于该工具基于Go开发,因此我们首先需要在本地设备上安装并配置好最新版本的Go环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/ANG13T/DroneXtract.git

然后切换到项目目录中,使用go命令和源码完成工具构建:

$ cd DroneXtract$ export GO111MODULE=on$ go get ./...$ go run main.go

Airdata使用

为了解析 DJI 飞行 .TXT 日志,请使用Airdata 的飞行数据分析工具:

1、Airdata CSV 输出文件可用于 CSV 解析器、飞行路径图和遥测可视化;

2、Airdata KML 输出文件可用于 KML 解析器;

3、Airdata GPX 输出文件可用于 GPX 解析器;

工具配置

DroneXtract 中使用了一组环境变量。为了根据您特定的无人机/调查场景定制值,您可以转到.env文件并调整以下值:

1、TELEMETRY_VIS_DOWNSAMPLE用于遥测可视化的值的下采样数;

2、FLIGHT_MAP_DOWNSAMPLE用于飞行路径映射的值的下采样数;

3、ANALYSIS_DOWNSAMPLE用于完整性分析的值的下采样数;

4、ANALYSIS_MAX_VARIANCE分析值的最大值和最小值之间允许的最大方差;

工具测试

$ cd steganography$ go test

工具运行截图

许可证协议

本项目的开发与发布遵循MIT开源许可协议。

项目地址

DroneXtract:【GitHub传送门】

参考资料

https://app.airdata.com/main?a=upload

https://medium.com/@angelinatsuboi/a-comprehensive-guide-to-digital-forensics-with-dji-drones-fd7ef5af2891


http://www.ppmy.cn/server/164809.html

相关文章

gradle和maven的区别以及怎么选择使用它们

目录 区别 1. 配置方式 2. 依赖管理 3. 构建性能 4. 灵活性和扩展性 5. 多项目构建 如何选择使用 选择 Maven 的场景 选择 Gradle 的场景 区别 1. 配置方式 Maven: 使用基于 XML 的 pom.xml 文件进行配置。所有的项目信息、依赖管理、构建插件等都在这个文…

python学opencv|读取图像(五十五)使用cv2.medianBlur()函数实现图像像素中值滤波处理

【1】引言 在前述学习过程中,已经探索了取平均值的形式进行图像滤波处理。 均值滤波的具体的执行对象是一个nXn的像素核,对这个像素核内所有像素点的BGR值取平均值,然后把这个平均的BGR值直接赋给像素核中心位置的核心像素点,由…

OpenCV:图像轮廓

目录 简述 1. 什么是图像轮廓? 2. 查找图像轮廓 2.1 接口定义 2.2 参数说明 2.3 代码示例 2.4 运行结果 3. 绘制图像轮廓 3.1 接口定义 3.2 参数说明 3.3 代码示例 3.4 运行结果 4. 计算轮廓周长 5. 计算轮廓面积 6. 示例:计算图像轮廓的面…

TensorFlow 示例摄氏度到华氏度的转换(一)

TensorFlow 实现神经网络模型来进行摄氏度到华氏度的转换,可以将其作为一个回归问题来处理。我们可以通过神经网络来拟合这个简单的转换公式。 1. 数据准备与预处理 2. 构建模型 3. 编译模型 4. 训练模型 5. 评估模型 6. 模型应用与预测 7. 保存与加载模型 …

DeepSeek学术写作测评第一弹:论文润色,中译英效果如何?

我是娜姐 迪娜学姐 ,一个SCI医学期刊编辑,探索用AI工具提效论文写作和发表。 最近风很大的DeepSeek,持续火出圈,引起了硅谷AI圈的热议。很多学员让娜姐测评一下对于平时需要学术写作润色的论文党,效果究竟怎么样&…

【llm对话系统】大模型源码分析之 LLaMA 模型的 Masked Attention

在大型语言模型(LLM)中,注意力机制(Attention Mechanism)是核心组成部分。然而,在自回归(autoregressive)模型中,例如 LLaMA,我们需要对注意力进行屏蔽&#…

跨境数据传输问题常见解决方式

在全球化经济的浪潮下,跨境数据传输已然成为企业日常运营的关键环节。随着数字贸易的蓬勃发展和跨国业务的持续扩张,企业在跨境数据处理方面遭遇了诸多棘手难题。那么,面对这些常见问题,企业该如何应对?镭速跨境数据传…

初级数据结构:栈和队列

目录 一、栈 (一)、栈的定义 (二)、栈的功能 (三)、栈的实现 1.栈的初始化 2.动态扩容 3.压栈操作 4.出栈操作 5.获取栈顶元素 6.获取栈顶元素的有效个数 7.检查栈是否为空 8.栈的销毁 9.完整代码 二、队列 (一)、队列的定义 (二)、队列的功能 (三&#xff09…