Dieser Software-Bug hat mindestens 3 Menschen getötet
Software-Bugs können im besten Fall lästig sein, im schlimmsten Fall aber sogar tödlich. Letzteres trifft auf einen Fehler im Therac-25 zu, ein in den 1980er Jahren eingeführtes Strahlentherapiegerät, wie Toms Hardware kürzlich berichtete. Passend zum Alter der Maschine liegt die Geschichte allerdings schon ein paar Jahrzehnte zurück. Die Unglücke geschahen zwischen 1985 und 1987.
➤ Mehr lesen: 125 Jahre Röntgenstrahlung: Wie es zur zufälligen Entdeckung kam
Der Therac-25 wurde insbesondere in der Krebsbehandlung eingesetzt. Er ist ein Linearbeschleuniger, der hochenergetische Elektronen- oder Röntgenstrahlen (Photonen) erzeugt, die auf Tumore gerichtet werden, um bösartiges Gewebe gezielt zu zerstören. Die Elektronenstrahlen wurden für die Behandlung oberflächlicher Tumore verwendet, während die energiereicheren Röntgenstrahlen eingesetzt wurden, um tief im Körper liegende Tumore zu erreichen.
Keine mechanische Sicherheitssperre
Auslöser des fatalen Fehlers war, dass die Maschine erstmals ausschließlich softwarebasierte Steuerungen ohne mechanische Sicherheitssperren nutzte. Dadurch kam es in mindestens 6 dokumentierten Fällen zu extrem überhöhten Strahlendosen, die bis zu 100-mal höher als geplant waren. Mindestens 3 Menschen starben an den Folgen.
➤ Mehr lesen: Wiener Start-up will Röntgengeräte revolutionieren
Falscher Betriebsmodus
Der fatale Fehler entstand, wenn der Bediener des Therac-25 versehentlich den falschen Betriebsmodus wählte und schnell versuchte, den Fehler zu korrigieren. Wurden dabei Behandlungsparameter zu schnell bearbeitet, übersprang die Software aufgrund einer „Race Condition“ zwischen dem Bediener und der Strahlenlogik eine Sicherheitsprüfung.
Von einer solchen Wettlaufsituation spricht man, wenn das Ergebnis von Systemen davon abhängt, in welcher zeitlichen Reihenfolge mehrere Prozesse oder Threads auf gemeinsame Ressourcen zugreifen. Ein klassisches Beispiel ist eine Datenbank, die von mehreren Seiten verändert wird, ohne, dass es dabei zu Absprachen kommt.
➤ Mehr lesen: Krankenhäuser beginnen beim Röntgen auf Bleischürzen zu verzichten
Paper zu dem Fall
Beschrieben ist die Tragödie auch in einem Forschungs-Paper zu dem Fall. Neben Todesfällen wurden durch die zu hohe Strahlendosis auch schwere körperliche Schäden verursacht. Darunter etwa Amputationen und Verbrennungen.
Dennoch dauerte es Monate, bis der Fehler ernsthaft vom Hersteller AECL untersucht wurde. Laut des Papers wurden die Probleme zuerst unterschätzt, dann die Ursache geleugnet und schließlich unzureichend mit den Nutzern kommuniziert. Auch die US-amerikanische Food and Drug Administration (FDA) leitete eine Überprüfung ein, wurde aber ebenfalls für ihre Zögerlichkeit kritisiert.
Die tragischen Fälle führten zu strengeren Standards bei der Verifikation, Tests und Fehlerdokumentation von Software in sicherheitskritischen medizinischen Anwendungen. Der Therac-25-Fall hat sich dabei zu einem oft zitierten Lehrbeispiel für Risiken in der Medizintechnik und der Softwareentwicklung etabliert.