Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/kuleuven-cosic/starlink-fi
Embedded-System-SicherheitExploitationReverse EngineeringHardware-HackingHardware-SicherheitBinäranalyseFirmware-Analyse
GitHubkuleuven-cosic/starlink-fi

Starlink-FI

Modchip zur Spannungs-Fehlerinjektion für die Black-Box-Sicherheitsbewertung von Starlink-Terminals, der die Signaturprüfung des Bootloaders umgeht, um beliebige Firmware auszuführen.

Repository anzeigen
1.0k1365vor 3 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Starlink-Benutzerterminal-Modchip

Dieses Repository begleitet den Vortrag mit dem Titel "Glitched on Earth by Humans: A Black-Box Security Evaluation of the SpaceX Starlink User Terminal". Die Folien sind hier verfügbar, eine Aufzeichnung des Vortrags sollte bald verfügbar sein.

Der Vortrag beschreibt, wie wir mithilfe eines eigenen Modchips, der Spannungs-Fault-Injection durchführt, beliebigen Code auf dem Starlink-Benutzerterminal ausführen konnten. Der Modchip kann verwendet werden, um die Signaturprüfung während der Ausführung des ROM-Bootloaders (BL1) des System-on-Chip (SoC) zu umgehen. Dies ermöglicht die Ausführung von beliebigem Code auf dem SoC ab BL2 und erlaubt es, das Starlink-Benutzerterminal und die Netzwerkseite des Systems weiter zu untersuchen. Wir stellen das Modchip-Design zur Verfügung, damit andere Forscher auf unserer Arbeit aufbauen können.

🚨 NUTZUNG AUF EIGENE GEFAHR 🚨

Auch wenn wir das bereitgestellte Modchip-Design getestet haben und verwenden, kann die Verwendung dieses Modchips zu dauerhaften Schäden an einem Benutzerterminal führen. Ebenso kann das Zerlegen des Benutzerterminals zu dauerhaften Schäden führen und führt mit hoher Wahrscheinlichkeit zum Verlust Ihrer Garantie.

Überblick über das Modchip-Design

Der Modchip wird von einem RP2040-Mikrocontroller gesteuert, der auf der eMMC-D0-Leitung auslöst und zwei Impulse mit einem (programmierbaren) Verzögerungs- und Offset-Wert für den MOSFET-Treiber erzeugt. Einer dieser Impulse steuert den Glitch-MOSFET; wenn das Gate dieses MOSFET auf High gelegt wird, wird die Kernspannungsversorgung des SoC mit Masse kurzgeschlossen. Der zweite vom RP2040 erzeugte Impuls steuert zwei MOSFETs, die zwei Kondensatorbänke zu- und abschalten können. Diese Kondensatoren sind erforderlich, damit das UT vollständig booten kann, aber die Kondensatorbänke dürfen während des Spannungs-Glitches nicht aktiviert sein, da dies den gewünschten Fehler verhindern würde.

Der Schaltplan und die Gerber-Dateien zur Herstellung eines eigenen Modchips sind hier verfügbar.

Modchip-Übersicht

Voraussetzungen

  • Zerlegen Sie Ihr UT. Brechen Sie hier ab, wenn Sie Ihre UT-Garantie nicht verlieren möchten oder nicht bereit sind, das Risiko dauerhafter Schäden einzugehen.
    • Mehrere Videos auf YouTube demonstrieren den Prozess.
  • Lesen Sie den Inhalt des eMMC-Chips. Erstellen Sie ein Backup!
    • Der eMMC-Chip kann in der Schaltung ausgelesen werden, indem Sie die Testpunkte CMD, CLK und D0 verbinden. eMMC-Pinbelegung
    • Der eMMC erwartet 1V8-Logikpegel!
    • Es gibt verschiedene Werkzeuge zum Auslesen von eMMC-Chips; eine gute und günstige (12-Dollar-)Option ist der Low Voltage eMMC Adapter by the exploitee.rs.
  • Sie müssen die verschiedenen Boot-Stufen extrahieren, patchen und neu verpacken, um die Signaturprüfung zu deaktivieren.
    • Das eMMC-Layout ist in der U-Boot-GPL-Release in der Datei spacex_catson_boot.h dokumentiert.
    • Weitere Informationen zum Extrahieren der Firmware finden Sie in unserem Blogbeitrag.
    • Die frühen Boot-Stufen basieren alle auf dem ARM Trusted Firmware-A-Projekt.
      • Sie können TF fiptool verwenden, um die Firmware Image Packages in ihre einzelnen Bestandteile zu entpacken.
      • Das Patchen dieser Boot-Stufen kann nach einer grundlegenden statischen Analyse mit Ghidra durchgeführt werden (nutzen Sie den Open-Source-Code von TF-A als Leitfaden).
      • Stellen Sie sicher, dass Sie die Signaturprüfung deaktivieren und die UART-Ausgabe wieder aktivieren.
      • Aktualisieren Sie den Firmware-Hash in den Zertifikaten. Wir glitchen die Signaturprüfung, aber der Hash muss weiterhin gültig sein.

