Autor del artículo
Daniel Cepeda
Artículos escritos
45

Cómo secuestrar un dron. Técnicas para secuestrar el control de los helicópteros

A medida que evoluciona la Internet de los objetos, también evolucionan las técnicas de piratería de los dispositivos inteligentes. Ya hay todo un zoo de troyanos del IoT, pero los routers, decodificadores y cámaras IP no son los únicos dispositivos inteligentes del mercado.

Los drones son especialmente interesantes desde el punto de vista de la seguridad de la información: mucha gente sueña con aprender a pilotar la aeronave de otra persona.

¿Hay formas de “robar” drones? 

Averigüémoslo.

Volver a la historia

Los gobiernos gastan millones de dólares cada año para combatir los drones y regular su uso, pero sin mucho éxito.

Un ejemplo reciente y notorio fue la paralización del funcionamiento del aeropuerto británico de Gatwick durante varios días después de que un ataque con drones obligara al gobierno a traer francotiradores para solucionar el problema.

con cámaras drones

No importa que los funcionarios del gobierno se molesten por los drones con cámara que se abalanzan sobre sus fincas y meten sus molestos objetivos de cámara en la vida privada de la gente.

Eh, si hubiera una forma fiable de interceptar el control de los drones, el ansiado sueño de muchos estadistas se haría realidad.

¿O acaso existe ese método?

Si las cosas fueran tan sencillas como parecen, los funcionarios del gobierno no estarían inventando formas ingeniosas de hacer frente a las faltas electrónicas voladoras, como entrenar halcones de caza, desarrollar interceptores de drones en red y crear otros cañones electromagnéticos.

Pero si analizamos el problema desde el punto de vista de la ingeniería, cualquier helicóptero es fundamentalmente un dispositivo electrónico con control remoto, lo que significa que el enlace de radio que transmite los comandos de control podría, en teoría, verse comprometido.

La única duda es la dificultad de conseguir este objetivo, pero como dicen, ninguna fortaleza está fuera del alcance de los hambrientos hackers.

Para empezar, sugiero separar los insectos de dos alas de los platos de carne picada.

Cuando se trata de juguetes de céntimo de Aliexpress, cuyos mandos a distancia no utilizan autorización al conectarse al receptor, el “secuestro” no es técnicamente difícil.

Si inmediatamente después de encender el helicóptero o conectar su batería, en el momento en que el LED del dron parpadea rápidamente y el dispositivo está en modo de búsqueda de transmisores, el primero en encender un transmisor similar cercano (cuando se utilizan los mandos “universales” todavía tiene que pulsar el botón Bind), es probable que el dron se “enganche” a él y “pierda” el original.

Pero si hablamos de tecnología más o menos seria, la situación es mucho más complicada.

Bajo el capó

 drones con cámaras

Muchas aeronaves pilotadas a distancia (así como los juguetes de radiocontrol) utilizan el protocolo DSM2/DSMX para el intercambio de datos, con la tecnología SLT como alternativa habitual.

El DSM se utiliza en los transmisores de banda ancha de 2,4 GHz y se considera que está bien protegido de las interferencias accidentales en el canal de radio. Este protocolo permite almacenar los datos de vuelo en un archivo de registro.

El DSM2 admite la detección de cortes de señal (por ejemplo, debido a un fallo de alimentación) y el DSMX no, pero los dos estándares son compatibles.

SLT opera en la misma frecuencia y es compatible con transmisores de diferentes fabricantes, pero el hardware “nativo” es Tactic e Hitec.

Otro protocolo soportado por algunos drones, llamado MAVlink, se utiliza a menudo para la telemetría. MAVlink es de código abierto, implementado como un módulo de Python y distribuido bajo la licencia LGPL. Este protocolo no utiliza el cifrado por defecto cuando se comunica y, por lo tanto, es teóricamente más vulnerable a los ataques que las tecnologías de la competencia que sí tienen esta característica.

Varios copters, que pueden controlarse desde cualquier smartphone moderno, utilizan redes inalámbricas 802.11 con cifrado WEP como medio de transmisión.

Se ha escrito mucho sobre la seguridad del Wi-Fi en detalle, así que no tiene sentido repetirse.

Hackear una red de este tipo puede considerarse un procedimiento rutinario, y el arsenal de técnicas disponibles para hacerlo es bastante amplio.

Robar en sesenta segundos

En primer lugar, hablemos de los drones que operan a través de una red inalámbrica.

El motivo por el que los creadores de los helicópteros decidieron utilizar el algoritmo de cifrado WEP, a prueba de manipulaciones, en lugar del más común WPA/WPA2 es un misterio, pero lo más probable es que tenga que ver con la velocidad de transmisión y procesamiento de datos por parte de los equipos de la aeronave.

