Zugegeben, die Frage ist etwas aus dem Zusammenhang gerissen aber in Verbindung mit einer ZeroTrust Umgebung mehr als berechtigt. Aus diesem Grund beschäftigt sich der Artikel mit dem ZeroTrust Design und der daraus folgen Fragestellung, ob es denn eine klassische DMZ überhaupt noch nötigt macht? Um aber erst einmal in das Thema hineinzufinden, wird zu erst die ZeroTrust Umgebung an sich beleuchtet.
Die Idee einer ZeroTrust Umgebung gibt es schon länger. In den meisten Fällen ist der Aufbau einer solchen Umgebung immer an dem zugrundeliegenden Aufwand gescheitert. Zunächst jedoch erst einmal, ZeroTrust, was ist dies überhaupt?! ZeroTrust beschreibt ein Design einer Umgebung in der man nichts und niemanden vertraut, noch nicht einmal den eigenen Systemen oder dem lokalen Netzwerk. Jeder Host vertraut so zu sagen nur sich selbst und ist gegen die anderen Systeme in der Kommunikation abgeschottet. Es wird nur die zwingend notwendige Kommunikation zugelassen. Das war es dann aber auch schon, jedes System ist entsprechend den Regeln gegenüber den anderen isoliert. Da niemanden vertraut wird, ist dies eine ZeroTrust Umgebung. Neu ist dies allerdings nicht. Das Jericho-Konzept der OpenGroup, was prinzipiell auf zentrale Firewalls verzichten möchte und diese auf den Host verlagern will, ist schon ganze acht Jahre alt. Die Idee vielleicht schon länger. Daher kann man von “Neu” nicht sprechen, aber die Rahmenbedingungen haben sich verändert.
Heutige IT Services und die darunterliegenden Applikationen haben eine massive Änderung im Aufbau erfahren. Sehr viele dieser Service nutzen ein Scale Out Design und setzen schon auf Microservices statt einem monolithischen Aufbau. Es gibt häufig keine Session Persistance mehr, sondern nur noch ein einfaches Load Balancing. Viele Anwendungen sind von intern wie auch von extern aus dem Internet zu erreichen. DualStack mit IPv4 und IPv6 versteht sich von selbst. Es ist eben nicht mehr der klassische Webserver in der DMZ oder ein Microsoft Forefront der dann Zugriff auf die Domain Controller und das CAS Array hat. Die Applikationen sind im Wandel und Systeme wie NextGen ADC werden immer wichtiger. Es gibt bei den modernen Anwendungen nicht mehr die klare Trennung zwischen Komponenten im Server Netz und Komponenten in den DMZ’s. Dieses starre Layout steht im Widerspruch zu den Anforderungen an Hybrid-Cloud oder die Cloud an sich und sie machen Scale Out Modelle zu Nichte, weil die LAN und DMZ Komponenten eben nicht wie gewünscht skalieren.
Dies alles wirft die Frage nach dem Sinn einer klassischen DMZ auf. Das reine Vorhandensein einer DMZ hat an sich mit IT Sicherheit nichts zu tun. Zudem stellt sich auch die Frage, was passiert wenn ein System in der DMZ kompromittiert wird mit den anderen System im selben Netzwerksegment? Darf ein System dem anderen in der DMZ überhaupt vertrauen? So gesehen darf man es nicht. Dann sollte man jedes einzelne System in eine eigene DMZ stellen um diese gegenseitig abzuschotten. Das Ergebnis ist dann aber eine Art ZeroTrust Umgebung mit riesigen Aufwand für Implementierung und Wartung. Dazu kommt noch das hohe Aufkommen an Netzwerk-Traffic der gerouted werden muss und das alles über das zentrale Firewall System. Dies kann also nicht die Lösung sein und ein anderer Ansatz muss gefunden werden. Die Idee, dass sich jeder Host selbst um die Security in Form von Firewall Regeln kümmern soll wird immer charmanter gegenüber vielen DMZ’s, Unmengen an Rules auf der Firewall und dem Routing. Je nach Kompromittierungsgrad kann natürlich ein Angreifer die lokalen Richtlinien eines Hosts abändern. Daher ist bei einem solchen Vorgehen die Sicherheit davon abhängig, dass ein System in fremden Händen nicht die ganze Kette zu Fall bringt. Daher müssen die Regeln so gestaltet sein, das eingehende Verbindungen kontrolliert werden. Denn im Fall des Falles sind ausgehende Regeln nichts Wert. In komplett virtuellen Umgebungen und im Speziellen unter VMware bietet sich NSX für eine ZeroTrust Umgebung geradezu an. Denn hier hängen die Regeln nicht von jeweiligen Gast und dessen lokaler Firewall ab, sondern sind auf dem ESX Host bzw. dem NSX Layer implementiert und somit außerhalb des Systems. Auch wenn VMware sich das anders wünscht sind NSX Umgebungen doch noch sehr selten anzutreffen. Aber das Nichtvorhandensein von NSX sollte aber nicht davon abhalten über den Aufbau einer ZeroTrust Umgebung nachzudenken.
Es ist nicht ganz so einfach die DMZ loszulassen, da sie ja viele Jahre ein fester Bestandteil eines jeden Sicherheitskonzept ist. Auch muss ja nicht bedingungslos auf eine DMZ verzichtet werden. Es gibt immer noch Szenarien bei denen eine DMZ durchaus Sinn macht. Aber auch gibt es den Fall, bei dem eine DMZ überflüssig ist. Insbesondere auch dann, wenn zur Perimeter-Firewall noch Systeme wie IPS und moderne NextGen ADC’s zum Einsatz kommen, die Mehrwertfunktionen wie eine WAF oder andere Sicherheitsfeature bieten. Eine solche Kombination aus verschiedenen Sicherheitssystemen in Verbindung einer ZeroTrust Umgebung machen eine klassische DMZ überflüssig. Natürlich bedeutet eine ZeroTrust Umgebung etwas mehr Aufwand und erfordert auch das Wissen wer mit wem wie “sprechen” muss. Aber dieser Mehraufwand lohnt sich dann, sobald man die Vorteile und die Flexibilität von Scale Out Design nutzen kann oder gar muss und vielleicht auch noch Microservices als Synergieeffekt als ‘give away’ dazubekommt.
In den modernen Scale Out Umgebungen wird es eine Renaissance von Reverse Proxy Systemen in Form von NextGen ADC geben. Da gerade global zu erreichende Applikationen bei immer mehr Bandbreite die zur Verfügung steht, auch besser geschützt werden müssen. Zudem ändern sich auch stetig die Angriffsvektoren. Aber dazu mehr in den kommenden Artikel hier im Blog.