当前位置: 首页 > news >正文

Damn-Vulnerable-Drone:一款针对无人机安全研究与分析的靶机工具

关于Damn-Vulnerable-Drone

Damn-Vulnerable-Drone是一款针对无人机安全研究与分析的靶机工具,广大研究人员可以利用该环境工具轻松学习、研究和分析针对无人机安全态势。

Damn Vulnerable Drone 基于流行的 ArduPilot/MAVLink 架构,其中故意留下了各种安全缺陷以供网络安全研究人员分析和研究,并以此来提升无人机领域的网络安全态势。

与飞行员利用飞行模拟器进行训练类似,我们可以使用 Damn Vulnerable Drone 模拟器深入了解现实世界的无人机系统,了解它们的弱点,并学习有效的方法来更好地提升无人机安全。

功能介绍

1、基于Docker 的环境:在完全虚拟化的基于 docker 的设置中运行,使其可访问且安全地进行无人机安全实验。

2、模拟无线网络:模拟 Wifi(802.11)接口,用于练习无线无人机安全测试。

3、机载摄像机流媒体和万向节:通过万向节和配套计算机集成,模拟 RTSP 无人机机载摄像机流媒体。

4、配套计算机 Web 界面:通过 Web 界面和模拟串行连接与飞行控制器进行配套计算机配置管理。

5、QGroundControl/MAVProxy 集成:一键启动 QGroundControl UI(仅支持 x86 架构)并集成 MAVProxy GCS。

6、MAVLink 路由器集成:通过配套计算机 Web 界面上的 MAVLink 路由器进行遥测转发。

7、动态飞行记录:完全动态的 Ardupilot 飞行箱日志存储在模拟 SD 卡上。

8、管理 Web 控制台:易于使用的模拟器管理 Web 控制台,用于触发场景和无人机飞行状态。

9、全面的安全测试场景:非常适合练习各种无人机安全测试技术,从基本的侦察到高级测试。

工具架构

工具安装

步骤 1.添加 docker apt 源:

printf '%s\n' "deb https://download.docker.com/linux/debian bullseye stable" | sudo tee /etc/apt/sources.list.d/docker-ce.list

步骤 2.导入 GPG 密钥:

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/trusted.gpg.d/docker-ce-archive-keyring.gpg

步骤 3.更新 apt 存储库:

sudo apt update -y

步骤 4.安装 Docker 和 Docker Compose

sudo apt install docker-ce docker-ce-cli containerd.io -y

步骤 5.启动 Docker 服务:

sudo systemctl enable docker --now

步骤 6.为用户添加 docker 权限:

sudo usermod -aG docker $USER

克隆存储库:

git clone https://github.com/nicholasaleks/Damn-Vulnerable-Drone.git && cd Damn-Vulnerable-Drone

工具使用

sudo ./start.sh -hUsage: sudo ./start.sh [OPTION]Start the Damn Vulnerable Drone simulator.Options:--wifi      使用虚拟无人机Wi-Fi网络开始模拟--no-wifi   启动模拟,立即访问无人机网络(默认)-h, --help  现实工具帮助信息和退出Example:sudo ./start.sh --wifi      # 使用虚拟Wi-Fi启动sudo ./start.sh --no-wifi   # 不使用虚拟Wi-Fi启动

工具使用演示

工具演示视频

演示视频:【点我观看】

许可证协议

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

项目地址

Damn-Vulnerable-Drone:【GitHub传送门】

参考资料

ArduPilot - Versatile, Trusted, Open

Introduction · MAVLink Developer Guide

http://www.lryc.cn/news/464567.html

相关文章:

  • 项目模块三:Socket模块
  • Unity-Shader-语义
  • MFC工控项目实例二十四模拟量校正值输入
  • analysis-ik分词器
  • 开源的、基于内存的键值存储数据库redis详细介绍
  • 三种容器 std::vector、std::map、std::unordered_set 的对比分析
  • Nuxt3 SSR 服务端渲染部署 PM2 全流程(Nest.js 同理)
  • 如何轻松使用pip安装Git仓库中的私有Python模块(使用pip和Git仓库发布和安装私有Python模块)
  • 写 R 包教程
  • 【java】数组(超详细总结)
  • @KafkaListener注解
  • 2025年计算机视觉研究进展与应用国际学术会议 (ACVRA 2025)
  • 第二代GPT-SoVITS V2:让声音克隆变得简单
  • 基于x86_64汇编语言简单教程6: 变量,常量,与运算
  • Vue-router 路由守卫执行流程图
  • ES6 中函数参数的默认值
  • Redis知识应用索引指南
  • ES6扩展运算符
  • 【树莓派 5B】Python 版本切换
  • windows C++-有效使用PPL(五)
  • 【排序】——1.冒泡排序法(含优化)
  • 在MySQL中创建数据库和表
  • Hadoop 安装教程——单节点模式和分布式模式配置
  • 给c++小白的教程10:一维数组
  • 【排序】3.希尔排序法
  • 商品详情数据API接口概述(json数据格式返回参考)
  • Jmeter简介
  • 网页前端开发之HTML入门篇:标题标签 heading
  • 医院信息化与智能化系统(3)
  • 数据结构(线性表)