OWASP Top 10 2021 – Optionen zur Risikominimierung in Google Cloud

Last reviewed 2021-12-12 UTC

In diesem Dokument erfahren Sie, wie Google Cloud-Produkte und Strategien zur Schadensminderung Sie vor gängigen Angriffen auf Anwendungsebene schützen, die in OWASP Top 10 beschrieben sind. OWASP Top 10 sind eine Liste der Open Web Application Security (OWASP) Foundation mit den 10 häufigsten Sicherheitsrisiken, die jeder Inhaber von Anwendungen kennen sollte. Obwohl kein Sicherheitsprodukt einen vollständigen Schutz vor diesen Risiken bieten kann, kann die Anwendung dieser Produkte und Dienste, wenn sie in Ihrer Architektur sinnvoll sind, zu einer starken mehrstufigen Sicherheitslösung beitragen.

Mit der Google-Infrastruktur können Sie Dienste sicher erstellen, bereitstellen und betreiben. Die physische und operative Sicherheit, Datenverschlüsselung bei Inaktivität und während der Übertragung sowie viele andere wichtige Aspekte einer sicheren Infrastruktur werden von Google verwaltet. Sie erben diese Vorteile, wenn Sie Ihre Anwendungen in Google Cloud bereitstellen. Möglicherweise müssen Sie jedoch zusätzliche Maßnahmen ergreifen, um Ihre Anwendung vor bestimmten Angriffen zu schützen.

Die in diesem Dokument aufgeführten Strategien zur Risikominderung sind nach dem Risiko für die Anwendungssicherheit und dem Google Cloud-Produkt sortiert. Viele Produkte spielen eine Rolle bei der Erstellung einer Strategie der gestaffelten Sicherheitsebenen zum Schutz vor Sicherheitsrisiken im Web. Dieses Dokument enthält Informationen darüber, wie andere Produkte die OWASP Top 10-Risiken mindern können. Es enthält jedoch zusätzliche Informationen dazu, wie Google Cloud Armor und Apigee eine breite Palette dieser Risiken mindern können. Google Cloud Armor als Web Application Firewall (WAF) sowie Apigee als API-Gateway können besonders hilfreich sein, wenn Sie verschiedene Arten von Angriffen blockieren möchten. Diese Produkte befinden sich im Trafficpfad aus dem Internet und können externen Traffic blockieren, bevor er Ihre Anwendungen in Google Cloud erreicht.

Produktübersicht

Die in der folgenden Tabelle aufgeführten Google Cloud-Produkte können Sie vor den Top-10-Sicherheitsrisiken schützen:

Produkt Fazit A01 A02 A03 A04 A05 A06 A07 A08 A09 A10
Access Transparency Durch Logs zu Administratorzugriffen und Genehmigungssteuerungen mehr Einblicke und Kontrolle in Ihren Cloud-Anbieter erhalten
Artifact Registry Speichert Artefakte und Build-Abhängigkeiten zentral
Apigee APIs entwerfen, schützen und skalieren
Binärautorisierung Sicherstellen, dass nur vertrauenswürdige Container-Images in Google Kubernetes Engine bereitgestellt werden
Chronicle Die Infrastruktur, Erkennungstechniken und Signale von Google nutzen, um Bedrohungen in Echtzeit und in großem Maßstab automatisch zu erkennen
Cloud Asset Inventory Alle Google Cloud- und Google Distributed Cloud Virtual- oder Multi-Cloud-Assets projekt- und dienstübergreifend aufrufen, überwachen und analysieren
Cloud Build In Google Cloud erstellen, testen und bereitstellen
Schutz sensibler Daten Vertrauliche Daten ermitteln, klassifizieren und schützen
Cloud Load Balancing Steuern, welche Chiffren Ihr SSL-Proxy oder HTTPS-Load-Balancer aushandelt
Cloud Logging Logverwaltung und -analyse in Echtzeit und im großen Maßstab
Cloud Monitoring Messwerte, Ereignisse und Metadaten aus Google Cloud-Diensten und einer Vielzahl von Anwendungen und Drittanbieterdiensten erfassen und analysieren
Cloud Source Repositories Code zentral für Ihr Team speichern, verwalten und verfolgen
Container Threat Detection Kontinuierlich den Status von Container-Images überwachen, alle Änderungen evaluieren und Remote-Zugriffsversuche überwachen, um Laufzeitangriffe nahezu in Echtzeit zu erkennen
Event Threat Detection Den Cloud Logging-Stream Ihrer Organisation überwachen und Bedrohungen nahezu in Echtzeit erkennen
Forseti Inventory Snapshots Ihrer Architektur erfassen und speichern
Forseti Scanner Inventardaten gemäß benutzerdefinierten Richtlinien scannen und Benachrichtigungen zu unerwarteten Abweichungen senden
Google Cloud Armor Eine Web Application Firewall (WAF), die am Rand des Google-Netzwerks zum Schutz vor gängigen Angriffsvektoren bereitgestellt wird
Google Cloud-Sicherheitsbulletins Die neuesten Sicherheitsbulletins zu Google Cloud-Produkten
Identity-Aware Proxy (IAP) Zugriff auf Anwendungen und VMs anhand von Identität und Kontext beschränken
Identity Platform Funktionen zur Identitäts- und Zugriffsverwaltung für Anwendungen hinzufügen, Nutzerkonten schützen und Identitätsverwaltung skalieren
Cloud Key Management Service Verschlüsselungsschlüssel in Google Cloud verwalten
reCAPTCHA Enterprise Schützen Sie Ihre Website vor Betrug, Spam und Missbrauch
Secret Manager API-Schlüssel, Passwörter, Zertifikate und andere sensible Daten speichern
Security Command Center Zentralisierte Sichtbarkeit für Sicherheitsanalysen und Threat Intelligence, um Sicherheitslücken in Ihren Anwendungen zu erkennen
Security Health Analytics (SHA) Ergebnisse zu Sicherheitslücken generieren, die in Security Command Center verfügbar sind
Titan-Sicherheitsschlüssel Wichtige Nutzer mit Phishing-resistenten 2FA-Geräten (Zwei-Faktor-Authentifizierung) schützen, die mit einem Hardwarechip mit einer von Google entwickelten Firmware erstellt wurden, um die Integrität des Schlüssels zu verifizieren.
Virtual Private Cloud-Firewalls Verbindungen zu oder von Ihren VM-Instanzen (virtuelle Maschinen) zulassen oder ablehnen
VPC Service Controls Ressourcen mehrmandantenfähiger Google Cloud-Dienste isolieren, um das Risiko der Daten-Exfiltration zu minimieren
VirusTotal Verdächtige Dateien und URLs analysieren, um Arten von Malware zu erkennen und automatisch in der Sicherheits-Community freizugeben
Web Security Scanner In Security Command Center verfügbare Ergebnistypen für Sicherheitslücken generieren

A01: Fehlerhafte Zugriffssteuerung

Gefährdete Zugriffssteuerung bezieht sich auf Zugriffssteuerungen, die nur teilweise auf Clientseite erzwungen oder schwach implementiert werden. Um diese Steuerungen zu entschärfen, muss die Anwendung häufig neu geschrieben werden, um ordnungsgemäß zu erzwingen, dass nur autorisierte Nutzer auf Ressourcen zugreifen.

Apigee

Anwendungsfall:

  • Zugriffssteuerung erzwingen
  • Datenbearbeitung einschränken

Apigee unterstützt einen mehrstufigen Ansatz zur Implementierung von Zugriffssteuerungen, um zu verhindern, dass böswillige Nutzer Änderungen vornehmen oder auf das System zugreifen.

Konfigurieren Sie die rollenbasierte Zugriffssteuerung, um Nutzern nur den Zugriff auf die Funktionen und Konfigurationen zu ermöglichen, die sie benötigen. Erstellen Sie verschlüsselte Schlüssel/Wert-Zuordnungen, um vertrauliche Schlüssel/Wert-Paare zu speichern. Diese werden in der Edge-UI und in Management API-Aufrufen maskiert angezeigt. Konfigurieren Sie die Einmalanmeldung (SSO) mit dem Identitätsanbieter Ihres Unternehmens.

Konfigurieren Sie Entwicklerportale, um bestimmte API-Produkte entsprechend der Nutzerrolle anzuzeigen. Konfigurieren Sie das Portal so, dass Inhalte je nach Nutzerrolle ein- oder ausgeblendet werden.

Cloud Asset Inventory

Anwendungsfall:

  • Monitoring von nicht autorisierter IT (auch als "Schatten-IT" bezeichnet)
  • Veraltete Compute-Instanzen

Einer der am häufigsten verwendeten Vektoren für die Datenfreigabe ist eine verwaiste oder nicht autorisierte IT-Infrastruktur. Richten Sie Echtzeitbenachrichtigungen ein, um bei der unerwarteten Ausführung von Ressourcen benachrichtigt zu werden, die möglicherweise nicht richtig gesichert sind oder veraltete Software verwenden.

Cloud Load Balancing

Anwendungsfall:

  • Detaillierte Steuerung von SSL- und TLS-Chiffren

Vermeiden Sie die Verwendung von SSL- oder TLS-Chiffren mit Sicherheitslücken, indem Sie eine vordefinierte Gruppe oder benutzerdefinierte Liste von Chiffren zuweisen, die Cloud Load Balancing verwenden kann.

Forseti Scanner

Anwendungsfall:

  • Monitoring der Konfiguration von Zugriffssteuerungen

Überwachen Sie Google Cloud-Ressourcen systematisch, um sicherzustellen, dass die Zugriffssteuerungen wie gewünscht eingerichtet sind. Erstellen Sie regelbasierte Richtlinien, um Ihren Sicherheitsansatz zu verschlüsseln. Wenn sich die Konfiguration unerwartet ändert, werden Sie von Forseti Scanner benachrichtigt, damit Sie automatisch einen bekannten Zustand wiederherstellen können.

