Isolations- oder Sicherheitszonen schützen Ihre Anwendungen und Daten vor Eindringlingen und können dazu beitragen, die Auswirkungen einer Sicherheitslücke zu begrenzen. [...]
Für ein erfolgreiches Unternehmen ist es entscheidend, dass Ihre Anwendungen sicher und geschützt sind. Unabhängig davon, ob Sie Cloud-native Anwendungsarchitekturen oder lokale Systeme – oder irgendetwas dazwischen – verwenden, gilt die Aufteilung Ihrer Infrastruktur in Sicherheitszonen als Best Practice. Diese Zonen bieten eine Schutzisolierung, die Ihre Anwendungen und deren Daten vor Angreifern von außen schützt. Ein Einbruch in einen Bereich hat somit nur Auswirkungen auf die Ressourcen in diesem einen Bereich.
Richtig angewandt, kann dieser zonenbasierte Isolierungsprozess eine Sicherheitsstörung, die andernfalls massive Auswirkungen auf die Integrität Ihrer Anwendung haben könnte, in ein viel kleineres Problem verwandeln, unter Umständen sogar in eine unbedeutende Störung mit minimalen Auswirkungen.
Sicherheitszonen verstehen
Es gibt zwar viele verschiedene Möglichkeiten, Sicherheitszonen einzurichten, aber ein gängiges Modell ist die Verwendung von drei Zonen. Die drei Zonen sorgen für eine Trennung zwischen dem öffentlichen Internet (öffentliche Zone) und Ihren internen Diensten und Datenspeichern (private Zone), indem sie eine Isolierungsschicht (DMZ) zwischen den beiden einfügen. Abbildung 1 zeigt, wie diese Bereiche zusammenarbeiten.
Benutzer interagieren mit Ihrer Anwendung über das öffentliche Internet, indem sie auf Dienste in der öffentlichen Zone zugreifen. Die öffentliche Zone ist an das Internet angeschlossen und somit frei zugänglich. Die Dienste in dieser Zone sind direkt dem Internet ausgesetzt und direkt über das Internet zugänglich. Die Dienste laufen auf Servern, die durch verschiedene Firewalls geschützt sind, aber sonst Datenverkehr direkt von Benutzern aus dem externen Internet empfangen.
Diese öffentlich zugänglichen Dienste übernehmen so wenig Arbeit wie möglich, aber eine ihrer wichtigsten Aufgaben ist es, die aus dem externen Internet empfangenen Daten zu regulieren und zu überprüfen, um sicherzustellen, dass sie gültig und angemessen sind. Diese Dienste sollten Denial-of-Service-Angriffe (DoS), das Eindringen von Angreifern und ungültige Eingaben von Endbenutzern filtern.
Der Großteil der Anwendung befindet sich in der privaten Zone. In dieser Zone werden die Anwendungsdaten gespeichert und die Dienste, die auf die Daten zugreifen und sie bearbeiten, sowie der Großteil des Backends Ihrer Anwendung. Hier sollte sich ein möglichst großer Teil der Anwendung befinden. Diese Zone ist am weitesten vom öffentlichen Internet entfernt. In dieser Zone gibt es keine öffentlich zugänglichen Server. Die Zone ist vom öffentlichen Internet so gut wie möglich isoliert.
Um die Sicherheit der privaten Zone zu gewährleisten, kann niemand direkt auf die Dienste in dieser Zone zugreifen. Auch Dienste in der öffentlichen Zone der Anwendung können nicht auf Dienste in der privaten Zone zugreifen. Stattdessen greifen die Dienste in der öffentlichen Zone über eine dritte Zone, die DMZ, auf die private Zone zu. Die DMZ oder Demilitarized Zone (entmilitarisierte Zone) ist eine Zwischenzone, die ein gewisses Maß an Isolierung und zusätzlicher Sicherheit zwischen der öffentlichen und der privaten Zone bietet und den Großteil der in der privaten Zone enthaltenen Anwendung weiter schützt.
Der Zweck dieses Drei-Zonen-Modells ist es, das “ unkontrollierte Internet“ von den empfindlichen Teilen Ihrer Anwendung fernzuhalten. Zwei isolierte Zonen, die öffentliche Zone und die DMZ, bieten eine Schutzschicht zwischen dem öffentlichen Internet und dem Großteil der Backend-Dienste.
Die Zonen sind voneinander isoliert, indem separate, private Netzwerksegmente verwendet werden, die über spezielle Sicherheits-Firewalls auf Netzwerk- und Anwendungsebene miteinander verbunden sind. Während der Datenverkehr in der öffentlichen Zone am Front-End in der Regel frei fließen kann, ist er in der privaten Zone am Back-End eingeschränkt, so dass nur die Dienste miteinander kommunizieren können, die dafür vorgesehen sind. Unnötige Kommunikation zwischen Backend-Diensten ist nicht erlaubt. All diese Beschränkungen sollen den Aktionsradius eines Angriffs begrenzen. Wenn ein Teil Ihres Systems kompromittiert wird, erschweren diese Schutzmaßnahmen es dem Angreifer, tiefer in Ihre Anwendung einzudringen. Ihre sensiblen Daten, die tief in den Innereien der privaten Zone gespeichert sind, sind durch mehrere Schutzschichten von den Angreifern getrennt.
Standardmäßige Cloud-Sicherheit
In der Cloud bieten Amazon Web Services (AWS), Microsoft Azure und Google Cloud standardmäßige Sicherheitsmechanismen, die bei der Erstellung und Verwaltung dieser Zonen helfen. AWS bietet beispielsweise spezielle Tools und Dienste, die bei der Erstellung dieser Sicherheitszonen helfen und die erforderliche Isolierung zwischen ihnen gewährleisten:
- Amazon VPCs.
VPCs, oder virtuelle private Clouds, bieten isolierte IP-Adressbereiche und Routing-Regeln. Jede Sicherheitszone kann als separate VPC erstellt werden. Anschließend werden spezifische Routing-Regeln erstellt, um den Verkehrsfluss zwischen den VPCs zu steuern. Indem Sie jede Zone zu einer separaten VPC machen, können Sie die Zonen einfach erstellen und isoliert halten. Bei diesem Modell bleibt der Datenverkehr innerhalb jeder Zone auf die jeweilige Zone beschränkt. Der Datenverkehr, der von einem Dienst in einer Zone zu einem Dienst in einer anderen Zone fließen soll, muss natürliche Opt-in-Punkte passieren, die die Art des fließenden Datenverkehrs begrenzen. Diese Firewalls auf Netzwerkebene sind die erste Verteidigungslinie, um Ihre Sicherheitszonen isoliert zu halten. - Sicherheitsgruppen.
Sicherheitsgruppen bieten Firewalls auf Serverebene, die den Datenverkehr kontrollieren, der in einzelne Instanzen fließt. Sie werden in der Regel an jede von Ihnen zugewiesene Serverinstanz angehängt, zusammen mit anderen Instanzen von Cloud-Komponenten, wie z. B. Datenbanken. Sicherheitsgruppen können verwendet werden, um unbefugten Zugriff auf eine bestimmte Komponente zu verhindern. Eine Sicherheitsgruppe kann beispielsweise sicherstellen, dass der auf dem Server eines Übergangsdienstes ankommende Datenverkehr von einer bestimmten Gruppe von Front-End-Diensten stammen muss und nicht von einem anderen Server im Internet stammen kann. Sicherheitsgruppen bieten eine solide Sicherheit auf Serverebene, erfordern jedoch eine sorgfältige Konfiguration, um sicherzustellen, dass sie nur den entsprechenden Datenverkehr zu bestimmten Instanzen zulassen. Daher sollten sie zusammen mit VPCs und nicht anstelle von VPCs verwendet werden, um Ihre Isolationszonen zu erstellen. - Netzwerk-ACLs.
Diese bieten Zugriffskontrolle auf Netzwerkebene. Sie verhindern, dass unerwünschter Datenverkehr innerhalb einer bestimmten VPC zwischen einzelnen Servern und Diensten fließt. Netzwerk-ACLs sind zustandslos, d. h. sie verwalten den IP-Verkehr auf unterster Ebene und nicht bestimmte Punkt-zu-Punkt-Kommunikationskanäle. Als solche bieten sie einen breiten Schutz für Ihre Sicherheitszonen, während Sicherheitsgruppen einen spezifischen, detaillierten Schutz bieten. Netzwerk-ACLs können beispielsweise verhindern, dass jemand versucht, sich direkt bei einem Backend-Dienst anzumelden, indem der gesamte SSH-Verkehr in der Zone unterbunden wird.
Für jede Sicherheitszone werden in der Regel unterschiedliche Sicherheitsregeln aufgestellt. In der öffentlichen Zone kann es zum Beispiel sinnvoll sein, den Diensten innerhalb dieser weniger sicheren Zone eine sehr offene Kommunikation zu erlauben. In der privaten Zone hingegen kann die Kommunikation zwischen Diensten stark eingeschränkt sein. Natürlich können die spezifischen Sicherheitsanforderungen, die Sie für jede Zone verwenden, je nach Anwendung stark variieren.
Wie auch immer Sie Ihre Sicherheitszonen einrichten, sie stellen eine solide Best Practice dar, um die Sicherheit Ihrer Anwendung zu verbessern und Ihre Daten sicher zu halten. Sicherheitszonen sollten als ein wichtiges Instrument zur Aufrechterhaltung der Anwendungssicherheit betrachtet werden.
*Lee Atchison ist ein anerkannter Vordenker im Bereich Cloud Computing und Anwendungsmodernisierung. Mit mehr als drei Jahrzehnten Erfahrung in den Bereichen Produktentwicklung, Architektur, Skalierung und Modernisierung hat Lee bei Amazon, Amazon Web Services (AWS), New Relic und anderen Unternehmen für moderne Anwendungen gearbeitet.
Be the first to comment