Usar a proteção contra ataques de força bruta do Cloud SQL

Nesta página, descrevemos os recursos de detecção e proteção que o Cloud SQL oferece para proteger suas instâncias contra tentativas de acesso por força bruta que visam acesso não autorizado, e como proteger sua instância contra essas tentativas.

A proteção contra ataques de força bruta é um recurso de segurança integrado que ajuda a proteger suas instâncias contra tentativas de acesso por força bruta, impedindo o acesso não autorizado aos recursos do Cloud SQL. As tentativas de acesso por força bruta ocorrem quando agentes maliciosos tentam sistematicamente diferentes combinações de nome de usuário e senha para automatizar tentativas repetidas de login e acessar seu banco de dados.

O Cloud SQL oferece as seguintes opções para proteger seus bancos de dados contra tentativas de acesso por força bruta:

  • Detecção de acesso por força bruta: o Cloud SQL monitora continuamente as tentativas de login com falha de cada instância e detecta o primeiro login bem-sucedido. Se o número de tentativas consecutivas de login exceder o limite definido pelo Cloud SQL, o Cloud SQL vai gerar uma mensagem de aviso nos registros da instância. Essa mensagem de registro identifica a tentativa de acesso por força bruta, além do endereço IP e do nome de usuário associados.

    A detecção de acesso por força bruta está disponível para todas as edições do Cloud SQL.

  • Proteção contra acesso por força bruta: quando o Cloud SQL detecta uma tentativa de acesso por força bruta, ele diminui automaticamente as tentativas de login adicionando um atraso à resposta de login e limitando-a em tempo real. Se o Cloud SQL identificar uma conexão como uma tentativa de acesso por força bruta e ela resultar em um login bem-sucedido, o Cloud SQL vai limitar essa conexão e gerar um evento de registro em log para identificar esse login bem-sucedido. Esse evento de registro identifica a tentativa de acesso por força bruta, além do endereço IP e do nome de usuário associados.

    A proteção contra acesso por força bruta está disponível apenas para a edição Enterprise Plus do Cloud SQL.

Ao oferecer detecção e proteção contra acesso de força bruta para suas instâncias, o Cloud SQL ajuda a identificar a origem e reduzir os riscos causados por essas tentativas de acesso de força bruta. Use os endereços IP e nomes de usuário identificados nessas tentativas de acesso por força bruta para proteger sua instância e evitar futuras tentativas de acesso por força bruta. Para identificar tentativas de força bruta na sua instância, consulte Ver registros de tentativas de força bruta.

Ver registros de tentativas de acesso por força bruta

Quando o Cloud SQL detecta uma tentativa de acesso por força bruta, ele registra um evento nos registros da instância, com um texto que diz an anomaly was found. O Cloud SQL registra os seguintes eventos detalhados:

Evento Descrição
Detecção de tentativa de acesso por força bruta Falha na tentativa de login na conta user do IP IP. Uma anomalia foi encontrada. Houve várias tentativas de login sem sucesso desse IP.
Limitação automática para reduzir tentativas de acesso por força bruta (somente na edição Enterprise Plus) Falha na tentativa de login na conta user do IP IP. Uma anomalia foi encontrada. Houve várias tentativas de login com falha deste IP. O Cloud SQL limitou a resposta para reduzir uma possível tentativa de força bruta.
Detecção do primeiro login bem-sucedido após falhas repetidas Foi encontrada uma anomalia. O login na conta user foi feito com sucesso do IP IP após várias tentativas malsucedidas. Recomendamos mudar a senha do usuário se essa atividade for inesperada.
Limitação automática do primeiro login bem-sucedido após falhas repetidas de login (somente na edição Enterprise Plus) Foi encontrada uma anomalia. O login na conta user foi feito com sucesso no IP IP após várias tentativas de login sem sucesso. O Cloud SQL limitou a resposta para mitigar uma possível tentativa de força bruta. Mude a senha do usuário se essa atividade for inesperada.

Para ver detalhes sobre essas tentativas de força bruta, consulte os registros da sua instância e procure An anomaly was found no texto de cada registro.

Configurar uma política de alertas baseada em registros

É possível configurar uma política de alertas com base em registros para receber notificações quando uma tentativa de acesso por força bruta for detectada ou limitada nas suas instâncias do Cloud SQL. Para mais informações sobre como configurar esse alerta, consulte Configurar uma política de alertas com base em registros usando o Explorador de registros.

Por exemplo, é possível usar a seguinte consulta na política de alertas para identificar registros de tentativas de acesso por força bruta bem-sucedidas:

resource.type="cloudsql_database"
textPayload =~ "An anomaly was found, successful login into the account"

