Esta página descreve as funcionalidades de deteção e proteção que o Cloud SQL oferece para proteger as suas instâncias contra tentativas de acesso de força bruta que visam o acesso não autorizado, e como proteger a sua instância contra estas tentativas.
A proteção contra ataques de força bruta é uma funcionalidade de segurança incorporada que ajuda a proteger as suas instâncias de tentativas de acesso de força bruta, impedindo o acesso não autorizado aos seus recursos do Cloud SQL. As tentativas de acesso por força bruta ocorrem quando os autores de ataques tentam sistematicamente diferentes combinações de nome de utilizador e palavra-passe para automatizar tentativas de início de sessão repetidas e obter acesso à sua base de dados.
O Cloud SQL oferece as seguintes opções para proteger as suas bases de dados contra tentativas de acesso de força bruta:
Deteção de acesso por força bruta: o Cloud SQL monitoriza continuamente as tentativas de início de sessão falhadas para cada instância e deteta o primeiro início de sessão bem-sucedido. Se o número de tentativas de início de sessão consecutivas exceder o limite definido pelo Cloud SQL, o Cloud SQL gera uma mensagem de aviso nos registos da instância. Esta mensagem de registo identifica a tentativa de acesso por força bruta, juntamente com o endereço IP e o nome de utilizador associados.
A deteçã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 deteta uma tentativa de acesso por força bruta, abranda automaticamente as tentativas de início de sessão adicionando um atraso à resposta de início de sessão e limitando-a em tempo real. Se o Cloud SQL identificar uma ligação como uma tentativa de acesso por força bruta e essa ligação resultar num início de sessão bem-sucedido, o Cloud SQL limita-a e gera um evento de registo para identificar este início de sessão bem-sucedido. Este evento de registo identifica a tentativa de acesso por força bruta, juntamente com o endereço IP e o nome de utilizador associados.
A proteção de acesso por força bruta está disponível apenas para a edição Cloud SQL Enterprise Plus.
Ao fornecer deteção e proteção de acesso de força bruta para as suas instâncias, o Cloud SQL ajuda a identificar a origem e a mitigar os riscos causados por estas tentativas de acesso de força bruta. Use os endereços IP e os nomes de utilizador identificados nestas tentativas de acesso de força bruta para proteger a sua instância e protegê-la de futuras tentativas de acesso de força bruta. Para identificar tentativas de força bruta para a sua instância, consulte o artigo Ver registos de tentativas de força bruta.
Veja registos de tentativas de acesso por força bruta
Quando o Cloud SQL deteta uma tentativa de acesso por força bruta, regista
um evento nos registos da instância,
com um texto que indica an anomaly was found. O Cloud SQL regista os seguintes eventos detalhados:
| Evento | Descrição |
|---|---|
| Deteção de tentativa de acesso por força bruta | A tentativa de início de sessão na conta user falhou
a partir do IP IP. Foi encontrada uma anomalia. Foram detetadas várias tentativas de início de sessão falhadas a partir deste IP. |
| Limitação automática para mitigar a tentativa de acesso por força bruta (apenas na edição Enterprise Plus) | A tentativa de início de sessão na conta user falhou a partir do IP
IP. Foi encontrada uma anomalia. Foram detetadas várias tentativas de início de sessão falhadas
a partir deste IP. O Cloud SQL limitou a resposta para mitigar uma potencial tentativa de força bruta. |
| Deteção do primeiro início de sessão bem-sucedido após falhas repetidas de início de sessão | Foi encontrada uma anomalia. O início de sessão na conta user
a partir do IP IP foi bem-sucedido após várias tentativas de início de sessão sem êxito. Recomendamos que altere a palavra-passe do utilizador se esta atividade for inesperada. |
| Limitação automática do primeiro início de sessão bem-sucedido após falhas repetidas de início de sessão (apenas na edição Enterprise Plus) | Foi encontrada uma anomalia. Início de sessão bem-sucedido na conta
user a partir do IP IP após várias tentativas de início de sessão
sem êxito. O Cloud SQL limitou a resposta para mitigar uma potencial tentativa de força bruta. Alterar a palavra-passe do utilizador se esta atividade for inesperada. |
Para ver detalhes sobre estas tentativas de força bruta,
veja os registos da sua instância e procure
An anomaly was found no texto de cada registo.
Configure uma política de alerta baseada em registos
Pode configurar uma política de alerta baseada em registos para receber uma notificação quando for detetada ou limitada uma tentativa de acesso por força bruta para as suas instâncias do Cloud SQL. Para mais informações sobre como configurar este alerta, consulte o artigo Configure a política de alertas baseada em registos através do Explorador de registos.
Por exemplo, pode usar a seguinte consulta na política de alerta para identificar registos de tentativas de acesso por força bruta bem-sucedidas:
resource.type="cloudsql_database"
textPayload =~ "An anomaly was found, successful login into the account"
Proteja a sua instância
O Cloud SQL recomenda proteger a sua instância se forem identificadas tentativas de acesso por força bruta. Para ver potenciais tentativas de acesso por força bruta, consulte o artigo Veja registos 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 detetar uma tentativa de acesso por força bruta, mas o início de sessão falhar, remova os endereços IP identificados das suas redes autorizadas para impedir futuras tentativas de início de sessão a partir destes IPs. Para tal, 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 detetar uma tentativa de acesso por força bruta e um início de sessão bem-sucedido resultante do endereço IP e do nome de utilizador identificados, altere a palavra-passe da conta de utilizador e remova o IP da sua lista de redes autorizadas.
Além disso, também pode usar o proxy Auth ou os conetores de linguagem do Cloud SQL para se ligar à sua instância em vez de usar redes autorizadas. O proxy Auth e os conectores de linguagem do Cloud SQL usam a autenticação da gestão de identidade e de acesso para gerir as ligações à sua instância, o que oferece uma ligação mais segura e não requer que adicione endereços IP específicos à lista de redes autorizadas da sua instância.
Para proteger ainda mais as suas instâncias do Cloud SQL, use o IP privado em vez do IP público e use a autenticação de base de dados baseada na IAM em vez da autenticação baseada no nome de utilizador e na palavra-passe.
Monitorize tentativas de acesso por força bruta
Para monitorizar as tentativas de acesso por força bruta, o Cloud SQL contabiliza o número de ocorrências de cada tipo de evento de ligação à sua instância através da métrica /database/network/connection_attempt_count. Esta métrica usa os seguintes campos para determinar se uma ligação é uma tentativa de acesso por força bruta:
login_status: acompanha se a associação levou a um início de sessão bem-sucedido.anomaly_detected: acompanha se a ligação é uma tentativa de acesso por força bruta com base no facto de a ligação ter excedido o limite de tentativas de início de sessão definido pelo Cloud SQL.anomalous_connection_throttled: acompanha se a ligação de tentativa de acesso de força bruta está limitada.
Pode monitorizar esta métrica para identificar a contagem de cada tipo de evento de associação. A tabela seguinte mostra os eventos de ligação acompanhados pela métrica e os respetivos valores dos campos:
| Evento | Descrição |
|---|---|
| Sessão iniciada com êxito | Um início de sessão bem-sucedido na sua instância sem tentativa de acesso por força bruta detetada. Valores dos campos monitorizados: login_status: succeeded
anomaly_detected: none
anomalous_connection_throttled: false
|
| Falha no início de sessão | Um início de sessão falhado na sua instância sem tentativa de acesso por força bruta detetada. Valores dos campos monitorizados: login_status: failed
anomaly_detected: none
anomalous_connection_throttled: false
|
| Tentativa de início de sessão por força bruta detetada (não limitada) | Uma tentativa de início de sessão falhada que é identificada como uma tentativa de acesso por força bruta, uma vez que excede o limite de tentativas de início de sessão definido pelo Cloud SQL. A ligação não foi limitada. Valores dos campos monitorizados: login_status: failed
anomaly_detected: brute-force login
anomalous_connection_throttled: false
|
| Tentativa de início de sessão por força bruta detetada e limitada | Uma tentativa de início de sessão falhada que é identificada como uma tentativa de acesso por força bruta, uma vez que excede o limite de tentativas de início de sessão definido pelo Cloud SQL e é limitada para impedir o início de sessão.
Valores dos campos monitorizados: login_status: failed
anomaly_detected: brute-force login
anomalous_connection_throttled: true
|
| Início de sessão bem-sucedido após deteção de tentativa de acesso por força bruta (não limitado) | Um início de sessão bem-sucedido na sua instância depois de a ligação ter sido identificada como uma tentativa de acesso por força bruta. A ligação não foi limitada.
Valores dos campos monitorizados: login_status: succeeded
anomaly_detected: brute-force login
anomalous_connection_throttled: false
|
| Início de sessão bem-sucedido após a deteção e a limitação de uma tentativa de acesso por força bruta | Um início de sessão bem-sucedido na sua instância depois de a ligação ter sido identificada como uma tentativa de acesso por força bruta e limitada.
Valores dos campos monitorizados: login_status: succeeded
anomaly_detected: brute-force login
anomalous_connection_throttled: true
|
Limitações
- A proteção contra ataques de força bruta requer uma versão de manutenção mínima de
MYSQL_$version.R20250531.01_23. Para mais informações, consulte o artigo Faça a manutenção self-service. - A proteção contra ataques de força bruta só está disponível para a versão 5.7 e posteriores do MySQL.