Google Cloud Armor

Anwendungsfall:

  • Ursprungsübergreifende Anfragen filtern
  • LFI- oder RFI-Angriffe (Local File Inclusion, Remote File Inclusion) filtern
  • HTTP-Parameter-Pollution-Angriffe filtern

In vielen Fällen kann die fehlerhafte Zugriffssteuerung nicht durch die Verwendung einer Firewall für Webanwendungen abgemildert werden, da die Anwendungen nicht für jede Anfrage Zugriffstokens anfordern oder diese nicht korrekt prüfen und Daten auf der Clientseite manipuliert werden können. Juice Shop-Challenges im Zusammenhang mit einer fehlerhaften Zugriffssteuerung. Das Posten von Feedback im Namen eines anderen Nutzers basiert beispielsweise auf der Tatsache, dass einige Anfragen nicht serverseitig authentifiziert werden. Wie Sie in der Challenge-Lösung sehen können, ist das Exploit dieser Sicherheitslücke vollständig clientseitig und kann daher nicht mit Google Cloud Armor behoben werden.

Einige Challenges können teilweise serverseitig gemindert werden, wenn die Anwendung nicht sofort gepatcht werden kann.

Wenn beispielsweise CSRF-Angriffe (Cross-Site-Request Forgery) möglich sind, da Ihr Webserver Cross-Origin Resource Sharing (CORS) nicht richtig implementiert, wie in der CSRF Juice Shop-Challenge gezeigt, können Sie dieses Problem beheben, indem Sie Anfragen unerwarteten Ursprungs vollständig mit einer benutzerdefinierten Regel blockieren. Die folgende Regel gleicht alle Anfragen mit Ursprüngen außer "example.com" und "google.com" ab:

has(request.headers['origin']) &&
!((request.headers['origin'] == 'https://example.com')||
(request.headers['origin'] == 'https://google.com') )

Wenn der Traffic, der einer solchen Regel entspricht, abgelehnt wird, funktioniert die Lösung für die CSRF-Challenge nicht mehr.

Die Challenge zur Manipulation von Warenkörben verwendet HTTP-Parameter-Pollution (HPP), damit Sie sehen können, wie der Shop angegriffen wird, wie in der Challenge-Lösung beschrieben. HPP wird als Teil des Regelsatzes zu Protokollangriffen erkannt. Verwenden Sie die folgende Regel, um diese Art von Angriffen zu blockieren: evaluatePreconfiguredExpr('protocolattack-stable').

Identity-Aware Proxy und kontextsensitiver Zugriff

Anwendungsfall:

  • Zentrale Zugriffssteuerung
  • Kompatibel mit Cloud-Umgebungen und lokalen Umgebungen
  • Schützt HTTP- und TCP-Verbindungen
  • Kontextsensitiver Zugriff

Mit IAP können Sie anhand von Identität und Kontext für Ihre Anwendung eine sichere Firewall für Authentifizierung und Autorisierung erstellen. Verhindern Sie eine fehlerhafte Autorisierung oder Zugriffssteuerung auf Ihre öffentliche Anwendung mit einem zentral verwalteten Authentifizierungs- und Autorisierungssystem, das auf Cloud Identity und IAM basiert.

Erzwingen Sie detaillierte Zugriffssteuerungen für Webanwendungen, VMs, Google Cloud APIs und Google Workspace-Anwendungen basierend auf der Nutzeridentität und dem Kontext der Anfrage ohne die Notwendigkeit eines herkömmlichen VPNs. Verwenden Sie eine einzige Plattform sowohl für Ihre Cloud-Anwendungen als auch für lokale Anwendungen und Infrastrukturressourcen.

Security Health Analytics

Anwendungsfall:

  • MFA- oder 2FA-Erzwingung
  • API-Schlüssel schützen
  • SSL-Richtlinienüberwachung

Verhindern Sie eine fehlerhafte Zugriffssteuerung, indem Sie die Einhaltung der Multi-Faktor-Authentifizierung, SSL-Richtlinien und die Integrität Ihrer API-Schlüssel überwachen.

Web Security Scanner

Anwendungsfall:

  • Öffentlich zugängliche Repositories
  • Unsichere Anfrageheader-Validierung

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken wie öffentlich zugängliche Code-Repositories und die falsch konfigurierte Validierung von Anfrageheadern.

A02: Kryptografische Fehler

Kryptografische Fehler können aufgrund einer fehlenden oder schwachen Verschlüsselung während der Übertragung oder versehentlichen Offenlegung sensibler Daten auftreten. Angriffe auf diese Sicherheitslücken beziehen sich normalerweise auf die Anwendung und erfordern daher einen gestaffelten Sicherheitsansatz, um das Sicherheitsrisiko zu minimieren.

Apigee

Anwendungsfall:

  • Sensible Daten schützen

Verwenden Sie One-Way- und Two-Way-TLS, um vertrauliche Informationen auf Protokollebene zu schützen.

Verwenden Sie Richtlinien wie die AssignMessage-Richtlinie und JavaScript-Richtlinie, um sensible Daten zu entfernen, bevor sie an den Client zurückgegeben werden.

Verwenden Sie Standard-OAuth-Techniken und erwägen Sie das Hinzufügen von HMAC-, Hash-, Status-, Nonce-, PKCE- oder anderer Techniken, um die Authentifizierungsstufe für jede Anfrage zu verbessern.

Maskieren Sie vertrauliche Daten im Edge Trace-Tool.

Verschlüsseln Sie sensible inaktive Daten in Schlüssel/Wert-Zuordnungen.

Cloud Asset Inventory

Anwendungsfall:

  • Suchdienst
  • Zugriffsanalysetool

Einer der am häufigsten verwendeten Vektoren für die Datenfreigabe ist eine verwaiste oder nicht autorisierte IT-Infrastruktur. Durch das Analysieren von Zeitachsendaten aus Cloud-Assets können Sie Server identifizieren, die von niemandem verwaltet werden, und Buckets mit übermäßigen Freigaberegeln ermitteln.

Richten Sie Echtzeitbenachrichtigungen ein, um bei einer unerwarteten Bereitstellung von Ressourcen, die möglicherweise nicht richtig gesichert oder nicht autorisiert sind, benachrichtigt zu werden.

Cloud Data Loss Prevention API (Teil des Schutzes sensibler Daten)

Anwendungsfall:

  • Erkennung und Klassifizierung vertraulicher Daten
  • Automatische Datenmaskierung

Mit der Cloud Data Loss Prevention API (DLP API) können Sie nach potenziell sensiblen Daten suchen, die in Buckets oder Datenbanken gespeichert sind, um unbeabsichtigte Datenlecks zu verhindern. Wenn unzulässige Daten identifiziert werden, können diese automatisch gekennzeichnet oder entfernt werden.

Cloud Key Management Service

Anwendungsfall:

  • Sichere Verwaltung kryptografischer Schlüssel

(Cloud KMS) hilft dabei, eine potenzielle Offenlegung Ihrer kryptografischen Schlüssel zu verhindern. Mit diesem in der Cloud gehosteten Schlüsselverwaltungsdienst können Sie symmetrische und asymmetrische kryptografische Schlüssel für Ihre Cloud-Dienste genauso verwalten wie bei Ihnen vor Ort. Sie können kryptografische Schlüssel der Varianten AES-256, RSA-2048, RSA-3072, RSA-4096, EC P-256 und EC P-384 erstellen, verwenden, rotieren und löschen.

Cloud Load Balancing

Anwendungsfall:

  • Detaillierte Steuerung von SSL- und TLS-Chiffren

SSL-Richtlinien können die Offenlegung vertraulicher Daten verhindern, da Sie Ihnen Kontrolle über die SSL- und TLS-Features und -Chiffren bieten, die in einem Load-Balancer zulässig sind. Blockieren Sie nicht genehmigte oder unsichere Chiffren nach Bedarf.

Google Cloud Armor

Anwendungsfall:

  • Bekannte Angriffs-URLs filtern
  • Zugriff auf vertrauliche Endpunkte einschränken

Im Allgemeinen sollte die Offenlegung sensibler Daten an der Quelle gestoppt werden. Da jedoch jeder Angriff anwendungsspezifisch ist, können Web Application Firewalls nur eingeschränkt genutzt werden, um den Zugriff auf Daten umfassend zu unterbinden. Wenn Ihre Anwendung jedoch nicht sofort gepatcht werden kann, können Sie den Zugriff auf anfällige Endpunkte oder Anfragemuster mit benutzerdefinierten Google Cloud Armor-Regeln einschränken.

Beispielsweise können mehrere Juice Shop-Challenges in Bezug auf die Offenlegung sensibler Daten aufgrund eines unsicheren Verzeichnisdurchlaufs und Nullbyte-Injection-Angriffen genutzt werden. Sie können diese Injections reduzieren. Dazu prüfen Sie die Strings in der URL auf folgenden benutzerdefinierten Ausdruck:

request.path.contains("%00") || request.path.contains("%2500")

Die Herausforderung für die verfügbaren Messwerte können Sie durch Aufrufen des Unterverzeichnisses /metrics lösen, das von Prometheus verwendet wird. Wenn Sie einen vertraulichen Endpunkt haben, der zugänglich ist, und Sie den Zugriff nicht sofort entfernen können, können Sie den Zugriff bis auf bestimmte IP-Adressbereiche einschränken. Verwenden Sie eine Regel, die dem folgenden benutzerdefinierten Ausdruck ähnelt:

