Firmware-Sicherheit
Firmware-Schwachstellenscanner für Linux-basierte Images
Ein Firmware-Schwachstellenscanner entpackt ein Firmware-Image, identifiziert die darin enthaltenen Softwarekomponenten und gleicht sie mit bekannten Schwachstellen ab. KROMSE tut das heute für Linux-basierte Firmware-Images bis 512 MB und sagt Ihnen klar, was es nicht einsehen konnte.
Free-Tarif, keine Kreditkarte erforderlich.
Warum Firmware einen eigenen Scan braucht
Bei Firmware endet der Quellcode-Scan. Ein Geräte-Image enthält den Code des Herstellers, aber auch einen Linux-Kernel, eine C-Bibliothek, eine BusyBox, eine SSL-Bibliothek und Dutzende Pakete, die ein Board Support Package oder ein Build-System wie Yocto oder Buildroot mitbringt. Viele davon tauchen nie in einem Repository auf, das dem Produktteam gehört.
Das Image ist außerdem das, was Kunden tatsächlich betreiben. Ein Scan des Images beantwortet die Frage, auf die es beim Cyber Resilience Act ankommt: Welche Komponenten in welchen Versionen stecken in dem Produkt, das in Verkehr gebracht wurde?
Wie Firmware-Analyse funktioniert
Ein Scan hat drei Schritte: extrahieren, identifizieren, abgleichen. Jeder davon kann unbemerkt scheitern, deshalb meldet ein guter Scanner ebenso klar, was er nicht konnte, wie das, was er gefunden hat.
- Extrahieren: das Image rekursiv entpacken, durch Dateisysteme wie SquashFS, JFFS2, CramFS und UBI sowie herstellerspezifische Header hindurch.
- Identifizieren: Pakete aus Paketdatenbanken auflisten und Binärdateien identifizieren, zum Beispiel anhand von Versionsstrings.
- Abgleichen: die identifizierten Komponenten mit Schwachstellendaten wie OSV.dev und NVD-basierten Quellen abgleichen.
- Berichten: die Abdeckung angeben, einschließlich der Dateien, die nicht entpackt oder identifiziert werden konnten.
Was ein Firmware-Scan aussagen kann und was nicht
Die Identifizierung von Binärdateien ist naturgemäß unsicherer als das Lesen eines Lockfiles. Eine Binärdatei kann gepatcht sein, ohne dass sich ihr Versionsstring ändert, oder ohne die Funktion kompiliert sein, die eine Schwachstelle ausnutzbar macht. Befunde aus Firmware sind daher ein Ausgangspunkt für die technische Prüfung, kein Urteil.
Manche Images lassen sich von außen überhaupt nicht analysieren: verschlüsselte oder signierte, nicht einsehbare Images sowie Bare-Metal- oder RTOS-Firmware ohne Dateisystem. Ein Scanner sollte das offen sagen, statt ein leeres, beruhigendes Ergebnis zu liefern.
Firmware und der Cyber Resilience Act
Der CRA erfasst Hardwareprodukte mit digitalen Elementen und ihre Software, daher gehört die Firmware eines vernetzten Geräts zu dem, was der Hersteller absichern, dokumentieren und aktualisieren muss. Die SBOM-Anforderung aus Anhang I Teil II gilt für sie, ebenso die Meldepflicht nach Artikel 14, wenn eine Komponente in der Firmware aktiv ausgenutzt wird.
Bei Geräten, die jahrelang im Feld bleiben, besteht die praktische Herausforderung darin, die Bestandsaufnahme jedes veröffentlichten Images aufzubewahren und sie erneut zu prüfen, sobald neue Schwachstellen veröffentlicht werden.
Images für den Scan vorbereiten
Ein paar Gewohnheiten machen Firmware-Scans vollständiger und ihre Ergebnisse leichter umsetzbar.
- Scannen Sie genau das Image, das Sie ausliefern, keinen Entwicklungs-Build.
- Bewahren Sie Build-Manifeste aus Yocto oder Buildroot zusammen mit dem Image auf; sie liefern zusätzliche Paketdetails.
- Halten Sie die Image-Version und das zugehörige Produkt fest, damit sich Befunde Releases zuordnen lassen.
- Scannen Sie erneut, wenn sich die Schwachstellendaten ändern, nicht nur, wenn sich das Image ändert.
Ergebnisse lesen: Abdeckung und Aussagekraft
Zwei Zahlen sind so wichtig wie die Liste der Befunde: wie viel des Images entpackt wurde und wie viele Komponenten identifiziert werden konnten. Ein Ergebnis mit wenigen Befunden und geringer Abdeckung sagt wenig aus; ein Ergebnis mit vielen Befunden aus dem Abgleich von Binärdateien muss geprüft werden, bevor es einen Kunden oder eine Behörde erreicht.
Halten Sie für jeden relevanten Befund die Entscheidung fest: betroffen, nicht betroffen und warum, oder behoben in einem benannten Release. Genau diese Entscheidungen vermittelt ein VEX-Dokument, und genau danach fragen eine Meldung nach Artikel 14 oder ein Kundenfragebogen.
Heute in KROMSE verfügbar
Das Firmware-Scanning in KROMSE deckt heute Linux-basierte Images ab.
- Laden Sie ein Linux-basiertes Firmware-Image von bis zu 512 MB hoch; KROMSE entpackt es rekursiv.
- Pakete werden aufgelistet und mit OSV.dev abgeglichen, und Binärdateien werden offline mit NVD-basierten Schwachstellendaten abgeglichen.
- Das entpackte Root-Dateisystem wird zusätzlich auf Fehlkonfigurationen und eingebettete Secrets geprüft, deren Werte nie gespeichert werden.
- PX4-Dateien (.px4) werden vor dem Entpacken aus ihrer Hülle gelöst.
- Jeder Scan erzeugt CycloneDX- und SPDX-SBOMs und gibt an, was nicht entpackt oder identifiziert werden konnte.
- Verschlüsselte Images sowie Bare-Metal- oder RTOS-Firmware werden als nicht analysierbar gemeldet, nicht als unbedenklich.
Als Nächstes geplant
Auf der Roadmap, noch nicht verfügbar. Die Termine sind Zielmarken, keine Zusagen; diese Seite wird an dem Tag aktualisiert, an dem eine Funktion live geht.
- Geplant · Q1 2027Bare-Metal- und RTOS-Firmware. KROMSE wird Komponenten in Firmware ohne Linux-Dateisystem identifizieren, etwa in Bare-Metal- und RTOS-Images auf Basis von FreeRTOS oder Zephyr.
- Geplant · Q1 2027Hardwarekomponenten. KROMSE wird die Hardwarekomponenten Ihres Produkts mit veröffentlichten Sicherheitshinweisen zu Hardware abgleichen.
- Geplant · Q4 2026 (Dezember)Robotik-Sicherheit. KROMSE wird ROS-2-Sicherheitshinweise, die Identifizierung von Komponenten in PX4- und ArduPilot-Firmware sowie robotikspezifische Schwachstellendaten ergänzen.
Häufige Fragen
Welche Firmware kann KROMSE scannen?
Linux-basierte Firmware-Images bis 512 MB, die KROMSE über gängige Embedded-Dateisysteme entpackt, bevor es Komponenten identifiziert. Verschlüsselte Images sowie Bare-Metal- oder RTOS-Firmware ohne Dateisystem werden noch nicht unterstützt, und das Scan-Ergebnis sagt das auch.
Worin unterscheidet sich ein Firmware-Scan von einem Quellcode-Scan?
Ein Quellcode-Scan liest die Abhängigkeiten, die Ihr Repository deklariert. Ein Firmware-Scan betrachtet das fertige Image, einschließlich Betriebssystem, Bibliotheken und Paketen, die das Build-System hinzufügt und die oft nie in Ihrem Repository auftauchen. Beides ist nützlich; das Image ist das, was Kunden betreiben.
Sind Firmware-Befunde immer korrekt?
Das kann kein Scanner versprechen. Die Identifizierung von Binärdateien über Versionsstrings kann zurückportierte Patches übersehen oder eine Komponente melden, die vorhanden, aber nicht ausnutzbar ist. Behandeln Sie Firmware-Befunde als Nachweise, die ein Ingenieur prüft, und halten Sie die Entscheidung fest.
Kann KROMSE PX4-Drohnen-Firmware scannen?
Teilweise. KROMSE löst PX4-Dateien (.px4) aus ihrer Hülle und durchläuft mit ihnen dieselben Entpackungsschritte und Prüfungen wie bei anderer Firmware, doch die Identifizierung der NuttX-basierten Komponenten darin ist noch nicht verfügbar. Ein Linux-basiertes Image eines Companion Computers lässt sich vollständig scannen. Robotikspezifische Abdeckung steht auf der Roadmap.
Gilt der CRA für Firmware?
Ja, als Teil eines Produkts mit digitalen Elementen. Die Firmware eines vernetzten Geräts muss die grundlegenden Anforderungen erfüllen, von SBOM und Schwachstellenbehandlung abgedeckt sein und unter die Meldepflicht nach Artikel 14 fallen, wenn eine Komponente darin aktiv ausgenutzt wird.