Ein Sicherheitskonzept für klinische Anwendungssysteme

Klaus Pommerening
Institut für Medizinische Statistik und Dokumentation
der Johannes-Gutenberg-Universität
D-55101 Mainz
[erschienen in: J. Michaelis, G. Hommel, S. Wellek (Hrsg.), Europäische Perspektiven der Medizinischen Informatik, Biometrie und Epidemiologie, MMV Medizin Verlag, München 1993, 371-374]

Zusammenfassung

Klinische Anwendungssysteme laufen in der Regel auf alleinstehenden oder vernetzten PCs, zunehmend auch auf UNIX-Rechnern, jedenfalls in Systemumgebungen, die kaum Sicherheitsfunktionen bieten. Auch wenn die Anwendung selbst die differenzierte Festlegung von Zugriffsrechten gestattet, sind die Daten doch auf der Ebene des Betriebssystems für jedermann sichtbar. Handelt es sich dabei um personenbezogene Daten, z.B. Patientendaten, sind die Vorschriften des Datenschutzrechts verletzt.

Im Rahmen der Arbeit am Projekt TheMPO (= Therapie-Unterstützung und Management in der Pädiatrischen Onkologie) wurde daher ein Sicherheitskonzept entworfen, das unbefugtes Lesen oder Ändern von Daten auf allen Ebenen verhindern soll. Grundlage ist ein mehrstufiges Verschlüsselungsverfahren, das neben der online-Verschlüsselung von Daten auch die Möglichkeit zur kryptographischen Signatur von Dokumenten (z. B. von Therapieverordnungen durch den Arzt) bietet. Der einzelne Benutzer braucht dazu eine vertrauenswürdige Ablage (PSE = personal secure environment) für seine persönlichen Schlüssel zur Chiffrierung und Dechiffrierung der Daten und zur kryptographischen Signatur. Im Idealfall sollte dieses PSE durch eine persönliche Chipkarte für jeden Benutzer realisiert werden. Solange passende Chipkarten technisch nicht verfügbar sind, werden sie durch persönliche Disketten simuliert. Eine solche ist ihrerseits, um Mißbrauchsmöglichkeiten einzudämmen, durch eine `PIN' verschlüsselt, die dem Benutzer als Paßwort zugeordnet ist und die er bei der Anmeldung eingeben muß. Der Benutzer selbst braucht sich nur diese PIN zu merken; alle übrigen Informationen werden der Chipkarte oder Diskette entnommen und vom System automatisch umgesetzt.

Datenschutzanforderungen in einem klinischen Anwendungssystem

Seit einem Jahr wird am IMSD in Mainz das Projekt TheMPO (= Therapie-Unterstützung und Management in der Pädiatrischen Onkologie) bearbeitet. Es soll die Therapie im Rahmen der zahlreichen multizentrischen Studien der Pädiatrischen Onkologie unterstützen. Die wesentlichen Komponenten des Systems sind Patientendaten-Verwaltung, Therapieplan-Erstellung, insbesondere die Zusammenstellung von Therapieblöcken, die aus mehreren Zytostatika-Infusionen und Begleitmedikation bestehen, Therapie-Verordnung, insbesondere Dosierungsvorschriften, Therapie-Überwachung und ein umfassendes Informationssystem. Es handelt sich also um ein typisches klinisches Anwendungssystem, das auf einer Station eingesetzt werden soll. Implementiert wird es auf einer Workstation unter UNIX mit einer grafischen Benutzungsoberfläche.

Klinische Anwendungssysteme dieser Art laufen in der Regel auf alleinstehenden oder vernetzten PCs, zunehmend auch auf UNIX-Rechnern, jedenfalls in Systemumgebungen, die kaum Sicherheitsfunktionen bieten, also "offen" im Sinne des Datenschutzes sind. Auch wenn die Anwendung selbst die differenzierte Festlegung von Zugriffsrechten gestattet, sind die Daten doch auf der Ebene des Betriebssystems für jedermann sichtbar; unter MS-DOS ist das evident, UNIX bietet elementare, aber nicht ausreichende Schutzfunktionen. Handelt es sich dabei um personenbezogene Daten, z.B. Patientendaten, sind die Vorschriften des Datenschutzrechts verletzt. Im Pflichtenheft von TheMPO sind daher folgende Anforderungen festgelegt:

Ein prototypischer Ansatz zur Erfüllung dieser Forderungen wird im folgenden vorgestellt.

Lösungsansatz

Kryptographische Grundlagen
Grundlage jeder wirksamen Datenschutzmaßnahme in offenen Systemen sind Verschlüsselungsverfahren, also kryptographische Maßnahmen, und daraus abgeleitete kryptographische Protokolle [Beu][Pom]. Diese Verfahren müssen hinreichend schnell sein, um die Arbeit nicht zu behindern. Insbesondere braucht man geeignete Das DES-Verfahren ist durch neue Ansätze von BIHAM und SHAMIR zur Kryptoanalyse (= Brechen einer Verschlüsselung) mittelfristig nicht mehr sicher genug und sollte durch ein verstärktes, aber ähnlich effizientes Verfahren ersetzt werden. Auf jeden Fall muß das Verschlüsselungsverfahren gegen Klartextattacken resistent sein, bei denen ein Angreifer aus der Kenntnis (oder dem Erraten) kleiner Stücke des Klartexts Vorteile zu ziehen versucht.

Patientendaten werden dann vom Anwendungsprogramm ver- bzw. entschlüsselt. Dabei wird ein vom Benutzer unabhängiger Hauptschlüssel verwendet, der aber datensatzspezifisch (etwa mit der Aufnahmenummer des Patienten) modifiziert wird; diese Modifikation soll eine mögliche Schwächung des Verfahrens verhindern, die durch die tausendfache Verwendung von immer dem gleichen Schlüssel entstehen könnte.

Verordnungen werden signiert, indem ihnen eine verschlüsselte Prüfsumme (in einem dafür vorgesehenen Datenfeld) angehängt wird. Die Prüfsumme wird mit einer sogenannten Hash-Funktion (wie MD5) gebildet; es ist hierbei unmöglich, ein Dokument zu ändern, ohne auch eine andere Prüfsumme zu erhalten. Das alleine ist noch kein Schutz, da ein Angreifer zu einem gefälschten Dokument auch die passende Prüfsumme erzeugen kann. Daher wird die Prüfsumme mit dem privaten Signaturschlüssel des Unterzeichners verschlüsselt; dazu braucht man ein asymmetrisches Verschlüsselungsverfahren (wie RSA), bei dem es unmöglich ist, aus dem ("öffentlich bekannten") Prüfschlüssel des Unterzeichners Kenntnisse über den Signaturschlüssel abzuleiten. Jeder kann die Gültigkeit der Unterschrift (und die Echtheit des gesamten Dokuments!) mit Hilfe des Prüfschlüssels nachprüfen.

Das Personal Secure Environment
Eine unangenehme Begleiterscheinung eines solchen Sicherheitskonzepts ist, daß der Benutzer mehrere komplizierte Schlüssel kennen muß; z. B. sind RSA-Schlüssel ganze Zahlen mit mindestens 200 Dezimalstellen. Das kann sich keiner merken. Daher braucht jeder Benutzer eine Schlüsselablage, das PSE (= Personal Secure Environment), das in [Sec] in anderem Zusammenhang in ähnlicher Form implementiert wird. Selbstverständlich ist es vor allen anderen Benutzern zu schützen, und das bedeutet, daß es selbst verschlüsselt sein muß. Der Schlüssel hierzu sollte aber leicht zu merken sein -- eine PIN (= persönliche Identifikationsnummer) wie bei der Scheckkarte. Diese PIN ist alles, was sich der Benutzer merken muß; zur Erhöhung der Merkbarkeit ist es vorzuziehen, einen kurzen Satz als Paßwort zu verwenden, aus dem die eigentliche PIN vom Programm berechnet wird.

Wo wird nun dieses PSE aufbewahrt? Dazu gibt es drei Möglichkeiten mit zunehmender Sicherheit:

Die erste Art der Aufbewahrung ist schwach, da die PIN dann den ganzen Schutz darstellt. Bei den anderen Arten kommt als Schutz der persönliche Besitz eines Gegenstands hinzu. Die Chipkarte bietet darüber hinaus noch die bessere Fälschungssicherheit, da sie ihre eigenen Auswertungsprogramme enthält, und ermöglicht `Challenge-Response'-Mechanismen. Sie ist somit der ideale PSE-Träger. Solange passende Chipkarten technisch nicht verfügbar sind, werden sie durch persönliche Disketten simuliert, und die Auswertungsprogramme sind in der Anwendungssoftware enthalten.