Una cosa es que la red local se atasque de repente, y otra muy distinta que se atasque el enlace de comunicación con el dron que vuela a diez metros por encima del jardín de otra persona.

Las consecuencias serán completamente diferentes.

Como cualquier otro dispositivo de este tipo, un helicóptero con Wi-Fi a bordo tiene un adaptador de red con una dirección MAC por la que puede ser identificado. Así es como funcionan, por ejemplo, las máquinas voladoras de Parrot. En este caso, el smartphone con la app instalada sirve de mando a distancia, desde el que el dron recibe órdenes.

Para identificar el dispositivo de control, se utiliza una clave de identificación, una etiqueta única “ligada” a la aplicación instalada en el smartphone (software de control de vuelo) y a la sesión actual.

El principio del hackeo es sencillo: un atacante se conecta a la red del dron, identifica la etiqueta única y, a continuación, envía al helicóptero una orden que hace que se desconecte del dispositivo de control actual y comience a recibir órdenes del smartphone del atacante con la etiqueta “copiada” del dispositivo original.

Hay formas de "robar" drones

En la práctica, se utilizó la aplicación Aircrack-ng para hackear la red de drones.

Supervisa las ondas aéreas en busca de redes Wi-Fi protegidas, intercepta los paquetes y exporta los datos de los mismos para su posterior análisis, además de utilizar varios algoritmos de ataque a la red. Los detalles de sus funciones se describen en el sitio web del fabricante.

Sin embargo, no basta con hackear la red; también hay que interceptar los datos transmitidos entre el dron y el operador.

Un ejemplo de este tipo de secuestro lo demostró un tipo llamado Samy Kamkar, que construyó un dispositivo especial basado en un ordenador de placa única Raspberry Pi y grabó en vídeo sus experimentos.

La esencia de su método, en pocas palabras, es la siguiente.

Utilizó una Raspberry Pi con un adaptador Wi-Fi conectado al puerto USB y un adaptador de red externo Alfa AWUS036H. La placa única se alimentaba con baterías a través de un micro USB y se utilizaba como escáner, sondeando las ondas aéreas e identificando las direcciones MAC de los dispositivos conectados a las redes inalámbricas.

El truco es que todos los copters fabricados por Parrot utilizan direcciones MAC similares de la misma unidad, cuyos detalles se pueden encontrar en fuentes públicas.

Al cotejar la dirección con este rango, se puede determinar inequívocamente que se trata de un dron Parrot y no de un ingenioso cortador de pan u olla a presión con interfaz de red.

En este experimento, utilizamos el cliente node-ar-drone, escrito en Node.js y diseñado para trabajar con los copters Parrot AR Drone 2.0.

El código fuente de esta biblioteca puede encontrarse en GitHub.

Node-ar-drone te permite interactuar con los drones de Parrot mediante comandos de JavaScript: cambiar la dirección y la altitud de vuelo, obtener secuencias de vídeo o tomas de la cámara del helicóptero, y hacer otras cosas divertidas con él.

drones con cámaras

Samy Kamkar añadió una Raspberry Pi a su propio cuadricóptero y lo lanzó en busca de otros drones Parrot. Una vez detectada la red de ese dron, nuestro investigador la hackeó con Aircrack-ng, estableció una conexión con el dron “enemigo” y luego utilizó node-ar-drone para interceptar el flujo de vídeo procedente del helicóptero. Así, podía ver todo lo que entraba en el campo de visión de la cámara del dron hackeado, pero en este experimento no se implementó ningún control sobre el vuelo del dron.

Los chicos de Positive Technologies pusieron en práctica el secuestro del cuadricóptero Syma de forma similar.

La idea básica era la misma: una Raspberry Pi como escáner de canales, lo que permite rastrear todos los transmisores que funcionan cerca y capturar la identificación única del dron.

Todo el sistema de seguridad del protocolo de control utilizado por los drones Syma se basa en este identificador. Si se introduce este identificador en el programa que emula el mando a distancia, se podrá controlar el dron.

Tras ejecutar el emulador conectado al transmisor de señales HF, el dron se conecta a dos paneles de control simultáneamente: el real, que está en manos del piloto RC, y el falso, respondiendo el dron a las órdenes de ambos paneles.

La esencia del hackeo es que el programa de control remoto de un intruso puede enviar órdenes de control al dron con el doble de frecuencia que el control remoto original.

Si, por ejemplo, el operador ordena al dron que descienda, el intruso puede recibir dos órdenes de aumentar la velocidad en la misma unidad de tiempo discreta.

El dron las procesará todas obedientemente, pero la acción resultante será escalar, ya que hay más directivas de este tipo.

Utilizando esta ingeniosa característica de ejecutar los comandos de uno en uno, el secuestrador puede llevar el dron más allá del alcance del mando a distancia original y aterrizarlo con seguridad en una zona boscosa cercana.

