无人机后门技术调研与确认
参考文献:
1.http://playground.arduino.cc/Main/WhatIsDegreesOfFreedom6DOF9DOF10DOF11DOF
2. http://garage4hackers.com/entry.php?b=3105
1. 无人机后门技术产生背景
无人驾驶飞机简称“无人机”,是利用无线电遥控设备和自备的程序控制装置操纵的不载人飞机。机上无驾驶舱,但安装有自动驾驶仪、程序控制装置等设备。地面、舰艇上或母机遥控站人员通过雷达等设备,对其进行跟踪、定位、遥控、遥测和数字传输。可在无线电遥控下像普通飞机一样起飞或用助推火箭发射升空,也可由母机带到空中投放飞行。回收时,可用与普通飞机着陆过程一样的方式自动着陆,也可通过遥控用降落伞或拦网回收。可反覆使用多次。广泛用于空中侦察、监视、通信、反潜、电子干扰等。
2. 漏洞概述
漏洞机型:Parrot AR无人机
漏洞功能:1.Maldrone将获得静默安装在无人驾驶飞机中。
2.交互与所述设备驱动程序和传感器静默监听。
3.使用控制器远程控制无人机。
4.可以从无人机控制者手中获取控制无人机的权限。
5.可以蔓延到其他无人机
备注1:可以对Maldrone进行静默安装的研究
可以对交互与所述设备驱动程序和传感器静默监听
可以对控制器远程控制无人机
可以从无人机控制者手中获取控制无人机的权限
使用1:软件这块使用
漏洞原理:
这个无人机控制器程序program.elf是在导航模板调用串口的时候使用.
以下是相关进程对应的功能接口:
1 2 3 4 5 6 7 8 9 10 |
/dev/ttyO0 —> rotors and leds /dev/ttyO1 —> Nav board /dev/ttyPA1 — > Motor driver /dev/ttyPA2 —> accelerometer, gyrometer, and sonar sensors /dev/video0 --> /dev/video1 — > video4linux2 devices /dev/i2c-0 /dev/i2c-1 /dev/i2c-2 /dev/usb-i2c |
program.elf编程使用linux系统调用开放读取设备。从中劫持用了无人机各驱动组件控制层面的命令,然后由控制程序来调用,这样实现了接管无人机的过程。
3. 漏洞步骤:
Step 1: Kills program.elf
Step 2: Setup a proxy serial port for navboardand others.
Step 3: Redirect actual serial portcommunication to fake ports
Step 4: patch program.elf and make it open ourproxy serial ports.
Step 5: Maldrone communicates to serial portsdirectly
步骤1:杀死program.elf
步骤2:设置为navboard和其他代理的串行端口。
步骤3:将实际的串口通信重定向到假端口。
步骤4:补丁program.elf使开放我们的代理串行端口。
步骤5:maldrone串口直接通信