rhoffl/uav-cti-lab

GitHub: rhoffl/uav-cti-lab

为无人机网络威胁情报防御提供集成化仿真研究与测试环境。

Stars: 0 | Forks: 0

# 无人机网络威胁情报防御实验室 ## 论文研究环境 — 版本 1.0 ## ⚠️ 法律与道德声明 本环境**仅**为**防御性安全研究**设计。 - 所有仿真均在完全**气隙隔离**的网络中运行——不涉及真实无人机 - RF 实验需要**屏蔽法拉第笼**(符合 FCC Part 15 / ETSI EN 303 413 标准) - 研究人员须遵守 18 U.S.C. §1030 (CFAA) 及适用法律 - **切勿**将此环境连接至生产网络或真实无人机系统 ## 研究结果总结 | 指标 | CTI 流水线 | 基准 | 提升幅度 | |------|------------|------|----------| | 真阳性率 | 82.9% | 40.8% | **+103%** | | F1 分数 | 0.864 | 0.498 | **+73%** | | 平均检测时间 | 4.3 分钟 | 23.7 分钟 | **−82%** | | 平均响应时间 | 8.1 分钟 | 47.2 分钟 | **−83%** | *基于对 10 个 UAV 攻击类别进行的 480 次受控仿真。* *Cohen's d = 2.14 (效应量大),p < 0.001,覆盖所有类别。* ## 关键研究引用 | 引用编号 | 引用内容 | |----------|----------| | [5] | Hartmann & Steup (2013). UAV attack surface taxonomy. *CyCon 2013, IEEE.* | | [6] | Rodday et al. (2016). MAVLink MitM vulnerabilities. *IEEE NOMS 2016.* | | [7] | Birnbaum et al. (2016). UAV anomaly detection. *ICUAS 2016.* | | [8] | Yaacoub et al. (2020). Survey of 163 UAV security papers. *IoT Journal 11.* | | [10] | Strom et al. (2018). MITRE ATT&CK design. *MITRE MTR180035.* | | [11] | OASIS (2021). STIX 2.1 / TAXII 2.1 标准. | | [12] | Schlette et al. (2021). CTI platform comparison. *IEEE Comms Surveys 23(4).* | | [13] | Humphreys et al. (2008). GPS civilian spoofing. *ION GNSS 2008.* | | [21] | Mavroeidis & Bromander (2017). CTI ontology for CPS. *EISIC 2017.* | | [23] | Hevner et al. (2004). Design Science in IS Research. *MIS Quarterly 28(1).* | ## 架构概览 ``` ┌──────────────────────────────────────────────────────────────────┐ │ ISOLATED UAV CYBER RANGE (192.168.100.0/24) │ │ │ │ ┌─────────────────┐ ┌────────────────┐ ┌──────────────────┐ │ │ │ UAV SIMULATION │ │ MONITORING │ │ CTI / SecOps │ │ │ │ .60 │ │ .30 │ │ .50 │ │ │ │ ArduPilot SITL │ │ Suricata 6.x │ │ OpenCTI 5.12 │ │ │ │ MAVProxy 1.8 │◄─┤ Zeek 5.x │ │ MISP 2.4 │ │ │ │ QGroundControl │ │ Arkime │ │ TheHive 5 │ │ │ │ MAVLink Router │ │ ntopng │ │ Cortex 3 │ │ │ └─────────────────┘ └────────────────┘ └──────────────────┘ │ │ │ │ ┌─────────────────┐ ┌────────────────┐ ┌──────────────────┐ │ │ │ GCS LINUX │ │ SIEM │ │ SANDBOX │ │ │ │ .11 │ │ .40 │ │ .70 (isolated) │ │ │ │ MAVProxy │ │ Elasticsearch │ │ Cuckoo 2.0 │ │ │ │ DroneKit-Py │ │ Kibana 8.12 │ │ CAPE │ │ │ │ Mission Plnr │ │ Logstash │ │ Malware Analysis│ │ │ └─────────────────┘ └────────────────┘ └──────────────────┘ │ │ │ │ ┌──────────────────────────────────────────────────────────────┐ │ │ │ SDR RF BENCH (Shielded Faraday Enclosure — FCC Compliant) │ │ │ │ USRP B210 ×2 | HackRF One ×3 | GNU Radio 3.10 │ │ │ │ GPS-SDR-SIM | gr-osmosdr | gr-ieee802-11 │ │ │ └──────────────────────────────────────────────────────────────┘ │ └──────────────────────────────────────────────────────────────────┘ ``` ## 快速开始 ### 选项 A — 仅使用 Docker Compose (约 15 分钟) ``` git clone https://github.com/[org]/uav-cti-lab.git cd uav-cti-lab cp .env.example .env # 编辑 .env — 更改所有默认密码 cd docker docker compose -f stacks/cti.yml \ -f stacks/monitor.yml \ -f stacks/uav.yml up -d ``` ### 选项 B — 完整虚拟机 + Docker (约 60 分钟) ``` # 要求:Ubuntu 22.04 host, KVM, Vagrant 2.3+, Ansible 2.14+, Docker 24+ sudo bash scripts/bootstrap.sh vagrant up cd docker docker compose -f stacks/cti.yml \ -f stacks/monitor.yml \ -f stacks/uav.yml up -d # 运行安装后配置 ansible-playbook ansible/playbooks/post-install.yml ``` ## 服务端点 (部署后) | 服务 | URL | 用途 | |------|-----|------| | OpenCTI | http://localhost:8080 | CTI 平台与 IoC 管理 | | MISP | http://localhost:8090 | 威胁情报共享 | | TheHive | http://localhost:9000 | 事件案例管理 | | Cortex | http://localhost:9001 | 自动化威胁分析 | | Kibana | http://localhost:5601 | SIEM 仪表板与规则 | | Grafana | http://localhost:3001 | 指标与运维仪表板 | | ntopng | http://localhost:3000 | 网络流量分析 | | Arkime | http://localhost:8005 | 全流量包捕获 | | RabbitMQ | http://localhost:15672 | 消息代理 (OpenCTI) | ## 目录结构 ``` uav-cti-lab/ ├── README.md # This file ├── .env.example # Environment variable template ├── Vagrantfile # VM definitions (6 VMs) ├── vagrant/provision/ # VM bootstrap shell scripts ├── ansible/ │ ├── inventories/lab.ini # Vagrant host definitions │ ├── playbooks/ # Top-level Ansible plays │ └── roles/ # Per-VM configuration roles │ ├── common/ # Shared: Docker, hardening │ ├── gcs-linux/ # MAVProxy, DroneKit, GCS tools │ ├── ids-monitor/ # Suricata, Zeek, Arkime │ ├── cti-platform/ # OpenCTI, MISP, TheHive │ ├── siem/ # Elasticsearch, Kibana, Logstash │ └── uav-sim/ # ArduPilot SITL, MAVLink Router ├── docker/ │ ├── stacks/ │ │ ├── cti.yml # OpenCTI + MISP + TheHive stack │ │ ├── monitor.yml # Suricata + Zeek + Elastic stack │ │ └── uav.yml # ArduPilot SITL + MAVLink services │ └── configs/ │ ├── suricata/rules/ # 47 custom UAV detection rules │ ├── zeek/scripts/ # MAVLink protocol analyzer │ ├── elastic/detection-rules/ # 23 KQL SIEM rules │ ├── logstash/pipelines/ # Log ingestion pipelines │ └── opencti/ # CTI platform config ├── scripts/ │ ├── bootstrap.sh # Host prerequisite installer │ ├── cti/ # IoC ingest & enrichment │ │ ├── ingest_feeds.py # Pull OTX, CISA, VirusTotal feeds │ │ ├── stix_uav_objects.py # UAV-specific STIX SDO builder │ │ └── cti_to_suricata.py # Export IoCs → Suricata rules │ ├── detection/ │ │ ├── mavlink_ids.py # MAVLink intrusion detection service │ │ └── gps_anomaly_monitor.py # GPS spoofing detection │ └── analysis/ │ ├── experiment_runner.py # Automated detection evaluation │ └── results_report.py # Generate metrics report └── docs/ └── citations/ └── references.bib # BibTeX bibliography ``` # uav-cti-lab
标签:ATT&CK框架, CTI管道, GPS欺骗攻击, MAVLink协议, Metaprompt, STIX标准, TAXII协议, UAV威胁情报, UAV攻击面, URL发现, 仿真环境, 入侵防御, 威胁分析, 威胁情报, 安全实验, 安全检测, 射频安全, 屏蔽环境, 工业控制系统安全, 库, 应急响应, 开发者工具, 异常检测, 恶意软件防御, 情报共享, 控制协议漏洞, 攻击模拟, 无人机安全, 物联网安全, 系统提示词, 网络安全, 网络攻击防御, 自动化侦查工具, 设计科学, 请求拦截, 越狱测试, 逆向工具, 隐私保护, 驱动签名利用