GCP - VPC & Networking

Erlernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

GCP Compute Networking im Überblick

VPCs enthalten Firewall-Regeln, um eingehenden Datenverkehr zum VPC zuzulassen. VPCs enthalten auch Subnetzwerke, in denen virtuelle Maschinen verbunden werden. Im Vergleich zu AWS wäre die Firewall das nächste an AWS-Sicherheitsgruppen und NACLs, aber in diesem Fall sind diese im VPC definiert und nicht in jeder Instanz.

VPC, Subnetzwerke & Firewalls in GCP

Compute-Instanzen sind mit Subnetzwerken verbunden, die Teil von VPCs (Virtual Private Clouds) sind. In GCP gibt es keine Sicherheitsgruppen, sondern VPC-Firewalls mit Regeln, die auf dieser Netzwerkebene definiert sind, aber auf jede VM-Instanz angewendet werden.

Subnetzwerke

Ein VPC kann mehrere Subnetzwerke haben. Jedes Subnetzwerk befindet sich in einer Region.

Firewalls

Standardmäßig hat jedes Netzwerk zwei implizite Firewall-Regeln: Erlaube ausgehenden und Verweigere eingehenden Datenverkehr.

Wenn ein GCP-Projekt erstellt wird, wird auch ein VPC namens default erstellt, mit den folgenden Firewall-Regeln:

  • default-allow-internal: erlaube allen Datenverkehr von anderen Instanzen im default-Netzwerk

  • default-allow-ssh: erlaube 22 von überall

  • default-allow-rdp: erlaube 3389 von überall

  • default-allow-icmp: erlaube Ping von überall

Wie Sie sehen können, neigen Firewall-Regeln dazu, für interne IP-Adressen offener zu sein. Das Standard-VPC erlaubt allen Datenverkehr zwischen Compute-Instanzen.

Es können weitere Firewall-Regeln für das Standard-VPC oder für neue VPCs erstellt werden. Firewall-Regeln können auf Instanzen über die folgenden Methoden angewendet werden:

Leider gibt es keinen einfachen gcloud-Befehl, um alle Compute-Instanzen mit offenen Ports im Internet anzuzeigen. Sie müssen die Verbindung zwischen Firewall-Regeln, Netzwerk-Tags, Dienstkonten und Instanzen herstellen.

Dieser Prozess wurde mit diesem Python-Skript automatisiert, das Folgendes exportiert:

  • CSV-Datei, die Instanz, öffentliche IP, erlaubtes TCP, erlaubtes UDP zeigt

  • nmap-Scan, um alle Instanzen auf Ports zu zielen, die von öffentlichen Internetverbindungen (0.0.0.0/0) erlaubt sind

  • masscan, um den vollständigen TCP-Bereich dieser Instanzen zu zielen, die ALLE TCP-Ports aus dem öffentlichen Internet (0.0.0.0/0) erlauben

Hierarchische Firewall-Richtlinien

Hierarchische Firewall-Richtlinien ermöglichen es Ihnen, eine konsistente Firewall-Richtlinie in Ihrer Organisation zu erstellen und durchzusetzen. Sie können hierarchische Firewall-Richtlinien der Organisation als Ganzes oder einzelnen Ordnern zuweisen. Diese Richtlinien enthalten Regeln, die Verbindungen explizit verweigern oder zulassen können.

Sie erstellen und wenden Firewall-Richtlinien als separate Schritte an. Sie können Firewall-Richtlinien an den Organisations- oder Ordnernodes der Ressourcenhierarchie erstellen und anwenden. Eine Firewall-Richtlinienregel kann Verbindungen blockieren, Verbindungen zulassen oder die Auswertung von Firewall-Regeln an untergeordnete Ordner oder VPC-Firewall-Regeln in VPC-Netzwerken delegieren.

Standardmäßig gelten alle hierarchischen Firewall-Richtlinienregeln für alle VMs in allen Projekten unter der Organisation oder dem Ordner, in dem die Richtlinie zugeordnet ist. Sie können jedoch einschränken, welche VMs eine bestimmte Regel erhalten, indem Sie Zielnetzwerke oder Ziel-Dienstkonten angeben.

Hier erfahren Sie, wie Sie eine hierarchische Firewall-Richtlinie erstellen.

Auswertung von Firewall-Regeln

  1. Org: Firewall-Richtlinien, die der Organisation zugewiesen sind

  2. Ordner: Firewall-Richtlinien, die dem Ordner zugewiesen sind

  3. VPC: Firewall-Regeln, die dem VPC zugewiesen sind

  4. Global: Ein weiterer Typ von Firewall-Regeln, die VPCs zugewiesen werden können

  5. Regional: Mit dem VPC-Netzwerk des NIC der VM und der Region der VM verbundene Firewall-Regeln.

VPC-Netzwerk-Peering

Ermöglicht die Verbindung von zwei Virtual Private Cloud (VPC)-Netzwerken, damit Ressourcen in jedem Netzwerk miteinander kommunizieren können. Gepaarte VPC-Netzwerke können im selben Projekt, in verschiedenen Projekten derselben Organisation oder in verschiedenen Projekten verschiedener Organisationen sein.

Folgende Berechtigungen sind erforderlich:

  • compute.networks.addPeering

  • compute.networks.updatePeering

  • compute.networks.removePeering

  • compute.networks.listPeeringRoutes

Mehr in der Dokumentation.

Referenzen

Erlernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated