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

Cloud Run Threat Detection est un service intégré de Security Command Center qui surveille en permanence l'état des ressources Cloud Run compatibles afin de détecter les attaques les plus courantes visant l'environnement d'exécution. 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 de Cloud Run Threat Detection surveillent les ressources Cloud Run à la recherche de binaires et de bibliothèques suspects, et utilisent le traitement du langage naturel (TLN) 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 sur le plan de contrôle de vos ressources Cloud Run.

Ressources compatibles

Détection des menaces Cloud Run 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 de Cloud Run Threat Detection ne sont compatibles qu'avec les ressources Cloud Run exécutées dans l'environnement d'exécution de deuxième génération. Tenez compte des points suivants avant d'activer la détection des menaces Cloud Run:

  • Lorsque vous activez Cloud Run Threat Detection, vous ne pouvez pas créer de service ou de révision de service Cloud Run exécutés dans 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 d'exécution pour un service, déployez une révision qui définit l'environnement d'exécution du service sur la deuxième génération ou l'environnement d'exécution 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 Cloud Run au moment de l'exécution

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

  1. Cloud Run Threat Detection utilise un processus de surveillance 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 de surveillance 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 TLN 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 consulter les résultats de la détection des menaces Cloud Run dans la console Google Cloud, consultez la section Examiner les résultats.

Problèmes connus

  • Les instances de vos services ou tâches Cloud Run qui durent plus de sept jours cessent d'envoyer des informations de télémétrie.
  • Si le processus de surveillance s'arrête prématurément dans une instance en cours d'exécution de votre service ou tâche 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 de l'instance. Il n'existe aucun indicateur indiquant qu'un processus de surveillance s'est arrêté.

Détecteurs

Cette section liste les détecteurs d'exécution et de plan de contrôle 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: fichier 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 d'après les renseignements sur les menaces
  • ne fait pas partie de l'image de conteneur d'origine ;

Si un binaire malveillant ajouté est exécuté, il s'agit d'un signe fort 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 qui remplit les conditions suivantes a été chargée:

  • Identifié comme malveillant d'après les 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, il est fort probable qu'un pirate informatique ait le contrôle de la charge de travail et qu'il exécute un logiciel malveillant.

Exécution: fichier 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 d'après les renseignements sur les menaces
  • Inclus dans l'image de conteneur d'origine

Si un binaire malveillant intégré est exécuté, cela signifie que le pirate informatique déploie des conteneurs malveillants. Il est possible qu'il ait pris le contrôle d'un dépôt d'images légitime ou d'un pipeline de compilation de conteneur, et injecté un binaire malveillant dans l'image du conteneur.

Exécution: fuite du conteneur CLOUD_RUN_CONTAINER_ESCAPE

Un processus a été exécuté dans le conteneur et a tenté de briser l'isolation du conteneur, à l'aide de techniques d'évasion ou de binaires connues. Ce type d'attaque peut donner au pirate informatique accès au système hôte. Ces processus sont identifiés comme des menaces potentielles sur la base de données d'informations.

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

Exécution: exécution de l'outil d'attaque 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'informations.

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 qu'il utilise l'outil pour exploiter des failles ou des configurations spécifiques à Kubernetes.

Exécution: exécution de l'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 système internes. Ces outils de reconnaissance sont identifiés comme des menaces potentielles en fonction des données d'intelligence.

Si un outil de reconnaissance est exécuté, cela suggère que le pirate informatique 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: fichier 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 d'après les 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 est un signe fort 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 qui remplit les conditions suivantes a été chargée:

  • Identifié comme malveillant d'après les 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, il s'agit d'un signe fort 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 détectée CLOUD_RUN_MALICIOUS_URL_OBSERVED

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

Le détecteur vérifie les URL observées dans la liste d'arguments des processus en cours d'exécution par rapport aux listes de ressources Web non sécurisées gérées par le service Navigation sécurisée de Google. Si une URL est classée par erreur comme site d'hameçonnage ou logiciel malveillant, signalez-la 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'appelle normalement pas de shells a généré un processus 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'appelle généralement pas de shells.

Détecteurs du plan de contrôle

Les détecteurs de plan de contrôle suivants sont disponibles via 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 la section Utiliser Event Threat Detection.

Nom à afficher Nom de l'API Types de sources de journal Description
Impact: Commandes de minage de cryptomonnaie (bêta) 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 à une tâche Cloud Run lors de son exécution.
Exécution: image Docker de minage de cryptomonnaie (aperçu) CLOUD_RUN_CRYPTOMINING_DOCKER_IMAGES Cloud Audit Logs:
Journaux d'audit des événements système IAM
Des images Docker spécifiques connues comme défectueuses ont été associées à un service ou à une tâche Cloud Run nouveaux ou existants.
Escalade des droits: compte de service Compute Engine par défaut SetIAMPolicy (version Preview) CLOUD_RUN_SERVICES_SET_IAM_POLICY Cloud Audit Logs:
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.
Pour en savoir plus sur les règles obsolètes et celles qui seront arrêtées, consultez Abandons.

Étape suivante