当前位置: 首页 > 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

相关文章:

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

关于Damn-Vulnerable-Drone Damn-Vulnerable-Drone是一款针对无人机安全研究与分析的靶机工具,广大研究人员可以利用该环境工具轻松学习、研究和分析针对无人机安全态势。 Damn Vulnerable Drone 基于流行的 ArduPilot/MAVLink 架构,其中故意留下了各种…...

项目模块三:Socket模块

一、模块设计 1、套接字编程常用头文件展示 #include <sys/types.h> #include <sys/socket.h> #include <netinet/in.h> #include <arpa/inet.h> #include <unistd.h> #include <fcntl.h> 2、成员函数设计 &#xff08;1&#xf…...

Unity-Shader-语义

1、从程序传给顶点函数&#xff1a; POSITION&#xff1a;顶点坐标&#xff08;模型空间下&#xff09; NORMAL&#xff1a;法线向量&#xff08;模型空间下&#xff09; TANGENT&#xff1a;切线向量&#xff08;模型空间下&#xff09; TEXCOORD0~n&#xff1a;纹理坐标 …...

MFC工控项目实例二十四模拟量校正值输入

承接专栏《MFC工控项目实例二十三模拟量输入设置界面》 对模拟量输入的零点校正值及满量程对应的电压值进行输入。 1、在SenSet.h文件中添加代码 #include "BtnST.h" #include "ShadeButtonST.h"/ // SenSet dialogclass SenSet : public CDialog { // Co…...

analysis-ik分词器

analysis-ik分词器 1、安装离线在线 2、使用配置拓展词典 3、测试ik_smartik_max_word 1、安装 离线 使用离线安装下载地址https://release.infinilabs.com/analysis-ik/stable/找到对应es版本的ik分词器、下载zip后放到/elasticsearch/plugins/ik文件夹下。重启es即可生效 …...

开源的、基于内存的键值存储数据库redis详细介绍

目录 一、Redis的概述 1、概述 2、特点 &#xff08;1&#xff09;基本特性 &#xff08;2&#xff09;数据结构 &#xff08;3&#xff09;运行环境 二、Redis的重要作用 1、缓存 2、会话存储 3、消息队列 4、计数器 5、分布式锁 6、排行榜 7、实时数据处理 三、…...

三种容器 std::vector、std::map、std::unordered_set 的对比分析

目录 1.添加元素 1.1 std::vector 1.2 std::map 1.3 std::unordered_set 2. 查找元素 2.1 std::vector 2.2 std::map 2.3 std::unordered_set 3. 遍历容器 3.1 std::vector 使用范围基for循环(range-based for loop) 使用迭代器: 3.2 std::map 3.3 std::unord…...

Nuxt3 SSR 服务端渲染部署 PM2 全流程(Nest.js 同理)

项目打包 我们以 Nuxt3 项目为例子&#xff1a; 项目打包 执行 npm run build &#xff0c; 生成的 .output 文件夹就是部署产物&#xff08;目前不支持中文路径&#xff09;执行 npm run preview 可以本地预览效果 方式一&#xff1a;使用 Node 部署 需要服务器安装 Nod…...

如何轻松使用pip安装Git仓库中的私有Python模块(使用pip和Git仓库发布和安装私有Python模块)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 Git模块 📒📝 Git仓库要求🔖 项目目录结构🔖 文件说明📝 编写setup.py📝 配置MANIFEST.in📝 推送代码到Git仓库📝 使用pip安装模块🔖 使用用户名和密码🔖 使用Personal Access Token (PAT)🔖 示例📝 更…...

写 R 包教程

R R 包开发 | 保姆级教程-CSDN博客 https://www.prestevez.com/post/r-package-tutorial/ 1、加载开发所需 R 包 library(usethis) library(devtools) library(roxygen2) 2、在当前工作路径创建 R 包 usethis::create_package("myRpkg") # 在当前路径创建 my…...

