Présentation de la détection des menaces Cloud Run

Cloud Run Threat Detection est un service intégré à Security Command Center qui surveille en permanence l'état des ressources Cloud Run compatibles pour détecter les attaques d'exécution les plus courantes. Si Cloud Run Threat Detection détecte une attaque, il génère un résultat dans Security Command Center en temps quasi réel.

Les détecteurs d'exécution Cloud Run Threat Detection surveillent les ressources Cloud Run pour détecter les bibliothèques et les binaires suspects, et utilisent le traitement du langage naturel (NLP) pour détecter le code Bash et Python malveillant.

De plus, des détecteurs de plan de contrôle sont disponibles via Event Threat Detection. Ces détecteurs surveillent le flux Cloud Logging de votre organisation ou de vos projets pour détecter les attaques potentielles contre le plan de contrôle de vos ressources Cloud Run.

Ressources compatibles

Cloud Run Threat Detection surveille les ressources suivantes :

Environnements d'exécution compatibles

Les environnements d'exécution compatibles diffèrent pour les détecteurs d'exécution et les détecteurs du plan de contrôle.

Environnements d'exécution compatibles pour les détecteurs d'exécution

Les détecteurs d'exécution Cloud Run Threat Detection ne sont compatibles qu'avec les ressources Cloud Run qui s'exécutent dans l'environnement d'exécution de deuxième génération. Avant d'activer la détection des menaces Cloud Run, tenez compte des points suivants :

  • Lorsque vous activez Cloud Run Threat Detection, vous ne pouvez pas créer de service ou de révision de service Cloud Run qui s'exécute sur l'environnement d'exécution de première génération. Le service Cloud Run doit utiliser l'environnement d'exécution de deuxième génération. Nous vous recommandons de tester vos charges de travail sur l'environnement d'exécution de deuxième génération avant d'activer Cloud Run Threat Detection.

  • Pour activer la détection des menaces au moment de l'exécution pour un service, déployez une révision qui définit l'environnement d'exécution du service sur l'environnement d'exécution de deuxième génération ou par défaut.

Environnements d'exécution compatibles pour les détecteurs du plan de contrôle

Les détecteurs du plan de contrôle sont compatibles avec les environnements d'exécution de première et de deuxième génération.

Fonctionnement de la détection des menaces d'exécution Cloud Run Threat Detection

Lorsque vous activez la détection des menaces Cloud Run, elle collecte des données de télémétrie à partir des ressources Cloud Run compatibles pour analyser les processus, les scripts et les bibliothèques susceptibles d'indiquer une attaque au moment de l'exécution. Voici le chemin d'exécution lorsque des événements sont détectés :

  1. Cloud Run Threat Detection utilise un processus d'observation pour collecter des informations sur les conteneurs et les événements pendant toute la durée d'une charge de travail Cloud Run. Le démarrage du processus d'observation peut prendre jusqu'à 20 secondes.
  2. Cloud Run Threat Detection analyse les informations sur les événements collectées pour déterminer si un événement indique un incident. Il utilise le traitement du langage naturel pour analyser les scripts Bash et Python à la recherche de code malveillant.

    • Si Cloud Run Threat Detection identifie un incident, il le signale en tant que résultat dans Security Command Center.

    • Si Cloud Run Threat Detection n'identifie pas d'incident, aucune information n'est stockée.

    • Toutes les données collectées sont éphémères et ne sont pas stockées de manière permanente.

Pour savoir comment examiner les résultats de Cloud Run Threat Detection dans la consoleGoogle Cloud , consultez Examiner les résultats.

Problèmes connus

  • Les instances de vos services ou jobs Cloud Run qui durent plus de sept jours cessent d'envoyer des informations de télémétrie.
  • Si le processus d'observation s'arrête prématurément dans une instance en cours d'exécution de votre service ou job Cloud Run, il ne redémarre pas. L'instance cesse d'envoyer des informations de télémétrie à la détection des menaces Cloud Run. Les journaux Cloud Run Threat Detection sont absents des journaux d'instance. Aucun indicateur n'indique qu'un processus d'observation s'est arrêté.

Détecteurs

Cette section liste les détecteurs de plan de contrôle et d'exécution disponibles. Nous ajoutons régulièrement de nouveaux détecteurs à mesure que de nouvelles menaces cloud émergent.

Détecteurs d'exécution

Cloud Run Threat Detection inclut les détecteurs d'exécution suivants :

Nom à afficher Nom de l'API Description
Exécution : binaire malveillant ajouté exécuté CLOUD_RUN_ADDED_MALICIOUS_BINARY_EXECUTED

