Cette page décrit les fonctionnalités de détection et de protection fournies par Cloud SQL pour protéger vos instances contre les tentatives d'accès par force brute visant à obtenir un accès non autorisé. Elle explique également comment sécuriser votre instance contre ces tentatives.
La protection contre les attaques par force brute est une fonctionnalité de sécurité intégrée qui permet de protéger vos instances contre les tentatives d'accès par force brute en empêchant l'accès non autorisé à vos ressources Cloud SQL. Les tentatives d'accès par force brute se produisent lorsque des pirates informatiques essaient systématiquement différentes combinaisons de nom d'utilisateur et de mot de passe pour automatiser les tentatives de connexion répétées et accéder à votre base de données.
Cloud SQL propose les options suivantes pour protéger vos bases de données contre les tentatives d'accès par force brute :
Détection des accès par force brute : Cloud SQL surveille en permanence les tentatives de connexion infructueuses pour chaque instance et détecte la première connexion réussie. Si le nombre de tentatives de connexion consécutives dépasse le seuil défini par Cloud SQL, Cloud SQL génère un message d'avertissement dans les journaux de l'instance. Ce message de journal identifie la tentative d'accès par force brute, ainsi que l'adresse IP et le nom d'utilisateur associés.
La détection des accès par force brute est disponible pour toutes les éditions Cloud SQL.
Protection contre les accès par force brute : lorsque Cloud SQL détecte une tentative d'accès par force brute, il ralentit automatiquement les tentatives de connexion en ajoutant un délai à la réponse de connexion et en la limitant en temps réel. Si Cloud SQL identifie une connexion comme tentative d'accès par force brute et que cette connexion aboutit à une connexion réussie, Cloud SQL la limite et génère un événement de journal pour identifier cette connexion réussie. Cet événement de journal identifie la tentative d'accès par force brute, ainsi que l'adresse IP et le nom d'utilisateur associés.
La protection contre l'accès par force brute n'est disponible que pour l'édition Cloud SQL Enterprise Plus.
En fournissant une détection et une protection contre les accès par force brute pour vos instances, Cloud SQL vous aide à identifier la source des risques causés par ces tentatives d'accès par force brute et à les atténuer. Utilisez les adresses IP et les noms d'utilisateur identifiés dans ces tentatives d'accès par force brute pour sécuriser votre instance et la protéger contre de futures tentatives d'accès par force brute. Pour identifier les tentatives de piratage par force brute pour votre instance, consultez Afficher les journaux des tentatives de piratage par force brute.
Afficher les journaux des tentatives d'accès par force brute
Lorsque Cloud SQL détecte une tentative d'accès par force brute, il consigne un événement dans les journaux de votre instance, avec le texte an anomaly was found. Cloud SQL consigne les événements détaillés suivants :
| Événement | Description |
|---|---|
| Détection d'une tentative d'accès par force brute | Tentative de connexion infructueuse au compte user depuis l'adresse IP IP. Une anomalie a été détectée. Des tentatives de connexion répétées ont échoué à partir de cette adresse IP. |
| Limitation automatique pour atténuer les tentatives d'accès par force brute (édition Enterprise Plus uniquement) | Tentative de connexion au compte user depuis l'adresse IP IP ayant échoué. Une anomalie a été détectée. Plusieurs tentatives de connexion ont échoué
à partir de cette adresse IP. Cloud SQL a limité la réponse pour atténuer une éventuelle tentative de piratage par force brute. |
| Détection de la première connexion réussie après des échecs de connexion répétés | Une anomalie a été détectée. La connexion au compte user a réussi depuis l'adresse IP IP après plusieurs tentatives de connexion infructueuses. Nous vous recommandons de modifier le mot de passe de l'utilisateur si cette activité est inattendue. |
| Limitation automatique de la première connexion réussie après des échecs de connexion répétés (édition Enterprise Plus uniquement) | Une anomalie a été détectée. La connexion au compte user depuis l'adresse IP IP a réussi après plusieurs tentatives infructueuses. Cloud SQL a limité la réponse pour atténuer une éventuelle tentative de force brute. Modifiez le mot de passe de l'utilisateur si cette activité est inattendue. |
Pour afficher des informations sur ces tentatives de piratage par force brute, consultez les journaux de votre instance et recherchez An anomaly was found dans le texte de chaque journal.
Configurer une règle d'alerte basée sur les journaux
Vous pouvez configurer une règle d'alerte basée sur les journaux pour être averti lorsqu'une tentative d'accès par force brute est détectée ou limitée pour vos instances Cloud SQL. Pour savoir comment configurer cette alerte, consultez Configurer une règle d'alerte basée sur les journaux à l'aide de l'explorateur de journaux.
Par exemple, vous pouvez utiliser la requête suivante dans la règle d'alerte pour identifier les journaux des tentatives d'accès par force brute réussies :
resource.type="cloudsql_database"
textPayload =~ "An anomaly was found, successful login into the account"
Sécuriser votre instance
Cloud SQL recommande de sécuriser votre instance si des tentatives d'accès par force brute sont détectées. Pour afficher les tentatives d'accès par force brute potentielles, consultez Afficher les journaux des tentatives d'accès par force brute.
Si Cloud SQL identifie une tentative d'accès par force brute à votre instance, procédez comme suit :
- Si Cloud SQL détecte une tentative d'accès par force brute, mais que la connexion a échoué, supprimez les adresses IP identifiées de vos réseaux autorisés pour éviter de futures tentatives de connexion à partir de ces adresses IP. Pour ce faire, utilisez des plages d'adresses IP étroites dans les réseaux autorisés de votre instance, ou supprimez l'adresse IP de la liste des réseaux autorisés.
- Si Cloud SQL détecte une tentative d'accès par force brute et qu'une connexion réussie a été établie à partir de l'adresse IP et du nom d'utilisateur identifiés, modifiez le mot de passe du compte utilisateur et supprimez l'adresse IP de votre liste de réseaux autorisés.
Vous pouvez également utiliser le proxy d'authentification ou les connecteurs de langage Cloud SQL pour vous connecter à votre instance au lieu des réseaux autorisés. Le proxy d'authentification et les connecteurs de langage Cloud SQL utilisent l'authentification Identity and Access Management pour gérer les connexions à votre instance. Cela permet d'établir une connexion plus sécurisée et vous évite d'ajouter des adresses IP spécifiques à la liste des réseaux autorisés de votre instance.
Pour mieux protéger vos instances Cloud SQL, utilisez une adresse IP privée au lieu d'une adresse IP publique, et utilisez l'authentification pour les bases de données basée sur IAM au lieu de l'authentification basée sur un nom d'utilisateur et un mot de passe.
Surveiller les tentatives d'accès par force brute
Pour surveiller les tentatives d'accès par force brute, Cloud SQL comptabilise le nombre d'occurrences de chaque type d'événement de connexion à votre instance à l'aide de la métrique /database/network/connection_attempt_count. Cette métrique utilise les champs suivants pour déterminer si une connexion est une tentative d'accès par force brute :
login_status: indique si la connexion a abouti.anomaly_detected: indique si la connexion est une tentative d'accès par force brute, en fonction du fait que la connexion a dépassé ou non le seuil de tentatives de connexion défini par Cloud SQL.anomalous_connection_throttled: indique si la connexion de tentative d'accès par force brute est limitée.
Vous pouvez surveiller cette métrique pour identifier le nombre de chaque type d'événement de connexion. Le tableau suivant présente les événements de connexion suivis par la métrique et les valeurs de champ correspondantes :
| Événement | Description |
|---|---|
| Connexion réussie | Connexion réussie à votre instance sans tentative d'accès par force brute détectée. Valeurs de champ suivies : login_status: succeeded
anomaly_detected: none
anomalous_connection_throttled: false
|
| Échec de la connexion | Échec de connexion à votre instance sans tentative d'accès par force brute détectée. Valeurs de champ suivies : login_status: failed
anomaly_detected: none
anomalous_connection_throttled: false
|
| Tentative de connexion par force brute détectée (non limitée) | Tentative de connexion infructueuse identifiée comme une tentative d'accès par force brute, car elle dépasse le seuil de tentatives de connexion défini par Cloud SQL. La connexion n'a pas été limitée. Valeurs de champ suivies : login_status: failed
anomaly_detected: brute-force login
anomalous_connection_throttled: false
|
| Tentative de connexion par force brute détectée et limitée | Une tentative de connexion infructueuse identifiée comme une tentative d'accès par force brute, car elle dépasse le seuil de tentatives de connexion défini par Cloud SQL et est limitée pour empêcher la connexion.
Valeurs de champ suivies : login_status: failed
anomaly_detected: brute-force login
anomalous_connection_throttled: true
|
| Connexion réussie après une tentative d'accès par force brute détectée (non limitée) | Connexion réussie à votre instance après que la connexion a été identifiée comme une tentative d'accès par force brute. La connexion n'a pas été limitée.
Valeurs de champ suivies : login_status: succeeded
anomaly_detected: brute-force login
anomalous_connection_throttled: false
|
| Connexion réussie après une tentative d'accès par force brute détectée et limitée | Connexion réussie à votre instance après que la connexion a été identifiée comme une tentative d'accès par force brute et limitée.
Valeurs de champ suivies : login_status: succeeded
anomaly_detected: brute-force login
anomalous_connection_throttled: true
|
Limites
- La protection contre les attaques par force brute nécessite la version de maintenance minimale
MYSQL_$version.R20250531.01_23. Pour en savoir plus, consultez Effectuer une maintenance en libre-service. - La protection contre les attaques par force brute n'est disponible que pour MySQL version 5.7 et ultérieures.