Juguetes grandes

Hay formas de "robar" drones

La sección anterior trataba de máquinas voladoras baratas y bastante sencillas. Pero, ¿qué pasa con los vehículos “serios” que utilizan la encriptación o los drones que transfieren datos mediante protocolos DSM2/DSMX o SLT sin necesidad de smartphones? ¿Es posible secuestrar el control de, por ejemplo, los productos de DJI?

Aquí, como les gusta decir a algunas chicas, las cosas se complican.

  1. En primer lugar, los fabricantes intentan encriptar no sólo literalmente, sino también figuradamente, por ejemplo, borrando las marcas de los microchips instalados en los receptores y transmisores, aunque los entendidos saben muy bien qué chips se utilizan allí.
  2. En segundo lugar, aunque todos los transmisores de este tipo funcionan con un conjunto específico de frecuencias, la frecuencia cambia automáticamente en intervalos de dos milisegundos, lo que significa que cada segundo el helicóptero pasa de una frecuencia a otra unas 500 veces.
  3. En tercer lugar, todos los comandos transmitidos por el canal de control se mezclan con datos pseudoaleatorios, por lo que incluso si se “oye” una señal de un dron de este tipo en el aire, sería muy difícil falsificarla.

Por supuesto, en teoría es posible: hay que descargar el firmware del dron, desensamblarlo, averiguar el algoritmo utilizado para cambiar las frecuencias y generar “ruido” digital, y luego escribir un emulador…

También se pueden utilizar las vulnerabilidades de los protocolos, si es que se pueden encontrar.

La mayor perspectiva desde este punto de vista es el protocolo MAVlink, porque las fuentes están disponibles para él (excepto para los componentes propietarios) y un montón de documentación.

Pero el esfuerzo y el coste de los nervios en este caso puede ser desproporcionado con respecto al resultado obtenido.

Si el objetivo principal no es robar un helicóptero, sino simplemente impedir que sobrevuele un determinado punto geográfico, los servicios secretos llevan tiempo utilizando métodos más sencillos, como la suplantación del GPS.

Los dispositivos utilizados para la suplantación del GPS interfieren en las señales de los satélites de navegación y transmiten su propia señal en el aire, emitiendo coordenadas falsas al dispositivo receptor.

Esto hace que el dispositivo piense que está en las cercanías del aeropuerto más cercano.

El firmware de la mayoría de los drones tiene prohibido sobrevolar puertos aéreos civiles, por lo que al acercarse a un aeropuerto el dron aterriza automáticamente o intenta sobrevolarlo.

Las agencias de inteligencia planean proteger de forma fiable a los VIP de un ataque sorpresa desde el aire.

con cámaras drones

Cabe señalar que estos temores no son infundados: el año pasado, por ejemplo, unos delincuentes rellenaron un dron con explosivos para llevar a cabo un intento (fallido) de asesinato del presidente venezolano Nicolás Maduro.

Y en Siria, los militantes llevan tiempo utilizando drones baratos para atacar infraestructuras militares.

En cambio, en Gatwick, los helicópteros de los atacantes volaron durante horas sobre las pistas de aterrizaje y las calles de rodaje y lo hicieron bien…

Cabe destacar que el coste de los radiotransmisores programables, que se pueden utilizar para interferir o manipular la señal del GPS, es relativamente bajo hoy en día, ya que sólo cuestan unos cientos de dólares, y todo lo que se necesita se puede comprar en línea.

Además, incluso para los helicópteros “profesionales” son absolutamente innecesarios los inhibidores demasiado potentes: hay casos en los que drones grandes como Phantom se “pierden” cerca de las antenas de las estaciones base de los operadores de telefonía móvil o de las líneas eléctricas de alta tensión.

Si un dron entra en el radio de acción de un inhibidor de este tipo, es muy probable que vaya a la deriva con el viento y, debido a la falta de señal de los satélites de navegación, no podrá determinar correctamente su posición actual para poder regresar al punto de partida. Además, como se dice, las variaciones son posibles.

Conclusiones

Entonces, ¿es posible secuestrar un dron?

Como vemos, es posible, ya que técnicamente no hay obstáculos insalvables.

Sin embargo, todo depende, por supuesto, del propio dispositivo, del software que utilice y de los protocolos de transferencia de datos.

En cualquier caso, entre todos los trucos de alta tecnología, un tirachinas común suele ser mucho más eficaz contra los helicópteros; sólo hay que elegir la roca adecuada desde el punto de vista aerodinámico.

Anteriormente
HackingCómo evitar el bloqueo de la aplicación en un dispositivo Android sin contraseña
Siguiente
HackingCómo se puede instalar Windows 11 en ordenadores no compatibles
Malas.
0
Bien.
0
Genial.
1
Añade un comentario