Cloud Run Threat Detection – Übersicht

Cloud Run Threat Detection ist ein integrierter Dienst von Security Command Center, der den Zustand unterstützter Cloud Run-Ressourcen kontinuierlich überwacht, um die gängigsten Laufzeitangriffe zu erkennen. Wenn die Cloud Run-Bedrohungserkennung einen Angriff erkennt, wird in Security Command Center nahezu in Echtzeit ein Ergebnis generiert.

Die Laufzeit-Detektoren von Cloud Run Threat Detection überwachen Cloud Run-Ressourcen auf verdächtige Binärdateien und Bibliotheken und erkennen mithilfe von Natural Language Processing (NLP) schädlichen Bash- und Python-Code.

Darüber hinaus sind über Event Threat Detection Detektoren für die Steuerebene verfügbar. Diese Detector überwachen den Cloud Logging-Stream Ihrer Organisation oder Projekte, um potenzielle Angriffe auf die Kontrollebene Ihrer Cloud Run-Ressourcen zu erkennen.

Unterstützte Ressourcen

Cloud Run Threat Detection überwacht die folgenden Ressourcen:

Unterstützte Ausführungsumgebungen

Die unterstützten Ausführungsumgebungen unterscheiden sich für Laufzeit- und Steuerebenen-Detektoren.

Unterstützte Ausführungsumgebungen für Laufzeit-Detektoren

Die Laufzeit-Erkennungsmechanismen der Cloud Run-Bedrohungserkennung unterstützen nur Cloud Run-Ressourcen, die in der Ausführungsumgebung der zweiten Generation ausgeführt werden. Beachten Sie Folgendes, bevor Sie Cloud Run Threat Detection aktivieren:

  • Wenn Sie die Cloud Run-Bedrohungserkennung aktivieren, können Sie keinen Cloud Run-Dienst oder keine Dienstüberarbeitung erstellen, die in der Ausführungsumgebung der ersten Generation ausgeführt wird. Der Cloud Run-Dienst muss die Ausführungsumgebung der zweiten Generation verwenden. Wir empfehlen Ihnen, Ihre Arbeitslasten in der Ausführungsumgebung der zweiten Generation zu testen, bevor Sie die Cloud Run-Bedrohungserkennung aktivieren.

  • Wenn Sie die Laufzeitbedrohungserkennung für einen Dienst aktivieren möchten, stellen Sie eine Version bereit, in der die Ausführungsumgebung des Dienstes entweder auf die Ausführungsumgebung der zweiten Generation oder auf die Standardausführungsumgebung festgelegt ist.

Unterstützte Ausführungsumgebungen für Steuerebenen-Detektoren

Die Erkennungsmechanismen für die Steuerebene werden sowohl in der Ausführungsumgebung der ersten als auch der zweiten Generation unterstützt.

Funktionsweise der Laufzeitbedrohungserkennung von Cloud Run Threat Detection

Wenn Sie die Cloud Run-Bedrohungserkennung aktivieren, werden Telemetriedaten von den unterstützten Cloud Run-Ressourcen erfasst, um Prozesse, Scripts und Bibliotheken zu analysieren, die auf einen Laufzeitangriff hinweisen könnten. Wenn Ereignisse erkannt werden, sieht der Ausführungspfad so aus:

  1. Die Cloud Run-Bedrohungserkennung verwendet einen Watcher-Prozess, um Container- und Ereignisinformationen während der gesamten Dauer einer Cloud Run-Arbeitslast zu erfassen. Es kann bis zu 20 Sekunden dauern, bis der Prozess gestartet wird.
  2. Cloud Run Threat Detection analysiert die erfassten Ereignisinformationen, um festzustellen, ob ein Ereignis auf einen Vorfall hindeutet. Dabei werden Bash- und Python-Scripts mithilfe von NLP auf schädlichen Code geprüft.

    • Wenn Cloud Run Threat Detection einen Vorfall erkennt, wird er als Ergebnis im Security Command Center gemeldet.

    • Wenn die Cloud Run Threat Detection keinen Vorfall erkennt, werden keine Informationen gespeichert.

    • Alle erhobenen Daten sind sitzungsspezifisch und werden nicht dauerhaft gespeichert.

Informationen zum Prüfen von Cloud Run Threat Detection-Ergebnissen in derGoogle Cloud -Konsole finden Sie unter Ergebnisse prüfen.

Bekannte Probleme

  • Von Instanzen Ihrer Cloud Run-Dienste oder ‑Jobs, die länger als sieben Tage aktiv sind, werden keine Telemetry-Informationen mehr gesendet.
  • Wenn der Prozesswächter in einer laufenden Instanz Ihres Cloud Run-Dienstes oder -Jobs vorzeitig beendet wird, wird er nicht neu gestartet. Die Instanz sendet keine Telemetrieinformationen mehr an Cloud Run Threat Detection. Cloud Run Threat Detection-Logs sind in den Instanz-Logs nicht vorhanden. Es gibt keinen Indikator dafür, dass ein Prozess zum Überwachen gestoppt wurde.

