Suchen

Vernetzte Medizingeräte vor Angriffen schützen

| Autor / Redakteur: Mark Pitchford * / Dipl.-Ing. (FH) Hendrik Härter

Eine tödliche Menge an Insulin oder eine Schwachstelle im Code: Der Angriff auf medizintechnische Geräte ist schwerwiegend. Doch Entwickler können mögliche Angriffe abwehren.

Firma zum Thema

Sichere Software: Für Medizintechnik spielt Cybersecurity eine wichtige Rolle. Sicherheitslücken können schwerwiegende Folgen für Patienten haben.
Sichere Software: Für Medizintechnik spielt Cybersecurity eine wichtige Rolle. Sicherheitslücken können schwerwiegende Folgen für Patienten haben.
(Bild: ©Sashkin - stock.adobe.com)

Mit der zunehmenden Vernetzung der Medizinbranche eröffnen sich sowohl für die Industrie als auch für Patienten neue Möglichkeiten in der medizinischen Diagnostik und Behandlung. Der Trend wird sich künftig weiter beschleunigen. Allerdings müssen Entwickler immer das Thema Cybersecurity im Blick behalten. Eine mögliche Bedrohung sollte beginnend vom Design jedes einzelnen Aspekts der Infrastruktur berücksichtigt werden. Dabei geht es nicht ohne eine abgesicherte unternehmensweite Architektur.

Von der vernetzten Infrastruktur eines Krankenhauses profitieren neben den Patienten auch die Ärzte und das Klinikpersonal. Die digitale Klinik ist Grundlage für eine verbesserte betriebliche Effizienz und die Daten aus den unterschiedlichsten Quellen lassen sich innerhalb der Klinik in Echtzeit erfassen, speichern, verwalten und teilen. Doch man sollte bedenken, dass eine steigende Anzahl vernetzter klinischer Geräte auch eine Angriffsfläche bietet. Angreifer können Daten manipulieren und im schlimmsten Fall das Leben der Patienten gefährden. Bereits im Oktober 2011 hatte der White-Hat-Hacker Barnaby Jack die Blicke der Öffentlichkeit auf dieses Thema gelenkt. Mit modifizierten Antennen und Software demonstrierte er, wie einfach man eine implantierte Insulinpumpe von Medtronic drahtlos angreifen und unter Kontrolle bringen konnte, um eine tödliche Dosis Insulin abzugeben [1].

Beispiele aus der jüngeren Vergangenheit belegen, dass solche direkten Attacken nach wie vor ein Problem sind. Am 23. August 2017 erteilte die US-amerikanische Food and Drug Administration, kurz FD, die Freigabe für ein Firmware-Update. Damit sollten die Risiken für Patienten durch eine mögliche Ausnutzung von Cybersecurity-Schwachstellen in Herzschrittmachern der Firma Abbott gesenkt werden [2]. Im Jahr 2017 erfolgte die WannaCry-Malware-Attacke auf den National Health Service (NHS) des Vereinigten Königreichs [3].

Diese Malware machte sich die Implementierung des SMB-Protokolls (Server Message Block) in Windows zunutze und richtete sich an MRT- und CT-Geräte, die auf XP-Workstations liefen. Diese Medizingeräte wurden verschlüsselt und gleichsam als Geisel genommen, was eine sichere und effektive Behandlung von Patienten verhinderte. Schätzungen zufolge waren mehr als 200.000 Computer in 150 Ländern von diesem Angriff betroffen, und die daraus resultierenden Schäden werden mit sieben- bis zehnstelligen Dollarbeträgen beziffert.

Eine einzelne Abwehrmaßnahme genügt nicht

Die große Bandbreite zwischen einer Attacke auf eine Insulinpumpe über eine Funkverbindung und einer Sicherheitslücke in Windows zeigt, weshalb sich Cybersecurity mit einer einzelnen Abwehrmaßnahme niemals umsetzen lässt. Das Beispiel WannaCry zeigt die Bedeutung grundlegender Vorsichtsmaßnahmen, wie ein älteres Betriebssystem zu aktualisieren bis hin zum Absichern von Protokollen oder dem Update und Validieren von Software und Firmware. Doch selbst bei Anwendung dieser Sicherheitsvorkehrungen gibt es zahllose Möglichkeiten, Systeme anzugreifen. Denn Angreifern reicht schon eine einzige Sicherheitslücke.