Montage des Modchips auf der Starlink-UT-Platine

  • Stellen Sie sicher, dass der von Ihnen zusammengebaute Modchip funktioniert, bevor Sie ihn einlöten.

  • Entfernen Sie die Entkopplungskondensatoren innerhalb der roten Quadrate. Diese werden normalerweise zur Stabilisierung der SoC-Kernspannungsversorgung verwendet. Entkopplungskondensatoren

  • Richten Sie den zusammengebauten Modchip auf der UT-Platine aus und löten Sie ihn über die kastellierten Löcher fest. Achten Sie darauf, keinen Kurzschluss zwischen der Kernspannungsversorgung und Masse zu verursachen.

    • Die äußersten rechten kastellierten Löcher befinden sich nicht an der richtigen Position. Sie können die Platine neu entwerfen oder einfach die freiliegenden Kontaktflächen auf der UT-Platine abdecken und die kastellierten Löcher mit einer nahegelegenen Massefläche verbinden (siehe Abbildung).
  • Verbinden Sie den mit UT RST markierten Testpunkt mit dem Enable-Pin des Spannungsreglers für die Kernspannung.

  • Verbinden Sie den mit 12V markierten Testpunkt mit einer nahegelegenen 12-V-Quelle auf der UT-Platine.

  • Verbinden Sie die äußerste rechte Jumper-Kontaktfläche (unterhalb des Tasters) mit dem eMMC-D0-Testpunkt.

    • Dies war aufgrund eines Firmware-Updates erforderlich, das die UART-Ausgabe deaktiviert hat.
  • Verbinden Sie den mit 1V8 markierten Testpunkt mit einer nahegelegenen 1,8-V-Quelle auf der UT-Platine (neben dem eMMC befindet sich ein Entkopplungskondensator, der an 1V8 angeschlossen ist).

Jetzt sollte alles bereit sein, um mit dem Glitching zu beginnen – viel Glück! Der Python-Ordner enthält ein Beispiel, das zeigt, wie Sie den Modchip für Experimente nutzen können.

Auf das UT montierter Modchip.

Bekannte Probleme und Einschränkungen

  • Der Modchip wurde entwickelt, bevor SpaceX ein Firmware-Update einführte, das eine Sicherung durchbrennen ließ, um die gesamte UART-Ausgabe zu deaktivieren. Der Modchip war ursprünglich so ausgelegt, dass er auf die UART-Ausgabe reagiert, kann aber so angepasst werden, dass er auf dem eMMC-D0-Signal auslöst. Bei einer neueren Revision wäre es nützlich, sowohl UART-Ausgabe lesen als auch auf eMMC-D0-Daten auslösen zu können. UART kann in BL2 wieder aktiviert werden und bietet eine einfache Möglichkeit zu überprüfen, ob der Glitch erfolgreich war.
  • Der Modchip wurde für das runde Benutzerterminal entwickelt. Der gleiche Angriff sollte auch beim eckigen Benutzerterminal funktionieren, erfordert jedoch ein neues PCB-Design.
  • Ein Abschnitt der kastellierten Löcher befindet sich an der falschen Position. Seien Sie vorsichtig, wenn Sie das Design unverändert verwenden, und befolgen Sie die Montageanleitung entsprechend.
  • Das Abziehen des Modchips vom Steuer-PC nach einem erfolgreichen Glitch kann dazu führen, dass die Antenne neu startet. Dies liegt wahrscheinlich an einem fehlenden Pull-Down-Widerstand am IN A-Pin des MCP1405-MOSFET-Treibers.
  • Die mitgelieferte Firmware erwartet einen externen Steuer-PC, der die Fault-Injection-Versuche orchestriert. Es sollte relativ einfach sein, dies mithilfe des (derzeit ungenutzten) zweiten RP2040-Cortex-M0-Kerns in einen eigenständigen Modchip zu verwandeln.

FAQ

  • Wir verkaufen keine fertigen Modchips.
  • Wir stellen keine (gepatchte) Starlink-Benutzerterminal-Firmware bereit.
  • Wir liefern keine genauen Glitch-Parameter. Die Präsentationsfolien enthalten verschiedene Hinweise, und die Parameter variieren je nachdem, wie Sie die Firmware patchen.
Tool herunterladen
  • Ebenso müssen Sie einige Änderungen am U-Boot-Image vornehmen, um die Signaturprüfung zu deaktivieren.
    • Sie können auch den Parameter bootdelay erhöhen.
  • Der Flattened uImage Tree kann mit dumpimage entpackt werden, das als Teil des U-Boot-Projekts bereitgestellt wird.
    • Nehmen Sie die gewünschten Änderungen vor und verpacken Sie das Image neu.
  • Schreiben Sie die gepatchte Firmware auf den eMMC-Chip.