Detektoren

In diesem Abschnitt sind die verfügbaren Laufzeit- und Steuerebenen-Erkennungsmechanismen aufgeführt. Wir fügen regelmäßig neue Sensoren hinzu, sobald neue Cloud-Bedrohungen auftreten.

Laufzeit-Detektoren

Cloud Run Threat Detection umfasst die folgenden Laufzeit-Detektoren:

Anzeigename API-Name Beschreibung
Ausführung: Schädliche Binärdatei ausgeführt hinzugefügt CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED

Eine Binärdatei, die die folgenden Bedingungen erfüllt, wurde ausgeführt:

  • Anhand von Threat Intelligence als schädlich identifiziert
  • Nicht Teil des ursprünglichen Container-Images

Wenn eine hinzugefügte schädliche Binärdatei ausgeführt wird, ist dies ein starkes Indiz dafür, dass ein Angreifer die Kontrolle über die Arbeitslast hat und schädliche Software ausführt.

Ausführung: Hinzugefügte schädliche Mediathek geladen CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED

Es wurde eine Bibliothek geladen, die die folgenden Bedingungen erfüllt:

  • Anhand von Threat Intelligence als schädlich identifiziert
  • Nicht Teil des ursprünglichen Container-Images

Wenn eine hinzugefügte schädliche Bibliothek geladen wird, ist dies ein starkes Indiz dafür, dass ein Angreifer die Kontrolle über die Arbeitslast hat und schädliche Software ausführt.

Ausführung: Eingebaute schädliche Binärdatei ausgeführt CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED

Eine Binärdatei, die die folgenden Bedingungen erfüllt, wurde ausgeführt:

  • Anhand von Threat Intelligence als schädlich identifiziert
  • Im ursprünglichen Container-Image enthalten

Wenn eine eingebettete schädliche Binärdatei ausgeführt wird, ist dies ein Zeichen dafür, dass der Angreifer schädliche Container bereitstellt. Möglicherweise haben sie die Kontrolle über ein legitimes Image-Repository oder eine Container-Build-Pipeline übernommen und eine schädliche Binärdatei in das Container-Image eingeschleust.

Ausführung: Container-Escape CLOUD_RUN_CONTAINER_ESCAPE

Innerhalb des Containers wurde ein Prozess ausgeführt, der mithilfe bekannter Escape-Techniken oder Binärdateien versuchte, die Containerisolierung zu durchbrechen. Diese Art von Angriff kann dem Angreifer Zugriff auf das Hostsystem gewähren. Diese Prozesse werden anhand von Intelligence-Daten als potenzielle Bedrohungen eingestuft.

Wenn ein Container-Escape-Versuch erkannt wird, kann das darauf hindeuten, dass ein Angreifer Sicherheitslücken ausnutzt, um aus dem Container auszubrechen. Dadurch kann der Angreifer unbefugten Zugriff auf das Hostsystem oder die gesamte Infrastruktur erhalten und so die gesamte Umgebung schädigen.

Ausführung: Ausführung des Kubernetes-Angriffstools CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION

In der Umgebung wurde ein Kubernetes-spezifisches Angriffstool ausgeführt. Dies kann darauf hindeuten, dass ein Angreifer Kubernetes-Clusterkomponenten anvisiert. Diese Angriffstools werden anhand von Informationen als potenzielle Bedrohungen eingestuft.

Wenn ein Angriffstool in der Kubernetes-Umgebung ausgeführt wird, kann das darauf hindeuten, dass ein Angreifer Zugriff auf den Cluster erhalten hat und das Tool verwendet, um Kubernetes-spezifische Sicherheitslücken oder Konfigurationen auszunutzen.

Ausführung: Ausführung des lokalen Aufklärungstools CLOUD_RUN_LOCAL_RECONNAISSANCE_TOOL_EXECUTION

Ein lokales Aufklärungstool, das normalerweise nicht mit dem Container oder der Umgebung verknüpft ist, wurde ausgeführt. Dies deutet auf einen Versuch hin, interne Systeminformationen zu erfassen. Diese Aufklärungstools werden auf Grundlage von Intelligenzdaten als potenzielle Bedrohungen eingestuft.

Wenn ein Erkundungstool ausgeführt wird, kann das darauf hindeuten, dass der Angreifer versucht, die Infrastruktur zu kartieren, Sicherheitslücken zu identifizieren oder Daten zu Systemkonfigurationen zu erfassen, um seine nächsten Schritte zu planen.

Ausführung: Ausführen von schädlichem Python-Code (Vorabversion) CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED

Ein ML-Modell (maschinelles Lernen) hat den angegebenen Python-Code als schädlich identifiziert. Angreifer können Python verwenden, um Tools oder andere Dateien von einem externen System in eine manipulierte Umgebung zu übertragen und Befehle ohne Binärdateien auszuführen.

Der Detektor verwendet NLP-Techniken, um den Inhalt des ausgeführten Python-Codes zu bewerten. Da dieser Ansatz nicht auf Signaturen basiert, können Detektoren bekannten und neuen Python-Code identifizieren.