Gegenstück des PSE ist ein öffentliches Verzeichnis der Prüfschlüssel, das vom Systemverwalter signiert wird. Und damit dieses wirklich vertrauenswürdig ist, verwahrt jeder Benutzer den Prüfschlüssel des Systemverwalters sicher auf: in seinem eigenen PSE. Durch diese Maßnahme wird das Signaturverfahren erst beweissicher. Der Systemverwalter ist somit eine absolute Vertrauensinstanz in diesem System.

Was steht nun alles im PSE? Alles, was der Benutzer wissen muß, aber sich nicht merken kann, und alles, worauf er sich verlassen muß:

Der Überprüfungsmechanismus
Der Benutzer wird innerhalb der Anwendung überprüft, sobald persönliche Rechte oder Präferenzen eine Rolle spielen, also spätestens beim Laden eines Datensatzes, und wenn er nicht bereits überprüft ist. Dazu legt der Benutzer seine persönliche Diskette ein und gibt sein Paßwort (PIN) per Tastatur ein. Diskette und PIN zusammen weisen den Benutzer aus. Bei Fehlbedienung beendet sich die Anwendung nach Ablauf einer Zeitschranke von (etwa) 30 Sekunden oder dreimaliger Fehleingabe der PIN automatisch und muß neu gestartet werden. Mit der PIN als Schlüssel wird die persönliche Diskette entschlüsselt. Nach korrekter Eingabe werden intern die Rechte des Benutzers festgelegt und seine persönliche Arbeitsumgebung hergestellt. Nach einer längeren Arbeitspause (deren Zeitdauer einstellbar ist), verliert die Authentisierung ihre Gültigkeit; eine evtl. im Laufwerk liegende Diskette wird ausgeworfen.