【java】数组(超详细总结)

目录 一.一维数组的定义 1.创建数组 2.初始化数组 二.数组的使用 1.访问数组 2.遍历数组 3.修改数据内容 三.有关数组方法的使用 1.toString 2. copyOf 四.查找数组中的元素 1.顺序查找 2.二分查找binarySearch 五.数组排序 1.冒泡排序 2.排序方法sort 六.数组逆置…...

@KafkaListener注解

KafkaListener(topics "${xxxx}", containerFactory "xxx") public void consume(String message) {service.save(xx); }在 Spring Boot 中&#xff0c;使用 KafkaListener 注解消费 Kafka 消息时&#xff0c;如果 service.save(cleanWikiSource) 抛出异…...

2025年计算机视觉研究进展与应用国际学术会议 (ACVRA 2025)

2025年计算机视觉研究进展与应用国际学术会议 (ACVRA 2025) 2025 International Conference on Advances in Computer Vision Research and Applications 重要信息 2025年3月28-30日 南京 一轮截稿日期&#xff1a;2024年11月30日 EI检索稳定 早投稿&#xff0c;早审稿&a…...

第二代GPT-SoVITS V2:让声音克隆变得简单

随着人工智能技术的飞速发展&#xff0c;AI声音克隆已经成为一种趋势&#xff0c;广泛应用于各个领域。为了满足更多用户的需求&#xff0c;第二代GPT-SoVITS V2应运而生&#xff0c;它由RVC变声器创始人“花儿不哭”与AI音色转换技术Sovits开发者Rcell联合开发&#xff0c;是一…...

基于x86_64汇编语言简单教程6: 变量,常量,与运算

目录 变量 为未初始化的数据分配存储空间 多重初始化 常量 equ指令 &#xff05;assign 指令 &#xff05;define指令 算数指令 inc 自增指令 dec指令 ADD和SUB指令 imul/mul和idiv/div 实践&#xff1a;我们来写一个简单的一位数加法器 NASM逻辑指令 AND 指令 …...

Vue-router 路由守卫执行流程图

vue-router 路由守卫执行的流程图&#xff08;个人理解&#xff09; 图1 - 图2...

ES6 中函数参数的默认值

概述&#xff1a; ES 允许给函数的参数赋初始值&#xff1b; 代码示例及相关说明&#xff1a; <!DOCTYPE html> <html> <head> <meta charset"utf-8"> <title>函数参数默认值</title> </head> <body> <script&g…...

Redis知识应用索引指南

Redis&#xff0c;全称为Remote Dictionary Server&#xff0c;是一个开源的高性能键值对数据库。它以其卓越的性能、丰富的数据结构和灵活的持久化机制&#xff0c;在现代应用中扮演着至关重要的角色 1 什么是redis Redis是一个使用ANSI C语言编写的开源、跨平台的键值存储系…...

ES6扩展运算符

1.介绍&#xff1a; ... 扩展运算符能将数组转换为逗号分隔的参数序列&#xff1b; 扩展运算符&#xff08;spread&#xff09;也是三个点&#xff08;...&#xff09;。它好比 rest 参数的逆运算&#xff0c;将一个数组转为用逗号分隔的 参数序列&#xff0c;对数组进…...

【树莓派 5B】Python 版本切换

【树莓派 5B】Python 版本切换 前言整体思路具体步骤常见问题Python 无法建立与 Python3 的软连接 前言 本文基于树莓派5B 32-bit 树莓派OS&#xff0c;以 Python-3.11.2 降级到 3.9.2 为例&#xff0c;总结了在树莓派上切换 Python 版本的步骤&#xff0c;帮助大家轻松完成 P…...

迎战2026知网最严查重:零成本脱“AI味”!10款免费工具硬核排雷红黑榜