Im März 2000 erläuterte Professor James Reason von der Universität Manchester anhand einer Analogie, wie menschliches Versagen zu Systemunfällen beiträgt [4]. Viele Aspekte medizinischer Maßnahmen erfordern Eingaben von Menschen mitsamt den dabei unweigerlich vorkommenden Fehlern. Im Allgemeinen aber gibt es so viele Abwehr-Ebenen, dass eine ganze Kette von Fehlern auftreten muss, damit keine der Verteidigungsmaßnahmen greift.

Professor Reason verglich das mit mehreren Scheiben Schweizer Käse, wobei sich in seinem Beispiel die Scheiben aber nicht nur unablässig bewegen, sondern auch größer und kleiner werden. Ebenso wie die Prüf- und Kontrollmaßnahmen für menschliche Eingaben in medizinischen Systemen ist ein mehrstufiges Cybersecurity-Konzept überaus sinnvoll. Sollte ein Angreifer die erste Verteidigungslinie überwinden, wird er von den übrigen aufgehalten.

Das Schweizer-Käse-Modell verdeutlicht eine Folge nicht aufeinander abgestimmter Abwehrmaßnahmen und dann versagt, wenn sich die Schwachstellen decken.
Das Schweizer-Käse-Modell verdeutlicht eine Folge nicht aufeinander abgestimmter Abwehrmaßnahmen und dann versagt, wenn sich die Schwachstellen decken.
(Bild: LDRA)

Medizingeräte und das Problem der Sicherheitslücken

Konzepte und Techniken, die zu einer solchen Verteidigung eines Systems als Ganzes beitragen können, sind beispielsweise gesicherte Netzwerk-Architekturen, Datenverschlüsselung, gesicherte Middleware und die Unterteilung in separate Bereiche, um nur einige zu nennen. Medizingeräte verdienen jedoch besondere Aufmerksamkeit. Die Infrastruktur, die diese Geräte umgibt, ist für die Angreifer lediglich Mittel zum Zweck: eine Bedrohung lässt sich nur mit den Geräten selbst ausüben.

Eingebettete Software für medizinische Anwendungen wurde in der Vergangenheit meist für Anwendungen verwendet, die gerätespezifisch oder an ganz bestimmte Funktionen gebunden waren. Dank dieser Isolation war eine hinreichende Sicherheit gegeben. Zuerst wurde eine Software entwickelt, bevor man anschließend mit Penetration- und Funktionstest sowie Fuzz-Testing mögliche Schwachstellen innerhalb des Codes aufdeckte, um diese danach zu beheben. In der Praxis werden aufgedeckte Sicherheitslücken geschlossen, indem der Code nachgebessert wird. Doch leider lassen sich nach diesem Prinzip Sicherheitslücken nicht wirklich schnell beseitigen [5].

Cybersecurity als Designgrundlage medizinischer Geräte

Prinzipiell eingestanden hat man das Prinzip, als im Oktober 2018 die MITRE Corporation und die FDA ihr „Medical Device Cybersecurity” Playbook for HDOs [6] mit dem Untertitel „Regional Incident Preparedness and Response Playbook” veröffentlichten. Es gliederte sich in die vier Abschnitte „Preparation, Detection and Analysis, Containment, Eradication and Recovery und Post-Incident Recovery“. Europäische Behörden reagierten eher schleppend: Als erstes gab die französische Regulierungsbehörde Agence Nationale de Sécurité du Médicament et des Produits de Santé (ANSM) im Juli 2019 ihre entsprechenden Richtlinien heraus [7].

Es ist sinnvoll, sich auf das mit „Preparation“ betitelte Element des von der FDA vorgeschlagenen Reaktionszyklus zu konzentrieren. Das bezieht sich nicht nur darauf, bereits vorhandene Sicherheitsmaßnahmen bei Geräten zu identifizieren, sondern auch vorbeugend in neuen Produkten. Cybersecurity von Beginn an in ein Design einzubinden: Dieser Ansatz erfolgt während des gesamten Entwicklungsprozesse und wird in verschiedenen Normen für funktionale Sicherheit beschrieben. Dazu gehört die IEC 62304 (Medizingeräte-Software – Software-Lebenszyklus-Prozesse). Die Norm IEC 62304 bietet einen einheitlichen Rahmen für die Softwareentwicklung. Dabei erfüllt die Richtlinie alle Anforderungen an Qualität, Risiko und Software-Sicherheit und alle Aspekte des Software-Entwicklungslebenszyklus werden erfüllt.

