Eintauchen in die Benutzerterminal-Firmware von Starlink
HeimHeim > Blog > Eintauchen in die Benutzerterminal-Firmware von Starlink

Eintauchen in die Benutzerterminal-Firmware von Starlink

Jun 17, 2023

Der durchschnittliche Starlink-Benutzer verbringt wahrscheinlich nicht viel Zeit damit, über seine Hardware nachzudenken, nachdem er die Schüssel ausgerichtet und die Verkabelung verlegt hat. Für Sicherheitsforscher ist es jedoch ein weiteres faszinierendes Gerät, an dem man herumbasteln kann, wenn man die Firmware zurückentwickelt und versucht, sowohl herauszufinden, was sie antreibt, als auch, wie man sie kaputt macht. Dies ist im Wesentlichen das Thema des Artikels von [Carlo Ramponi] bei Quarkslab, in dem er sich mit der Firmware-Architektur und möglichen Schwachstellen in ihrer internen Kommunikation befasst.

Die Hardware des Benutzerterminals selbst ist ein recht standardmäßiger AArch64 ARM-basierter SoC, zusammen mit der proprietären Kommunikationsschnittstelle, die allesamt von der Linux-basierten Firmware gesteuert wird. Das Dumping der Firmware selbst wurde dank der bestehenden Arbeiten von Forschern der KU Leuven, bei denen es um das Dumping des Inhalts des integrierten eMMC-Speichers ging, vereinfacht. Anschließend konnte die Firmware-Architektur analysiert werden. Es stellte sich heraus, dass sie hauptsächlich aus C++-basierten Binärdateien bestand, jedoch mit einer einzigen großen Binärdatei für das Benutzer-Frontend, die in Go geschrieben war.

Die Kommunikation zwischen diesen Prozessen wird über ein benutzerdefiniertes prozessübergreifendes Protokoll namens „Slate Sharing“ abgewickelt, das alles über den Kernprozess „User Terminal Control“ koordiniert wird. Es sind diese Slate IPC-Nachrichten, die die wahrscheinlichste Angriffsfläche für einen Fuzzing-Angriff bilden, wobei der Befehl SoftwareUpdateRequest ein interessantes Ziel darstellt, da er scheinbar keine Authentifizierung erfordert, da er sich nicht an einen bestimmten Benutzer richtet. Diese Arbeit ist Teil der Masterarbeit von [Carlo] und soll die Grundlage für weitere Forschungen zur Firmware des Starlink-Benutzerterminals bilden.