Un binaire répondant aux conditions suivantes a été exécuté :

  • Identifié comme malveillant en fonction des renseignements sur les menaces
  • Ne fait pas partie de l'image de conteneur d'origine

Si un fichier binaire malveillant ajouté est exécuté, cela indique fortement qu'un pirate informatique a le contrôle de la charge de travail et qu'il exécute un logiciel malveillant.

Exécution : bibliothèque malveillante ajoutée chargée CLOUD_RUN_ADDED_MALICIOUS_LIBRARY_LOADED

Une bibliothèque répondant aux conditions suivantes a été chargée :

  • Identifié comme malveillant en fonction des renseignements sur les menaces
  • Ne fait pas partie de l'image de conteneur d'origine

Si une bibliothèque malveillante ajoutée est chargée, cela indique fortement qu'un pirate informatique a le contrôle de la charge de travail et qu'il exécute un logiciel malveillant.

Exécution : binaire malveillant intégré exécuté CLOUD_RUN_BUILT_IN_MALICIOUS_BINARY_EXECUTED

Un binaire répondant aux conditions suivantes a été exécuté :

  • Identifié comme malveillant en fonction des renseignements sur les menaces
  • Inclus dans l'image de conteneur d'origine

Si un fichier binaire malveillant intégré est exécuté, cela signifie que le pirate informatique déploie des conteneurs malveillants. Ils peuvent avoir pris le contrôle d'un dépôt d'images ou d'un pipeline de compilation de conteneurs légitimes, et injecté un binaire malveillant dans l'image de conteneur.

Exécution : fuite du conteneur CLOUD_RUN_CONTAINER_ESCAPE

Un processus a été exécuté dans le conteneur et a tenté de s'échapper de l'isolation du conteneur à l'aide de techniques ou de binaires d'échappement connus. Ce type d'attaque peut donner à l'attaquant l'accès au système hôte. Ces processus sont identifiés comme des menaces potentielles en fonction des données d'intelligence.

Si une tentative d'échappement de conteneur est détectée, cela peut indiquer qu'un pirate informatique exploite des failles pour sortir du conteneur. Par conséquent, l'attaquant peut obtenir un accès non autorisé au système hôte ou à une infrastructure plus large, ce qui compromet l'ensemble de l'environnement.

Exécution : exécution d'un outil d'attaque de Kubernetes CLOUD_RUN_KUBERNETES_ATTACK_TOOL_EXECUTION

Un outil d'attaque spécifique à Kubernetes a été exécuté dans l'environnement, ce qui peut indiquer qu'un pirate informatique cible les composants du cluster Kubernetes. Ces outils d'attaque sont identifiés comme des menaces potentielles sur la base de données d'intelligence.

Si un outil d'attaque est exécuté dans l'environnement Kubernetes, cela peut suggérer qu'un pirate informatique a accédé au cluster et utilise l'outil pour exploiter des failles ou des configurations spécifiques à Kubernetes.

Exécution : exécution d'un outil de reconnaissance local CLOUD_RUN_LOCAL_RECONNAISSANCE_TOOL_EXECUTION

Un outil de reconnaissance local qui n'est généralement pas associé au conteneur ou à l'environnement a été exécuté, ce qui suggère une tentative de collecte d'informations sur le système interne. Ces outils de reconnaissance sont identifiés comme des menaces potentielles en fonction des données de renseignement.

Si un outil de reconnaissance est exécuté, cela suggère que l'attaquant tente peut-être de cartographier l'infrastructure, d'identifier les failles ou de collecter des données sur les configurations système pour planifier ses prochaines étapes.

Exécution : code Python malveillant exécuté (aperçu) CLOUD_RUN_MALICIOUS_PYTHON_EXECUTED

Un modèle de machine learning a identifié le code Python spécifié comme malveillant. Les pirates informatiques peuvent utiliser Python pour transférer des outils ou d'autres fichiers d'un système externe vers un environnement compromis afin d'exécuter des commandes sans binaires.

Le détecteur utilise des techniques de TLN pour évaluer le contenu du code Python exécuté. Étant donné que cette approche n'est pas basée sur les signatures, les détecteurs peuvent identifier le code Python connu et nouveau.

Exécution : binaire malveillant modifié exécuté CLOUD_RUN_MODIFIED_MALICIOUS_BINARY_EXECUTED

Un binaire répondant aux conditions suivantes a été exécuté :

  • Identifié comme malveillant en fonction des renseignements sur les menaces
  • Inclus dans l'image de conteneur d'origine
  • Modifié à partir de l'image de conteneur d'origine pendant l'exécution

