As credenciais do Google Cloud controlam o acesso aos recursos hospedados no serviço. Para ajudar a manter seus dados seguros e protegidos contra invasores, você precisa lidar com suas credenciais com o máximo de cuidado.
É recomendável proteger todas as credenciais do Google Cloud contra acesso não intencional. Confira alguns tipos de credenciais:
Credenciais de serviço:
- Chaves privadas de conta de serviço (arquivos JSON e p12)
- Chaves de API
- Secrets de ID do cliente OAuth2
Credenciais de usuário criadas e gerenciadas em estações de trabalho do desenvolvedor ou outros computadores:
Cookies do navegador
As credenciais da Google Cloud CLI são armazenadas no
diretório principal do usuário. É possível listá-las na Google Cloud CLI usando o comando gcloud
auth list
.
O Application Default Credentials é armazenado na estação de trabalho do desenvolvedor.
Os cookies do navegador são específicas desse programa, mas geralmente ficam armazenados na estação de trabalho
do desenvolvedor.
Se você suspeitar que uma das suas credenciais foi comprometida, será necessário tomar medidas imediatas para limitar o impacto dessa violação na conta do Google Cloud.
Monitorar o comprometimento de credenciais
Para monitorar possíveis comprometimentos, considere o seguinte:
Monitore a atividade suspeita da conta, como escalonamento de privilégios e criação de várias contas. Monitore essas atividades usando Registros de auditoria do Cloud, Policy Intelligence e Security Command Center. Use os seguintes serviços e recursos do Security Command Center:
- A Detecção de ameaças de eventos para identificar ameaças com base em atividades do administrador, alterações em grupos e na permissão do Identity and Access Management (IAM).
- Ações sensíveis Serviço para acompanhar as ações na organização, nas pastas e nos projetos prejudicar sua empresa se forem tomados por uma pessoa mal-intencionada.
- Gerenciamento de direitos de infraestrutura em nuvem (CIEM) (pré-lançamento) para gerenciar o acesso por identidade e gerar descobertas para configurações incorretas.
Monitore os logins dos usuários no Google Workspace e no Cloud Identity. Para acompanhar melhor os problemas, exporte os registros para o Cloud Logging.
Monitore os secrets nos repositórios de código usando ferramentas como Anomaly Detecção ou verificação secreta.
Monitorar anomalias no uso de chaves da conta de serviço com o Cloud Monitoring, ou CIEM.
Certifique-se de que sua Central de Operações de Segurança (SOC) seja notificada imediatamente e tenha os playbooks, as ferramentas e o acesso necessários para responder rapidamente a uma suspeita de comprometimento de credenciais. Use o Security Command Center Enterprise nível para habilitar recursos de SIEM e SOAR, como playbooks, fluxos de trabalho de resposta e ações automatizadas. Também é possível integrar o Security Command Center aos seus SIEM ou importação de registros sobre as Operações de segurança do Google para uma análise mais aprofundada.
Proteja seus recursos do Google Cloud contra o comprometimento de credenciais
Conclua as etapas nas seções a seguir o mais rápido possível para proteger seus recursos se você suspeitar que uma credencial está comprometida.
Revogar e reemitir credenciais
Se você suspeitar que uma credencial está comprometida, revogue e emita novamente. Continuar para não ter uma interrupção do serviço como resultado da revogação. credenciais.
Em geral, para reemitir credenciais, gere uma nova, envie-a para todos os serviços e usuários que precisam dela e, em seguida, revogue a credencial antiga.
As seções a seguir têm instruções específicas para cada tipo de credencial.
Substituir uma chave da conta de serviço
No Console do Google Cloud, acesse a página Contas de serviço.
Localize a conta de serviço afetada.
Crie uma nova chave para a conta de serviço.
Envie a nova chave para todos os locais em que a chave antiga estava em uso.
Exclua a chave antiga.
Para mais informações, consulte Criar contas de serviço.
Regenerar chaves de API
No Console do Google Cloud, acesse a página Credenciais.
Crie uma nova chave de API usando o botão Criar credenciais. Configure o que seja igual à chave de API comprometida. As restrições na chave de API precisam ser iguais, senão poderá ocorrer interrupção.
Envie a chave de API para todos os locais em que a chave antiga estava em uso.
Exclua a chave antiga.
Para mais informações, consulte Autenticar usando a API chaves.
Redefinir um secret de ID do cliente OAuth2
Alterar uma secret de ID do cliente causa uma interrupção temporária enquanto o secret é alternado.
No Console do Google Cloud, acesse a página Credenciais.
Selecione e edite o ID do cliente OAuth2 comprometido.
Clique em Redefinir secret.
Envie o novo secrete para o aplicativo.
Para saber mais, consulte Como configurar o OAuth 2.0 e Como usar o OAuth 2.0 para acessar as APIs do Google.
Remover as credenciais da Google Cloud CLI como administrador
Como administrador do Google Workspace, remova o acesso à Google Cloud CLI da lista de apps conectados do usuário. Para saber mais, consulte Ver e remover o acesso a aplicativos de terceiros.
Quando o usuário acessar de novo, a Google Cloud CLI solicitará automaticamente que ele reautorize o aplicativo.
Remover credenciais da Google Cloud CLI como usuário
Abra a lista de apps com acesso à sua Conta do Google.
Remova a Google Cloud CLI da lista de apps conectados.
Quando você acessar a ferramenta de novo, a Google Cloud CLI solicitará automaticamente que você reautorize o aplicativo.
Revogar o Application Default Credentials como administrador
Se você suspeitar que uma credencial padrão do aplicativo está comprometida, poderá revogá-la. Esse procedimento pode causar uma interrupção temporária até que o arquivo de credenciais seja recriado.
Como administrador do Google Workspace, remova o acesso à Biblioteca do Google Auth da lista de apps conectados do usuário. Para saber mais, consulte Ver e remover o acesso a apps de terceiros.
Revogar o Application Default Credentials como usuário
Se você suspeitar que uma credencial padrão do aplicativo que você criou está comprometida, é possível revogá-la. Esse procedimento pode causar uma interrupção temporária até que o arquivo de credenciais seja recriado. Esse procedimento só pode ser concluído pelo proprietário da credencial comprometida.
Instale e inicialize a Google Cloud CLI, caso ainda não tenha feito isso.
Autorize a CLI gcloud com sua identidade de usuário, e não com uma conta de serviço:
gcloud auth login
Para mais informações, consulte Autorizar o CLI gcloud.
Revogue as credenciais:
gcloud auth application-default revoke
Se quiser, exclua o arquivo
application_default_credentials.json
. A localização depende do seu sistema operacional:- Linux, macOS:
$HOME/.config/gcloud/
- Windows:
%APPDATA%\gcloud\
- Linux, macOS:
Recrie o arquivo de credenciais:
gcloud auth application-default login
Invalidar cookies do navegador como administrador
Se você suspeitar que os cookies do navegador foram comprometidos, os administradores do Google Workspace podem desconectar um usuário da conta.
Além disso, force imediatamente uma alteração de senha.
Essas ações invalidam todos os cookies, e o usuário precisará fazer login novamente.
Invalidar cookies do navegador como usuário
Se você suspeitar que os cookies do navegador foram comprometidos, saia da sua Conta do Google e mude sua senha imediatamente.
Essas ações invalidam todos os cookies existentes. Na próxima vez que você acessar o Google Cloud, precisará fazer login novamente.
Procurar acesso e recursos não autorizados
Depois de revogar as credenciais comprometidas e restaurar o serviço, revise todo o acesso aos recursos do Google Cloud. É possível usar o Logging ou o Security Command Center.
No Logging, faça o seguinte:
Analise os registros de auditoria no Console do Google Cloud.
Pesquise todos os recursos possivelmente afetados e verifique se todas as atividades da conta (especialmente as relacionadas às credenciais comprometidas) estão conforme o esperado.
No Security Command Center, faça o seguinte:
No console do Google Cloud, acesse a página Descobertas do Security Command Center.
Se necessário, selecione o projeto ou a organização do Google Cloud.
Na seção Filtros rápidos, clique em um filtro apropriado para exibir a descoberta necessária na tabela Resultados da consulta de descobertas. Por exemplo, se você selecionar Event Threat Detection ou Container Threat Detection na subseção Source display name, somente descobertas do serviço selecionado aparecem nos resultados.
A tabela será preenchida com descobertas da origem selecionada.
Para ver detalhes sobre uma descoberta específica, clique no nome da descoberta em
Category
. O painel de detalhes da descoberta se expande para exibir um resumo dos detalhes da descoberta.Para exibir todas as descobertas causadas pelas ações do mesmo usuário:
- No Painel de detalhes da descoberta, copie o endereço de e-mail ao lado de E-mail principal.
- Fechar painel.
No Editor de consultas, digite a seguinte consulta:
access.principal_email="USER_EMAIL"
Substituir USER_EMAIL pelo endereço de e-mail que você copiado anteriormente.
O Security Command Center exibe todas as descobertas associadas a ações realizadas pelo usuário que você especificou.
Excluir todos os recursos não autorizados
Verifique se não há recursos inesperados, como VMs, aplicativos do App Engine, contas de serviço, buckets do Cloud Storage e assim por diante, que a credencial comprometida possa acessar.
Após confirmar que você identificou todos os recursos não autorizados, é possível optar por excluí-los imediatamente. Isso é especialmente importante para recursos do Compute Engine, porque os invasores podem usar contas violadas para exfiltrar dados ou comprometer os sistemas de produção.
Como alternativa, tente isolar os recursos não autorizados para que suas próprias equipes forenses realizem análises adicionais.
Entrar em contato com o atendimento ao cliente do Cloud
Se precisar de ajuda para encontrar os registros e as ferramentas do Google Cloud necessários para as etapas de investigação e mitigação, entre em contato com o atendimento ao cliente e abra um caso de suporte.
Práticas recomendadas para evitar o comprometimento de credenciais
Esta seção descreve as práticas recomendadas que podem ser implementadas para evitar o comprometimento de credenciais.
Separar credenciais do código
Gerencie e armazene as credenciais separadamente do código-fonte. É extremamente comum enviar acidentalmente as credenciais e o código-fonte por push a um site de gerenciamento de códigos, como o GitHub, o que torna as credenciais vulneráveis a ataques.
Se você estiver usando o GitHub ou outro repositório público, poderá implementar ferramentas como a Detecção de anomalias ou verificação de secret, que avisa sobre secrets expostos nos seus repositórios do GitHub. Para impedir que as chaves sejam confirmadas nos repositórios do GitHub, use ferramentas como git-secrets.
Use soluções de gerenciamento de secrets como Secret Manager e Hashicorp Vault para armazenar seus secrets, fazer a rotação deles regularmente e aplicar o privilégio mínimo.
Implementar práticas recomendadas para contas de serviço
Para ajudar a proteger as contas de serviço, leia as práticas recomendadas para trabalhar com as contas de serviço.
Limitar a duração da sessão
Para forçar a reautenticação periódica, limite o tempo em que as sessões permanecem ativas para as contas do Google e do Google Cloud. Para saber mais, consulte:
Usar o VPC Service Controls para limitar o acesso
Para limitar o impacto do comprometimento de credenciais, crie perímetros de serviço usando o VPC Service Controls. Quando você configura o VPC Service Controls, os recursos dentro do perímetro só podem se comunicar com outros na mesma situação.