Ausführung: Modifizierte schädliche Binärdatei ausgeführt CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED

Eine Binärdatei, die die folgenden Bedingungen erfüllt, wurde ausgeführt:

  • Anhand von Threat Intelligence als schädlich identifiziert
  • Im ursprünglichen Container-Image enthalten
  • Während der Laufzeit aus dem ursprünglichen Container-Image geändert

Wenn eine modifizierte schädliche Binärdatei ausgeführt wird, ist dies ein starkes Indiz dafür, dass ein Angreifer die Kontrolle über die Arbeitslast hat und schädliche Software ausführt.

Ausführung: Modifizierte schädliche Bibliothek geladen CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED

Es wurde eine Bibliothek geladen, die die folgenden Bedingungen erfüllt:

  • Anhand von Threat Intelligence als schädlich identifiziert
  • Im ursprünglichen Container-Image enthalten
  • Während der Laufzeit aus dem ursprünglichen Container-Image geändert

Wenn eine modifizierte schädliche Bibliothek geladen wird, ist dies ein starkes Indiz dafür, dass ein Angreifer die Kontrolle über die Arbeitslast hat und schädliche Software ausführt.

Schädliches Script ausgeführt CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED

Ein ML-Modell (maschinelles Lernen) hat den angegebenen Bash-Code als schädlich identifiziert. Angreifer können Bash verwenden, um Tools oder andere Dateien von einem externen System in eine manipulierte Umgebung zu übertragen und Befehle ohne Binärdateien auszuführen.

Der Detektor verwendet NLP-Techniken, um den Inhalt des ausgeführten Bash-Codes zu bewerten. Da dieser Ansatz nicht auf Signaturen basiert, können Detektoren bekannten und neuen schädlichen Bash-Code identifizieren.

Schädliche URL beobachtet CLOUD_RUN_MALICIOUS_URL_OBSERVED

Cloud Run Threat Detection hat eine schädliche URL in der Argumentliste eines laufenden Prozesses erkannt.

Der Detector vergleicht URLs, die in der Argumentliste laufender Prozesse gefunden werden, mit den Listen unsicherer Webressourcen, die vom Google-Dienst Safe Browsing verwaltet werden. Wenn eine URL fälschlicherweise als Phishing-Website oder Malware eingestuft wird, melden Sie sie unter Unvollständige Daten melden.

Reverse Shell CLOUD_RUN_REVERSE_SHELL

Ein Prozess, bei dem die Stream-Weiterleitung an einen Remote-Socket gestartet wurde. Der Detektor sucht nach stdin, gebunden an einen Remote-Socket.

Mit einer Reverse-Shell kann ein Angreifer von einer manipulierten Arbeitslast aus mit einer vom Angreifer kontrollierten Maschine kommunizieren. Der Angreifer kann dann die Arbeitslast ausführen und steuern, z. B. als Teil eines Botnets.

Unerwartete untergeordnete Shell CLOUD_RUN_UNEXPECTED_CHILD_SHELL

Ein Prozess, der normalerweise keine Shells aufruft, hat einen Shell-Prozess gestartet.

Der Detektor überwacht alle Prozessausführungen. Wenn eine Shell aufgerufen wird, generiert der Detektor ein Ergebnis, wenn der übergeordnete Prozess normalerweise keine Shells aufruft.

Sensoren der Steuerungsebene

Die folgenden Steuerebenen-Detektoren sind über Event Threat Detection verfügbar. Diese Erkennungsmechanismen sind standardmäßig aktiviert. Sie verwalten diese Detektoren auf die gleiche Weise wie andere Event Threat Detection-Detektoren. Weitere Informationen finden Sie unter Event Threat Detection verwenden.

Anzeigename API-Name Logquelltypen Beschreibung
Auswirkung: Cryptomining-Befehle (Vorabversion) CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS Cloud Audit-Logs:
Audit-Logs für IAM-Systemereignisse
Bestimmte Cryptomining-Befehle wurden während der Ausführung an einen Cloud Run-Job angehängt.
Ausführung: Docker-Image für Cryptomining (Vorabversion) CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Cloud Audit-Logs:
Audit-Logs für IAM-Systemereignisse
Bestimmte bekannte fehlerhafte Docker-Images wurden einem neuen oder vorhandenen Cloud Run-Dienst oder -Job hinzugefügt.
Berechtigungseskalierung: Standard-Compute Engine-Dienstkonto SetIAMPolicy (Vorabversion) CLOUD_RUN_SERVICES_SET_IAM_POLICY Cloud Audit-Logs:
Administratoraktivitätslogs
Die IAM-Richtlinie für einen Cloud Run-Dienst wurde mit dem Compute Engine-Standarddienstkonto festgelegt. Dies ist eine mögliche Aktion nach der Ausnutzung, wenn ein Compute Engine-Token von einem serverlosen Dienst manipuliert wird.
Informationen zu eingestellten und eingestellten Regeln finden Sie unter Eingestellte Produkte und Dienste.

Nächste Schritte