Ein Benutzerwechsel soll ohne Beenden der Anwendung durch Wechsel der Diskette möglich sein. Er wird durch Wahl des Menüpunktes "Benutzerwechsel" oder direkt durch (gegebenenfalls Auswerfen der alten und) Einlegen einer neuen Benutzer-Diskette eingeleitet. Im ersten Fall wird ebenfalls die alte Diskette, sofern sie noch eingelegt ist, ausgeworfen und eine neue verlangt. In beiden Fällen läuft anschließend die beschriebene Überprüfungsprozedur ab.

Die Sicherheitsarchitektur
Der Aufbau des Sicherheitssystems wird durch die Abbildung 1 anschaulich gemacht.


Abbildung 1. Das Sicherheitsschema für Datenschutz und Signatur

Während das Signaturverfahren problemlos in die Anwendung integriert werden kann, bietet die Verschlüsselung technische Probleme. Sie wird in einen Programmteil namens "kryptographischer Treiber" gepackt, für den es folgende Optionen gibt:

Beim Zukauf kommerzieller Lösungen ist zweierlei zu beachten: Das Verschlüsselungsverfahren muß ausreichend sicher sein -- das ist bei vielen Produkten leider nicht der Fall! Und die PIN-Abfrage muß sich in das Anwendungsprogramm integrieren lassen, damit nicht bei jedem Benutzerwechsel ein Programmneustart nötig wird.

Abgestufte Zugriffsregelungen

Die Berechtigung zum Datenzugriff wird innerhalb des Anwendungssystems durch die Zugriffsmatrix geregelt. Diese wird vom Systemverwalter bearbeitet; das Prinzip der minimalen Rechte ist zu beachten. Voraussetzung für ihre Funktion ist, daß der Benutzer innerhalb der Anwendung zweifelsfrei identifiziert ist. Die Zugriffsmatrix hat die in Abbildung 2 gezeigte Form. Dabei bedeutet "w" die Schreib- und Leseerlaubnis, "r" die reine Leseerlaubnis und "-" die völlige Sperre. Eine weitere Differenzierung der Rechte scheint hier nicht nötig.

Datengruppe
Benutzergruppe 1 2 ... n
A w w ... r
B w r ... -
. . . .
Z r r ... -

Abbildung 2. Die Zugriffsmatrix


Abbildung 3. Paßwörter für abgestufte Zugriffsrechte

Um solche differenzierten Zugriffssperren auch auf der Betriebssystemebene abzusichern, reicht das oben skizzierte Verfahren mit einem Hauptschlüssel für alle Daten nicht aus. Statt dessen ist für jede Datengruppe ein gesonderter Schlüssel zu verwenden gemäß Abbildung 3. Der Benutzer hat in seinem PSE die Schlüssel genau der Datengruppen, auf die er Zugriffsberechtigung hat; für die anderen Datengruppen hat er unsinnige Dummy-Schlüssel. Will er die Daten außerhalb der Anwendung lesen, muß er sich zunächst das Verschlüsselungsverfahren in selbständig lauffähiger Form verschaffen, kann dann aber mit Hilfe der Paßwörter, über die er verfügt, auch nur die ihm erlaubten Daten entziffern. Der Unterschied zwischen Schreib- und Leserechten wird hier nicht gemacht. Er scheint aus datenschutzrechtlichen Überlegungen nicht zwingend, und signaturgeschützte Daten sind sowieso vor unbemerkter Fälschung gefeit. Für die Zugriffsmatrix im Beispiel hätte also ein Benutzer der Gruppe B die korrekten Schlüssel für die Datengruppen 1 und 2, aber einen unbrauchbaren für die Datengruppe n.