Proteger a instância

O Cloud SQL recomenda proteger sua instância se forem identificadas tentativas de acesso por força bruta. Para ver possíveis tentativas de acesso por força bruta, consulte Ver registros de tentativas de acesso por força bruta.

Se o Cloud SQL identificar uma tentativa de acesso por força bruta à sua instância, faça o seguinte:

  • Se o Cloud SQL detectar uma tentativa de acesso por força bruta, mas o login falhar, remova os endereços IP identificados das redes autorizadas para evitar futuras tentativas de login desses IPs. Para isso, use intervalos de IP restritos nas redes autorizadas da sua instância ou remova o endereço IP da lista de redes autorizadas.
  • Se o Cloud SQL detectar uma tentativa de acesso por força bruta e um login bem-sucedido resultar do endereço IP e do nome de usuário identificados, então mude a senha da conta de usuário e remova o IP da lista de redes autorizadas.

Além disso, você também pode usar o proxy de autenticação ou os conectores de linguagem do Cloud SQL para se conectar à instância em vez de redes autorizadas. O proxy de autenticação e os conectores de linguagem do Cloud SQL usam a autenticação do Identity and Access Management para gerenciar as conexões com sua instância, o que oferece uma conexão mais segura e não exige que você adicione endereços IP específicos à lista de redes autorizadas da instância.

Para proteger ainda mais suas instâncias do Cloud SQL, use IP privado em vez de IP público e use autenticação de banco de dados baseada no IAM em vez da autenticação baseada em nome de usuário e senha.

Monitorar tentativas de acesso por força bruta

Para monitorar tentativas de acesso por força bruta, o Cloud SQL conta o número de ocorrências de cada tipo de evento de conexão com sua instância usando a métrica /database/network/connection_attempt_count. Essa métrica usa os seguintes campos para determinar se uma conexão é uma tentativa de acesso por força bruta:

  • login_status: rastreia se a conexão resultou em um login bem-sucedido.
  • anomaly_detected: rastreia se a conexão é uma tentativa de acesso por força bruta com base em se ela excedeu o limite de tentativas de login definido pelo Cloud SQL.
  • anomalous_connection_throttled: rastreia se a conexão de tentativa de acesso por força bruta está limitada.

É possível monitorar essa métrica para identificar a contagem de cada tipo de evento de conexão. A tabela a seguir mostra os eventos de conexão rastreados pela métrica e os valores de campo correspondentes:

Evento Descrição
Login efetuado Um login bem-sucedido na sua instância sem detecção de tentativa de acesso por força bruta. Valores de campo rastreados:
          login_status: succeeded
          anomaly_detected: none
          anomalous_connection_throttled: false
        
Falha no login Uma falha no login da sua instância sem que uma tentativa de acesso por força bruta tenha sido detectada. Valores de campo rastreados:
          login_status: failed
          anomaly_detected: none
          anomalous_connection_throttled: false
        
Tentativa de login por força bruta detectada (não limitada) Uma tentativa de login malsucedida identificada como uma tentativa de acesso por força bruta, porque excede o limite de tentativas de login definido pelo Cloud SQL. A conexão não foi limitada. Valores de campo rastreados:
          login_status: failed
          anomaly_detected: brute-force login
          anomalous_connection_throttled: false
        
Tentativa de login por força bruta detectada e limitada Uma tentativa de login malsucedida identificada como uma tentativa de acesso por força bruta, já que excede o limite de tentativas de login definido pelo Cloud SQL e é limitada para impedir o login. Valores de campo rastreados:
          login_status: failed
          anomaly_detected: brute-force login
          anomalous_connection_throttled: true
        
Login bem-sucedido após detecção de tentativa de acesso por força bruta (sem limitação) Um login bem-sucedido na sua instância depois que a conexão foi identificada como uma tentativa de acesso por força bruta. A conexão não foi limitada. Valores de campo rastreados:
          login_status: succeeded
          anomaly_detected: brute-force login
          anomalous_connection_throttled: false
        
Login bem-sucedido após a detecção e limitação de uma tentativa de acesso por força bruta Um login bem-sucedido na sua instância depois que a conexão foi identificada como uma tentativa de acesso por força bruta e limitada. Valores de campo rastreados:
          login_status: succeeded
          anomaly_detected: brute-force login
          anomalous_connection_throttled: true
        

Limitações

  • A proteção contra ataques de força bruta exige uma versão mínima de manutenção de MYSQL_$version.R20250531.01_23. Para mais informações, consulte Fazer manutenção de autoatendimento.
  • A proteção contra ataques de força bruta está disponível apenas para o MySQL versão 5.7 e mais recentes.

A seguir