Un hackeo permite el secuestro de drones a través del protocolo ‘ExpressLRS’

Un sistema de control de radio para drones es vulnerable a la toma remota, gracias a una debilidad en el mecanismo que une el transmisor y el receptor.

El popular protocolo para aviones controlados por radio (RC) llamado ExpressLRS se puede piratear en solo unos pocos pasos, según un boletín publicado la semana pasada.

ExpressLRS es un enlace de radio de largo alcance de código abierto para aplicaciones RC, como drones con vista en primera persona (FPV). “Diseñado para ser el mejor enlace de FPV Racing”, escribieron sus autores en Github . Según el informe, el truco utiliza “una estructura de paquetes por aire altamente optimizada, que brinda ventajas simultáneas de rango y latencia”.

La vulnerabilidad en el protocolo está ligada al hecho de que parte de la información enviada a través de paquetes por aire son datos de enlace que un tercero puede usar para secuestrar la conexión entre el operador del dron y el dron.

Cualquiera con la capacidad de monitorear el tráfico entre un transmisor y un receptor ExpressLRS puede secuestrar la comunicación, lo que “podría resultar en un control total sobre la nave objetivo. Es probable que un avión que ya está en el aire experimente problemas de control que provoquen un accidente”.

Debilidad en el protocolo de drones 

El protocolo ExpressLRS utiliza lo que se llama una “frase vinculante”, un tipo de identificador que garantiza que el transmisor correcto se comunique con el receptor correcto. La frase está encriptada con MD5, un algoritmo hash que se ha considerado roto (PDF) durante casi una década. Como se señala en el boletín, “la frase vinculante no es por seguridad, es anticolisión”, y las debilidades de seguridad asociadas con la frase podrían permitir que un atacante “extraiga parte del identificador compartido entre el receptor y el transmisor”.

El núcleo del problema está relacionado con los “paquetes de sincronización”: datos que se comunican entre el transmisor y el receptor a intervalos regulares para garantizar que estén sincronizados. Estos paquetes filtran gran parte del identificador único (UID) de la frase vinculante, específicamente, “el 75% de los bytes necesarios para tomar el control del enlace”.

Eso deja solo el 25%, solo un byte de datos, abierto. En este punto, explicó el autor del informe, el bit restante del UID puede forzarse por fuerza bruta o recopilarse “mediante la observación de paquetes por aire sin forzar las secuencias por fuerza bruta, pero esto puede llevar más tiempo y ser propenso a errores”.

Si un atacante tiene el UID en la mano, puede conectarse con el receptor, el avión objetivo, y tomar al menos un control parcial sobre él.

El autor del boletín recomendó que se tomaran las siguientes acciones para reparar las vulnerabilidades en ExpressLRS. No envíe el UID a través del enlace de control. Los datos utilizados para generar la secuencia FHSS no deben enviarse por aire. Mejorar el generador de números aleatorios. Esto podría implicar el uso de un algoritmo más seguro o el ajuste del algoritmo existente para evitar secuencias repetidas.

Fuente: threatpost