Ein strukturierter Entwicklungszyklus

Die Zuordnung der einzelnen Funktionen der LDRA Tool Suite zu den Richtlinien IEC 62304:2006 + AMD1:2015.
Die Zuordnung der einzelnen Funktionen der LDRA Tool Suite zu den Richtlinien IEC 62304:2006 + AMD1:2015.
(Bild: LDRA)

Verwenden Entwickler einen strukturierten Entwicklungszyklus, so bedient man sich nicht nur den aktuell am besten erprobten Entwicklungspraktiken, sondern befolgt auch den Empfehlungen der FDA „Premarket Management of Cybersecurity in Medical Devices“ [8]. Zudem schafft man eine Grundlage, die im Falle eines Verstoßes sehr wertvoll sein kann, um schnell auf einen Angriff zu reagieren. Außerdem berücksichtigt das Konzept die FDA-Empfehlung, dass Unbefugte die auf einem Medizingerät gespeicherten sensiblen Daten weder erhalten noch einsehen darf. Diese Daten müssen unbedingt geschützt und unversehrt bleiben, damit Hacker keine ärztlichen Diagnosen oder wichtige Patienteninformationen verfälschen können.

Es stellt sich die Frage, wie die von der IEC 62304 empfohlenen Prozesse sichergestellt werden können. Hier kann der Entwickler auf automatisierte Werkzeuge zurückgreifen. Es gibt einige Unterschiede zwischen der Entwicklung funktional-sicherer und cyber-sicherer Anwendungen, aber auch viele Ähnlichkeiten. Beispielsweise profitieren beide Perspektiven von der Definition entsprechender Anforderungen zu Beginn und von der bidirektionalen Nachvollziehbarkeit dieser Anforderungen. Damit ist sichergestellt, dass sie vollständig umgesetzt werden.

Umfang und Komplexität eines typischen Netzwerks im Gesundheitswesen. Die Angriffsfläche für potenzielle Angreifer ist groß.
Umfang und Komplexität eines typischen Netzwerks im Gesundheitswesen. Die Angriffsfläche für potenzielle Angreifer ist groß.
(Bild: LDRA)

Unit-Tests und dynamische Analysen sind sowohl für die funktionale Sicherheit als auch für die Cybersicherheit gleichermaßen anwendbar. Im letzteren Fall wird sichergestellt, dass die Abwehrmechanismen wirksam sind und die Systeme nicht anfällig gegenüber einen Angriff sind. Zudem fordert die IEC 62304 auch Standards bei der Kodierung, um die Verwendung der spezifizierten Programmiersprache auf eine sichere Teilmenge zu beschränken. Wurde der Code in der Praxis funktional sicher geschrieben, so ist dieser auch „Secure“, da die gleichen Fehler bei der Anwendung einer Programmiersprache häufig Anlass sowohl für Safety- als auch für Security-Bedenken geben. Auf Cybersecurity ausgerichtet sind beispielsweise die Standards von SEI CERT, MISRA und CWE.

Fazit: Kein vernetztes medizinisches Gerät wird gleichzeitig sinnvoll einsetzbar und völlig unangreifbar sein. Hier sollte abgewogen werden zwischen sinnvollen Schutz und dem Risiko eines möglichen Angriffs. Dazu notwendig sind mehrere Sicherheitsebenen, damit bei einem Ausfall einer Ebene eine andere einspringen kann. Das strukturierte Sicherheitskonzept der IEC 62304 ist Grundlage für ein proaktives Konzept zum Schutz medizinischer Anlagen und Geräte. Für die sichere Kodierung nach funktionaler Sicherheit gehören Qualitätssicherungen wie die statische Analyse, die dynamische Codeanalyse und die Verfolgung von Anforderungen während des gesamten Entwicklungsprozesses.

Referenzen

[1]

[2]

[3]

[4]

[5]

[6]

[7]

[8]

Dieser Beitrag ist erschienen in der Fachzeitschrift ELEKTRONIKPRAXIS Ausgabe 9/2020 (Download PDF)

* Mark Pitchford arbeitet als Software Engineer bei LDRA Software.

(ID:46492022)