Profundizando en el firmware del terminal de usuario de Starlink
HogarHogar > Blog > Profundizando en el firmware del terminal de usuario de Starlink

Profundizando en el firmware del terminal de usuario de Starlink

Jun 17, 2023

El usuario promedio de Starlink probablemente no pasa mucho tiempo pensando en su hardware después de alinear la antena y tender el cableado. Para los investigadores de seguridad, sin embargo, es otro dispositivo fascinante con el que jugar mientras realizan ingeniería inversa en el firmware e intentan descubrir qué lo activa y cómo romperlo. Este es esencialmente el tema del artículo de [Carlo Ramponi] en Quarkslab mientras profundiza en la arquitectura del firmware y las posibles debilidades en su comunicación interna.

El hardware del terminal de usuario en sí es un SoC basado en ARM AArch64 bastante estándar, junto con la interfaz de comunicación patentada, todo lo cual está controlado por el firmware basado en Linux. La descarga del firmware en sí fue fácil gracias al trabajo existente realizado por investigadores de KU Leuven, que implicaba la descarga del contenido del almacenamiento eMMC integrado. Después de esto, se pudo analizar la arquitectura del firmware, que resultó estar compuesta principalmente por binarios basados ​​en C++, pero con un único binario grande para la interfaz del usuario escrito en Go.

La comunicación entre estos procesos se maneja a través de un protocolo personalizado entre procesos llamado 'Slate Sharing', todo el cual se coordina a través del proceso central de Control de terminal de usuario. Son estos mensajes de Slate IPC los que forman la superficie de ataque más probable para un ataque fuzzing, siendo el comando SoftwareUpdateRequest un objetivo interesante ya que parece no requerir autenticación ya que no se dirige a un usuario específico. Este trabajo es parte de la tesis de maestría de [Carlo] y debería formar la base de futuras investigaciones sobre el firmware de la terminal de usuario Starlink.