Si un fichier binaire malveillant modifié est exécuté, cela indique fortement qu'un pirate informatique a le contrôle de la charge de travail et qu'il exécute un logiciel malveillant.

Exécution : bibliothèque malveillante modifiée chargée CLOUD_RUN_MODIFIED_MALICIOUS_LIBRARY_LOADED

Une bibliothèque répondant aux conditions suivantes a été chargée :

  • Identifié comme malveillant en fonction des renseignements sur les menaces
  • Inclus dans l'image de conteneur d'origine
  • Modifié à partir de l'image de conteneur d'origine pendant l'exécution

Si une bibliothèque malveillante modifiée est chargée, cela indique fortement qu'un pirate informatique a le contrôle de la charge de travail et qu'il exécute un logiciel malveillant.

Script malveillant exécuté CLOUD_RUN_MALICIOUS_SCRIPT_EXECUTED

Un modèle de machine learning a identifié le code Bash spécifié comme malveillant. Les pirates informatiques peuvent utiliser Bash pour transférer des outils ou d'autres fichiers d'un système externe vers un environnement compromis afin d'exécuter des commandes sans binaires.

Le détecteur utilise des techniques de TLN pour évaluer le contenu du code Bash exécuté. Étant donné que cette approche n'est pas basée sur les signatures, les détecteurs peuvent identifier le code Bash malveillant connu et nouveau.

URL malveillante observée CLOUD_RUN_MALICIOUS_URL_OBSERVED

La détection des menaces Cloud Run a détecté une URL malveillante dans la liste des arguments d'un processus en cours d'exécution.

Le détecteur compare les URL observées dans la liste des arguments des processus en cours d'exécution aux listes de ressources Web non sécurisées gérées par le service Google Navigation sécurisée. Si une URL est classée à tort comme site d'hameçonnage ou logiciel malveillant, signalez-le sur la page Signaler des données incorrectes.

Interface système inversée CLOUD_RUN_REVERSE_SHELL

Un processus a commencé par une redirection de flux vers un socket connecté distant. Le détecteur recherche stdin lié à un socket distant.

Grâce à l'interface système inversée, un pirate informatique peut communiquer à partir d'une charge de travail compromise vers une machine contrôlée par un pirate informatique. Le pirate informatique peut ensuite commander et contrôler la charge de travail, par exemple dans le cadre d'un botnet.

Shell enfant inattendu CLOUD_RUN_UNEXPECTED_CHILD_SHELL

Un processus qui n'invoque normalement pas de shells a généré un processus de shell.

Le détecteur surveille toutes les exécutions de processus. Lorsqu'un shell est appelé, le détecteur génère un résultat si le processus parent n'est pas connu pour appeler généralement des shells.

Détecteurs du plan de contrôle

Les détecteurs de plan de contrôle suivants sont disponibles dans Event Threat Detection. Ces détecteurs sont activés par défaut. Vous gérez ces détecteurs de la même manière que les autres détecteurs Event Threat Detection. Pour en savoir plus, consultez Utiliser Event Threat Detection.

Nom à afficher Nom de l'API Types de sources de journal Description
Impact : commandes de minage de cryptomonnaie CLOUD_RUN_JOBS_CRYPTOMINING_COMMANDS Cloud Audit Logs :
Journaux d'audit des événements système IAM
Des commandes de minage de cryptomonnaie spécifiques ont été associées à un job Cloud Run lors de l'exécution. Par défaut, les résultats sont classés dans le niveau de gravité élevé.
Exécution : image Docker de minage de cryptomonnaie CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Cloud Audit Logs :
Journaux d'audit des événements système IAM
Des images Docker spécifiques connues comme étant incorrectes ont été associées à un service ou un job Cloud Run nouveau ou existant. Par défaut, les résultats sont classés dans le niveau de gravité élevé.
Escalade de privilèges : compte de service Compute Engine par défaut SetIAMPolicy CLOUD_RUN_SERVICES_SET_IAM_POLICY Journaux d'audit Cloud :
Journaux des activités d'administration
Le compte de service Compute Engine par défaut a été utilisé pour définir la stratégie IAM d'un service Cloud Run. Il s'agit d'une action post-exploitation potentielle lorsqu'un jeton Compute Engine est compromis à partir d'un service sans serveur. Par défaut, les résultats sont classés dans le niveau de gravité faible.
Pour les règles abandonnées et arrêtées, consultez Abandons.

Étapes suivantes