Zero Trust
Jeden Zugriff prüfen, auch im eigenen Netz
Die Idee und ihr Nutzen
Frau Meier arbeitet in der Schadenabteilung einer Versicherung und öffnet von ihrem Arbeitsplatz im Firmennetz den Schaden 4711. Dass Frau Meier im Firmennetz sitzt, genügt für den Zugriff nicht. Jede Anfrage von Frau Meier an den Schadendienst, das Programm mit den Schadenakten, nimmt zuerst ein vorgeschaltetes Programm an. Das vorgeschaltete Programm prüft, wer Frau Meier ist, ob ihr Gerät den Sicherheitsvorgaben entspricht, etwa aktuelle Sicherheitsupdates hat, und ob sie auf diesen Schaden zugreifen darf. Ruft der Schadendienst danach den Vertragsdienst auf, das Programm mit den Versicherungsverträgen, prüft ein zweites solches Programm auch diesen Aufruf: Der Schadendienst darf beim Vertragsdienst die Deckung abfragen, aber keine Verträge kündigen. Jede Zugriffsentscheidung richtet sich danach, wer oder welches Programm auf was zugreifen will, und nicht danach, von wo die Anfrage kommt. Dieses Sicherheitsprinzip heißt Zero Trust, auf Deutsch null Vertrauen. Der Name meint: Kein Mensch und kein Programm erhält Zugriff, nur weil die Anfrage aus dem Firmennetz kommt.
Wie funktioniert es?
Frau Meier will im Firmennetz Schaden 4711 öffnen. Zugriffsprüfung 1, das Programm, das jede Anfrage an den Schadendienst zuerst annimmt, prüft ihre Anmeldung mit Passwort und zusätzlichem Code, den Zustand ihres Geräts und ihre Zuständigkeit für Schaden 4711. Alles passt, und die Anfrage von Frau Meier gelangt zum Schadendienst. Um Frau Meier anzuzeigen, ob der Vertrag den Schaden deckt, schickt der Schadendienst eine Deckungsabfrage für Schaden 4711 an Zugriffsprüfung 2, das Programm, das jede Anfrage an den Vertragsdienst zuerst annimmt. Der Deckungsabfrage legt der Schadendienst sein digitales Zertifikat bei, einen fälschungssicheren elektronischen Ausweis. Zugriffsprüfung 2 prüft die Rechte des Schadendienstes. Die Deckungsabfrage ist erlaubt, das Kündigen von Verträgen nicht. Erst nach dieser Prüfung bearbeitet der Vertragsdienst die Deckungsabfrage und liefert den Deckungsstand an den Schadendienst. Frau Meier sieht den Schaden mit Deckung. Später übernimmt ein Angreifer den Schadendienst. Mit dem Zertifikat des Schadendienstes versucht der Angreifer, einen Vertrag zu kündigen. Zugriffsprüfung 2 weist die Kündigung ab, weil der Schadendienst dieses Recht nicht hat, obwohl der Schadendienst Deckungsdaten lesen darf. Deckungsabfragen bleiben dem Angreifer allerdings möglich. Dagegen helfen zusätzliche Maßnahmen, etwa eine Obergrenze für Abfragen und eine Überwachung auf ungewöhnliche Muster.
Eine Zugriffsprüfung ist ein Programm, das jede Anfrage an einen Dienst zuerst annimmt und sie erst an den Dienst weitergibt, wenn die Regeln den Zugriff erlauben. Weist eine Zugriffsprüfung eine Anfrage ab, erreicht die Anfrage den Dienst nicht, und der Dienst führt nichts aus. Schadendienst und Vertragsdienst haben je eine eigene Zugriffsprüfung, damit keine Anfrage einen der beiden Dienste ungeprüft erreicht. Zugriffsprüfung 1 und Zugriffsprüfung 2 können Exemplare desselben Programms sein; sie unterscheiden sich durch ihre Regeln. Zugriffsprüfung 1 prüft Menschen. Je nach Regel prüft Zugriffsprüfung 1 beim Gerät etwa, ob es dem Unternehmen gehört und aktuelle Sicherheitsupdates hat. Zugriffsprüfung 2 prüft Programme. Sie liest die Dienstidentität des aufrufenden Programms und vergleicht die gewünschte Funktion mit den Rechten dieses Programms. Beim Schadendienst ist die Dienstidentität das Zertifikat. Allgemein braucht Zero Trust Identitäten für Menschen, Geräte und Programme. Eine Identität ist ein überprüfbarer Nachweis, wer oder was anfragt. Die Regeln legen für jede Person und jedes Programm fest, auf welche Daten und Funktionen sie zugreifen dürfen. Eine einmalige Anmeldung am Morgen reicht nicht aus, weil jede einzelne Anfrage geprüft wird. Verschlüsselte Verbindungen verhindern, dass jemand im Firmennetz eine Deckungsabfrage mitliest oder verändert. Zugriffsprotokolle halten jeden Zugriff fest, sodass sich ein Vorfall später untersuchen lässt. Die Entscheidung, ob ein Zugriff erlaubt ist, ersetzen Verschlüsselung und Zugriffsprotokolle aber nicht.
Zero Trust: jeder Zugriff wird einzeln geprüft, auch im Firmennetz
Wann ist es sinnvoll und wann nicht?
Zero Trust lohnt sich
- Die Mitarbeitenden arbeiten von verschiedenen Orten aus und nutzen viele Dienste und Geräte. Zwischen „innen“ und „außen“ lässt sich dann ohnehin keine klare Grenze ziehen. Ohne Zero Trust hängt der Zugriff davon ab, ob Frau Meier gerade im Firmennetz sitzt. Mit Zero Trust hat Frau Meier im Büro, zu Hause und unterwegs dieselben Rechte und dieselben Prüfungen.
- Das Firmennetz ist nur nach außen durch eine Firewall geschützt. Eine Firewall ist ein Filter an der Grenze des Firmennetzes. Innerhalb des Firmennetzes vertrauen sich alle Geräte und Programme. Ein Angreifer gelangt zum Beispiel über ein gestohlenes Passwort oder einen Laptop mit Schadsoftware ins Firmennetz. Mit dem übernommenen Konto oder Gerät kann er dann beliebige Schadenakten öffnen. Mit Zero Trust genügt ein gestohlenes Passwort allein nicht, weil Zugriffsprüfung 1 auch den zusätzlichen Code, den Gerätezustand und die Zuständigkeit für den Schaden prüft.
- Interne Dienste wie Schadendienst und Vertragsdienst rufen einander auf. Ohne Zero Trust kann ein Angreifer, der den Schadendienst übernommen hat, beim Vertragsdienst auch Verträge kündigen, wenn der Vertragsdienst Anfragen aus dem Firmennetz pauschal annimmt. Mit Zero Trust weist Zugriffsprüfung 2 die Kündigung ab.
- Sensible Daten wie Schadenakten sollen nur für die zuständigen Personen und Programme zugänglich sein, unabhängig davon, von wo die Anfrage kommt. Ohne Zero Trust genügt beim Schadendienst oft schon, dass eine Anfrage aus dem Firmennetz kommt. Mit Zero Trust prüft Zugriffsprüfung 1 bei jeder Anfrage, ob Frau Meier für den Schaden zuständig ist.
- Nach einem Vorfall soll nachvollziehbar sein, wer oder welches Programm wann auf welchen Schaden zugegriffen hat. Ohne Zugriffsprüfungen hält niemand fest, welches Programm den Vertragsdienst aufgerufen hat, sofern der Vertragsdienst das nicht selbst protokolliert. Die Zugriffsprüfungen halten das in ihren Zugriffsprotokollen fest.
Zero Trust ist nicht das Richtige
- Das Unternehmen sucht ein Produkt, das es einmal installiert und mit dem es dann fertig ist. Zero Trust ist kein Produkt, sondern eine Art, Zugriffe zu planen und durchzusetzen: Das IT-Team erfasst Dienst für Dienst, wer worauf zugreift, stellt Regeln auf und passt sie laufend an. Steht dafür niemand bereit, bleibt es beim Schutz des Firmennetzes nach außen. Das Unternehmen kauft dann keine Zugriffsprüfungen, deren Regeln niemand pflegt.
- Zero Trust soll sorgfältige Programmierung oder das Schließen von Sicherheitslücken ersetzen. Hat der Schadendienst eine Sicherheitslücke, bleibt der Schadendienst angreifbar, auch wenn jeder Zugriff geprüft wird, denn ein Angreifer kann die Lücke auch mit erlaubten Anfragen ausnutzen. Dann schließen die Entwicklungsteams von Schadendienst und Vertragsdienst zuerst die Sicherheitslücken in diesen beiden Diensten.
- Noch ist nicht bekannt, welche Dienste es gibt und wer worauf zugreift. Ohne diese Übersicht lassen sich keine sinnvollen Regeln aufstellen. Dann erfasst das IT-Team zuerst alle Dienste und welcher Dienst welchen anderen aufruft und richtet Zugriffsprüfungen erst danach ein. So weist keine Zugriffsprüfung berechtigte Anfragen ab, nur weil eine Regel fehlt.
- Ein kleines Unternehmen hat wenige Dienste an einem Standort. Dann schützt das Unternehmen sein Firmennetz mit einer Firewall nach außen und gibt den Mitarbeitenden für Verbindungen von außen ein VPN. Ein VPN ist ein verschlüsselter Zugang ins Firmennetz. Dieser Aufbau braucht keine eigene Zugriffsprüfung für jeden Dienst und keine Dienstidentitäten, schützt aber nicht mehr, sobald ein Angreifer einmal im Firmennetz ist.
- Es genügt, zu begrenzen, wie weit sich ein Angreifer im Firmennetz bewegen kann. Dann teilt das IT-Team das Firmennetz in getrennte Abschnitte auf, zum Beispiel einen für die Arbeitsplätze und einen für die Server mit Schadendienst und Vertragsdienst. Jede Verbindung von einem Abschnitt in den anderen geht durch eine Firewall, die nur festgelegte Verbindungen durchlässt. Eine eigene Zugriffsprüfung für jeden Dienst und Dienstidentitäten entfallen.
Nachteile und typische Fehler
Die Regeln müssen genau passen. Zu streng gefasste Regeln blockieren berechtigte Arbeit. Übernimmt eine Sachbearbeiterin zum Beispiel den Fall einer Kollegin im Urlaub, muss sie dafür erst neue Rechte beantragen. Zu großzügige Regeln lassen dagegen Angriffe durch, etwa eine Kündigung über den übernommenen Schadendienst. Die Programme, die Anmeldungen prüfen, Zertifikate verwalten und die Regeln bereitstellen, müssen ständig verfügbar sein. Fällt einer dieser Bausteine aus, weisen die Zugriffsprüfungen auch berechtigte Anfragen ab. Jede zusätzliche Prüfung dauert außerdem etwas. Die Einführung in einem bestehenden Unternehmen ist aufwendig, weil alle Dienste und Zugriffe erfasst und mit Regeln versehen werden müssen. Auch jeder neue Dienst und jede neue Zusammenarbeit zwischen Diensten braucht eigene Regeln, bevor sie funktioniert.
Typische Fehler und woran man sie erkennt:
- Pauschal vertraute interne Aufrufe: Zugriffsprüfung 2 lässt jeden Aufruf aus dem Firmennetz durch, ohne die Dienstidentität zu prüfen. Übernimmt ein Angreifer den Schadendienst, schickt er eine Kündigung an Zugriffsprüfung 2, und Zugriffsprüfung 2 gibt die Kündigung an den Vertragsdienst weiter. Der Vertragsdienst kündigt den Vertrag. Erkennbar ist das an Aufrufen beim Vertragsdienst, die keine Dienstidentität enthalten.
- Zu weite Rechte: Der Schadendienst darf beim Vertragsdienst alle Funktionen aufrufen statt nur die Deckungsabfrage. Zugriffsprüfung 2 prüft dann zwar das Zertifikat, lässt aber auch eine Kündigung durch, die ein Angreifer über den übernommenen Schadendienst schickt. Erkennbar ist das an Regeln, die einem Programm alle Funktionen eines anderen Programms erlauben.
- Zugriffsprüfung ohne Ersatz: Zugriffsprüfung 1 ist nur einmal vorhanden und fällt aus. Jede Anfrage an den Schadendienst läuft durch Zugriffsprüfung 1, deshalb erreicht keine Anfrage mehr den Schadendienst, und niemand kann auf Schadenakten zugreifen. Erkennbar ist das daran, dass der Schadendienst läuft, aber keine Anfragen mehr erhält.
- Abgelaufenes Zertifikat: Zertifikate für Dienste laufen ab, und das Zertifikat des Schadendienstes wird nicht rechtzeitig erneuert. Zugriffsprüfung 2 weist alle Deckungsabfragen des Schadendienstes ab, und die Sachbearbeiter sehen zu keinem Schaden mehr, ob der Vertrag ihn deckt. Erkennbar ist das an abgewiesenen Aufrufen genau ab dem Ablaufdatum des Zertifikats.
- Unbemerkter Missbrauch erlaubter Rechte: Ein Angreifer stellt über den übernommenen Schadendienst massenhaft Deckungsabfragen, die die Regeln erlauben. Ohne Obergrenze und Überwachung fällt das nicht auf. Erkennbar ist das erst an ungewöhnlich vielen Abfragen eines Dienstes in kurzer Zeit.
Weiterführend
Verwandte Ansätze
- Least Privilege: gibt jeder Person und jedem Programm nur die Rechte, die für die Aufgabe nötig sind, wie dem Schadendienst die Deckungsabfrage ohne das Kündigen.
- Defense in Depth: schützt mit mehreren unabhängigen Maßnahmen, sodass ein gestohlenes Passwort allein nicht ausreicht. Die Prüfung bei jedem einzelnen Zugriff ist eine dieser Maßnahmen.
- Attribute Based Access Control: entscheidet über einen Zugriff anhand von Merkmalen wie Region, Betrag oder Zuständigkeit und eignet sich für Regeln wie „zuständig für Schaden 4711“.
- Service Mesh: kann Verbindungen zwischen Programmen einheitlich verschlüsseln und festlegen, welche Programme miteinander Daten austauschen dürfen, und so einen Teil der Prüfung zwischen Diensten übernehmen.
Quellen
- Scott Rose, Oliver Borchert, Stu Mitchell, Sean Connelly, NIST: SP 800-207, Zero Trust Architecture: Veröffentlichung der US-Normungsbehörde NIST von 2020, die Zero Trust als Abkehr vom Vertrauen nach Netzwerkort beschreibt und die Prüfung von Personen und Geräten vor jedem Zugriff auf eine Ressource verlangt.
- Rory Ward, Betsy Beyer: BeyondCorp. A New Approach to Enterprise Security: Aufsatz von 2014, in dem Google beschreibt, warum ein vertrauenswürdiges internes Firmennetz nach einem Einbruch keinen Schutz mehr bietet und wie Google darauf verzichtet.