Mit Astrée bietet AbsInt ein Analyse-Tool, das C/C++-Code in Embedded-Medical-Software lückenlos auf Laufzeitfehler wie Pufferüberläufe, uninitialisierte Variablen oder Data Races prüft, die Abwesenheit wird nachweisbar dokumentiert. Gut für die Entwicklung nach IEC 62304 und die Cyber Security.
Mit der fortschreitenden Digitalisierung in der Medizintechnik steigen die Anforderungen an die Sicherheit von Embedded-Software dramatisch. Aktuell geltende Sicherheitsnormen und Richtlinien wie z.B. IEC 61508 und die »FDA Principles of Software Validation« fordern den Nachweis, dass die eingebetteten Systeme die funktionalen Anforderungen erfüllen und sicherheitsrelevante nicht-funktionale Softwarefehler ausgeschlossen sind.
Nicht nur in kritischen Anwendungen wie Infusionspumpen oder Herzschrittmachern ist eine fehlerfreie und manipulationssichere Software essenziell, jedes vernetzte Medizingerät muss als potenzielles Einfallstor von Attacken cybersicher sein. Mit dem Astrée-Tool für die statische Codeanalyse adressiert der saarländische Software-Fabrikant AbsInt die Bedürfnisse von Embedded-Medical-Entwicklern in Safety und Security.
Astrée ist ein statisches Analysewerkzeug zur vollständigen Überprüfung von C- und C++-Code auf Laufzeitfehler wie Pufferüberläufe, Division durch Null, Dereferenzierung von Nullzeigern, Datenrennen und weitere sicherheitskritische Schwachstellen. Die Besonderheit: Das Software-Tool arbeitet mit abstrakter Interpretation und kann für bestimmte Fehlerklassen mathematisch garantieren, dass keine Instanz dieses Fehlertyps im analysierten Code enthalten ist. Dies ist ein entscheidender Vorteil gegenüber herkömmlichen Tools, die meist nur stichprobenartig oder heuristisch vorgehen.
Dr. Daniel Kästner, CTO bei AbsInt, erklärt dazu:
»Das Besondere an unseren Werkzeugen ist, dass wir für bestimmte Arten von Defekten – wie etwa Pufferüberläufe – eine vollständige Abdeckung garantieren können. Wenn Astrée meldet, dass kein Pufferüberlauf im Code vorhanden ist, dann ist das ein belastbarer Nachweis. Ein Großteil der Security-Risiken ist damit bereits ausgeschlossen.« |
---|
Laut Kästner sei Astrée in der Lage, selbst komplexe, echtzeitkritische Steuerungssoftware vollständig zu analysieren – und das auch bei großen Codebasen. Die Ergebnisse sollen damit reproduzierbar sowie nachvollziehbar dokumentiert sein und lassen sich direkt in den Zertifizierungsprozess nach IEC 62304 einbinden.
Diese Eigenschaft sei besonders für die Medizintechnik relevant, da »die Norm IEC 62304 zwar hohe Anforderungen an die Entwicklung stellt, jedoch wenig konkrete Vorgaben zur Fehlerfreiheit macht«, wie Kästner ausführt. Astrée schließe hier die Lücke zwischen regulatorischem Anspruch und technischer Umsetzbarkeit: Mit der dokumentierten Abwesenheit von Fehlern wird die Einhaltung des »Stands der Technik« nachweisbar und auditierbar. Im praktischen Einsatz ist das Tools laut Kästner etwa bei dem Hersteller eines Operationsroboters, dessen Software-Team damit die Kontrolle und Verbesserung der Qualität und Regelkonformität des Codes ihrer sicherheitskritischen Plattform erreicht.
Lesen Sie passend dazu die Absint-Fachbeiträge
Fehlerfreie Medizinsoftware - Von der Vision zur Wirklichkeit
Software implantierbarer Geräte: Sicherheit lässt sich programmieren
Über Schnittstellen lässt sich Astrée mit dynamischen Testtools wie Cantata kombinieren, wobei statische und dynamische Analysen unabhängig voneinander durchgeführt werden können. Mit Astrée bietet Absint ein leistungsfähiges Werkzeug, das die besonderen Anforderungen der Medizintechnik an Software-Sicherheit und Zertifizierbarkeit adressiert. Die mathematisch nachweisbare Abwesenheit kritischer Fehlerarten verschafft Entwicklern und Herstellern einen klaren Vorteil im Zertifizierungsprozess und trägt maßgeblich zur Patientensicherheit bei. (uh)