四月一到&#xff0c;查重和AIGC检测成了两座大山。 自己熬夜敲的字被判AI生成&#xff0c;或者润色后满篇通红&#xff0c;这绝望感谁懂&#xff1f; 为了搞定论文降aigc这个大坑&#xff0c;我拿手头几篇废稿&#xff0c;去市面上热门的10款降ai率工具滚了一圈。今天这篇吐…...

FastAPI中间件性能优化:从GZip压缩到异步日志的7个提速技巧

FastAPI中间件性能优化&#xff1a;从GZip压缩到异步日志的7个提速技巧 当你的FastAPI应用开始处理每秒数千甚至百万级的请求时&#xff0c;中间件可能成为性能瓶颈的隐形杀手。本文将揭示如何通过7个关键技巧&#xff0c;让你的中间件处理速度提升300%以上。 1. 理解中间件的性…...

2026降AI降重工具实测:高效过审首选方案推荐

2026年学术写作辅助工具的选择核心看四个维度&#xff1a;降重精准度、去AI痕迹效果、格式保留能力、学科适配性。经过多场景实测&#xff0c;SpeedAI科研小助手、飞降AI、超能降AI、快降AI、思笔AI是当前覆盖全需求的第一梯队工具&#xff0c;能满足从专科到硕博、从中文到英文…...

Linux内核中的进程调度高级话题

Linux内核中的进程调度高级话题 引言 进程调度是Linux内核中负责分配CPU时间的核心子系统&#xff0c;它决定了系统中各个进程的执行顺序和时间分配。随着系统复杂性的增加和硬件技术的发展&#xff0c;进程调度面临着越来越多的挑战。本文将深入探讨Linux内核中进程调度的高级…...

Kazumi:3步打造你的专属动漫播放器,告别追番烦恼

Kazumi&#xff1a;3步打造你的专属动漫播放器&#xff0c;告别追番烦恼 【免费下载链接】Kazumi 基于自定义规则的番剧采集APP&#xff0c;支持流媒体在线观看&#xff0c;支持弹幕&#xff0c;支持实时超分辨率。 项目地址: https://gitcode.com/gh_mirrors/ka/Kazumi …...

提升英雄联盟游戏体验:基于LCU API的智能客户端工具集实战指南

提升英雄联盟游戏体验&#xff1a;基于LCU API的智能客户端工具集实战指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit LeagueAkari是一款基…...

Z-Image-GGUF产学研结合:高校AI课程实验平台搭建与教学案例库

Z-Image-GGUF产学研结合&#xff1a;高校AI课程实验平台搭建与教学案例库 1. 项目背景与教育价值 最近几年&#xff0c;AI图像生成技术发展得特别快&#xff0c;从最初的简单涂鸦到现在能生成媲美专业摄影的作品&#xff0c;这个进步让很多高校老师都开始思考&#xff1a;怎么…...

从零构建ZigBee开发环境:IAR for 8051 10.30.1实战指南

1. 为什么选择IAR for 8051开发ZigBee&#xff1f; 刚接触ZigBee开发的朋友们可能都有这样的困惑&#xff1a;市面上有那么多开发工具&#xff0c;为什么要用IAR for 8051&#xff1f;这个问题我十年前刚开始做智能家居时就遇到过。当时为了给一个智能灯泡项目选型&#xff0c;…...

论文阅读:AIED 2025 Understanding University Students‘ Use of Generative AI: The Roles of Demographics an

总目录 大模型相关研究 2025版&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/142132328 Understanding University Students’ Use of Generative AI: The Roles of Demographics and Personality Traits https://arxiv.org/abs/2505.02863 该论文题为《Und…...

Unity2018+TextMeshPro动态字体实战:解决中文生僻字渲染难题

Unity2018TextMeshPro动态字体实战&#xff1a;解决中文生僻字渲染难题 在游戏开发中&#xff0c;文字渲染的质量直接影响用户体验&#xff0c;特别是对于中文这种包含大量字符的语言来说&#xff0c;如何确保所有文字都能正确显示是一个常见的技术挑战。TextMeshPro作为Unity中…...