Fallstudie · Embedded-Software

Von der Fehlerliste zu behobener, verifizierter Firmware

Ein mitteleuropäisches Medizintechnikunternehmen hat Silurus Software beauftragt, die Firmware-Repositories seines sicherheitskritischen Chirurgiegeräts zu übernehmen, die in der Gap-Analyse gefundenen Fehler in vier Phasen zu beheben und drei neue Gerätefunktionen zu ergänzen, nach IEC 62304 und den Erwartungen der FDA.

Kunde
Mitteleuropäisches Medizintechnikunternehmen
Dauer
Mehrere Monate
Zusammenarbeit
2 Senior-Embedded-Ingenieure, 1 FDA-Berater für Regulatory Affairs, 1 Projektmanager
Technologie
Embedded C · STM32 · Renode · CI · IEC 62304 · FDA-Cybersicherheit

Wir nennen weder den Kunden noch das Produkt. Geheimhaltungsvereinbarungen, die geschäftlichen Interessen des Kunden und die Vertraulichkeit seiner Technologie lassen dies nicht zu.

Ausgangslage

Firmware, die einen neuen Verantwortlichen brauchte

Die Konsolen-Firmware und die Bootloader hatte ein einzelner Entwickler geschrieben und gepflegt. Die Gap-Analyse hatte gezeigt, wo Code und freigegebene Dokumente voneinander abwichen.

Die Fehler reichten von einem Timingfehler in der Regelschleife und einer Protokollabweichung über Pufferüberläufe und ein Heap-Leck bis zu einer fehlenden Integritätsprüfung des Bootloaders.

Das Unternehmen wollte die Fehler vor der regulatorischen Einreichung behoben und dokumentiert haben und brauchte ein externes Team, das die Repositories übernimmt.

Behebung

Zu jedem Fehler kann der Hersteller zeigen, was sich geändert hat, warum und wie es verifiziert wurde.

Aufgabe

Beheben, was das Review gefunden hat, und es belegen

Die Fehler waren sicherheitsrelevant. Jede Änderung musste im IEC-62304-Lebenszyklus und innerhalb der regulatorischen Annahmen der Einreichung bleiben.

Schwer reproduzierbare Fehler

Manche Fehler hingen von der Hardware und vom Betriebszyklus ab. Um sie zu reproduzieren, brauchte es eigene Werkzeuge.

Kein Sicherheitsnetz

Der Build war nicht reproduzierbar, und es gab keine CI-Pipeline.

Dokumente aktuell halten

Für jede Korrektur und jedes Feature mussten Anforderungen, Design, Testberichte und Rückverfolgbarkeit aktualisiert werden.

Vorgehen

Behebung in Phasen, in jedem Schritt verifiziert

Ein eintägiger Workshop, dann vier Phasen, jede verifiziert, dokumentiert und abgenommen.

Ein Team aus zwei Senior-Embedded-Ingenieuren, einem FDA-Berater für Regulatory Affairs und einem Projektmanager übernahm die Repositories nach einem eintägigen Workshop, machte den Build in CI reproduzierbar und behob die Fehler in vier Phasen.

Jede Phase wurde mit Unit-Tests, statischer Analyse, Integrationstests in einer Renode-Simulation und Tests auf unserer eigenen Prüfstand-Hardware verifiziert, dann dokumentiert und vom Kunden abgenommen. Für schwer reproduzierbare Fehler haben wir interne Werkzeuge gebaut, zum Beispiel eine PC-Anwendung, die den Betriebszyklus am Gerät abstimmt und aufzeichnet.

Unser FDA-Berater für Regulatory Affairs hat den Kunden zu den regulatorischen Auswirkungen der neuen Features beraten, und jeder Feature-Vertrag nennt seine regulatorischen Annahmen und Risikobeherrschungsmaßnahmen.

Umfang

Unsere Arbeitsergebnisse

01

Übernahme der Repositories und CI

Reproduzierbarer Build, geschützte Branches, cppcheck und flawfinder sowie eine CI-Pipeline für die Geräte-Firmware.

02

Behebung in Phasen

Toter Code entfernt, danach kritische und schwerwiegende Fehler behoben, darunter Bootloader-Integrität, CRC-Behandlung, Pufferüberläufe, unsichere String-Formatierung und Ausleseschutz.

03

Verifizierung

Unit-Tests mit Mutationstests, Integrationstests in Renode und Tests auf Prüfstand-Hardware mit Fehlerinjektion.

04

Neue Funktionen

Ein Abstimmwerkzeug für das Gerät, ein Firmware-Update im Feld mit ECDSA-signierten Images über die Serviceschnittstelle und Service-Logging auf SD-Karte.

05

Verifizierung des Loggings

Verifiziert für Stromausfall, volle und entfernte Karten, Ereignisschübe, Prozessorlast, Schreiblatenz und E-Stop-Reaktion.

06

Regulatorische Dokumentation

Software-Anforderungen, Aktualisierung von Architektur und Design, Spezifikation des Aufzeichnungsformats, Testberichte und Rückverfolgbarkeit für jede Änderung, dazu regulatorische Beratung durch einen FDA-Berater zu den neuen Features und Beiträge zur Risikoanalyse und zum Threat Model des Kunden.

Ergebnisse

Behoben, verifiziert und dokumentiert

4Phasen der Behebung, jede verifiziert, dokumentiert und abgenommen
3Neue Gerätefunktionen auf dem behobenen Code
CIStatische Analyse und Unit-Tests bei jeder Änderung

Die Firmware-Repositories bauen reproduzierbar in CI, mit statischer Analyse und Unit-Tests bei jeder Änderung.

Neue Features gehen denselben Weg wie die Korrekturen: Anforderungen, Risikobeherrschung, Tests am Gerät und Rückverfolgbarkeit.

Embedded CIEC 62304STM32RenodeCIBehebungFirmware-UpdateFDA-Cybersicherheit
Sprechen Sie mit uns

Firmware mit bekannten Fehlern und einem Einreichungstermin?

Wir übernehmen die Repositories, beheben die Fehler in verifizierten Phasen und halten die Dokumente auf dem aktuellen Stand.