request.path.contains("/metrics") && !(inIpRange(origin.ip, '1.2.3.4/32')

Ersetzen Sie 1.2.3.4/32 durch den IP-Adressbereich, der Zugriff auf die Schnittstelle der Messwerte haben soll.

Versehentlich bereitgestellte Logdateien werden zur Lösung einer der Juice Shop-Challenges verwendet. Um das Offenlegen von Logs zu verhindern, legen Sie eine Regel fest, die den Zugriff auf Logdateien vollständig verhindert: request.path.endsWith(".log").

Identity-Aware Proxy und kontextsensitiver Zugriff

Anwendungsfall:

  • Sicherer Remotezugriff auf vertrauliche Dienste
  • Zentrale Zugriffssteuerung
  • Kontextsensitiver Zugriff

Bilden Sie anhand von Identität und Kontext einen sicheren Authentifizierungs- und Autorisierungsperimeter um Ihre Anwendung. Stellen Sie Tools wie interne Fehlerberichte, die unternehmenseigene Wissensdatenbank oder E-Mail-Adressen hinter IAP bereit, um kontextsensitiven Zugriff nur für autorisierte Personen im Internet zu gestatten.

Mit dem kontextsensitiven Zugriff können Sie detaillierte Zugriffssteuerungen für Webanwendungen, virtuelle Maschinen (VMs), Google Cloud APIs und Google Workspace-Anwendungen anhand der Nutzeridentität und des Kontextes der Anfrage ohne herkömmliches VPN erzwingen. Auf der Grundlage des Zero-Trust-Sicherheitsmodells und der BeyondCorp-Implementierung von Google können Sie mit dem kontextsensitiven Zugriff Nutzern Zugriff gewähren, detaillierte Steuerungen erzwingen und eine zentrale Plattform für sowohl Ihre Cloud-Anwendungen als auch lokale Anwendungen und Infrastrukturressourcen nutzen.

Secret Manager

Anwendungsfall:

  • Kryptografische Schlüssel
  • API-Schlüssel
  • Sonstige Systemanmeldedaten

Secret Manager ist ein sicherer Speicherdienst für Ihre wertvollsten Daten, z. B. API-Schlüssel, Dienstkontopasswörter und kryptografische Assets. Mit der zentralen Speicherung dieser Secrets können Sie sich auf die Authentifizierungs- und Autorisierungssysteme von Google Cloud, einschließlich IAM, verlassen, um zu ermitteln, ob eine bestimmte Zugriffsanfrage gültig ist.

Secret Manager wurde nicht für umfangreiche Skalierungen wie die Tokenisierung von Kreditkarten oder die Speicherung von einzelnen Nutzerpasswörtern entwickelt. Solche Anwendungen sollten Identity Platform for CIAM, Cloud Identity für Mitglieder Ihrer Organisation oder dedizierte Tokenisierungssoftware nutzen.

Security Health Analytics

Anwendungsfall:

  • MFA/2FA erzwingen
  • API-Schlüssel schützen
  • API-Schlüsselrotation erzwingen
  • Datenschutz für Compute-Images
  • SSH-Schlüsselregeln erzwingen
  • Secure Boot-Monitoring
  • Sicherheit von API-Zugriffen
  • SSL-Richtlinienüberwachung
  • Deaktiviertes Logging
  • Benachrichtigungen für öffentliche Bucket-ACLs

Verhindern Sie die Offenlegung sensibler Daten, indem Sie die Einhaltung der Multi-Faktor-Authentifizierung und den Status Ihrer API-Schlüssel überwachen. Erhalten Sie Benachrichtigungen zu unsicheren Konfigurationen in Container-Image-Speichern, Cloud Storage, SSL-Richtlinien, SSH-Schlüsselrichtlinien, Logging, API-Zugriff und mehr.

VirusTotal

Anwendungsfall:

  • Schutz vor Phishing

Mit VirusTotal können Sie URLs auf schädliche Inhalte prüfen, bevor Sie an Nutzer oder Mitarbeiter freigegeben werden. Dabei spielt es keine Rolle, ob sie in Nutzereingaben, E-Mails, Chats, Logs oder anderen Standorten enthalten sind.

VPC Service Controls

Anwendungsfall:

  • Firewall für verwaltete Dienste

Verpacken Sie kritische verwaltete Dienste in einer Firewall, um zu steuern, wer den Dienst aufrufen kann und wer auf den Dienst reagieren kann. Blockieren Sie unbefugten ausgehenden Traffic und Daten-Exfiltration mit ausgehenden Perimeterregeln für Dienste wie Cloud Functions. Verhindern Sie Anfragen von nicht autorisierten Nutzern und Standorten an verwaltete Datenspeicher und Datenbanken. Erstellen Sie sichere Perimeter um leistungsstarke oder potenziell kostspielige APIs.

Web Application Scanner

Anwendungsfall:

  • Scanner für Sicherheitsrisiken bei Webanwendungen
  • Scanner für Verfügbarkeit des Quell-Repositories

Damit Ihre Webanwendung keine sensiblen Daten offenlegt, sollten Sie darauf achten, dass Passwörter nicht in Klartext gesendet werden. Vermeiden Sie die Freigabe potenziell schädlicher Rohquellcodes. Prüfen Sie dazu, ob die Quellcode-Repositories für Git und Apache Subversion verfügbar sind. Diese Scans sind zur Abdeckung bestimmter OWASP-Top-10-Steuerelemente vorgesehen.

Web Security Scanner

Anwendungsfall:

  • Unverschlüsselte Passwörter, die über das Netzwerk übertragen werden

Web Security Scanner scannt Ihre Webanwendungen und meldet Fehler und Sicherheitslücken. Wenn Ihre Anwendung Passwörter im Klartext überträgt, generiert Web Security Scanner einCLEAR_TEXT_PASSWORD-Ergebnis.

A03: Injection

Injection-Fehler wie SQL-, NoSQL-, Betriebssystem- und LDAP-Injections treten auf, wenn nicht vertrauenswürdige Daten als Teil eines Befehls oder einer Abfrage an einen Interpreter gesendet werden. Die schädlichen Daten des Angreifers können dazu führen, dass der Interpreter unbeabsichtigte Befehle ausführt oder ohne ordnungsgemäße Autorisierung auf Daten zugreift. Nutzerdaten sollten von der Anwendung bereinigt oder gefiltert werden, bevor sie an einen Interpreter gesendet werden.

In den folgenden Abschnitten werden die Google Cloud-Produkte beschrieben, mit denen Sie dieses Risiko mindern können.

Apigee

Anwendungsfall:

  • Blockierung von SQL-Injection
  • Blockierung von NoSQL-Injection
  • Blockierung von LDAP-Injection
  • Blockierung von JavaScript-Injection

Apigee bietet mehrere Eingabevalidierungsrichtlinien, um zu prüfen, ob die von einem Client bereitgestellten Werte Ihren konfigurierten Erwartungen entsprechen, bevor die weitere Verarbeitung der Richtlinien oder Regeln zugelassen wird. Apigee, das als Gateway für eingehende API-Anfragen fungiert, führt eine Limitprüfung durch, um sicherzustellen, dass die Nutzlaststruktur in einen akzeptablen Bereich fällt. Sie können einen API-Proxy konfigurieren, damit die Eingabevalidierungsroutine die Eingabe transformiert, um riskante Zeichensequenzen zu entfernen und sie dann durch sichere Werte zu ersetzen.

Es gibt mehrere Ansätze zur Validierung von Eingaben mit der Apigee-Plattform:

Container Threat Detection

Anwendungsfall:

  • Erkennung bösartiger Skripts
  • Reverse-Shell-Erkennung
  • Erkennung von Malware-Installationen

Der Detektor Malicious Script Executed von Container Threat Detection analysiert jedes Shell-Skript, das auf dem System ausgeführt wird, und meldet diejenigen, die schädlich erscheinen. So können Sie Shell-Befehlsinjektionsangriffe erkennen. Nach einer erfolgreichen Shell-Befehlsinjektion kann ein Angreifer eine Reverse-Shell erzeugen, die den Detektor Reverse Shell auslöst. Alternativ können sie Malware installieren, wodurch die Detektoren Added Binary Executed und Added Library Loaded ausgelöst werden.

Google Cloud Armor

Anwendungsfall:

  • SQL-Injection-Filter
  • PHP-Injection-Filter

Google Cloud Armor kann gängige Injection-Angriffe blockieren, bevor sie Ihre Anwendung erreichen. Für SQL-Injection (SQLi) verfügt Google Cloud Armor über einen vordefinierten Regelsatz, der auf dem OWASP-Modsecurity-Kernregelsatz basiert. Sie haben folgende Möglichkeiten: Sicherheitsrichtlinien erstellen, die im Kernregelsatz definierte allgemeine SQLi-Angriffe blockieren, und zwar mithilfe der Regel evaluatePreconfiguredExpr('sqli-stable') allein oder in Verbindung mit anderen benutzerdefinierten Regeln. Sie können beispielsweise die SQLi-Blockierung auf bestimmte Anwendungen beschränken, indem Sie einen URL-Pfadfilter verwenden.

Für die PHP-Injektion ist ein weiterer vorkonfigurierter Regelsatz vorhanden. Mit der Regel evaluatePreconfiguredExpr('php-stable') können Sie häufige PHP-Injection-Angriffe blockieren.

Je nach Anwendung kann die Aktivierung der vorkonfigurierten Ausdrücke zu einigen falsch-positiven Ergebnissen führen, da einige Regeln im Regelsatz vertraulich sind. Weitere Informationen finden Sie unter Fehlerbehebung bei falsch positiven Ergebnissen und Regelsatz auf verschiedene Vertraulichkeitsstufen anpassen.

Für andere Injection-Angriffe als das Targeting auf SQL oder PHP können Sie benutzerdefinierte Regeln erstellen, um Anfragen zu blockieren, wenn bestimmte Schlüsselwörter oder Escape-Muster im Anfragepfad oder in der Anfrage verwendet werden. Achten Sie darauf, dass diese Muster nicht in gültigen Anfragen enthalten sind. Sie können diese Regeln auch auf die Verwendung für bestimmte Endpunkte oder Pfade beschränken, die die an sie weitergegebenen Daten interpretieren könnten.

Darüber hinaus können einige Injection-Angriffe mithilfe der vorkonfigurierten Regeln für die Remote-Codeausführung und Remote-Dateiinjektion abgewehrt werden.

Web Security Scanner

Anwendungsfall:

  • Monitoring für Cross-Site-Scripting
  • Monitoring für SQL-Injection

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken und bietet Detektoren, die auf Cross-Site-Scripting- und SQL-Injection-Angriffe überwachen.

A04: Unsicheres Design

Unsicheres Design tritt auf, wenn Organisationen nicht die Mittel zur Bewertung und Behebung von Bedrohungen während des Entwicklungszyklus implementieren. Eine Bedrohungsmodellierung hilft Unternehmen bei der Analyse von Annahmen und Schwachstellen, wenn sie früh in der Design- und Optimierungsphase abgeschlossen und in den Entwicklungs- und Testphasen fortgesetzt werden. Eine Kultur des Lernens aus Fehlern ohne Anschuldigungen ist der Schlüssel zu einem sicheren Design.

Apigee

Anwendungsfälle:

  • Eingabevalidierung
  • Zugriffssteuerung
  • Fehlerbehebung
  • Richtlinien für den Inhaltsschutz
  • Passwortverwaltung

Mit Apigee können Sie eingehende Anfragen und Antworten an Ihre Anwendung mit der OASValidation-Richtlinie validieren. Darüber hinaus können Sie zum Schutz des Zugriffs die Einmalanmeldung (SSO), die rollenbasierte Zugriffssteuerung (Role-Based Access Control, RBAC) konfigurieren, den Zugriff auf APIs (z. B. mit Auth0) beschränken und einschränken, welche IP-Adressen Zugriff auf Ihre Umgebung haben. Mit den Regeln zur Fehlerbehandlung können Sie bestimmen, wie der API-Proxy auf Fehler reagiert.

Zum Schutz vor unsicheren Passwörtern für globale Apigee-Nutzer bietet Apigee Funktionen, um einen Ablauf für das Passwort festzulegen bzw. das Passwort zu sperren oder wiederherzustellen. Außerdem können Sie die 2-Faktor-Authentifizierung (Two-Factor Authentication, 2FA) aktivieren.

Cloud Data Loss Prevention API (Teil des Schutzes sensibler Daten)

Anwendungsfall:

  • Vertrauliche Daten identifizieren und entfernen

Mit der Cloud Data Loss Prevention API können Sie vertrauliche Daten identifizieren und tokenisieren. Mit der DLP API können Sie die Offenlegung vertraulicher Daten einschränken, da Sie nach dem Tokenisieren und Speichern der Daten Zugriffssteuerungen einrichten können, um einzuschränken, wer die Daten aufrufen kann. Weitere Informationen finden Sie unter Klassifizierung der in Cloud Storage hochgeladenen Daten automatisieren und Personenidentifizierbare Informationen in umfangreichen Datasets mit dem Schutz sensibler Daten de-identifizieren und re-identifizieren.

Secret Manager

Anwendungsfall:

  • Speicherung von Anmeldedaten schützen

Mit Secret Manager können Anwendungen und Pipelines anhand der mit IAM gewährten Berechtigungen auf die Werte benannter Secrets zugreifen. Er bietet auch programmatischen Zugriff auf Secrets, damit automatisierte Prozesse auf Secret-Werte zugreifen können. Ist diese Option aktiviert, stellt jede Interaktion mit Secret Manager einen Audit-Trail bereit. Verwenden Sie diese Audit-Trails für Forensik und Compliance-Anforderungen.

Web Security Scanner

Anwendungsfall:

  • Ermitteln Sie Sicherheitslücken in Ihren Anwendungen.

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken. Er folgt Links und versucht, so viele Nutzereingaben und Event-Handler wie möglich auszuführen. Der CACHEABLE_PASSWORD_INPUT-Detektor generiert ein Ergebnis, wenn Passwörter, die in der Webanwendung eingegeben werden, in einem normalen Browser-Cache statt in einem sicheren Passwortspeicher gespeichert werden können.

A05: Sicherheitsfehlkonfiguration

Sicherheitsfehlkonfiguration bezieht sich auf nicht gepatchte Anwendungsfehler, offene Standardkonten und ungeschützte Dateien und Verzeichnisse, die normalerweise durch Anwendungshärtung verhindert werden können. Eine Sicherheitsfehlkonfiguration kann auf verschiedene Arten erfolgen, z. B. durch das Vertrauen in Standardkonfigurationen, das Erstellen von Teilkonfigurationen, die möglicherweise nicht sicher sind, das Zulassen von vertraulichen Informationen in Fehlermeldungen, das Speichern von Daten in der Cloud ohne ordnungsgemäße Sicherheitskontrollen oder durch eine Fehlkonfiguration von HTTP-Headern.

Apigee

Anwendungsfall:

  • Sicherheitskonfigurationen verwalten
  • Sicherheitskonfigurationen überwachen

In einem freigegebenen Ablauf können API-Entwickler Richtlinien und Ressourcen in einer wiederverwendbaren Gruppe kombinieren. Durch die Erfassung wiederverwendbarer Funktionen an einem zentralen Ort kann ein freigegebener Ablauf für Konsistenz sorgen, die Entwicklungszeit verkürzen und Code einfacher verwalten. Sie können einen freigegebenen Ablauf in einzelne API-Proxys mithilfe einerFlowCallout-Richtlinie hinzufügen. Sie können auch freigegebene Abläufe in Ablauf-Hooks platzieren, um für jeden in derselben Umgebung bereitgestellten API-Proxy automatisch eine freigegebene Ablauflogik auszuführen.

Cloud Asset Inventory

Anwendungsfall:

  • Dienst für Echtzeitbenachrichtigungen

Echtzeitbenachrichtigungen können Sie vor der unerwarteten Bereitstellung von Ressourcen warnen, die möglicherweise nicht ordnungsgemäß gesichert oder nicht autorisiert sind.

Cloud Load Balancing

Anwendungsfall:

  • Detaillierte Steuerung von SSL- und TLS-Chiffren

Verhindern Sie die Verwendung von SSL- oder TLS-Chiffren mit bekannten Sicherheitslücken, indem Sie eine vordefinierte Gruppe oder benutzerdefinierte Liste von Chiffren zuweisen, die von einem Load-Balancer verwendet werden können.

Google Cloud Armor

Anwendungsfall:

  • Unsichere Endpunkte filtern
  • LFI- oder RFI-Angriffe (Local File Inclusion, Remote File Inclusion) filtern
  • Protokollangriffe filtern

Da eine Sicherheitsfehlkonfiguration auf Anwendungsebene auftreten kann, empfiehlt die OWASP Foundation, Ihre Anwendung direkt zu härten und zu patchen und alle unnötigen Funktionen zu entfernen.

Obwohl eine Web Application Firewall (WAF) wie Google Cloud Armor Ihnen bei der Behebung der zugrunde liegenden Fehlkonfiguration nicht helfen kann, können Sie den Zugriff auf Teile der Anwendung entweder vollständig oder für alle mit Ausnahme bestimmter IP-Adressen oder Länder blockieren. Eine Beschränkung des Zugriffs kann das Risiko einer Ausnutzung dieser Fehlkonfigurationen minimieren.

Wenn Ihre Anwendung beispielsweise eine administrative Schnittstelle über eine gemeinsame URL wie /admin verfügbar macht, können Sie den Zugriff auf diese Schnittstelle auch bei einer Authentifizierung einschränken. Sie können dafür eine Ablehnungsregel verwenden. Beispiel:

request.path.contains("/admin") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Ersetzen Sie 1.2.3.4/32 durch den IP-Adressbereich, der Zugriff auf die Admin-Schnittstelle der Messwerte haben soll.

Einige Fehlkonfigurationen können mithilfe der vordefinierten LFI-Regelsätze (Local File Inclusion) oder RFI-Regelsätze (Remote File Inclusion) teilweise behoben werden. Beispielsweise ist die Ausnutzung der Cross-Site-Imaging-Challenge von Juice Shop nicht erfolgreich, wenn der LFI-Regelsatz angewendet wird. Verwenden Sie die Regel evaluatePreconfiguredExpr('lfi-stable') || evaluatePreconfiguredExpr('rfi-stable'), um Anfragen mit den LFI- und RFI-Regelsätzen zu blockieren und die Regeln bei Bedarf zu optimieren. Sie können prüfen, ob die Challenge-Lösung nicht mehr erfolgreich ist.

Einige HTTP-Angriffe können auch mithilfe vorkonfigurierter Regelsätze abgewehrt werden:

  • Verwenden Sie den Regelsatz für die Methodenerzwingung (in der Vorschau), um das Manipulieren von HTTP-Verben zu verhindern. Verwenden Sie die Regel evaluatePreconfiguredExpr('methodenforcement-stable'), um nur die HTTP-Anfragemethoden GET, HEAD, POST und OPTIONS zuzulassen.
  • Um gängige Angriffe auf HTTP-Parsing und -Proxys zu blockieren, z. B.Schmuggel von HTTP-Anfragen, Aufteilung von HTTP-Antworten und HTTP-Header-Injection, können Sie den Regelsatz des Protokollangriffs mit der Regel evaluatePreconfiguredExpr('protocolattack-stable') verwenden.

Security Health Analytics

Anwendungsfall:

  • Monitoring und Benachrichtigungen für die Sicherheitskontrolle

Überwachen Sie Dutzende Signale über eine zentrale Benutzeroberfläche, um sicherheitsrelevante Best Practices für Ihre Anwendung zu gewährleisten

Web Security Scanner

Anwendungsfall:

  • Auf OWASP Top 10 zugeschnittener Webanwendungsscanner
  • Fehler bei der HTTP-Serverkonfiguration
  • Gemischte HTTP-/HTTPS-Inhalte
  • Externe XML-Entität (XXE)

Web Security Scanner überwacht gängige Sicherheitsfehler wie Abweichungen beim Inhaltstyp, ungültige Sicherheitsheader und gemischte Inhaltsbereitstellung. Web Security Scanner überwacht auch Sicherheitslücken, wie z. B. XXE-Sicherheitslücken. Diese Scans sind zur Abdeckung bestimmter OWASP-Top-10-Steuerelemente vorgesehen. Die folgenden Detektoren suchen nach Sicherheitsfehlkonfigurationen:

  • INVALID_CONTENT_TYPE
  • INVALID_HEADER
  • MISMATCHING_SECURITY_HEADER_VALUES
  • MISSPELLED_SECURITY_HEADER_NAME
  • MIXED_CONTENT
  • XXE_REFLECTED_FILE_LEAKAGE

Weitere Informationen zu diesen und anderen Detektoren finden Sie unter Web Security Scanner – Übersicht.

A06: Veraltete Komponenten mit Sicherheitslücken

Komponenten mit bekannten Sicherheitslücken sind eine Kategorie für allgemeine Angriffsvektoren. Solche Sicherheitslücken werden am besten durch Monitoring und schnelles Upgraden aller Anwendungskomponenten beseitigt.

Binärautorisierung

Anwendungsfall:

  • GKE-Cluster auf vertrauenswürdige Container beschränken

Mit der Binärautorisierung wird die Sicherheit beim Deployment geprüft, um dafür zu sorgen, dass nur vertrauenswürdige Container-Images in Google Kubernetes Engine (GKE) bereitgestellt werden. Mit der Binärautorisierung können Sie festlegen, dass Images während des Entwicklungsprozesses von vertrauenswürdigen Stellen signiert werden, und dann beim Deployment die Signaturprüfung erzwingen. Wenn Sie die Validierung erzwingen, können Sie sicher sein, dass Ihr Build- und Release-Prozess nur verifizierte Images verwendet.

Cloud Load Balancing

Anwendungsfall:

  • Detaillierte Steuerung von SSL- und TLS-Chiffren

Vermeiden Sie die Verwendung von SSL- oder TLS-Chiffren mit bekannten Sicherheitslücken, indem Sie eine vordefinierte Gruppe oder benutzerdefinierte Liste von Chiffren zuweisen, die Cloud Load Balancing verwenden kann.

Container Threat Detection

Anwendungsfall:

  • Erkennung bösartiger Skripts
  • Reverse-Shell-Erkennung
  • Erkennung von Malware-Installationen

Wenn ein Angreifer eine anfällige Komponente ausnutzt und ein schädliches Skript ausführt, generiert der Malicious Script Executed-Detektor von Container Threat Detection ein Ergebnis. Wenn ein Angreifer eine Reverse-Shell erzeugt, generiert der Reverse Shell-Detektor ein Ergebnis. Wenn ein Angreifer Malware installiert, generieren die Detektoren Added Binary Executed und Added Library Loaded Ergebnisse.

Event Threat Detection

Anwendungsfall:

  • Kryptomining-Erkennung
  • Malware erkennen
  • Daten-Exfiltration
  • Ausgehender DoS

Event Threat Detection überwacht den Cloud Logging-Stream und wendet detaillierte Erkennungslogik und Threat Intelligence an. Wenn Event Threat Detection eine Bedrohung erkennt, schreibt es ein Ergebnis ins Security Command Center und in ein Cloud Logging-Projekt. Die folgenden Erkennungsregeln sind nützlich, um die Auswirkungen der Verwendung von Komponenten mit bekannten Sicherheitslücken zu erkennen:

  • Kryptomining. Kryptomining anhand von DNS-Anfragen oder einer Verbindung zu bekannten Mining-Adressen erkennen.
  • Malware. Malwarebasierte DNS-Anfragen oder Verbindungen zu bekannten ungültigen Adressen erkennen.
  • Exfiltration in externe Tabelle. Ressourcen erkennen, die außerhalb der Organisation gespeichert sind, einschließlich Kopier- oder Übertragungsvorgängen.
  • Ausgehender DoS. Genutzte Sicherheitslücken erkennen, um DoS-Angriffe zu verhindern.

Google Cloud Armor

Anwendungsfall:

  • Zugriff auf nicht verwendete Anwendungsendpunkte blockieren
  • Gängige Angriffsvektoren blockieren

Eine Web Application Firewall (WAF) wie Google Cloud Armor sollte nicht als einzige Strategie zur Risikominimierung verwendet werden, um Angriffe auf Sicherheitslücken dieser Kategorie zu blockieren, da Angriffe oft bibliotheksspezifisch sind und nicht durch vorkonfigurierte Regelsätze blockiert oder serverseitig gepatcht werden können. Die regelmäßige Überwachung und Aktualisierung aller Komponenten Ihrer Anwendung ist die einzige Möglichkeit, diese Art von Sicherheitslücken abzuwehren.

Google Cloud Armor kann jedoch mithilfe der vorkonfigurierten Regeln für Remote Code Execution, Local File Inclusion oder Remote File Inclusion einige häufige Angriffe auf anfällige Anwendungen abwehren.

Wenn Ihnen gefährdete Komponenten in Ihrer Anwendung bekannt sind, die Anwendung jedoch nicht sofort gepatcht werden kann, können Sie den Zugriff auf diese Teile Ihrer Anwendung blockieren, um das Risiko einer Ausnutzung dieser Komponenten vorübergehend zu reduzieren. Erstellen Sie eine benutzerdefinierte Regel, die entweder dem URL-Pfad oder Abfragen entspricht, die auf diese anfälligen Komponenten zugreifen, und verweigern Sie den Zugriff. Wenn Sie Zugriff auf diese Komponenten von bestimmten Nutzern oder Standorten benötigen, können Sie bestimmten vertrauenswürdigen Quell-IP-Adressen weiterhin Zugriff auf diese Komponenten gewähren. Eine Regel mit dem URL-Pfad sieht in etwa so aus:

`request.path.contains("/component") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Ersetzen Sie Folgendes:

  • /component: Der Pfad der Komponente mit bekannten Sicherheitslücken
  • 1.2.3.4/32: Der IP-Adressbereich, der den Zugriff auf die Schnittstelle beibehalten soll

Wenn es Teile Ihrer Anwendung gibt, z. B. bestimmte Verzeichnisse oder Dateitypen, auf die Endnutzer nie zugreifen müssen, können Sie den Zugriff auf diese Ressourcen mit einer benutzerdefinierten Regel einschränken oder blockieren, um das Risiko proaktiv zu verringern, sollten diese Komponenten in Zukunft gefährdet sein.

Google Cloud-Sicherheitsbulletins

Anwendungsfall:

  • Monitoring von Sicherheitsbulletins
  • CVEs für Google Cloud-Produkte

Google Cloud-Sicherheitsbulletins sind eine autoritative Quelle für Sicherheitsbulletins, die Google Cloud betreffen. Diese enthalten Hintergrundinformationen, CVE-Links und Empfehlungen für weitere Maßnahmen.

Web Security Scanner

Anwendungsfall:

  • Veraltete Bibliotheken
  • Dashboards zu Sicherheitslücken und Ergebnissen

Prüfen Sie Ihre Webanwendung auf veraltete Bibliotheken. Rufen Sie diese Ergebnisse im Security Command Center-Dashboard auf.

A07: Identifizierungs- und Authentifizierungsfehler

Identifizierungs- und Authentifizierungsfehler sind häufige Risiken, da die Anwendungsauthentifizierung und Sitzungsverwaltung häufig falsch implementiert werden. Angreifer können Sicherheitslücken wie gehackte Passwörter, Schlüssel und Sitzungstokens ausnutzen, um die Identitäten anderer Nutzer vorübergehend oder dauerhaft anzunehmen.

Access Transparency

Anwendungsfall:

  • Monitoring durch Dienstanbieter
  • Zugriffsbegründungen

Wenn Sie praktische Unterstützung von externen Anbietern wünschen, mussten Sie temporäre Anmeldedaten gewähren und freigeben, wodurch das Potenzial für verwaiste oder gehackte Anmeldedaten entsteht. Access Approval ist ein integrierter Dienst, mit dem Sie Zugriffsanfragen von Google-Mitarbeitern, die Ihr Konto unterstützen, genehmigen oder ablehnen können. Jede Zugriffsanfrage enthält eine Zugriffsbegründung, sodass Sie sich den Grund für jeden Zugriff ansehen können, einschließlich Verweisen auf Support-Tickets.

Apigee

Anwendungsfall:

  • Schlüsselvalidierung
  • Tokenvalidierung
  • OAuth-Richtlinien

Apigee stellt VerifyApiKey-, OAuth- und JWT-Richtlinien (JSON Web Token) bereit, die vor diesem Risiko schützen.

Die API-Schlüsselvalidierung ist die einfachste Form der anwendungsbasierten Sicherheit, die für eine API konfiguriert werden kann. Eine Clientanwendung präsentiert einen API-Schlüssel mit der zugehörigen Anfrage. Apigee Edge prüft über eine Richtlinie, die mit einem API-Proxy verknüpft ist, ob der API-Schlüssel einen Genehmigungsstatus für die angefragte Ressource hat.

Mit dem Autorisierungs-Framework OAuth 2.0 kann eine Drittanbieteranwendung eingeschränkten Zugriff auf einen HTTP-Dienst erhalten, entweder im Namen eines Ressourceninhabers oder durch die Orchestrierung einer Genehmigungsinteraktion zwischen dem Inhaber der Ressource und dem HTTP-Dienst oder in seinem eigenen Namen, indem der Drittanbieteranwendung Zugriff gewährt wird.

JSON Web Tokens oder JWTs werden häufig zum Freigeben von Anforderungen oder Assertions für verbundene Anwendungen verwendet. Apigee bietet JWT-Unterstützung mit drei Richtlinien.

Event Threat Detection

Anwendungsfall:

  • Brute-Force-Erkennung
  • IAM-Missbrauchserkennung

Event Threat Detection überwacht den Cloud Logging-Stream und wendet detaillierte Erkennungslogik und proprietäre Threat Intelligence an. Wenn Event Threat Detection eine Bedrohung erkennt, schreibt es ein Ergebnis in Security Command Center und in Cloud Logging im Projekt Ihrer Wahl. Die folgenden Ereignistypen sind nützlich, um eine fehlerhafte Authentifizierung zu erkennen.

  • Brute-Force-SSH. Erfolgreiches Brute-Force einer SSH-Verbindung auf einem Host erkennen.
  • Anomale Berechtigung. Erkennen Sie Berechtigungen, die IAM-Nutzern (Identity and Access Management) außerhalb der Google Cloud-Organisation gewährt werden.

Google Cloud Armor

Anwendungsfall:

  • Zugriff auf Authentifizierungsendpunkt beschränken
  • Verwendung nicht autorisierter Tokens einschränken

Angriffe auf Sicherheitslücken, die unter dem fehlerhaften Authentifizierungsrisiko klassifiziert sind, sollten am besten auf Anwendungsebene oder durch andere Kontrollen minimiert werden. Google Cloud Armor kann jedoch dabei helfen, die Angriffsfläche zu begrenzen oder bekannte Angriffsvektoren zu blockieren.

Wenn Ihre Anwendung beispielsweise einen eingeschränkten Nutzerstamm hat und diese Nutzer aus einer bekannten Reihe von IP-Adressen oder Ländern stammen, können Sie eine Sicherheitsrichtlinie erstellen, die den Zugriff auf Ihre Anwendung durch Nutzer dieser IP-Adressblöcke oder Länder einschränkt. Diese Richtlinie kann zum Schutz vor dem automatisierten Scannen von Endpunkten außerhalb dieser Bereiche beitragen.

Wenn andere Sicherheitsmechanismen feststellen, dass Passwörter, Schlüssel oder Sitzungstokens manipuliert wurden, können Sie den Zugriff für Anfragen, die diese Parameter in einem Abfragestring enthalten, mithilfe einer benutzerdefinierten Regel blockieren. Sie können Regeln, die Sie zuvor definiert haben, mit der Methode securityPolicy.patchRule aktualisieren. Sie können möglicherweise potenzielle gestohlene Tokens identifizieren. Verwenden Sie dazu Anomalieerkennungsmechanismen über HTTP-Load-Balancing-Logs. Sie können auch potenzielle Angreifer erkennen, indem Sie in diesen Logs nach häufigen Passwörtern suchen.

Sie können gängige Angriffe zur Sitzungsfixierung blockieren, indem Sie den vorkonfigurierten ModSecurity-Regelsatz für die Sitzungsfixierung verwenden. Sie können den Regelsatz verwenden, indem Sie der Sicherheitsrichtlinie die vordefinierte Regel evaluatePreconfiguredExpr('sessionfixation-stable') hinzufügen.

Wenn Ihre Anwendung Passwortänderungen im Abfragestring enthält, können Sie auch die Verwendung gängiger Passwörter mithilfe einer benutzerdefinierten Regel blockieren, die mit dem Attribut request.query übereinstimmt. Solche Prüfungen werden jedoch viel besser auf Anwendungsseite implementiert, sofern möglich.

Identity-Aware Proxy (IAP)

Anwendungsfall:

  • Zentrale Zugriffssteuerung
  • Kompatibel mit Cloud-Umgebungen und lokalen Umgebungen
  • HTTP- und TCP-Verbindungen schützen
  • Kontextsensitiver Zugriff

IAP ist in HTTP(S)-Load-Balancing eingebunden, sodass Sie mithilfe von Identität und Kontext eine sichere Firewall zur Authentifizierung und Autorisierung für Ihre Anwendung erstellen können. Verhindern Sie eine fehlerhafte Authentifizierung bei Ihrer öffentlichen Anwendung, indem Sie externe Nutzer in Identity Platform bereitstellen. Weitere Informationen finden Sie im folgenden Abschnitt.

Sie können die fehlerhafte Authentifizierung für administrative Schnittstellen auch verhindern, indem Sie sie mit Identity-Aware Proxy schützen und Nutzer mit Identity und Access Management oder Cloud Identity authentifizieren. Jeder Versuch, auf das Tool zuzugreifen, führt zu einem geloggten Authentifizierungsversuch, gefolgt von einer Autorisierungsprüfung, mit der sichergestellt wird, dass der authentifizierte Nutzer auf die angeforderte Ressource zugreifen darf.

Identity Platform

Anwendungsfall:

  • Authentication as a Service
  • Multi-Faktor-Authentifizierung
  • Unternehmens-SLA
  • Umfassende Protokollunterstützung
  • Intelligence für den Schutz von Google-Konten

Identity Platform ist die CIAM-Plattform (Customer Identity and Access Management) für Google Cloud-Kunden. Identity Platform unterstützt die sichere Authentifizierung als Dienst mit Unterstützung durch mehrere Protokolle mithilfe von SDKs und APIs. Sie bietet Multi-Faktor-Authentifizierung, Einbindung in Authentifizierungsdienste von Drittanbietern und prüfbares Aktivitäts-Tracking.

reCAPTCHA Enterprise

Anwendungsfall:

  • Automatisierte Anmeldeversuche
  • Content-Scraping
  • Credential Stuffing
  • Betrügerische Transaktionen
  • Kontoübernahmen
  • Gefälschte Konten
  • Geldwäsche

reCAPTCHA Enterprise bietet eine äußerst effektive Filterung nach Bots und anderen Formen der Automatisierung und des Bulk-Traffics. Dazu wird die Risikostufe für Zugriffsversuche bestimmt. Sie können Ihr Website-spezifisches Modell mit automatisiertem Feedback optimieren. reCAPTCHA passt zukünftige Punktzahlen entsprechend Ihrer Website an.

Security Health Analytics

Anwendungsfall:

  • MFA/2FA erzwingen
  • API-Schlüssel schützen
  • API-Schlüsselrotation erzwingen

Security Command Center verhindert eine fehlerhafte Authentifizierung, indem es die Compliance mit Multi-Faktor-Authentifizierung und den Status Ihrer API-Schlüssel überwacht. Sie können verdächtige Anfragen identifizieren und blockieren oder zur speziellen Verarbeitung kennzeichnen.

Titan-Sicherheitsschlüssel

Anwendungsfall:

  • Phishingresistente Bestätigung in zwei Schritten
  • Mobile und PC-Authentifizierung

Titan-Sicherheitsschlüssel nutzen kryptografische Verfahren, um die Identität eines Nutzers und die URL der Anmeldeseite zu verifizieren. Dadurch wird verhindert, dass Angreifer auf Ihr Konto zugreifen können, und zwar selbst dann, wenn Sie durch einen Trick dazu verleitet werden, Ihren Benutzernamen und Ihr Passwort preiszugeben.

Web Security Scanner

Anwendungsfall:

  • Sitzungs-ID-Schwachstellen

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken wie Sitzungs-ID-Schwachstellen, wodurch andere Parteien die Identität eines Nutzers übernehmen oder eindeutig identifizieren können.

A08: Software- und Datenintegritätsfehler

Software- und Datenintegritätsfehler können auftreten, wenn bei Softwareupdates, der Verarbeitung vertraulicher Daten oder einem Prozess in der CI/CD-Pipeline keine Integritätsprüfungen durchgeführt werden.

Artifact Registry

Anwendungsfall:

  • Artefakte an einem einzigen vertrauenswürdigen Ort zentralisieren
  • Versionsverwaltung, Scannen auf Sicherheitslücken und Genehmigungsworkflows verwenden

Artifact Registry ist eine zentrale Schnittstelle, über die Ihr Unternehmen Container-Images und Sprachpakete (wie Maven und npm) verwalten kann. Der Dienst lässt sich in Ihre vorhandenen Entwicklungstools einbinden und bietet mit Artifact Analysis die Möglichkeit, Ihre Container auf Sicherheitslücken zu scannen.

Binärautorisierung

Anwendungsfall:

  • Sicherstellen, dass nur vertrauenswürdige Container bereitgestellt werden

Die Binärautorisierung prüft die Integrität von Containern, sodass nur vertrauenswürdige Container-Images bereitgestellt werden. Sie haben die Möglichkeit, Richtlinien zu erstellen, um die Bereitstellung anhand des Vorhandenseins oder Fehlens von Attestierungen zuzulassen oder zu verweigern. Die Binärautorisierung wendet Richtlinien auf Clusterebene an, sodass Sie verschiedene Richtlinien für verschiedene Umgebungen konfigurieren können. Diese Unterscheidung ermöglicht eine progressive Attestierungsanforderung, wenn sich die Umgebungen der Produktion nähern.

Cloud Asset Inventory

Anwendungsfall:

  • Suchdienst

  • Zugriffsanalysetool

Einer der am häufigsten verwendeten Vektoren für die Datenfreigabe ist eine verwaiste oder nicht autorisierte IT-Infrastruktur. Durch das Analysieren von Zeitachsendaten aus Cloud-Assets können Sie Server identifizieren, die von niemandem verwaltet werden, und Buckets mit übermäßigen Freigaberegeln ermitteln.

Richten Sie Echtzeitbenachrichtigungen ein, um bei einer unerwarteten Bereitstellung von Ressourcen, die möglicherweise nicht richtig gesichert oder nicht autorisiert sind, benachrichtigt zu werden.

Cloud Build

Anwendungsfall:

  • Codeänderungen prüfen

  • Tests ausführen

  • Build-Bereitstellungen standardisieren

Mit Cloud Build können Sie eine Build-Konfiguration erstellen, um Anleitungen für Ihre Build-Bereitstellung bereitzustellen, einschließlich der Ausführung statischer Analysen, Integrationstests usw.

Google Cloud Armor

Anwendungsfall:

  • RCE-Angriffe blockieren

Da die meisten Angriffe auf Software- und Datenintegrität anwendungsspezifisch sind, gibt es nur wenige Möglichkeiten, diese Angriffe abzuschwächen, z. B. mithilfe einer Web Application Firewall (WAF) wie Google Cloud Armor. OWASP empfiehlt, keine serialisierten Objekte aus nicht vertrauenswürdigen Quellen zu akzeptieren. Wenn möglich, beschränken Sie Endpunkte, die diese Objekte akzeptieren, auf eine Reihe vertrauenswürdiger IP-Adressen mit einer deny-Regel wie der Folgenden:

request.path.contains("/endpoint") && !(inIpRange(origin.ip,
'1.2.3.4/32')

Ersetzen Sie Folgendes:

  • /endpoint: Der Pfad des Endpunkts, der serialisierte Objekte akzeptiert
  • 1.2.3.4/32: Der IP-Adressbereich, der den Zugriff auf die Schnittstelle beibehalten soll

Verwenden Sie den vordefinierten Regelsatz zum Schutz vor RCE-Angriffen, um typische Angriffe auf Software- und Datenintegrität mit Remote Code Execution (RCE) zu minimieren. Mit der Regel evaluatePreconfiguredExpr('rce-stable') können Sie häufige RCE-Angriffe auf UNIX- und Windows-Shells blockieren.

Die unter Juice Shop-Challenges für unsichere Deserialisierung beschriebenen RCE-Angriffe führen Funktionen und reguläre Ausdrücke in Node.js auf dem Server aus. Diese Arten von Angriffen werden nicht durch den vordefinierten RCE-Regelsatz und die entsprechende OWASP-Modsecurity-Regel blockiert und müssen mithilfe von Patches auf der Serverseite oder mit benutzerdefinierten Regeln behoben werden.

VirusTotal

Anwendungsfall:

  • Nicht vertrauenswürdige Daten scannen

Mit der VirusTotal API können Sie Dateien hochladen und auf Malware scannen. Sie können Bilder, Dokumente, Binärdateien und andere nicht vertrauenswürdige Daten scannen, bevor sie verarbeitet werden, um bestimmte Kategorien schädlicher Eingaben zu beseitigen.

Web Security Scanner

Anwendungsfall:

  • Unsichere Deserialisierung

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken. Wenn Sie beispielsweise eine Version von Apache Struts verwenden, die Ihre Anwendung anfällig für Remote-Befehlsinjektionsangriffe macht, generiert Web Security Scanner ein STRUTS_INSECURE_DESERIALIZATION-Ergebnis.

A09: Sicherheits-Logging und Monitoring-Fehler

Wenn Sie Vorfälle in Ihren Systemen nicht angemessen loggen, überwachen oder verwalten, können Angreifer umfassendere und länger andauernde Angriffe auf Daten und Software ausführen.

Access Transparency

Anwendungsfall:

  • Monitoring und Auditing des Dienstanbieterzugriffs
  • Zugriffsbegründungen
  • Identifizierung von Ressourcen und Methoden

Der Wechsel von lokalen Systemen zur Cloud kann dadurch verhindert werden, dass der Zugriff durch Cloud-Anbieter nicht überprüft werden kann. Mit Access Transparency wird diese Überprüfung möglich und Ihre Auditkontrollen nähern sich damit dem an, was Sie auch von lokalen Kontrollen erwarten können. Sie können den Grund für jeden Zugriff aufzeichnen, einschließlich Verweisen auf relevante Support-Tickets. Identifizierung von Ressourcen und Methoden gibt an, auf welche Ressourcen zugegriffen wird und welche Methoden von welchem Administrator ausgeführt wurden. Dank der Zugriffsgenehmigung können Zugriffsanfragen von Google-Mitarbeitern, die Support für Ihre Dienste bereitstellen, bestätigt oder abgelehnt werden.

Apigee

Anwendungsfall:

  • Apigee-Logs in SIEM exportieren
  • Monitoring-UI von Apigee verwenden
  • Best Practices für das Monitoring befolgen

Apigee bietet mehrere Möglichkeiten für Logging, Monitoring, Fehlerbehandlung und Audit-Logging:

  • Logging
    • Lognachrichten können mithilfe der MessageLogging-Richtlinie an Splunk oder andere Syslog-Endpunkte gesendet werden.
    • API-Analysedaten können über die Analytics API abgerufen und in andere Systeme importiert oder exportiert werden.
    • In Edge for Private Cloud können Sie die MessageLogging-Richtlinie verwenden, um in lokale Logdateien zu schreiben. Außerdem sind Logdateien für alle ausgeführten Komponenten verfügbar.
    • Mit der JavaScript-Richtlinie können Lognachrichten synchron oder asynchron an einen REST-Logging-Endpunkt gesendet werden.
  • Monitoring
    • Verwenden Sie die API-Monitoring-UI oder API, um APIs und Back-Ends regelmäßig zu überwachen und Benachrichtigungen auszulösen.
    • Verwenden Sie das Systemmonitoring für das regelmäßige Monitoring der Zielserver-Back-Ends.
    • Apigee bietet Empfehlungen zum Monitoring von Edge for Private Cloud.
    • Apigee bietet auch Best Practices, mit denen Ihr Team Ihr API-Programm überwachen kann.
  • Fehlerbehandlung
    • Apigee bietet einen leistungsstarken, vielseitigen Mechanismus zur Fehlerbehandlung für API-Proxys. Ähnlich wie ein Java-Programm Ausnahmen abfangen kann, können API-Proxys Fehler abfangen und festlegen, wie entsprechende Antworten an Clients zurückgegeben werden.
    • Mit der benutzerdefinierten Fehlerbehandlung von Apigee können Sie Funktionen wie das Nachrichten-Logging hinzufügen, wenn ein Fehler auftritt.
  • Audit-Logs

Chronicle

Anwendungsfall:

  • Bedrohungserkennung
  • Vorwarnung

Sicherheitsteams können ihre Sicherheitstelemetrie an Chronicle senden und damit leistungsstarke Erkennungsregeln auf einen einheitlichen Satz von Daten anwenden.

Schutz sensibler Daten

Anwendungsfall:

  • Automatische Maskierung sensibler Daten

Ermitteln Sie sensible Daten in Ihren Logstreams und maskieren oder transformieren Sie sie entsprechend, bevor Sie in Logs archiviert werden. Eine Fehlermeldung oder ein Core Dump kann beispielsweise vertrauliche Daten wie Kreditkartennummern oder personenidentifizierbare Informationen enthalten, die maskiert werden müssen.

Cloud Key Management Service

Anwendungsfall:

  • Ereignislogging von Anfragen für kryptografische Schlüssel
  • Zugriffsbegründungen

Mit Key Access Justifications erhalten Sie Einblick in jede Anfrage für einen Verschlüsselungsschlüssel. Dazu werden die angegebene Begründung und ein Eintrag für die Genehmigung oder Ablehnung dieser Anfrage geloggt.

Cloud Logging

Anwendungsfall:

  • Zusammenfassen von Logs
  • Logspeicher
  • Logsuche
  • Loganalyse

Cloud Logging dient zum Speichern, Suchen, Analysieren, Überwachen und Auslösen von Benachrichtigungen durch Logdaten und Ereignisse von Google Cloud und Amazon Web Services. Dazu gehört der Zugriff auf den BindPlane-Dienst, mit dem Sie Logging-Daten aus über 150 gängigen Anwendungskomponenten, lokalen Systemen und Hybrid-Cloud-Systemen erfassen können.

Cloud Monitoring

Anwendungsfall:

  • Logmonitoring
  • Ereignisbenachrichtigungen

Mit Cloud Monitoring erhalten Sie Einblick in die Leistung, die Betriebszeit und die reibungslose Funktion cloudbasierter Anwendungen. Es bietet ein Monitoring-Dashboard, Ereignis-Monitoring und Benachrichtigungen über mehrere Kanäle.

Cloud Source Repositories

Anwendungsfall:

  • Attribution von Codeänderungen
  • Audit-Logging von Zugriffen

Mit von Cloud Source Repositories generierten Cloud-Audit-Logs erhalten Sie Informationen darüber, welche Aktionen wo und wann in Ihrem Repository ausgeführt wurden.

Error Reporting

Anwendungsfall:

  • Interne Anwendungsfehler in Cloud Logging erfassen
  • Absturzberichte außerhalb der abgestürzten Compute-Instanz erfassen

Interne Anwendungsfehler können ein Indikator für ein Sicherheitsproblem, eine fehlerhafte Funktionalität oder Versuche sein, die Sicherheitsvorkehrungen zu umgehen. Mit Error Reporting lassen sich Abstürze in Ihren laufenden Cloud-Diensten zählen, analysieren und zusammenfassen. In einer zentralen Oberfläche zum Verwalten von Fehlern werden die Ergebnisse mit Sortier- und Filterfunktionen angezeigt. In einer speziellen Ansicht können Sie sich Einzelheiten zu Fehlern ansehen: Zeitdiagramm, Vorkommen, Anzahl der betroffenen Nutzer, Datum der ersten und letzten Erfassung sowie einen bereinigten Ausnahme-Stacktrace. Wenn Sie die entsprechende Funktion aktivieren, erhalten Sie außerdem E-Mails und mobile Benachrichtigungen über neue Fehler.

Event Threat Detection

Anwendungsfall:

  • Brute-Force
  • Kryptomining
  • IAM-Missbrauch
  • Malware
  • Phishing

Event Threat Detection überwacht den Cloud Logging-Stream und wendet detaillierte Erkennungslogik und proprietäre Threat Intelligence an. Event Threat Detection identifiziert wichtige Einträge in Ihren Logs und kennzeichnet sie zur Überprüfung. Wenn Event Threat Detection eine Bedrohung erkennt, schreibt es ein Ergebnis ins Security Command Center und in ein Cloud Logging-Projekt.

Forseti Inventory

Anwendungsfall:

  • Monitoring und Benachrichtigungen zu Inventaränderungen

Forseti Inventory speichert einen Inventar-Snapshot Ihrer Google Cloud-Ressourcen in einer Datenbank, sodass Sie eine Verlaufsaufzeichnung Ihrer Ressourcen erhalten. Mit diesen Informationen können Sie alle Ressourcen in Google Cloud nachvollziehen und Maßnahmen ergreifen, um Ressourcen zu schonen, die Kosten zu senken und Sicherheitsrisiken zu minimieren. Inventory kann so konfiguriert werden, dass es beliebig oft ausgeführt wird und E-Mail-Benachrichtigungen gesendet werden, wenn Ihr Ressourcen-Snapshot aktualisiert wird.

Google Cloud Armor

Anwendungsfall:

  • Logging von Sicherheitsrichtlinien
  • Monitoring-Dashboards
  • Benachrichtigungen zu Trafficanomalien

Google Cloud Armor-Anfragelogs sind Teil des Cloud Logging für externe Application Load Balancer. Für den Zugriff auf Logging-Informationen, z. B. welche Sicherheitsrichtlinienregel auf den Traffic angewendet wurde, aktivieren Sie Logging für alle Backend-Dienste mit angehängten Sicherheitsrichtlinien. Verwenden Sie Regeln im Vorschaumodus, um sie zu testen und die Ergebnisse zu loggen, ohne die Auswirkungen zu erzwingen.

Google Cloud Armor bietet außerdem Monitoring-Dashboards für Sicherheitsrichtlinien. Damit erhalten Sie einen Überblick über den Umfang des Traffics, der von einer Ihrer Sicherheitsrichtlinien zugelassen oder abgelehnt wurde. Google Cloud Armor veröffentlicht in Security Command Center Ergebnisse zu Trafficanomalien, z. B. Spitzen bei zulässigem Traffic oder erhöhten abgelehnten Traffic.

Google Cloud Armor schreibt automatisch Audit-Logs zur Administratoraktivität, in denen Vorgänge aufgezeichnet werden, die zu Änderungen an der Konfiguration oder den Metadaten einer Ressource führen. Dieser Dienst kann auch so konfiguriert werden, dass Audit-Logs zum Datenzugriff geschrieben werden, die API-Aufrufe, die die Konfiguration oder die Metadaten von Ressourcen lesen, sowie nutzergesteuerte API-Aufrufe enthalten, die von Nutzern bereitgestellte Ressourcendaten erstellen, ändern oder lesen.

Identity Platform

Anwendungsfall:

  • Audit-Logs zur Administratoraktivität
  • Audit-Logs zum Datenzugriff
  • Audit-Logs zu Systemereignissen
  • Audit-Logs zu Richtlinienverstößen
  • Aktivitätslogs zur Authentifizierung

Identity Platform ist die nutzerorientierte Plattform zur Identitäts- und Zugriffsverwaltung von Google Cloud, die standardmäßig Authentifizierungsaktivitäten loggt.

Aktivieren Sie mehrere leistungsstarke Audit-Logs, einschließlich Administratoraktivitäten, Datenzugriff, Systemereignisse und verweigerte Authentifizierungsversuche.

Security Command Center

Anwendungsfall:

  • Monitoring von Benachrichtigungen
  • Bedrohungsmanagement
  • Berichte zu Scans auf Sicherheitslücken
  • Compliance-Monitoring
  • Asset-Monitoring
  • Ergebnisse von Sicherheitsscans

Zeigen Sie die Gesamtzahl der Ergebnisse in Ihrer Organisation nach Schweregrad im Übersichtsbereich an. Verwenden Sie das Dashboard für Bedrohungen, um potenziell schädliche Ereignisse in den Google Cloud-Ressourcen Ihrer Organisation zu prüfen. Sehen Sie sich Ergebnisse und Empfehlungen von Security Health Analytics auf dem Tab "Sicherheitslücken" an.

Mit dem Compliance-Dashboard können Sie die Compliance mit Kontrollen aus PCI-DSS, CIS Google Cloud Computing Foundations Benchmark usw. kontinuierlich überwachen. Die Asset-Ansicht bietet eine detaillierte Anzeige aller Google Cloud-Ressourcen, Assets genannt, in Ihrer Organisation. Auf dem Tab "Assets" können Sie Assets für Ihre gesamte Organisation anzeigen oder nach Projekt, Assettyp oder Änderungstyp filtern. Auf dem Tab für Ergebnisse wird schließlich ein detailliertes Ergebnisinventar für alle Assets Ihrer Organisation angezeigt, damit Sie potenzielle Sicherheitsrisiken einsehen können.

A10: Serverseitige Anfragefälschung (SSRF, Server Side Request Forgery)

Ein SSRF-Angriff erfolgt, wenn ein Angreifer einen anfälligen Server dazu zwingt, unerwünschte schädliche Anfragen an Server von Drittanbietern oder interne Ressourcen auszulösen. SSRF-Schwachstellen können auftreten, wenn eine Webanwendung eine Remoteressource abruft, ohne die vom Nutzer bereitgestellte URL zu validieren.

Apigee

Anwendungsfall:

  • SSRF-Angriffe mit LFI oder RFI blockieren

Apigee hat integrierte XML- und JSON-Parser, die XPath oder JSONPath zum Extrahieren von Daten verwenden. Apigee hat eine XMLThreatProtection-Richtlinie zum Schutz vor schädlichen XML-Nutzlasten und eine JSONThreatProtection-Richtlinie zum Schutz vor schädlichen JSON-Nutzlasten.

Mit der ExtractVariables-Richtlinie von Apigee können Sie den Inhalt aus einer Anfrage oder Antwort extrahieren und einer Variablen zuweisen. Sie können einen beliebigen Teil der Nachricht extrahieren, darunter Header, URI-Pfade, JSON- und XML-Nutzlasten, Formularparameter und Abfrageparameter. Die Richtlinie wendet ein Textmuster auf den Nachrichteninhalt an und legt nach dem Finden einer Übereinstimmung den Wert der angegebenen Variable mit dem Inhalt fest.

Google Cloud Armor

Anwendungsfall:

  • SSRF-Angriffe mit LFI oder RFI filtern

Da SSRF-Angriffe komplex sein und in verschiedenen Formen vorliegen können, sind die Möglichkeiten zur Risikominderung durch Web Application Firewalls begrenzt. Angriffe können besser abgewehrt werden, indem XML- oder JSON-Parser gepatcht, externe Entitäten nicht zugelassen und XML- oder JSON-Datenübertragungen auf öffentlichen Webservern auf ein Minimum beschränkt werden. Je nach Anwendung und Art des Angriffs kann Google Cloud Armor jedoch weiterhin vor Daten-Exfiltration und anderen Auswirkungen schützen.

Auch wenn keine der Regeln im OWASP ModeSecurity Core Rule Set speziell gegen SSRF-Angriffe schützt, können die Regeln für Local File Inclusion (LFI) und Remote File Inclusion (RFI) gegen einige dieser Angriffe helfen. Wenn Sie verhindern möchten, dass ein Angreifer lokale Dateien auf dem Server abruft, verwenden Sie die evaluatePreconfiguredExpr('lfi-stable')-Regel in einer Google Cloud Armor-Sicherheitsrichtlinie.

Die SSRF Juice Shop-Challenge verwendet die vorkonfigurierten RFI-Regelsätze (Remote File Inclusion) oder LFI-Regelsätze (Local File Inclusion), um einige dieser Angriffe zu minimieren, da sie das Einbinden von URLs oder den Pfaddurchlauf blockieren. Die folgende Regel aktiviert beispielsweise beide Regelsätze:

evaluatePreconfiguredExpr('lfi-stable') ||
evaluatePreconfiguredExpr('rfi-stable')

Wenn eine solche Regel implementiert wird, funktioniert die Lösung für die SSRF-Challenge ebenfalls nicht mehr.

VPC Service Controls

Anwendungsfall:

  • Netzwerkperimeter zum Segmentieren von Servern

Um die Auswirkungen von SSRF-Angriffen zu reduzieren, können Sie VPC Service Controls verwenden, um Perimeter zu erstellen, die Server aus anderen Ressourcen in Ihrer Organisation segmentieren. Diese Perimeter schützen vor Daten-Exfiltration. Im erzwungenen Modus überschreiten API-Anfragen an eingeschränkte Dienste die Perimetergrenze nicht, es sei denn, die Bedingungen der erforderlichen Regeln für ein- und ausgehenden Traffic des Perimeters sind erfüllt.

VPC-Firewall (Virtual Private Cloud)

Anwendungsfall:

  • Firewallregeln vom Typ "Standardmäßig ablehnen" oder Regeln für die Netzwerkzugriffssteuerung erzwingen, um den gesamten Intranet-Traffic zu blockieren.

VPC-Firewalls gelten für eingehenden und ausgehenden Traffic für Ihre Projekte und VPC-Netzwerke. Sie können Firewallregeln erstellen, die den gesamten Traffic mit Ausnahme des Traffics blockieren, den Sie zulassen möchten. Weitere Informationen finden Sie unter VPC-Firewallregeln.

Web Security Scanner

Anwendungsfall:

  • Monitoring von Webanwendungen

Web Security Scanner scannt Ihre Webanwendungen auf Sicherheitslücken. Beispiel: Wenn Ihre Anwendung für serverseitige Anfragefälschungen anfällig ist, generiert Web Security Scanner ein SERVER_SIDE_REQUEST_FORGERY-Ergebnis.

Nächste Schritte