Diskussion

Verbleibende Sicherheitsprobleme
Wie stark sind nun die beschriebenen Maßnahmen? Sie bieten zwei denkbare Angriffspunkte:
Paßwortfallen.
Dazu müßte der Angreifer in der Hardware eine "Wanze" installieren, die den Datenverkehr im System mithört; bei einem vernetzten System wären auch die Übertragungsleitungen abhörbar. In der Software könnte er ein "Trojanisches Pferd" installieren, das einen Teil des Datenverkehrs parallel in eine Datei abzweigt.
Klartextattacke.
Der Angreifer kann versuchen, das Verschlüsselungsverfahren zu brechen mit Hilfe seiner Kenntnis (oder Ahnung) der Klartexte zu gewissen verschlüsselten Daten.
Alle diese Arten von Attacken erfordern ein erhebliches kriminelles Potential und zum Teil auch erhebliche Kenntnisse und Fähigkeiten. Solche Angreifer sind in einer Klinik eher unwahrscheinlich. Ist für angemessene physische Sicherheit gesorgt und stimmt das organisatorische Umfeld, so sind die beschriebenen Sicherheitsvorkehrungen durchaus als "stark" im Sinne der IT-Sicherheitskriterien einzustufen [ZSI], was für ein klinisches Umfeld angemessen erscheint.

Gedanken zur praktischen Anwendung
Als Prototyp für das beschriebene Sicherheitssystem wurde bisher ein Texteditor entwickelt, der Texte beim Speichern verschlüsselt und beim Laden entschlüsselt. Der Einbau des Sicherheitssystems in die Anwendung TheMPO ist das nächste Ziel.

Bei aller Beachtung der Bequemlichkeit des Benutzers besteht doch ein Zielkonflikt zwischen Datenschutz und Ergonomie. Es ist sicher keine nennenswerte Abschwächung des Systems, wenn für den Routinebetrieb auf der Station ein gemeinsames PSE mit Minimalrechten vorgesehen wird, damit nicht jede Schwester, die schnell mal etwas nachsehen will, eine umständliche Überprüfung über sich ergehen lassen muß. Für die Ausübung weitergehender Rechte ist die Überprüfung jedoch unvermeidlich. Kann man es einem Arzt zumuten, bei Verordnungen seine Diskette zu zücken und ein Paßwort einzugeben? Immerhin wird ihm dadurch zugesichert, daß ihm niemand fremde Fehler unterschieben kann.

Es gibt sicher keine Patentlösungen. Ein Sicherheitssystem muß immer unter Aufwands-Nutzen-Äbwägungen konzipiert und auf die konkrete Situation zugeschneidert werden. Insbesondere bei Einbindung in ein Kliniksinformationssystem sind natürlich auch einige Randbedingungen zu beachten. Wirksamer Datenschutz in offenen und vernetzten Systemen ist nur mit kryptographischen Verfahren möglich. Konkrete Vorschläge für die notwendige "kryptographische Infrastruktur" (auch für Kliniksinformationssysteme) müssen von den Medizin-Informatikern kommen.

Literatur

[Beu]
Albrecht Beutelspacher: Kryptologie. Vieweg, Braunschweig 1987.
[Pom]
Klaus Pommerening: Datenschutz und Datensicherheit. BI-Wissenschaftsverlag, Mannheim usw. 1991.
[Sec]
Wolfgang Schneider: SecuDE Overwiew. Gesellschaft für Mathematik und Datenverarbeitung, Darmstadt 1992.
[ZSI]
Zentralstelle für Sicherheit in der Informationstechnik (Hrsg.): IT-Sicherheitskriterien -- Kriterien für die Bewertung der Sicherheit von Systemen der Informationstechnik (IT). Bundesanzeiger, Köln 1989.
[ZS2]
Zentralstelle für Sicherheit in der Informationstechnik (Hrsg.): IT-Evaluationshandbuch -- Handbuch für die Prüfung der Sicherheit von Systemen der Informationstechnik (IT). Bundesanzeiger, Köln 1990.


Zurück zum Schriftenverzeichnis von Klaus Pommerening