- El terminal de usuario de Starlink de SpaceX es el hardware clave para la conexión a internet satelital en órbita terrestre baja
- Al desmontar el terminal de usuario, se observa que los componentes principales son el frontend de radiofrecuencia (RF) y un SoC de diseño propio
- El análisis del firmware muestra que la mayor parte del software clave incluye procesamiento de red en espacio de usuario con bypass del kernel y algunas funciones criptográficas
- El chip de seguridad STSAFE-A110 actúa como una raíz de confianza adicional, además de proporcionar cifrado de datos e identificación única
- Este terminal incluye múltiples configuraciones de claves públicas SSH y una sospechosa herramienta de registro de paquetes, pero no se encontraron indicios de violación de la privacidad del usuario
Resumen general
- Starlink es un servicio de internet satelital de órbita terrestre baja ofrecido por SpaceX
- Los usuarios se conectan a satélites cercanos mediante el terminal, que a su vez se enlaza a internet a través de gateways terrestres
- Los satélites de nueva generación usan enlaces láser para comunicarse entre sí, lo que contribuye a mejorar la cobertura global y la eficiencia
- Incluso sin un gateway local, como en el caso de Ucrania, el terminal de Starlink puede acceder a internet usando gateways de países vecinos
- Este artículo repasa brevemente la investigación en profundidad de DARKNAVY sobre el terminal de usuario de Starlink
Análisis de hardware
- Un terminal de usuario de Starlink se compone de dos partes: el router y la antena (UTA)
- DARKNAVY compró en Singapur un terminal Standard Actuated (Rev3, GenV2) y desmontó la antena
- El desmontaje mostró que los chips del frontend RF (principalmente fabricados por STMicroelectronics) ocupaban una parte considerable de la tarjeta
- En el área de control principal se integra un SoC ST personalizado exclusivo de SpaceX (quad-core Cortex-A53), pero la información de su datasheet no es pública
- En Black Hat USA 2022, el Dr. Lennert Wouters de KU Leuven presentó un caso exitoso de hackeo del terminal de primera generación (GenV1), y posteriormente SpaceX deshabilitó la interfaz de depuración UART mediante una actualización de firmware
- Sin embargo, también hubo nuevos casos exitosos de evasión de seguridad por métodos adicionales
Extracción y análisis del firmware
- DARKNAVY volcó directamente el firmware desde el chip eMMC
- Como la placa Rev3 no tiene pines de depuración eMMC dedicados, se usó el método de retirar el eMMC y extraer los datos con un programador
- La mayor parte del firmware no estaba cifrada, por lo que quedaron expuestos la cadena de arranque (excepto BootROM), el kernel y parte del sistema de archivos
- Después del arranque del kernel, el entorno de ejecución se descomprime y se usa desde /sx/local/runtime
bin contiene los ejecutables del software de Starlink, dat los archivos de configuración y revision_info la información de versión
- El programa de comunicación principal,
user_terminal_frontend, está desarrollado en Go, mientras que la mayoría del resto son binarios estáticos de C++ sin símbolos
- La arquitectura del stack de red es similar a DPDK, donde los programas en espacio de usuario procesan los paquetes evitando el kernel
- El kernel de Linux se usa principalmente para controladores de hardware y gestión de procesos
- Parte del software incluye funciones diseñadas originalmente para satélites o gateways
- Al arrancar el dispositivo, este identifica su tipo a través de los periféricos de hardware y luego carga solo la lógica correspondiente
Emulación
- Para un análisis continuo, se construyó un entorno de emulación del firmware Rev3 basado en QEMU
- En este entorno se logró ejecutar y depurar algunos servicios expuestos, como
httpd, WebSocket y gRPC
- Esto permitió rastrear el funcionamiento de los principales ejecutables y servicios
Chip de seguridad
- Además del SoC principal, existe un chip de seguridad STSAFE-A110, que afirma contar con certificación CC EAL5+
- Este chip puede adquirirse bajo NDA, y el programa stsafe_cli del firmware interactúa con él
- El análisis mostró que las funciones proporcionadas por el chip STSAFE incluyen asignación de UUID único del dispositivo, gestión del certificado de clave pública (stsafe_leaf.pem) y derivación de claves simétricas
- Este chip funciona como una raíz de confianza adicional separada del arranque seguro del SoC, en línea con los estándares modernos de diseño de seguridad embebida
Huevo de Pascua: ¿Elon te está vigilando?
- Durante el análisis se identificó un programa llamado Ethernet Data Recorder, lo que generó dudas sobre una posible puerta trasera
- Este programa parece tener funciones de registro de paquetes y captura determinados paquetes mediante un mecanismo similar a pcap_filter
- Al revisar las reglas, se puede ver que los objetivos de captura son principalmente paquetes UDP relacionados con telemetría satelital
- El tráfico capturado se almacena cifrado con una clave de hardware del SoC
- Hasta el momento no se ha encontrado evidencia de recopilación de datos de privacidad del usuario
- Durante el proceso de inicialización, si el dispositivo es reconocido como terminal de usuario, se escriben 41 claves públicas SSH en /root/.ssh/authorized_keys, y el puerto 22 permanece siempre abierto en la red local
- Llama la atención que un producto comercial tenga registradas múltiples claves públicas de origen desconocido
Conclusión y perspectivas
- A medida que la tecnología satelital se aplica a diversos sectores industriales, se espera que los componentes de sistemas de internet satelital como Starlink se conviertan en un campo de batalla clave para futuros ataques y defensas de seguridad
- Debido a la naturaleza de la seguridad espacial, un solo error puede provocar una pérdida permanente de comunicación con el objetivo, por lo que se requiere un enfoque cuidadoso
1 comentarios
Comentarios en Hacker News
/root/.ssh/authorized_keys, y además el puerto 22 siempre queda abierto en la red local. Eso hace preguntarse qué sentido tiene usar tantas claves y, al final, quién no tiene acceso root a una terminal de usuario que "te pertenece".authorized_keys: una mezcla de varias yubikey de mi laptop, claves del iPad y del iPhone, y claves del Secure Enclave de la Mac. Me imagino que Starlink debe tener al menos 1 o 2 administradores de sistemas más, así que 100 claves públicas tampoco suena tan raro.keming.