Was ist Zero Trust?
Gemäss Armon Dadgar besteht Zero Trust aus den folgenden beiden Prinzipien:
- Authentisiere und autorisiere explizit (authenticate and authorize explicitly)
- Unterbinde Zugriffe standardmässig (deny by default)
Weitere Definitionen und Umsetzungsmöglichkeiten von Zero Trust findest du im Kontext GCP von Matthias Hert oder im Kontext Microsoft von Christian Fehlmann und Michael Wachter. Wie diese Ansätze mit dem Open Policy Agent erweitert werden können, erklärt Christian Sanabria. Und Ryan Aebi erläutert, wie Sensitive Daten in Microservice-Architekturen mit konsistenten Policies geschützt werden können.
Das Prinzip «authentisiere und autorisiere explizit»
Damit ist gemeint, dass keiner Anfrage per se vertraut wird. Es werden nur Anfragen akzeptiert und weiterverarbeitet, nachdem mittels kryptographischer Verfahren überprüft werden konnte, von wem die Anfrage gestellt wurde (Authentisierung) und ob die Anfrage die notwendigen Berechtigungen besitzt (Autorisierung).
Es sind weiterhin Vertrauensbeziehungen notwendig (z.B. zu einem Security Token Service), diese sind nun jedoch transparent ersichtlich. Im Kern geht es jedoch darum, dass dem Netzwerk und den Netzwerkkomponenten nicht mehr blind vertraut wird.
Das Prinzip «unterbinde Zugriffe standardmässig»
Vor dem Aufkommen von Zero Trust basierte die Vertrauensarchitektur hauptsächlich auf der Netzwerkebene.
Dabei hat man das Netzwerk in verschiedene Segmente aufgeteilt und diese mittels Firewalls voneinander getrennt. Ein Segment entspricht dabei einer Vertrauensdomäne. Das bedeutet, allen Netzwerkteilnehmern innerhalb eines Segments wird grundsätzlich vertraut.
Mittels Firewallfreischaltungen hat man zusätzlich die Möglichkeit, Anfragen von anderen Segmenten Zugriff auf einzelne Teile dieser Vertrauensdomäne zu gewähren.
Diese Architektur funktioniert nur dann, wenn man davon ausgeht, dass es ein Angreifer niemals schaffen wird, in ein Segment einzudringen. Denn andernfalls ist sofort die gesamte Domäne kompromittiert. Man spricht dabei traditionell vom Perimeter-Schutz (siehe Abb. 1).
Mit dem standardmässigen Unterbinden von Zugriffen können wir den Schweregrad einer Attacke signifikant reduzieren, da nur noch Netzwerkzugriffe erlaubt sind, welche effektiv für den Betrieb notwendig sind. Bei Zero Trust werden Vertrauensbeziehungen feingranular auf Level Applikation gemanagt und nicht mehr auf Segmentebene (siehe Abb. 1).
Dies ist besonders relevant beim Wechsel in die Public-Cloud, wo es keinen klar definierten Perimeter mehr gibt.