Esta página fornece uma lista de guias de referência e técnicas para corrigir descobertas do Security Health Analytics usando o Security Command Center.
Você precisa de papéis adequados Identity and Access Management (IAM, na sigla em inglês) para visualizar ou editar descobertas e acessar ou modificar recursos do Google Cloud . Se você encontrar erros de permissão ao acessar o Security Command Center no console doGoogle Cloud , peça ajuda ao administrador e, para saber mais sobre papéis, consulte Controle de acesso. Para resolver erros de recursos, leia a documentação dos produtos afetados.
Reversão do Security Health Analytics
Esta seção inclui instruções de correção para todas as descobertas do Security Health Analytics.
Para tipos de descobertas mapeados para comparativos de mercado do CIS, a orientação de correção vem do Center for Internet Security (CIS), a menos que indicado de outra forma. Para mais informações, consulte Detectores e compliance.
Desativação automática de descobertas
Depois de corrigir uma vulnerabilidade ou uma configuração incorreta, o Security Health Analytics define automaticamente o estado da descoberta como INACTIVE
na próxima vez que ela for verificada. Desativar um detector no Security Health Analytics também define o estado de todas as descobertas geradas por ele como INACTIVE
. O tempo que o Security Health Analytics leva para definir uma descoberta corrigida como INACTIVE
depende de quando a descoberta é corrigida e da programação da verificação que
detecta a descoberta.
O Security Health Analytics também define o estado de uma descoberta como INACTIVE
quando uma verificação detecta que o recurso afetado pela descoberta
é excluído. Se você quiser remover uma descoberta de um recurso excluído
da sua tela enquanto espera que o Security Health Analytics detecte que
o recurso foi excluído, silencie a descoberta. Para silenciar uma descoberta, consulte
Desativar descobertas no Security Command Center.
Não use a opção de silenciar para ocultar descobertas corrigidas de recursos atuais.
Se o problema ocorrer novamente e o Security Health Analytics restaurar o estado ACTIVE
da descoberta, talvez você não veja a descoberta reativada, porque as descobertas silenciadas são excluídas de qualquer consulta que especifique NOT mute="MUTED"
, como a consulta padrão.
Para informações sobre intervalos de verificação, consulte Tipos de verificação do Security Health Analytics.
Access Transparency disabled
Nome da categoria na API: ACCESS_TRANSPARENCY_DISABLED
Os registros de transparência no acesso são gerados quando funcionários<0x0D Google Cloud acessam os projetos da sua organização para fornecer suporte. Ative a Transparência no acesso para registrar quem do Google Cloud está acessando suas informações, quando e por quê. Para mais informações, consulte Transparência no acesso.
Para ativar a Transparência no acesso em um projeto, ele precisa estar associado a uma conta de faturamento.
Funções exigidas
Para receber as permissões necessárias para executar essa tarefa, peça ao administrador para conceder a você o papel do IAM Administrador da Transparência no acesso (roles/axt.admin
) no nível da organização. Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.
Esse papel predefinido contém as permissões axt.labels.get
e axt.labels.set
, que são necessárias para executar essa tarefa. Também é possível conseguir essas permissões com um papel personalizado ou outros papéis predefinidos.
Etapas de correção
Para corrigir essa descoberta, conclua as etapas a seguir:
Verifique suas permissões no nível da organização:
Acesse a página Identity and Access Management no Google Cloud console.
Se for solicitado, selecione a organização Google Cloud no menu seletor.
Selecione qualquer projeto do Google Cloud na organização usando o menu seletor.
A transparência no acesso é configurada em uma página de projeto do Google Cloud , mas está ativada para toda a organização.
Acesse a página IAM e Administrador > Configurações.
Clique em Ativar Transparência no acesso.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB auto backup disabled
Nome da categoria na API: ALLOYDB_AUTO_BACKUP_DISABLED
Um cluster do AlloyDB para PostgreSQL não tem backups automáticos ativados.
Para ajudar a evitar a perda de dados, ative os backups automatizados do cluster. Para mais informações, consulte Configurar outros backups automatizados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Clique em um cluster na coluna Nome do recurso.
Clique em Proteção de dados.
Na seção Política de backup automatizada, clique em Editar na linha de Backups automatizados.
Marque a caixa de seleção Automatizar backups.
Clique em Atualizar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB backups disabled
Nome da categoria na API: ALLOYDB_BACKUPS_DISABLED
Um cluster do AlloyDB para PostgreSQL não tem backups automáticos nem contínuos ativados.
Para ajudar a evitar a perda de dados, ative os backups automatizados ou contínuos do cluster. Para mais informações, consulte Configurar backups adicionais.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Na coluna Nome do recurso, clique no nome do cluster identificado na descoberta.
Clique em Proteção de dados.
Configure uma política de backup.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB CMEK disabled
Nome da categoria na API: ALLOYDB_CMEK_DISABLED
Um cluster do AlloyDB não está usando chaves de criptografia gerenciadas pelo cliente (CMEK).
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que o Google usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles. Para mais informações, consulte Sobre a CMEK. A CMEK gera custos adicionais relacionados ao Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Na coluna Nome do recurso, clique no nome do cluster identificado na descoberta.
Clique em Criar backup. Defina um ID de backup.
Clique em Criar.
Na seção Backup/Restaurar, clique em Restaurar ao lado da entrada ID do backup escolhida.
Defina um novo ID de cluster e uma nova rede.
Clique em Opções avançadas de criptografia. Selecione a CMEK que você quer usar para criptografar o novo cluster.
Clique em Restaurar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB log min error statement severity
Nome da categoria na API: ALLOYDB_LOG_MIN_ERROR_STATEMENT_SEVERITY
Uma instância do AlloyDB para PostgreSQL não tem a flag de banco de dados log_min_error_statement
definida como error
ou outro valor recomendado.
A flag log_min_error_statement
controla se as instruções SQL que causam
condições de erro são registradas nos registros do servidor. As instruções SQL da gravidade
especificada ou superior são registradas. Quanto maior a gravidade, menos mensagens
são registradas. Se estiver definido como um nível de gravidade muito alto, as mensagens de erro talvez não sejam registradas.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Clique no cluster na coluna Nome do recurso.
Na seção Instâncias no cluster, clique em Editar na instância.
Clique em Opções de configuração avançadas.
Na seção Flags, defina a flag do banco de dados
log_min_error_statement
com um dos valores recomendados a seguir, de acordo com a política de geração de registros da organização.debug5
debug4
debug3
debug2
debug1
info
notice
warning
error
Clique em Atualizar instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB log min messages
Nome da categoria na API: ALLOYDB_LOG_MIN_MESSAGES
Uma instância do AlloyDB para PostgreSQL não tem a flag de banco de dados log_min_messages
definida como o mínimo de warning
.
A flag log_min_messages
controla quais níveis de mensagem são gravados nos registros do servidor. Quanto maior a gravidade, menos mensagens são registradas. Definir o limite muito baixo pode resultar em aumento do tamanho e do comprimento do armazenamento de registros, dificultando a localização de erros reais.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Clique no cluster na coluna Nome do recurso.
Na seção Instâncias no cluster, clique em Editar na instância.
Clique em Opções de configuração avançadas.
Na seção Flags, defina a flag do banco de dados
log_min_messages
com um dos valores recomendados a seguir, de acordo com a política de geração de registros da organização.debug5
debug4
debug3
debug2
debug1
info
notice
warning
Clique em Atualizar instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB log error verbosity
Nome da categoria na API: ALLOYDB_LOG_ERROR_VERBOSITY
Uma instância do AlloyDB para PostgreSQL não tem a flag de banco de dados log_error_verbosity
definida como default
ou outro valor menos restritivo.
A flag log_error_verbosity
controla a quantidade de detalhes nas mensagens registradas. Quanto maior o nível de detalhes, mais informações são gravadas nas mensagens.
Recomendamos definir essa flag como default
ou outro valor menos restritivo.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Clique no cluster na coluna Nome do recurso.
Na seção Instâncias no cluster, clique em Editar na instância.
Clique em Opções de configuração avançadas.
Na seção Flags, defina a flag do banco de dados
log_error_verbosity
com um dos valores recomendados a seguir, de acordo com a política de geração de registros da organização.default
verbose
Clique em Atualizar instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB Public IP
Nome da categoria na API: ALLOYDB_PUBLIC_IP
Uma instância de banco de dados do AlloyDB para PostgreSQL tem um endereço IP público.
Para reduzir a superfície de ataque da organização, use endereços IP privados em vez de públicos. Endereços IP privados oferecem maior segurança de rede e menor latência para o aplicativo.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Na coluna Nome do recurso, clique no nome do cluster identificado na descoberta.
Na seção Instâncias no cluster, clique em Editar na instância.
Na seção Conectividade, desmarque a caixa Ativar IP público.
Clique em Atualizar instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlloyDB SSL not enforced
Nome da categoria na API: ALLOYDB_SSL_NOT_ENFORCED
Uma instância de banco de dados do AlloyDB para PostgreSQL não requer que todas as conexões de entrada usem SSL.
Para evitar o vazamento de dados sensíveis em trânsito durante comunicações não criptografadas, todas as conexões de entrada com a instância do banco de dados do AlloyDB precisam usar o SSL. Saiba mais sobre Como configurar SSL/TLS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de clusters do AlloyDB para PostgreSQL no console do Google Cloud .
Na coluna Nome do recurso, clique no nome do cluster identificado na descoberta.
Na seção Instâncias no seu cluster, clique em Editar na instância.
Na seção Segurança de rede, clique na caixa Exigir criptografia SSL.
Clique em Atualizar instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAdmin service account
Nome da categoria na API: ADMIN_SERVICE_ACCOUNT
Uma conta de serviço da organização ou projeto tem privilégios de administrador, proprietário ou editor. Esses papéis têm várias permissões e não devem ser atribuídos a contas de serviço. Para saber mais sobre contas de serviço e os papéis disponíveis, consulte Contas de serviço.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de políticas do IAM no console Google Cloud .
Para cada membro identificado na descoberta:
- Clique em Editar principal ao lado do principal.
- Para remover permissões, clique em Excluir papel ao lado do papel.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAlpha cluster enabled
Nome da categoria na API: ALPHA_CLUSTER_ENABLED
Os recursos do cluster Alfa estão ativados para um cluster do Google Kubernetes Engine (GKE).
Com os clusters Alfa, os usuários iniciais testam cargas de trabalho que usam novos recursos antes de serem lançados para o público em geral. Os clusters Alfa têm todos os recursos da API do GKE ativados, mas não são cobertos peloSLA do GKE. Eles não recebem atualizações de segurança, têm reparação e upgrade automáticos de nós desativados e não podem receber upgrades. Eles também são excluídos automaticamente após 30 dias.
Para corrigir essa descoberta, conclua as etapas a seguir:
Não é possível desativar clusters Alfa. É preciso criar um novo cluster com os recursos Alfa desativados.
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique em Criar.
Selecione Configurar ao lado do tipo de cluster que você quer criar.
Na guia Recursos, verifique se a opção Ativar recursos Alfa do Kubernetes neste cluster está desativada.
Clique em Criar.
Para mover cargas de trabalho para o novo cluster, consulte Como migrar cargas de trabalho para diferentes tipos de máquina.
Para excluir o cluster original, consulte Como excluir um cluster.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAPI key APIs unrestricted
Nome da categoria na API: API_KEY_APIS_UNRESTRICTED
Há chaves de API muito usadas.
As chaves de API irrestritas são inseguras porque é possível recuperá-las nos dispositivos em que a chave está armazenada ou vê-las publicamente, por exemplo, em um navegador. De acordo com o princípio de privilégio mínimo, configure chaves de API para chamar apenas as APIs exigidas pelo aplicativo. Para mais informações, consulte Aplicar restrições de chave de API.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Chaves de API no console do Google Cloud .
Em cada chave de API:
- Na seção Chaves de API, na linha de cada chave de API em que você precisa restringir APIs, clique em Ações.
- No menu Ações, clique em Excluir chave de API. A página Editar chave de API é aberta.
- Na seção Restrições de API, selecione Restringir APIs. O menu suspenso Selecionar APIs será exibido.
- Na lista suspensa Selecionar APIs, escolha as APIs que terão permissão.
- Clique em Salvar. Pode levar até cinco minutos para que as configurações entrem em vigor.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAPI key apps unrestricted
Nome da categoria na API: API_KEY_APPS_UNRESTRICTED
Há chaves de API sendo usadas de maneira irrestrita, permitindo o uso por qualquer aplicativo não confiável.
Chaves de API irrestritas são inseguras porque é possível recuperá-las nos dispositivos em que a chave está armazenada ou vê-las publicamente, como de dentro de um navegador, por exemplo. De acordo com o princípio de privilégio mínimo, restrinja o uso da chave de API a hosts confiáveis, referenciadores HTTP e aplicativos. Para mais informações, consulte Aplicar restrições de chave de API.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Chaves de API no console do Google Cloud .
Em cada chave de API:
- Na seção Chaves de API, na linha de cada chave de API em que você precisa restringir aplicativos, clique em Ações.
- No menu Ações, clique em Excluir chave de API. A página Editar chave de API é aberta.
- Na página Editar chave de API, em Restrições de aplicativo, selecione uma categoria de restrição. É possível definir apenas uma restrição de aplicativo por chave.
- No campo Adicionar um item que é exibido quando você seleciona uma restrição, clique em Adicionar um item para adicionar restrições com base nas necessidades do aplicativo.
- Quando terminar de adicionar itens, clique em Concluído.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAPI key exists
Nome da categoria na API: API_KEY_EXISTS
Um projeto está usando chaves de API em vez da autenticação padrão.
As chaves de API são menos seguras do que outros métodos de autenticação, porque são strings criptografadas simples e fáceis de descobrir e usar. É possível recuperá-las nos dispositivos em que a chave está armazenada ou vê-las publicamente, como de dentro de um navegador. Além disso, as chaves de API não identificam exclusivamente os usuários ou aplicativos que fazem solicitações. Como alternativa, é possível usar um fluxo de autenticação padrão com contas de serviço ou contas de usuário.
Para corrigir essa descoberta, conclua as etapas a seguir:
- Certifique-se de que os aplicativos estejam configurados com uma forma alternativa de autenticação.
Acesse a página Credenciais da API no console Google Cloud .
Na seção Chaves de API da linha de cada chave que precisa ser excluída, clique em
Ações.No menu Ações, clique em Excluir chave de API.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAPI key not rotated
Nome da categoria na API: API_KEY_NOT_ROTATED
A chave de API não é rotacionada há mais de 90 dias.
As chaves de API não expiram. Portanto, se uma for roubada, é possível que seja usada indefinidamente a menos que o proprietário do projeto a revogue ou a rotacione. A rotação frequente de chaves de API reduz o tempo em que uma chave roubada pode ser usada para acessar dados em uma conta comprometida ou encerrada. Faça a rotação das chaves de API pelo menos a cada 90 dias. Para mais informações, consulte Práticas recomendadas para gerenciar chaves de API.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Chaves de API no console do Google Cloud .
Em cada chave de API:
- Na seção Chaves de API, na linha de cada chave que precisa ser trocada, clique em Ações.
- No menu Ações, clique em Excluir chave de API. A página Editar chave de API é aberta.
- Na página Editar chave de API, se a data no campo Data de criação for anterior a 90 dias, clique em Fazer rotação da chave. Uma nova chave é gerada.
- Se quiser, mude o nome da chave de API.
- Clique em Criar.
- Atualize os apps para usar a nova chave.
- Depois de atualizar os aplicativos, volte à página Editar chave de API e clique em Excluir a chave anterior para excluir a chave antiga. A chave antiga não será excluída automaticamente.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAudit config not monitored
Nome da categoria na API: AUDIT_CONFIG_NOT_MONITORED
As métricas e os alertas de registros não estão configurados para monitorar as alterações de configuração de auditoria.
O Cloud Audit Logging produz registros de atividades do administrador e de acesso a dados que permitem a análise de segurança, o rastreamento de alterações de recursos e a auditoria de conformidade. Ao monitorar as alterações na configuração de auditoria, você garante que todas as atividades no projeto possam ser auditadas a qualquer momento. Para mais informações, consulte Visão geral das métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, crie métricas, se necessário, e políticas de alerta:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
protoPayload.methodName="SetIamPolicy" AND protoPayload.serviceData.policyDelta.auditConfigDeltas:*
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAudit logging disabled
Nome da categoria na API: AUDIT_LOGGING_DISABLED
Essa descoberta não está disponível para ativações no nível do projeto.
A geração de registros de auditoria está desativada para um ou mais serviços do Google Cloud ou um ou mais principais estão isentos da geração de registros de auditoria de acesso a dados.
Ative o Cloud Logging para todos os serviços para rastrear todas as atividades administrativas, o acesso de leitura e o acesso de gravação aos dados dos usuários. Dependendo da quantidade de informações, os custos do Cloud Logging podem ser significativos. Para entender o uso do serviço e o custo dele, consulte Preços da observabilidade do Google Cloud.
Se os principais estiverem isentos da geração de registros de auditoria de acesso a dados na configuração padrão ou de qualquer serviço individual, remova a isenção.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Configuração padrão dos registros de auditoria de acesso a dados no console doGoogle Cloud .
Na guia Tipos de registro, ative a geração de registros de auditoria de acesso a dados na configuração padrão:
- Selecione Leitura de administradores, Leitura de dados e Gravação de dados.
- Clique em Save.
Na guia Participantes isentos, remova todos os usuários isentos da configuração padrão:
- Remova cada principal listado clicando em Excluir ao lado de cada nome.
- Clique em Salvar.
Acesse a página Registros de auditoria.
Remova os principais isentos das configurações do registro de auditoria de acesso a dados de serviços individuais.
- Em Configuração dos registros de auditoria de acesso a dados, clique no serviço nos serviços que mostram um principal isento. Um painel de configuração de registro de auditoria será aberto para o serviço.
- Na guia Principais isentos, remova todos os principais isentos clicando em Excluir ao lado de cada nome.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAuto backup disabled
Nome da categoria na API: AUTO_BACKUP_DISABLED
Um banco de dados do Cloud SQL não tem backups automáticos ativados.
Para evitar a perda de dados, ative os backups automatizados para as instâncias do SQL. Para mais informações, consulte Como criar e gerenciar backups automáticos e sob demanda.
Para corrigir essa descoberta, conclua as etapas a seguir:
No console Google Cloud , acesse a página Instâncias do Cloud SQL.
Clique no nome da instância.
Clique em Backups.
Ao lado de Configurações, clique em
Editar.Marque a caixa de seleção Backups diários automatizados.
Opcional: na caixa Número de dias, insira por quantos dias você quer manter os backups.
Opcional: na lista Janela de backup, selecione o período em que os backups serão feitos.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAuto repair disabled
Nome da categoria na API: AUTO_REPAIR_DISABLED
O recurso de reparo automático de um cluster do Google Kubernetes Engine (GKE), que mantém os nós em um estado íntegro e em execução, está desativado.
Quando ativado, o GKE verifica periodicamente o estado de integridade de cada nó no cluster. Se um nó falhar em verificações de integridade consecutivas durante um período prolongado, o GKE iniciará um processo de reparo para esse nó. Para mais informações, consulte Como fazer o reparo automático de nós.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique na guia Nós.
Para cada pool de nós:
- Clique no nome do pool de nós para acessar a página de detalhes.
- Clique em Editar.
- Em Gerenciamento, selecione Ativar reparo automático.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAuto upgrade disabled
Nome da categoria na API: AUTO_UPGRADE_DISABLED
O recurso de upgrade automático de um cluster do GKE, que mantém clusters e o pools de nós na versão estável mais recente do Kubernetes, está desativado.
Para mais informações, consulte Como fazer o upgrade automático de nós.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na lista de clusters, clique no nome do cluster.
Clique na guia Nós.
Para cada pool de nós:
- Clique no nome do pool de nós para acessar a página de detalhes.
- Clique em Editar.
- Em Gerenciamento, selecione Ativar upgrade automático.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBigQuery table CMEK disabled
Nome da categoria na API: BIGQUERY_TABLE_CMEK_DISABLED
Uma tabela do BigQuery não está configurada para usar uma chave de criptografia gerenciada pelo cliente (CMEK).
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que Google Cloud usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles. Para mais informações, consulte Como proteger dados com chaves do Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
- Crie uma tabela protegida pelo Cloud Key Management Service.
- Copie sua tabela para a nova tabela ativada para CMEK.
- Exclua a tabela original.
Para definir uma chave CMEK padrão que criptografa todas as novas tabelas em um conjunto de dados, consulte Definir uma chave padrão do conjunto de dados.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBinary authorization disabled
Nome da categoria na API: BINARY_AUTHORIZATION_DISABLED
A autorização binária está desativada em um cluster do GKE.
A autorização binária inclui um recurso opcional que protege a segurança da cadeia de suprimentos, permitindo que apenas imagens de contêiner assinadas por autoridades confiáveis durante o processo de desenvolvimento sejam implantadas no cluster. Ao aplicar a implantação baseada em assinatura, você tem mais controle do ambiente do contêiner e garante que apenas imagens verificadas tenham permissão para serem implantadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na seção Segurança, clique em
Editar na linha Autorização binária.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na caixa de diálogo, selecione Ativar autorização binária.
Clique em Save changes.
Acesse a página de configuração da autorização binária.
Verifique se uma política que exige atestadores está configurada e se a regra padrão do projeto não está configurada para Permitir todas as imagens. Para mais informações, consulte Configurar para o GKE.
Para garantir que as imagens que violam a política tenham permissão para serem implantadas e as violações sejam registradas nos registros de auditoria do Cloud, ative o modo de teste.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBucket CMEK disabled
Nome da categoria na API: BUCKET_CMEK_DISABLED
Um bucket não é criptografado com chaves de criptografia gerenciadas pelo cliente (CMEK, na sigla em inglês).
Definir uma CMEK padrão em um bucket oferece mais controle sobre o acesso aos dados. Para mais informações, consulte Chaves de criptografia gerenciadas pelo cliente.
Para corrigir essa descoberta, use a CMEK com um bucket seguindo Como usar chaves de criptografia gerenciadas pelo cliente. A CMEK gera custos adicionais relacionados ao Cloud KMS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBucket IAM not monitored
Nome da categoria na API: BUCKET_IAM_NOT_MONITORED
As métricas e os alertas de registros não estão configurados para monitorar as alterações de permissão do IAM do Cloud Storage.
Monitorar alterações nas permissões de bucket do Cloud Storage ajuda a identificar usuários com privilégios em excesso ou atividades suspeitas. Para mais informações, consulte Visão geral das métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
resource.type=gcs_bucket AND protoPayload.methodName="storage.setIamPermissions"
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBucket logging disabled
Nome da categoria na API: BUCKET_LOGGING_DISABLED
Há um bucket de armazenamento sem a geração de registros ativada.
Para ajudar a investigar problemas de segurança e monitorar o consumo de armazenamento, ative os registros de acesso e informação de armazenamento nos seus buckets do Cloud Storage. Os registros de acesso fornecem informações sobre todas as solicitações feitas em um bucket específico, e os registros de armazenamento fornecem informações sobre o consumo de armazenamento desse bucket.
Para corrigir essa descoberta, configure o registro para o bucket indicado pela descoberta do Security Health Analytics completando o guia de registros de uso e de armazenamento.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBucket policy only disabled
Nome da categoria na API: BUCKET_POLICY_ONLY_DISABLED
O acesso uniforme no nível do bucket, anteriormente chamado de Somente política do bucket, não está configurado.
O acesso uniforme no nível do bucket simplifica o controle de acesso do bucket ao desativar permissões no nível do objeto (ACLs, na sigla em inglês). Quando ativadas, somente as permissões do IAM no nível do bucket concederão acesso ao bucket e aos objetos contidos nele. Para mais informações, consulte Acesso uniforme no nível do bucket.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do navegador do Cloud Storage noGoogle Cloud console.
Na lista de buckets, clique no nome do bucket pretendido.
Clique na guia Configuração.
Em Permissões, na linha do Controle de acesso, clique em
Editar modelo de controle de acesso.Na caixa de diálogo, selecione Uniforme.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloud Asset API disabled
Nome da categoria na API: CLOUD_ASSET_API_DISABLED
O serviço de Inventário de recursos do Cloud não está ativado no projeto.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Biblioteca de APIs no console do Google Cloud .
Pesquise
Cloud Asset Inventory
.Selecione o resultado do serviço API Cloud Asset.
Verifique se está exibindo API ativada.
Cluster logging disabled
Nome da categoria na API: CLUSTER_LOGGING_DISABLED
A geração de registros não está ativada para um cluster do GKE.
Para ajudar a investigar problemas de segurança e monitorar o uso, ative o Cloud Logging nos clusters.
Dependendo da quantidade de informações, os custos do Cloud Logging podem ser significativos. Para entender o uso do serviço e o custo dele, consulte Preços da observabilidade do Google Cloud.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Selecione o cluster listado na descoberta do Security Health Analytics.
Clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na lista suspensa do Stackdriver Logging legado ou do Stackdriver Kubernetes Engine Monitoring, selecione Ativado.
Essas opções não são compatíveis. Assegure-se de usar o Stackdriver Kubernetes Engine Monitoring apenas, ou Stackdriver Logging legado com Stackdriver Monitoring legado.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCluster monitoring disabled
Nome da categoria na API: CLUSTER_MONITORING_DISABLED
O monitoramento está desativado nos clusters do GKE.
Para ajudar a investigar problemas de segurança e monitorar o uso, ative o Cloud Monitoring nos clusters.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Selecione o cluster listado na descoberta do Security Health Analytics.
Clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na lista suspensa do Stackdriver Monitoring legado ou do Stackdriver Kubernetes Engine Monitoring, selecione Ativado.
Essas opções não são compatíveis. Assegure-se de usar o Stackdriver Kubernetes Engine Monitoring apenas, ou Stackdriver Monitoring legado com o Stackdriver Logging legado.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCluster private Google access disabled
Nome da categoria na API: CLUSTER_PRIVATE_GOOGLE_ACCESS_DISABLED
Os hosts de cluster não estão configurados para usar apenas endereços IP internos particulares para acessar as APIs do Google.
O Acesso privado do Google permite que instâncias de máquina virtual (VM, na sigla em inglês) com apenas endereços IP internos privados acessem os endereços IP públicos das APIs e serviços do Google. Para mais informações, consulte Como configurar o Acesso privado do Google.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes de nuvem privada virtual no Google Cloud console.
Na lista de redes, clique no nome da rede desejada.
Na página Detalhes da rede VPC, clique na guia Sub-redes.
Na lista de sub-redes, clique no nome da sub-rede associada ao cluster do Kubernetes na descoberta.
Na página Detalhes da sub-rede, clique em
Editar.Em Acesso privado do Google, selecione Ativado.
Clique em Save.
Para remover IPs públicos (externos) das instâncias de VM cujo tráfego externo é apenas para APIs do Google, consulte Como cancelar a atribuição de um endereço IP externo estático.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCluster secrets encryption disabled
Nome da categoria na API: CLUSTER_SECRETS_ENCRYPTION_DISABLED
A criptografia de secrets da camada de aplicativo está desativada em um cluster do GKE.
A criptografia de secrets da camada de aplicativo garante que os secrets do GKE sejam criptografados usando chaves do Cloud KMS. O recurso fornece uma camada extra de segurança para dados confidenciais, como secrets definidos pelo usuário e secrets necessários para a operação do cluster, como chaves de conta de serviço, armazenadas em etcd.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página chaves do Cloud KMS no console Google Cloud .
Revise as chaves do aplicativo ou crie uma chave de criptografia de banco de dados (DEK). Para mais informações, consulte Como criar uma chave do Cloud KMS.
Acesse a página Clusters do Kubernetes.
Selecione o cluster na descoberta.
Em Segurança, no campo Criptografia de secrets da camada de aplicativos, clique em
Editar criptografia de secrets da camada de aplicativos.Marque a caixa de seleção Ativar a criptografia de secrets da camada de aplicativos e então escolha a DEK que você criou.
Clique em Salvar alterações.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCluster shielded nodes disabled
Nome da categoria na API: CLUSTER_SHIELDED_NODES_DISABLED
Os nós protegidos do GKE não estão ativados em um cluster.
Sem os nós protegidos do GKE, invasores podem se aproveitar de uma vulnerabilidade em um pod para roubar credenciais de bootstrap e falsificar nós no cluster. A vulnerabilidade pode permitir que invasores acessem secrets do cluster.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Selecione o cluster na descoberta.
Em Segurança, no campo Nós protegidos do GKE, clique em
Editar nós protegidos do GKE.Marque a caixa de seleção Ativar os nós protegidos do GKE.
Clique em Salvar alterações.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCompute project wide SSH keys allowed
Nome da categoria na API: COMPUTE_PROJECT_WIDE_SSH_KEYS_ALLOWED
As chaves SSH do projeto são usadas, o que permite o login em todas as instâncias no projeto.
O uso de chaves SSH em todo o projeto facilita o gerenciamento de chaves SSH, mas, se comprometidas, representam um risco de segurança que pode afetar todas as instâncias de um projeto. Use chaves SSH específicas à instância, que limitam a superfície de ataque se as chaves SSH estiverem comprometidas. Para mais informações, consulte Como gerenciar chaves SSH em metadados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Na página Detalhes da instância de VM, clique em
Editar.Em Chaves SSH, selecione Bloquear chaves SSH do projeto.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCompute Secure Boot disabled
Nome da categoria na API: COMPUTE_SECURE_BOOT_DISABLED
Uma VM protegida não tem está com a Inicialização segura ativada.
O uso da Inicialização segura ajuda a proteger as máquinas virtuais contra rootkits e bootkits. O Compute Engine não ativa a Inicialização segura por padrão porque alguns drivers não assinados e softwares de baixo nível não são compatíveis. Se a VM não usa um software incompatível e é inicializada com a Inicialização segura ativada, o Google recomenda o uso da Inicialização segura. Se você estiver usando módulos de terceiros com drivers NVIDIA, verifique se eles são compatíveis com a Inicialização segura antes de ativá-la.
Para mais informações, consulte Inicialização segura.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Na página Detalhes da instância de VM, clique em
Interromper.Depois que a instância for interrompida, clique em
Editar.Em VM protegida, selecione Ativar a Inicialização segura.
Clique em Save.
Clique em
Iniciar para iniciar a instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCompute serial ports enabled
Nome da categoria na API: COMPUTE_SERIAL_PORTS_ENABLED
As portas seriais de uma instância estão ativadas, o que permite conexões com o console serial da instância.
Se você ativar o console serial interativo em uma instância, os clientes poderão tentar se conectar a essa instância de qualquer endereço IP. Por isso, o suporte ao console serial interativo precisa estar desativado. Para mais informações, consulte Como ativar o acesso de um projeto.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Na página Detalhes da instância de VM, clique em
Editar.Em Acesso remoto, desmarque Ativar a conexão com as portas seriais.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osConfidential Computing disabled
Nome da categoria na API: CONFIDENTIAL_COMPUTING_DISABLED
Uma instância do Compute Engine não tem Computação confidencial ativada.
A Computação confidencial adiciona um terceiro pilar à história de criptografia de ponta a ponta ao criptografar dados durante o uso. Com os ambientes de execução confidenciais fornecidos pela Computação confidencial e a virtualização criptografada segura (SEV, na sigla em inglês) da AMD, Google Cloud mantém códigos confidenciais e outros dados criptografados na memória durante o processamento.
A Computação confidencial só pode ser ativada quando uma instância é criada. Por isso, você precisa excluir a instância atual e criar uma nova.
Para mais informações, consulte VM confidencial e o Compute Engine.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Na página Detalhes da instância de VM, clique em
Excluir.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCOS not used
Nome da categoria na API: COS_NOT_USED
As VMs do Compute Engine não estão usando o Container-Optimized OS, que foi projetado para executar contêineres do Docker no Google Cloud com segurança.
O Google recomenda o Container-Optimized OS para hospedar e executar contêineres no Google Cloud. A pouca ocupação de espaço do sistema operacional diminui a exposição de segurança, enquanto as atualizações automáticas corrigem as vulnerabilidades de segurança no momento certo. Para mais informações, consulte Visão geral do Container-Optimized OS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na lista de clusters, clique no nome do cluster na descoberta.
Clique na guia Nós.
Para cada pool de nós:
- Clique no nome do pool de nós para acessar a página de detalhes.
- Clique em Editar .
- Em Nós -> Tipo de imagem, clique em Alterar.
- Selecione Container-Optimized OS e clique em Alterar.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCustom role not monitored
Nome da categoria na API: CUSTOM_ROLE_NOT_MONITORED
As métricas e os alertas de registro não estão configurados para monitorar as alterações de papéis personalizados.
O IAM fornece papéis predefinidos e personalizados que concedem acesso a recursos específicos do Google Cloud . Ao monitorar as atividades de criação, exclusão e atualização de papéis, é possível identificar papéis com privilégios em excesso nos estágios iniciais. Para mais informações, consulte Visão geral das métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
resource.type="iam_role" AND (protoPayload.methodName="google.iam.admin.v1.CreateRole" OR protoPayload.methodName="google.iam.admin.v1.DeleteRole" OR protoPayload.methodName="google.iam.admin.v1.UpdateRole")
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDataproc CMEK disabled
Nome da categoria na API: DATAPROC_CMEK_DISABLED
Um cluster do Dataproc foi criado sem uma CMEK de configuração de criptografia. Com a CMEK, as chaves que você cria e gerencia no Cloud Key Management Service encapsulam as chaves que o Google Cloud usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Cluster do Dataproc no console Google Cloud .
Selecione o projeto e clique em Criar cluster.
Na seção Gerenciar segurança, clique em Criptografia e selecione Chave gerenciada pelo cliente.
Selecione uma chave gerenciada pelo cliente na lista.
Se você não tiver uma chave gerenciada pelo cliente para usar, crie uma. Para mais informações, consulte Chaves de criptografia gerenciadas pelo cliente.
Verifique se a chave KMS selecionada tem o papel de criptografador/descriptografador do CryptoKey do Cloud KMS atribuído à conta de serviço do cluster do Dataproc ("serviceAccount:service-project_number@compute-system.iam.gserviceaccount.com").
Depois de criar o cluster, migre todas as cargas de trabalho do antigo para o novo cluster.
Acesse os clusters do Dataproc e selecione seu projeto.
Selecione o cluster antigo e clique em
Excluir cluster.Repita todas as etapas acima para outros clusters do Dataproc disponíveis no projeto selecionado.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDataproc image outdated
Nome da categoria na API: DATAPROC_IMAGE_OUTDATED
Um cluster do Dataproc foi criado usando uma versão da imagem do Dataproc afetada pelas vulnerabilidades de segurança no utilitário do Apache Log4j 2 (CVE-2021-44228 e CVE-). 2021 a 45046).
Esse detector encontra vulnerabilidades verificando se o campo softwareConfig.imageVersion
na propriedade config
de um
Cluster
tem uma das seguintes versões afetadas:
- Versões de imagem anteriores à 1.3.95.
- Versões de imagem menores que 1.4.77, 1.5.53 e 2.0.27.
O número da versão de uma imagem personalizada do Dataproc pode ser modificado manualmente. Considere os cenários a seguir.
- É possível modificar a versão de uma imagem personalizada afetada para que ela não seja afetada. Nesse caso, esse detector não emite uma descoberta.
- É possível substituir a versão de uma imagem personalizada não afetada por uma que tenha a vulnerabilidade conhecida. Nesse caso, esse detector emite uma descoberta falsa positiva. Para suprimir essas descobertas de falsos positivos, você pode ignorá-las.
Para corrigir essa descoberta, recrie e atualize o cluster afetado.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDataset CMEK disabled
Nome da categoria na API: DATASET_CMEK_DISABLED
Um conjunto de dados do BigQuery não está configurado para usar uma chave de criptografia gerenciada pelo cliente (CMEK, na sigla em inglês) padrão.
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que Google Cloud usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles. Para mais informações, consulte Como proteger dados com chaves do Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Não é possível alternar uma tabela no local entre as criptografias padrão e a criptografia CMEK. Para definir uma chave padrão de CMEK com a qual criptografar todas as novas tabelas no conjunto de dados, siga as instruções para Definir uma chave padrão de conjunto de dados.
Definir uma chave padrão não recriptografará retroativamente tabelas atualmente no conjunto de dados com uma nova chave. Para usar a CMEK para dados atuais:
- Crie um novo conjunto de dados.
- Defina uma chave de CMEK padrão no conjunto de dados que você criou.
- Para copiar tabelas para o conjunto de dados ativado da CMEK, siga as instruções em Como copiar uma tabela.
- Depois de copiar os dados, exclua os conjuntos de dados originais.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDefault network
Nome da categoria na API: DEFAULT_NETWORK
A rede padrão existe em um projeto.
As redes padrão criaram automaticamente regras de firewall e configurações de rede que talvez não sejam seguras. Para mais informações, consulte Rede padrão.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console Google Cloud .
Na lista de redes, clique no nome da rede padrão.
Na página Detalhes da rede VPC, clique em
Excluir rede VPC.Para criar uma nova rede com regras de firewall personalizadas, consulte Como criar redes.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDefault service account used
Nome da categoria na API: DEFAULT_SERVICE_ACCOUNT_USED
Uma instância do Compute Engine está configurada para usar a conta de serviço padrão.
A conta de serviço padrão do Compute Engine tem o papel Editor no projeto, o que permite acesso de leitura e gravação à maioria dos serviços do Google Cloud . Para se proteger contra escalonamentos de privilégios e acesso não autorizado, não use a conta de serviço padrão do Compute Engine. Em vez disso, crie uma nova conta de serviço e atribua apenas as permissões necessárias à instância. Leia Controle de acesso para informações sobre papéis e permissões.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Selecione a instância relacionada à descoberta do Security Health Analytics.
Na página Detalhes da instância carregada, clique em
Interromper.Depois que a instância for interrompida, clique em
Editar.Na seção Conta de serviço, selecione uma conta de serviço que não seja a padrão do Compute Engine. Talvez seja necessário criar primeiro uma conta de serviço. Leia Controle de acessopara ver informações sobre papéis e permissões do IAM.
Clique em Save. A nova configuração aparecerá na página Detalhes da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDisk CMEK disabled
Nome da categoria na API: DISK_CMEK_DISABLED
Os discos nesta VM não são criptografados com chaves de criptografia gerenciadas pelo cliente.
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que o Google Cloud usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles. Para mais informações, consulte Como proteger recursos com as chaves do Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Discos do Compute Engine no Google Cloud console.
Na lista de discos, clique no nome do disco indicado na descoberta.
Na página Gerenciar disco, clique em
Excluir.Para criar um novo disco com a CMEK ativada, consulte Criptografar um novo disco permanente com suas próprias chaves. As CMEK geram custos adicionais relacionados ao Cloud KMS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDisk CSEK disabled
Nome da categoria na API: DISK_CSEK_DISABLED
Os discos nesta VM não são criptografados com chaves de criptografia fornecidas pelo cliente (CSEK, na sigla em inglês). Os discos de VMs essenciais devem ser criptografados com CSEK.
Se você fornecer as próprias chaves de criptografia que você tem, o Compute Engine as usará para proteger aquelas geradas pelo Google e usadas para criptografar e descriptografar os dados. Para mais informações, consulte Chaves de criptografia fornecidas pelo cliente. A CSEK gera custos adicionais relacionados ao Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Excluir e criar disco
Você só pode criptografar novos discos permanentes com sua própria chave. Não é possível criptografar os discos permanentes atuais com ela.
Acesse a página Discos do Compute Engine no Google Cloud console.
Na lista de discos, clique no nome do disco indicado na descoberta.
Na página Gerenciar disco, clique em
Excluir.Para criar um novo disco com a CSEK ativada, consulte Criptografar discos com chaves de criptografia fornecidas pelo cliente.
Conclua as etapas restantes para ativar o detector.
Ativar o detector
Acesse a página Recursos do Security Command Center no Google Cloud console.
Na seção Tipo de recurso do painel Filtros rápidos, selecione compute.Disk.
Se você não encontrar compute.Disk, clique em Ver mais, digite
Disk
no campo de pesquisa e clique em Aplicar.O painel Resultados é atualizado para mostrar apenas instâncias do tipo de recurso
compute.Disk
.Na coluna Nome de exibição, marque a caixa ao lado do nome do disco que você quer usar com a CSEK e clique em Definir marcações de segurança.
Na caixa de diálogo, clique em Adicionar marcação.
No campo chave, digite
enforce_customer_supplied_disk_encryption_keys
e, no campo valor, digitetrue
.Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDNS logging disabled
Nome da categoria na API: DNS_LOGGING_DISABLED
O monitoramento de registros do Cloud DNS fornece nomes de DNS solicitados pelos clientes na rede VPC. Nesses registros, podem ser monitorados nomes de domínios anômalos e avaliados em relação à inteligência contra ameaças. Recomendamos ativar a geração de registros de DNS para redes VPC.
Dependendo da quantidade de informações, os custos do Cloud DNS Logging podem ser significativos. Para entender o uso e o custo do serviço, consulte Preços da observabilidade do Google Cloud: Cloud Logging.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console do Google Cloud .
Na lista de redes, clique no nome da rede VPC.
Crie uma nova política de servidor (se não houver uma) ou edite uma política atual:
Se a rede não tiver uma política de servidor DNS, siga estas etapas:
- Clique em Editar.
- No campo Política de servidor DNS, clique em Criar uma nova política de servidor.
- Digite um nome para a nova política de servidor.
- Defina Registros como Ativado.
- Clique em Save.
Se a rede tiver uma política de servidor DNS, siga estas etapas:
- No campo DNS server policy, clique no nome da política DNS.
- Clique em Editar política.
- Defina Registros como Ativado.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDNSSEC disabled
Nome da categoria na API: DNSSEC_DISABLED
As extensões de segurança do Sistema de Nome de Domínio (DNSSEC, na sigla em inglês) estão desativadas para zonas do Cloud DNS.
As DNSSEC validam as respostas de DNS e reduzem os riscos, como de invasão de DNS e ataques de person-in-the-middle assinando criptograficamente os registros de DNS. Ative as DNSSEC. Para mais informações, consulte a Visão geral das extensões de segurança do DNS (DNSSEC).
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Cloud DNS no console Google Cloud .
Localize a linha com a zona DNS indicada na descoberta.
Clique na configuração de DNSSEC na linha e, em DNSSEC, selecione Ativar.
Leia a caixa de diálogo que aparece. Se estiver tudo certo, clique em Ativar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEffectively Anonymous Users Granted GKE Cluster Access
Nome da categoria na API: GKE_PRIVILEGE_ESCALATION_DEFAULT_USERS_GROUPS
Alguém criou uma vinculação do RBAC que faz referência a um dos seguintes usuários ou grupos:
system:anonymous
system:authenticated
system:unauthenticated
Esses usuários e grupos são efetivamente anônimos e não devem ser usados em RoleBindings ou ClusterRoleBindings. Para mais detalhes, consulte Evitar funções e grupos padrão.
Para corrigir essa descoberta, siga estas etapas nos recursos afetados:
- Abra o manifesto de cada ClusterRoleBinding ou RoleBinding afetado.
- Defina os seguintes campos restritos para um dos valores permitidos.
Campos restritos
subjects[*].name
Valores permitidos
- Todos os grupos, usuários ou contas de serviço que não incluem
system:anonymous
,system:authenticated
ousystem:unauthenticated
.
Egress deny rule not set
Nome da categoria na API: EGRESS_DENY_RULE_NOT_SET
Uma regra de negação de saída não é definida em um firewall.
Um firewall que nega todo o tráfego de rede de saída impede conexões de rede de saída indesejadas, exceto as conexões explicitamente autorizadas por outros firewalls. Para mais informações, consulte Casos de saída.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Clique em Criar regra de firewall.
Dê um nome ao firewall e, opcionalmente, adicione uma descrição.
Em Direção do tráfego, selecione Saída.
Em Ação se houver correspondência, selecione Negar.
No menu suspenso Objetivos, selecione Todas as instâncias na rede.
No menu suspenso Filtro de destino, selecione Intervalos de IP e digite
0.0.0.0/0
na caixa Intervalos de IP de destino.Em Protocolos e portas, selecione Negar tudo.
Clique em Desativar regra e, em Aplicação, selecione Ativado.
Clique em Criar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEssential contacts not configured
Nome da categoria na API: ESSENTIAL_CONTACTS_NOT_CONFIGURED
Sua organização não designou uma pessoa ou um grupo para receber notificações do Google Cloud sobre eventos importantes, como ataques, vulnerabilidades e incidentes de dados na organização do Google Cloud . Recomendamos designar como contato essencial uma ou mais pessoas ou grupos na sua organização de negócios.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Contatos essenciais no console do Google Cloud .
Verifique se a organização aparece no seletor de recursos na parte de cima da página. O seletor de recursos informa de qual projeto, pasta ou organização você está gerenciando contatos no momento.
Clique em +Adicionar contato. O painel Adicionar um contato é aberto.
Nos campos E-mail e Confirmar e-mail, insira o endereço de e-mail do contato.
Na seção Categorias de notificação, selecione as categorias de notificação sobre as quais você quer que o contato receba comunicações. Verifique se os endereços de e-mail apropriados estão configurados para cada uma das categorias de notificação a seguir:
- Ofício
- Segurança
- Suspensão
- Benefícios técnicos
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osFirewall not monitored
Nome da categoria na API: FIREWALL_NOT_MONITORED
As métricas e os alertas de registro não estão configurados para monitorar alterações de regras do Firewall da rede VPC.
O monitoramento de eventos de criação e atualização de regras de firewall oferece insights sobre alterações no acesso à rede, além de ajudar a detectar rapidamente atividades suspeitas. Para mais informações, consulte Visão geral de métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
resource.type="gce_firewall_rule" AND (protoPayload.methodName:"compute.firewalls.insert" OR protoPayload.methodName:"compute.firewalls.patch" OR protoPayload.methodName:"compute.firewalls.delete")
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osFirewall rule logging disabled
Nome da categoria na API: FIREWALL_RULE_LOGGING_DISABLED
A geração de registros de regras de firewall está desativada.
A geração de registros de regras de firewall permite auditar, verificar e analisar os efeitos das regras de firewall. Isso pode ser útil para auditar o acesso à rede ou fornecer aviso antecipado de que a rede está sendo usada de maneira não aprovada. O custo dos registros pode ser significativo. Para mais informações sobre a geração de registros de regras de firewall e o respectivo custo, consulte Como usar o registro de regras de firewall.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra desejada.
Clique em
Editar.Em Registros, selecione Ativado.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osFlow logs disabled
Nome da categoria na API: FLOW_LOGS_DISABLED
Há uma sub-rede VPC com registros de fluxo desativados.
Os registros de fluxo de VPC registram uma amostra de fluxos de rede enviados e recebidos por instâncias de VM. Esses registros podem ser usados para monitoramento de rede, perícia forense, análise de segurança em tempo real e otimização de despesas. Para mais informações sobre registros de fluxo e o custo deles, consulte Como usar registros de fluxo da VPC.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console doGoogle Cloud .
Na lista de redes, clique no nome da rede desejada.
Na página Detalhes da rede VPC, clique na guia Sub-redes.
Na lista de sub-redes, clique no nome da sub-rede indicada na descoberta.
Na página Detalhes da sub-rede, clique em
Editar.Em Registros de fluxo, selecione Ativado.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osFlow logs settings not recommended
Nome da categoria na API: VPC_FLOW_LOGS_SETTINGS_NOT_RECOMMENDED
Na configuração de uma sub-rede em uma rede VPC, o serviço de registros de fluxo de VPC está desativado ou não está configurado de acordo com as recomendações do CIS Benchmark 1.3. Os registros de fluxo de VPC salvam uma amostra dos fluxos de rede enviados e recebidos por instâncias de VM que pode ser usada para detectar ameaças.
Para mais informações sobre registros de fluxo de VPC e seu custo, consulte Como usar registros de fluxo de VPC.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console doGoogle Cloud .
Na lista de redes, clique no nome da rede.
Na página Detalhes da rede VPC, clique na guia Sub-redes.
Na lista de sub-redes, clique no nome da sub-rede indicada na descoberta.
Na página Detalhes da sub-rede, clique em
Editar.Em Registros de fluxo, selecione Ativar.
- É possível modificar a configuração dos registros clicando no botão Configurar registros para expandir a guia. O CIS Benchmarks recomenda as seguintes configurações:
- Defina o Intervalo de agregação como 5 SEG.
- Na caixa de seleção Outros campos, selecione a opção Incluir metadados.
- Defina a Taxa de amostragem para 100%.
- Clique no botão SALVAR.
- É possível modificar a configuração dos registros clicando no botão Configurar registros para expandir a guia. O CIS Benchmarks recomenda as seguintes configurações:
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osFull API access
Nome da categoria na API: FULL_API_ACCESS
Uma instância do Compute Engine está configurada para usar a conta de serviço padrão com acesso total a todas as APIs do Google Cloud .
Uma instância configurada com a conta de serviço padrão e o escopo de acesso à API definido como Permitir acesso total a todas as APIs do Cloud pode permitir que os usuários executem operações ou chamadas de API para as quais não têm permissões do IAM. Para mais informações, consulte Conta do serviço padrão do Compute Engine.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Se a instância estiver em execução, clique em
Parar.Quando a instância for interrompida, clique em
Editar.Na seção Segurança e acesso, em Contas de serviço, selecione Conta de serviço padrão do Compute Engine.
Em Escopos de acesso, selecione Permitir acesso padrão ou Definir acesso para cada API. Isso limita as APIs que qualquer processo ou carga de trabalho que usa a conta de serviço padrão da VM pode acessar.
Se você selecionou Definir acesso para cada API, faça o seguinte:
- Desative a Plataforma Cloud definindo como Nenhum.
- Ative as APIs específicas que a conta de serviço padrão da VM precisa acessar.
Clique em Salvar.
Clique em
Iniciar para iniciar a instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osHTTP load balancer
Nome da categoria na API: HTTP_LOAD_BALANCER
Uma instância do Compute Engine usa um balanceador de carga configurado para usar um proxy HTTP de destino em vez de um proxy HTTPS de destino.
Para proteger a integridade dos dados e impedir que invasores adulterem as comunicações, configure os balanceadores de carga HTTP(S) para permitir somente tráfego HTTPS. Para mais informações, consulte Visão geral do balanceamento de carga HTTP(S) externo.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Proxies de destino no console do Google Cloud .
Na lista de proxies de destino, clique no nome do proxy de destino na descoberta.
Clique no link em Mapa de URL.
Clique em
Editar.Clique em Configuração de front-end.
Exclua todas as configurações de IP de front-end e de porta que permitem o tráfego HTTP e crie novas configurações que permitam tráfego HTTPS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osInstance OS login disabled
Nome da categoria na API: INSTANCE_OS_LOGIN_DISABLED
O login do SO está desativado nesta instância do Compute Engine.
O login de SO ativa o gerenciamento centralizado de chave SSH com IAM e desativa a configuração de chave SSH baseada em metadados em todas as instâncias de um projeto. Saiba como instalar e configurar o login do SO.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Na página Detalhes da instância carregada, clique em
Interromper.Depois que a instância for interrompida, clique em
Editar.Na seção Metadados personalizados, verifique se o item com a chave enable-oslogin tem o valor TRUE.
Clique em Salvar.
Clique em
Iniciar para iniciar a instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIntegrity monitoring disabled
Nome da categoria na API: INTEGRITY_MONITORING_DISABLED
O monitoramento de integridade está desativado em um cluster do GKE.
O Monitoramento de integridade permite monitorar e verificar a integridade da inicialização do ambiente de execução dos seus nós protegidos usando o Monitoring. Isso permite que você responda a falhas de integridade e impeça a implantação de nós comprometidos no cluster.
Para corrigir essa descoberta, conclua as etapas a seguir:
Depois que um nó é provisionado, não é possível atualizá-lo para ativar o monitoramento de integridade. Crie um novo pool de nós com o monitoramento de integridade ativado.
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique no nome do cluster na descoberta.
Clique em Adicionar pool de nós.
Na guia Segurança, verifique se Ativar monitoramento de integridade está ativado.
Clique em Criar.
Para migrar as cargas de trabalho dos pools de nós não compatíveis existentes para os novos pools de nós, consulte Como migrar cargas de trabalho para diferentes tipos de máquina.
Depois que suas cargas de trabalho forem movidas, exclua o pool de nós original não conforme.
- Na página de Clusters do Kubernetes, no menu Pools de nós, clique no nome do pool de nós que você quer excluir.
- Clique em Remover pool de nós.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIntranode visibility disabled
Nome da categoria na API: INTRANODE_VISIBILITY_DISABLED
A visibilidade intranós é desativada para um cluster do GKE.
Ativar a visibilidade intranós torna o tráfego intranós entre pods visível para os recursos de infraestrutura da rede. Com esse recurso, é possível usar a geração de registros de fluxo ou outros recursos da VPC para monitorar ou controlar o tráfego intranós. Para acessar registros, você precisa ativar os registros de fluxo de VPC na sub-rede selecionada. Para ver mais informações, consulte como usar registros de fluxo de VPC.
Para corrigir essa descoberta, conclua as etapas a seguir:
Depois que um nó é provisionado, não é possível atualizá-lo para ativar o monitoramento de integridade. Crie um novo pool de nós com o monitoramento de integridade ativado.
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na seção Rede, clique em
Editar visibilidade intranós na linha Visibilidade intranós.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na caixa de diálogo, selecione Ativar visibilidade intranós.
Clique em Salvar alterações.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIP alias disabled
Nome da categoria na API: IP_ALIAS_DISABLED
Um cluster do GKE foi criado com intervalos de IP de alias desativados.
Quando você ativa intervalos de IP de alias, os clusters do GKE alocam endereços IP de um bloco CIDR conhecido. Assim, o cluster é escalonável e interage melhor com produtos e entidades do Google Cloud . Para mais informações, consulte Visão geral sobre intervalos de IP de alias.
Para corrigir essa descoberta, conclua as etapas a seguir:
Não é possível migrar um cluster para usar IPs de alias. Para criar um novo cluster com IPs de alias ativados, faça o seguinte:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique em Criar.
No painel de navegação, em Cluster, clique em Rede.
Em Opções avançadas de rede, selecione Ativar roteamento de tráfego nativo de VPC (usa IP do alias).
Clique em Criar.
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIP forwarding enabled
Nome da categoria na API: IP_FORWARDING_ENABLED
O encaminhamento de IP está ativado nas instâncias do Compute Engine.
Evite a perda de dados e a divulgação de informações desativando o encaminhamento do IP de pacotes de dados das VMs.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, marque a caixa ao lado do nome da instância na descoberta.
Clique em
ExcluirSelecione Criar instância para criar uma nova instância e substituir a que você excluiu.
Para garantir que o encaminhamento de IP esteja desativado, clique em Gerenciamento, discos, rede, chaves SSH e depois em Rede.
Em Interfaces de rede, clique em
Editar.Em Encaminhamento de IP, no menu suspenso, verifique se Desativado está selecionado.
Especifique quaisquer outros parâmetros da instância e clique em Criar. Para mais informações, consulte Como criar e iniciar uma instância de VM.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osKMS key not rotated
Nome da categoria na API: KMS_KEY_NOT_ROTATED
A rotação não está configurada em uma chave de criptografia do Cloud KMS.
A rotação regular das chaves de criptografia oferece proteção caso uma chave fique comprometida e limita o número de mensagens criptografadas disponíveis para criptoanálise de uma versão de chave específica. Para mais informações, consulte Rotação de chaves.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página chaves do Cloud KMS no console Google Cloud .
Clique no nome do keyring indicado na descoberta.
Clique no nome da chave indicada na descoberta.
Clique em Editar período de rotação.
Defina o período de rotação até o máximo de 90 dias.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osKMS project has owner
Nome da categoria na API: KMS_PROJECT_HAS_OWNER
Um usuário tem permissões roles/Owner
em um projeto que tem chaves criptográficas.
Para mais informações, consulte Permissões e
papéis.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do IAM no console Google Cloud .
Se necessário, selecione o projeto na descoberta.
Para cada membro atribuído ao papel de Proprietário:
- Clique em Editar.
- No painel Editar permissões, ao lado do papel Proprietário, clique em Excluir.
- Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osKMS public key
Nome da categoria na API: KMS_PUBLIC_KEY
Uma cryptokey ou um keyring do Cloud KMS são públicos e acessíveis a qualquer pessoa na Internet. Para mais informações, consulte Como usar o IAM com o Cloud KMS.
Para corrigir essa descoberta, se ela estiver relacionada a uma cryptokey:
Acesse a página Chaves criptográficas no console do Google Cloud .
Em Nome, selecione o keyring que contém a chave criptográfica relacionada à descoberta do Security Health Analytics.
Na página Detalhes do keyring carregada, marque a caixa de seleção ao lado da chave criptográfica.
Se o PAINEL DE INFORMAÇÕES não for exibido, clique no botão MOSTRAR PAINEL DE INFORMAÇÕES.
Use a caixa de filtro anterior a Papel / Membro para pesquisar membros de allUsers e allAuthenticatedUsers, e clique em
Excluir para remover o acesso desses membros.
Para corrigir essa descoberta, se ela estiver relacionada a um keyring:
Acesse a página Chaves criptográficas no console do Google Cloud .
Encontre a linha com o keyring na descoberta e marque a caixa de seleção.
Se o PAINEL DE INFORMAÇÕES não for exibido, clique no botão MOSTRAR PAINEL DE INFORMAÇÕES.
Use a caixa de filtro anterior a Papel / Membro para pesquisar membros de allUsers e allAuthenticatedUsers, e clique em
Excluir para remover o acesso desses membros.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osKMS role separation
Nome da categoria na API: KMS_ROLE_SEPARATION
Essa descoberta não está disponível para ativações no nível do projeto.
Um ou mais principais têm várias permissões do Cloud KMS atribuídas. É recomendável que nenhuma conta tenha o administrador do Cloud KMS simultaneamente com outras permissões do Cloud KMS. Para mais informações, consulte Permissões e papéis.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do IAM no console Google Cloud .
Para cada membro listado na descoberta, faça o seguinte:
- Verifique se o papel foi herdado de um recurso ou pasta da organização checando a coluna Herança. Se a coluna contiver um link para um recurso pai, clique no link para acessar a página do IAM do recurso pai.
- Clique em Editar ao lado de uma conta principal.
- Para remover as permissões, clique em Excluir ao lado de Administrador do Cloud KMS. Se você quiser remover todas as permissões do principal, clique em Excluir ao lado de todas as outras permissões.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLegacy authorization enabled
Nome da categoria na API: LEGACY_AUTHORIZATION_ENABLED
A autorização legada está ativada em clusters do GKE.
No Kubernetes, o controle de acesso baseado no papel (RBAC, na sigla em inglês) permite definir papéis com regras que contêm um conjunto de permissões e conceder permissões nos níveis do cluster e do namespace. Isso oferece maior segurança ao garantir que os usuários tenham acesso somente a recursos específicos. Considere desativar o controle de acesso baseado em atributo (ABAC, na sigla em inglês) legado.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Selecione o cluster listado na descoberta do Security Health Analytics.
Clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na lista suspensa Autorização herdada, selecione Desativada.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLegacy metadata enabled
Nome da categoria na API: LEGACY_METADATA_ENABLED
Os metadados legados são ativados nos clusters do GKE.
O servidor de metadados da instância do Compute Engine expõe endpoints /0.1/
e
/v1beta1/
herdados, que não impõem cabeçalhos de consulta de metadados. Esse é um
recurso nas APIs /v1/
que dificulta que um invasor em potencial
recupere metadados de instância. A menos que seja necessário, recomendamos
desativar as APIs legadas /0.1/
e /v1beta1/
.
Para mais informações, consulte Como desativar e fazer a transição a partir de APIs de metadados legados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Só é possível desativar as APIs de metadados legados ao criar um novo cluster ou ao adicionar um novo pool de nós a um cluster existente. Para atualizar um cluster atual e desativar as APIs de metadados legados, consulte Como migrar cargas de trabalho para diferentes tipos de máquina.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLegacy network
Nome da categoria na API: LEGACY_NETWORK
Existe uma rede legada em um projeto.
As redes legadas não são recomendadas porque muitos dos novos recursos de segurança do Google Cloud não são compatíveis com elas. Use redes VPC. Para mais informações, consulte Redes legadas.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console doGoogle Cloud .
Para criar uma nova rede não legada, clique em Criar rede.
Volte para a página Redes VPC.
Na lista de redes, clique em legacy_network.
Na página Detalhes da rede VPC, clique em
Excluir rede VPC.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLoad balancer logging disabled
Nome da categoria na API: LOAD_BALANCER_LOGGING_DISABLED
A geração de registros está desativada para o serviço de back-end em um balanceador de carga.
Ativar a geração de registros para um balanceador de carga permite que você confira o tráfego de rede HTTP(S) dos seus aplicativos da Web. Saiba mais em Balanceador de carga.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Balanceamento de carga do Cloud no consoleGoogle Cloud .
Clique no nome do balanceador de carga.
Clique em
Editar.Clique em Configuração de back-end.
Na página Configuração de back-end, clique em
Editar.Na seção Logging, selecione Ativar geração de registros e escolha a melhor taxa de amostragem para seu projeto.
Para concluir a edição do serviço de back-end, clique em Atualizar.
Para concluir a edição do balanceador de carga, clique em Atualizar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLocked retention policy not set
Nome da categoria na API: LOCKED_RETENTION_POLICY_NOT_SET
Uma política de retenção bloqueada não está definida para os registros.
Uma política de retenção bloqueada impede que os registros sejam substituídos e que o bucket de registros seja excluído. Para mais informações, consulte Bloqueio de bucket.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Navegador do Storage no console Google Cloud .
Selecione o bucket listado na descoberta do Security Health Analytics.
Na página Detalhes do bucket, clique na guia Retenção.
Se uma política de retenção não tiver sido definida, clique em Definir política de retenção.
Insira um período de armazenamento.
Clique em Save. A política de retenção é mostrada na guia Retenção.
Clique em Bloquear para garantir que o período de retenção não seja encurtado ou removido.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLog not exported
Nome da categoria na API: LOG_NOT_EXPORTED
Há um recurso que não tem um coletor de registros apropriado configurado.
O Cloud Logging ajuda você a encontrar rapidamente a causa de problemas no sistema e nos aplicativos. No entanto, por padrão, a maioria dos registros é mantida por 30 dias. Exporte cópias de todas as entradas de registro para estender o período de armazenamento. Para mais informações, consulte Visão geral das exportações de registros.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Roteador de registros no console do Google Cloud .
Clique em Criar coletor.
Para garantir que todos os registros sejam exportados, deixe os filtros de inclusão e exclusão vazios.
Clique em Criar coletor.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osMaster authorized networks disabled
Nome da categoria na API: MASTER_AUTHORIZED_NETWORKS_DISABLED
As redes autorizadas do plano de controle não estão ativadas nos clusters do GKE.
Redes autorizadas do plano de controle melhoram a segurança do cluster de contêiner bloqueando o acesso de endereços IP especificados ao plano de controle do cluster. Para mais informações, consulte Como adicionar redes autorizadas para acesso ao plano de controle.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Selecione o cluster listado na descoberta do Security Health Analytics.
Clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na lista suspensa Redes autorizadas do plano de controle, selecione Ativada.
Clique em Adicionar rede autorizada.
Especifique as redes autorizadas que você quer usar.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osMFA not enforced
Nome da categoria na API: MFA_NOT_ENFORCED
Essa descoberta não está disponível para ativações no nível do projeto.
A autenticação multifator, especificamente a verificação em duas etapas (2SV), está desativada para alguns usuários na organização.
A autenticação multifator pode ser usada para evitar acessos não autorizados a contas e é a ferramenta mais importante para proteger a organização contra credenciais de login comprometidas. Para mais informações, consulte Proteger a empresa com a verificação em duas etapas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do Admin Console no console Google Cloud .
Aplique a verificação em duas etapas em todas as unidades organizacionais.
Suprimir descobertas deste tipo
Para suprimir descobertas desse tipo, defina uma regra de silenciamento que desative automaticamente as descobertas futuras desse tipo. Para mais informações, consulte Desativar descobertas no Security Command Center.
Embora não seja uma maneira recomendada de suprimir descobertas, também é possível adicionar marcações de segurança dedicadas aos recursos para que os detectores da Análise de integridade da segurança não criem descobertas de segurança para eles.
- Para evitar que essa descoberta seja ativada novamente, adicione a marcação de segurança
allow_mfa_not_enforced
com um valor detrue
ao recurso. - Para ignorar possíveis violações em unidades organizacionais específicas, adicione a
marcação de segurança
excluded_orgunits
ao recurso com uma lista separada por vírgulas de caminhos de unidades organizacionais no campo valor. Por exemplo,excluded_orgunits:/people/vendors/vendorA,/people/contractors/contractorA
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNetwork not monitored
Nome da categoria na API: NETWORK_NOT_MONITORED
As métricas e os alertas de registro não estão configurados para monitorar alterações de rede VPC.
Para detectar alterações incorretas ou não autorizadas na configuração de rede, monitore as alterações da rede VPC. Para mais informações, consulte Visão geral de métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
resource.type="gce_network" AND (protoPayload.methodName:"compute.networks.insert" OR protoPayload.methodName:"compute.networks.patch" OR protoPayload.methodName:"compute.networks.delete" OR protoPayload.methodName:"compute.networks.removePeering" OR protoPayload.methodName:"compute.networks.addPeering")
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNetwork policy disabled
Nome da categoria na API: NETWORK_POLICY_DISABLED
A política de rede está desativada nos clusters do GKE.
Por padrão, a comunicação entre pods fica aberta. A comunicação aberta permite que os pods
se conectem diretamente nos nós, com ou sem conversão de endereços de rede. Um
recurso NetworkPolicy
é como um firewall no nível do pod que restringe as conexões
entre os pods, a menos que o recurso NetworkPolicy
permita explicitamente a
conexão. Aprenda a definir uma política de rede.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique no nome do cluster listado na descoberta do Security Health Analytics.
Em Rede, na linha da política de rede do Calico Kubernetes, clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na caixa de diálogo, selecione Ativar a política de rede do Kubernetes no Kubernetes para o plano de controle e Ativar a política de rede do Kubernetes no Calico para nós.
Clique em Salvar alterações.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNodepool boot CMEK disabled
Nome da categoria na API: NODEPOOL_BOOT_CMEK_DISABLED
Os discos de inicialização nesse pool de nós não são criptografados com chaves de criptografia gerenciadas pelo cliente. As CMEK permitem que o usuário configure as chaves de criptografia padrão para discos de inicialização em um pool de nós.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na lista de clusters, clique no nome do cluster na descoberta.
Clique na guia Nós.
Para cada pool de nós default-pool, clique em
Excluir.Quando solicitado a confirmar, clique em Excluir.
Para criar novos pools de nós usando CMEK, consulte Como usar chaves de criptografia gerenciadas pelo cliente (CMEK). As CMEK geram custos adicionais relacionados ao Cloud KMS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNodepool secure boot disabled
Nome da categoria na API: NODEPOOL_SECURE_BOOT_DISABLED
A Inicialização segura está desativada para um cluster do GKE.
Ative a inicialização segura para os nós do GKE protegidos para verificar as assinaturas digitais dos componentes de inicialização do nó. Para mais informações, consulte Inicialização segura.
Para corrigir essa descoberta, conclua as etapas a seguir:
Depois que o pool de nós é provisionado, não é possível atualizá-lo para ativar a inicialização segura. Crie um novo pool de nós com a inicialização segura ativada.
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique no nome do cluster na descoberta.
Clique em Adicionar pool de nós.
No menu Pools de nós, faça o seguinte:
- Clique no nome do novo pool de nós para expandir a guia.
- Selecione Segurança e, em Opções protegidas, selecione Ativar inicialização segura.
- Clique em Criar.
- Para migrar as cargas de trabalho dos pools de nós não compatíveis existentes para os novos pools de nós, consulte Como migrar cargas de trabalho para diferentes tipos de máquina.
- Depois que suas cargas de trabalho forem movidas, exclua o pool de nós original não conforme.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNon org IAM member
Nome da categoria na API: NON_ORG_IAM_MEMBER
Um usuário de fora da organização ou do projeto tem permissões de IAM em um projeto ou organização. Saiba mais sobre as permissões do IAM.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do IAM no console Google Cloud .
Marque a caixa de seleção ao lado dos usuários de fora da organização ou do projeto.
Clique em Remover.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osObject versioning disabled
Nome da categoria na API: OBJECT_VERSIONING_DISABLED
O controle de versão de objeto não está ativado em um bucket de armazenamento em que os coletores são configurados.
O Cloud Storage oferece o recurso de controle de versões de objetos para recuperar objetos que são excluídos ou substituídos. Ative o controle de versão de objetos para evitar que os dados do Cloud Storage sejam substituídos ou excluídos acidentalmente. Saiba como ativar o controle de versão de objetos.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, use a flag --versioning
em um
comando gcloud storage buckets update
com o valor apropriado:
gcloud storage buckets update gs://finding.assetDisplayName --versioning
Substitua finding.assetDisplayName
pelo nome do
bucket relevante.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen Cassandra port
Nome da categoria na API: OPEN_CASSANDRA_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte às portas do Cassandra podem expor os serviços do Cassandra a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do Cassandra são:
TCP - 7000, 7001, 7199, 8888, 9042, 9160, 61620, 61621
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen ciscosecure websm port
Nome da categoria na API: OPEN_CISCOSECURE_WEBSM_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte às portas CiscoSecure/WebSM podem expor os serviços CiscoSecure/WebSM a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço CiscoSecure/WebSM são:
TCP - 9090
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen directory services port
Nome da categoria na API: OPEN_DIRECTORY_SERVICES_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do Directory podem expor os serviços do Directory a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do Directory são:
TCP - 445
UDP - 445
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen DNS port
Nome da categoria na API: OPEN_DNS_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas DNS podem expor os serviços DNS a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço DNS são:
TCP - 53
UDP - 53
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen Elasticsearch port
Nome da categoria na API: OPEN_ELASTICSEARCH_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do Elasticsearch podem expor os serviços do Elasticsearch a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do Elasticsearch são:
TCP - 9200, 9300
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen firewall
Nome da categoria na API: OPEN_FIREWALL
Regras de firewall que permitem conexões de todos os endereços IP, como 0.0.0.0/0
,
ou de todas as portas podem expor os recursos a ataques de fontes indesejadas desnecessariamente. Remova essas regras ou determine explicitamente o escopo delas para os intervalos ou portas de IP de origem
pretendidos. Por exemplo, em aplicativos destinados a ser públicos,
considere restringir as portas permitidas às necessárias para o aplicativo, como a 80
e 443. Caso o aplicativo precise permitir conexões de todos os endereços IP ou
portas, considere adicionar o recurso a uma lista de permissões. Saiba mais sobre
Como atualizar regras de firewall.
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Regras de firewall no console Google Cloud .
Clique na regra de firewall listada na descoberta do Security Health Analytics e depois em
Editar.Em Intervalos de IP de origem, edite os valores de IP para restringir o intervalo de IPs permitido.
Em Protocolos e portas, selecione Protocolos e portas especificados, selecione os protocolos permitidos e insira as portas permitidas.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen FTP port
Nome da categoria na API: OPEN_FTP_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do FTP podem expor os serviços do FTP a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do FTP são:
TCP - 21
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen group IAM member
Nome da categoria na API: OPEN_GROUP_IAM_MEMBER
Um ou mais principais que têm acesso a uma organização, projeto ou pasta são contas do Grupos do Google que podem ser mescladas sem aprovação.
Os clientes doGoogle Cloud podem usar os Grupos do Google para gerenciar papéis e permissões para membros das organizações ou aplicar políticas de acesso a coleções de usuários. Em vez de conceder papéis diretamente aos membros, os administradores podem conceder papéis e permissões aos Grupos do Google e, em seguida, adicionar membros a grupos específicos. Os membros do grupo herdam todos os papéis e permissões de um grupo, o que permite que os membros acessem recursos e serviços específicos.
Se uma conta aberta do Grupos do Google for usada como principal em uma vinculação do IAM, qualquer pessoa poderá herdar o papel associado apenas participando do grupo direta ou indiretamente (por meio de um subgrupo). Recomendamos revogar as funções dos grupos abertos ou restringir o acesso a eles.
Para corrigir essa descoberta, execute um dos procedimentos a seguir.
Remover o grupo da política do IAM
Acesse a página do IAM no console Google Cloud .
Se necessário, selecione o projeto, a pasta ou a organização na descoberta.
Revogue a função de cada grupo aberto identificado na descoberta.
Restringir o acesso aos grupos abertos
- Faça login no Grupos do Google.
- Atualize as configurações de cada grupo aberto e dos respectivos subgrupos para especificar quem pode participar do grupo e quem precisa aprová-lo.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen HTTP port
Nome da categoria na API: OPEN_HTTP_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas HTTP podem expor os serviços HTTP a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço HTTP são:
TCP - 80
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen LDAP port
Nome da categoria na API: OPEN_LDAP_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas LDAP podem expor os serviços LDAP a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço LDAP são:
TCP - 389, 636
UDP - 389
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen Memcached port
Nome da categoria na API: OPEN_MEMCACHED_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do Memcached podem expor os serviços do Memcached a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do Memcached são:
TCP - 11211, 11214, 11215
UDP - 11211, 11214, 11215
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen MongoDB port
Nome da categoria na API: OPEN_MONGODB_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do MongoDB podem expor os serviços do MongoDB a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do MongoDB são:
TCP - 27017, 27018, 27019
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen MySQL port
Nome da categoria na API: OPEN_MYSQL_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do MySQL podem expor os serviços do MySQL a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do MySQL são:
TCP - 3306
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen NetBIOS port
Nome da categoria na API: `OPEN_NETBIOS_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do NetBIOS podem expor os serviços do NetBIOS a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do NetBIOS são:
TCP - 137, 138, 139
UDP - 137, 138, 139
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen OracleDB port
Nome da categoria na API: OPEN_ORACLEDB_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do OracleDB podem expor os serviços do OracleDB a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do OracleDB são:
TCP - 1521, 2483, 2484
UDP - 2483, 2484
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen POP3 port
Nome da categoria na API: OPEN_POP3_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas POP3 podem expor os serviços POP3 a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço POP3 são:
TCP - 110
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen PostgreSQL port
Nome da categoria na API: OPEN_POSTGRESQL_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do PostgreSQL podem expor os serviços do PostgreSQL a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do PostgreSQL são:
TCP - 5432
UDP - 5432
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen RDP port
Nome da categoria na API: OPEN_RDP_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas RDP podem expor os serviços RDP a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço RDP são:
TCP - 3389
UDP - 3389
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen Redis port
Nome da categoria na API: OPEN_REDIS_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas do Redis podem expor os serviços do Redis a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço do Redis são:
TCP - 6379
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen SMTP port
Nome da categoria na API: OPEN_SMTP_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas SMTP podem expor os serviços SMTP a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço SMTP são:
TCP - 25
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen SSH port
Nome da categoria na API: OPEN_SSH_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas SSH podem expor os serviços SSH a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço SSH são:
SCTP - 22
TCP - 22
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOpen Telnet port
Nome da categoria na API: OPEN_TELNET_PORT
Regras de firewall que permitem que qualquer endereço IP se conecte a portas Telnet podem expor os serviços Telnet a invasores. Para mais informações, consulte Visão geral das regras de firewall da VPC.
As portas de serviço Telnet são:
TCP - 23
Essa descoberta é gerada para regras de firewall vulneráveis, mesmo que você desative as regras intencionalmente. As descobertas ativas para regras de firewall desativadas alertam você sobre configurações não seguras que permitirão tráfego indesejado se ativadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Firewall no console Google Cloud .
Na lista de regras de firewall, clique no nome da regra de firewall na descoberta.
Clique em
Editar.Em Intervalos de IP de origem, exclua
0.0.0.0/0
.Adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.
Adicione protocolos e portas específicos que você quer abrir na instância.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOrg policy Confidential VM policy
Nome da categoria na API: ORG_POLICY_CONFIDENTIAL_VM_POLICY
Um recurso do Compute Engine não está em conformidade com a
política
da organização constraints/compute.restrictNonConfidentialComputing
. Para mais informações sobre essa restrição da política da organização, consulte Como aplicar
restrições de política da organização.
A organização exige que o serviço de VM confidencial da VM esteja ativado. As VMs que não têm esse serviço ativado não usarão criptografia de memória em tempo de execução, expondo-as a ataques de memória durante o tempo de execução.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, clique no nome da instância na descoberta.
Se a VM não exigir o serviço de VM confidencial, mova-a para uma nova pasta ou projeto.
Se a VM exigir a VM confidencial, clique em
Excluir.Para criar uma nova instância com a VM confidencial ativada, consulte Guia de início rápido: como criar uma instância de VM confidencial.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOrg policy location restriction
Nome da categoria na API: ORG_POLICY_LOCATION_RESTRICTION
A restrição da Política da Organização gcp.resourceLocations
permite restringir
a criação de novos recursos às Regiões do Cloud selecionadas.
Para mais informações, consulte Como restringir locais de recursos.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
O detector ORG_POLICY_LOCATION_RESTRICTION
abrange muitos tipos
de recursos, e as instruções
de correção são diferentes para cada recurso. A abordagem geral para corrigir
violações de local inclui o seguinte:
- Copiar, migrar ou fazer backup do recurso fora da região ou os dados dele em um recurso que está na região. Leia a documentação de serviços individuais para receber instruções sobre como migrar recursos.
- Excluir o recurso original fora da região ou dados dele.
Essa abordagem não é possível para todos os tipos de recursos. Para orientação, consulte as recomendações personalizadas fornecidas na descoberta.
Outras considerações
Ao corrigir essa descoberta, considere o seguinte.
Recursos gerenciados
Às vezes, os ciclos de vida dos recursos são gerenciados e controlados por outros recursos. Por exemplo, um grupo gerenciado de instâncias do Compute Engine cria e destrói instâncias do Compute Engine de acordo com a política de escalonamento automático do grupo de instâncias. Se os recursos gerenciados e de gerenciamento estiverem no escopo da aplicação do local, ambos poderão ser sinalizados como violações da Política da organização. A correção das descobertas dos recursos gerenciados deve ser feita no recurso de gerenciamento para garantir a estabilidade operacional.
Recursos em uso
Alguns recursos são usados por outros recursos. Por exemplo, um disco do Compute Engine anexado a uma instância do Compute Engine em execução é considerado em uso pela instância. Se o recurso em uso violar a Política de organização do local, você precisará garantir que ele não esteja em uso antes de resolver a violação do local.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOS login disabled
Nome da categoria na API: OS_LOGIN_DISABLED
O login do SO está desativado nas instâncias do Compute Engine neste projeto.
O login de SO ativa o gerenciamento centralizado de chave SSH com IAM e desativa a configuração de chave SSH baseada em metadados em todas as instâncias de um projeto. Saiba como instalar e configurar o login do SO.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Metadados no console do Google Cloud .
Clique em Editar e depois clique em Adicionar item.
Adicione um item com a chave enable-oslogin e o valor TRUE.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOver privileged account
Nome da categoria na API: OVER_PRIVILEGED_ACCOUNT
Um nó do GKE está usando o nó de serviço padrão do Compute Engine, que tem acesso amplo por padrão e pode ter privilégios em excesso para executar o cluster do GKE.
Para corrigir essa descoberta, conclua as etapas a seguir:
Siga as instruções para Usar contas de serviço do Google com privilégios mínimos.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOver privileged scopes
Nome da categoria na API: OVER_PRIVILEGED_SCOPES
Uma conta de serviço do nó tem escopos de acesso amplos.
Escopos de acesso são o método legado de especificação das permissões da sua instância. Para reduzir a possibilidade de um escalonamento de privilégios em um ataque, crie e use uma conta de serviço com privilégios mínimos para executar o cluster do GKE.
Para corrigir essa descoberta, siga as instruções em Usar contas de serviço do Google com privilégio mínimo.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOver privileged service account user
Nome da categoria na API: OVER_PRIVILEGED_SERVICE_ACCOUNT_USER
Um usuário tem os papéis iam.serviceAccountUser
ou iam.serviceAccountTokenCreator
no nível do projeto, da pasta ou da organização, e não para uma
conta de serviço específica.
Conceder esses papéis a um usuário de um projeto, uma pasta ou uma organização fornece a ele acesso a todas as contas de serviço atuais e futuras nesse escopo. Isso pode resultar em escalonamento não intencional de privilégios. Para mais informações, consulte Permissões de contas de serviço.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do IAM no console Google Cloud .
Se necessário, selecione o projeto, a pasta ou a organização na descoberta.
Para cada membro atribuído
roles/iam.serviceAccountUser
ouroles/iam.serviceAccountTokenCreator
, faça o seguinte:- Clique em Editar.
- No painel Editar permissões, ao lado dos papéis, clique em Excluir.
- Clique em Salvar.
Siga este guia para conceder a usuários individuais permissão para personificar uma única conta de serviço. Você precisará seguir o guia para cada conta de serviço à qual pretende conceder a permissão de personificação.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOwner not monitored
Nome da categoria na API: OWNER_NOT_MONITORED
Métricas e alertas de registros não são configurados para monitorar atribuições ou alterações de propriedade do projeto.
O papel de Proprietário do IAM tem o nível mais alto de privilégio em um projeto. Para proteger seus recursos, configure alertas para receber notificações quando novos proprietários forem adicionados ou removidos. Para mais informações, consulte Visão geral de métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
(protoPayload.serviceName="cloudresourcemanager.googleapis.com") AND (ProjectOwnership OR projectOwnerInvitee) OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="REMOVE" AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner") OR (protoPayload.serviceData.policyDelta.bindingDeltas.action="ADD" AND protoPayload.serviceData.policyDelta.bindingDeltas.role="roles/owner")
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPod security policy disabled
Nome da categoria na API: POD_SECURITY_POLICY_DISABLED
Este PodSecurityPolicy
está desativado em um cluster do GKE.
Um PodSecurityPolicy
é um recurso controlador de admissão que valida
solicitações para criar e atualizar pods em um cluster. Os clusters não aceitarão pods que
não atenderem às condições definidas no PodSecurityPolicy
.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, defina e autorize PodSecurityPolicies
e
ative o controlador PodSecurityPolicy
. Para instruções, consulte
Como usar PodSecurityPolicies
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPrimitive roles used
Nome da categoria na API: PRIMITIVE_ROLES_USED
Um usuário tem um dos seguintes papéis básicos do IAM: roles/owner
,
roles/editor
ou roles/viewer
. Esses papéis são muito permissivos e
não devem ser usados. Eles devem ser atribuídos somente por projeto.
Saiba mais em Noções básicas sobre papéis.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de políticas do IAM no console Google Cloud .
Para cada usuário com um papel primário, considere usar papéis mais granulares.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPrivate cluster disabled
Nome da categoria na API: PRIVATE_CLUSTER_DISABLED
Um cluster do GKE tem um cluster particular desativado.
Clusters particulares só permitem que os nós tenham endereços IP internos. Esse recurso limita o acesso à Internet de saída para nós. Se um nó de cluster não tiver um endereço IP público, ele não poderá ser descoberto nem exposto à Internet pública. Ainda é possível rotear o tráfego para um nó usando um balanceador de carga interno. Para mais informações, consulte Clusters particulares.
Não é possível tornar privado um cluster atual. Para corrigir essa descoberta, crie um novo cluster privado:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique em Criar cluster.
No menu de navegação, em Cluster, selecione Rede.
Selecione o botão de opção Cluster particular.
Em Opções de rede avançadas, marque a caixa de seleção Ativar roteamento de tráfego nativo de VPC (usa IP do alias).
Clique em Criar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPrivate Google access disabled
Nome da categoria na API: PRIVATE_GOOGLE_ACCESS_DISABLED
Há sub-redes privadas sem acesso às APIs públicas do Google.
O acesso privado do Google permite que instâncias de VM apenas com endereços IP internos (particulares) acessem os endereços IP públicos das APIs e dos serviços do Google.
Para mais informações, consulte Como configurar o Acesso privado do Google.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Redes VPC no console doGoogle Cloud .
Na lista de redes, clique no nome da rede desejada.
Na página Detalhes da rede VPC, clique na guia Sub-redes.
Na lista de sub-redes, clique no nome da sub-rede associada ao cluster do Kubernetes na descoberta.
Na página Detalhes da sub-rede, clique em
Editar.Em Acesso privado do Google, selecione Ativado.
Clique em Save.
Para remover IPs públicos (externos) das instâncias de VM cujo tráfego externo é apenas para APIs do Google, consulte Como cancelar a atribuição de um endereço IP externo estático.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic bucket ACL
Nome da categoria na API: PUBLIC_BUCKET_ACL
Um bucket é público e qualquer pessoa na Internet pode acessá-lo.
Para mais informações, consulte Visão geral do controle de acesso.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Navegador do Storage no console Google Cloud .
Selecione o bucket listado na descoberta do Security Health Analytics.
Na página Detalhes do bucket, clique na guia Permissões.
Ao lado de Visualizar por, clique em Papéis.
Na caixa Filtro, pesquise allUsers e allAuthenticatedUsers.
Clique em
Excluir para remover todas as permissões do IAM concedidas a allUsers e allAuthenticatedUsers.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic Compute image
Nome da categoria na API: PUBLIC_COMPUTE_IMAGE
Uma imagem do Compute Engine é pública e qualquer pessoa na Internet pode acessá-la. allUsers representa qualquer pessoa na Internet e allAuthenticatedUsers representa qualquer pessoa com a autenticação da conta do Google; nenhum deles está restrito aos usuários dentro da organização.
As imagens do Compute Engine podem conter informações confidenciais, como chaves de criptografia ou software licenciado. Essas informações não devem ser acessadas publicamente. Se você pretende tornar pública esta imagem do Compute, verifique se ela não contém informações confidenciais.
Para mais informações, consulte Visão geral do controle de acesso.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de imagens do Compute Engine no Google Cloud console.
Selecione a caixa ao lado da imagem public-image e clique em Mostrar painel de informações.
Na caixa Filtro, pesquise os membros de allUsers e allAuthenticatedUsers.
Expanda o papel de que você quer remover usuários.
Clique em
Excluir para remover um usuário desse papel.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic dataset
Nome da categoria na API: PUBLIC_DATASET
Um conjunto de dados do BigQuery é público e acessível a qualquer pessoa na Internet. O membro do IAM allUsers representa qualquer pessoa na Internet, e allAuthenticatedUsers representa qualquer pessoa conectada a um serviço do Google. Nenhum deles se limita a usuários dentro da organização.
Para mais informações, consulte Como controlar o acesso a conjuntos de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Explorer do BigQuery no console Google Cloud .
Na lista de conjuntos de dados, clique no nome do conjunto de dados identificado na descoberta. O painel Informações do conjunto de dados é aberto.
Próximo à parte superior do painel Informações do conjunto de dados, clique em COMPARTILHAMENTO.
No menu suspenso, clique em Permissões.
No painel Permissões do conjunto de dados, insira allUsers e allAuthenticatedUsers e remova o acesso desses participantes.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic IP address
Nome da categoria na API: PUBLIC_IP_ADDRESS
Uma instância do Compute Engine tem um endereço IP público.
Para reduzir a superfície de ataque das organizações, evite atribuir endereços IP públicos às VMs. As instâncias interrompidas ainda podem ser sinalizadas com uma descoberta de IP público, por exemplo, se as interfaces de rede estiverem configuradas para atribuir um IP público temporário no início. Certifique-se de que as configurações de rede de instâncias interrompidas não incluem acesso externo.
Para mais informações, consulte Como conectar-se de maneira segura às instâncias de VM.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Na lista de instâncias, marque a caixa ao lado do nome da instância na descoberta.
Clique em
Editar.Para cada interface em Interfaces de rede, clique em
Editar e defina IP externo como Nenhum.Clique em Concluído e depois em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic log bucket
Nome da categoria na API: PUBLIC_LOG_BUCKET
Essa descoberta não está disponível para ativações no nível do projeto.
Um bucket de armazenamento é público e usado como um coletor de registros, o que significa que qualquer pessoa na Internet pode acessar os registros armazenados nesse bucket. allUsers representa qualquer pessoa na Internet, e allAuthenticatedUsers representa qualquer pessoa que esteja conectada em um serviço do Google. Nenhum deles se limita a usuários dentro da organização.
Para mais informações, consulte Visão geral do controle de acesso.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página do navegador do Cloud Storage no consoleGoogle Cloud .
Na lista de buckets, clique no nome do bucket indicado na descoberta.
Clique na guia Permissões..
Remova allUsers e allAuthenticatedUsers da lista de membros.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic SQL instance
Nome da categoria na API: PUBLIC_SQL_INSTANCE
A instância do SQL tem 0.0.0.0/0
como uma rede permitida. Isso significa
que qualquer cliente IPv4 é capaz de passar pelo firewall de rede e tentar fazer login na
instância, inclusive clientes que você
não queria permitir. Os clientes
ainda precisarão de credenciais válidas para fazerem login na instância.
Para mais informações, consulte Como autorizar com redes autorizadas.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.No painel de navegação, clique em Conexões.
Em Redes autorizadas, exclua
0.0.0.0/0
e adicione endereços ou intervalos de IP específicos que você quer permitir que se conectem à instância.Clique em Concluído e depois em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPubsub CMEK disabled
Nome da categoria na API: PUBSUB_CMEK_DISABLED
Um tópico do Pub/Sub não está criptografado com chaves de criptografia gerenciadas pelo cliente (CMEK).
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que o Google usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles.
Para corrigir essa descoberta, exclua o tópico existente e crie um novo:
Acesse a página Tópicos do Pub/Sub no console Google Cloud .
Se necessário, selecione o projeto que contém o tópico do Pub/Sub.
Marque a caixa de seleção ao lado do tópico listado na descoberta e clique em
Excluir.Para criar um novo tópico do Pub/Sub com a CMEK ativada, consulte Como usar chaves de criptografia gerenciadas pelo cliente. As CMEK geram custos adicionais relacionados ao Cloud KMS.
Publique descobertas ou outros dados no tópico do Pub/Sub ativado para CMEK.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRoute not monitored
Nome da categoria na API: ROUTE_NOT_MONITORED
As métricas e os alertas de registros não estão configurados para monitorar as alterações na rota da rede VPC.
As rotas doGoogle Cloud são destinos e saltos que definem o caminho que o tráfego de rede percorre de uma instância de VM a um IP de destino. Ao monitorar alterações nas tabelas de rotas, você ajuda a garantir que todo o tráfego VPC passe por um caminho esperado.
Para mais informações, consulte Visão geral de métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
resource.type="gce_route" AND (protoPayload.methodName:"compute.routes.delete" OR protoPayload.methodName:"compute.routes.insert")
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRedis role used on org
Nome da categoria na API: REDIS_ROLE_USED_ON_ORG
Essa descoberta não está disponível para ativações no nível do projeto.
Um papel do Redis IAM é atribuído no nível da organização ou da pasta.
Os papéis do Redis IAM a seguir podem ser atribuídos apenas por projeto, não nos níveis da organização da pasta:
roles/redis.admin
roles/redis.viewer
roles/redis.editor
Para mais informações, consulte Controle de acesso e permissões.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página de políticas do IAM no console Google Cloud .
Remova os papéis do Redis IAM indicados na descoberta e adicione-os aos projetos individuais.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRelease channel disabled
Nome da categoria na API: RELEASE_CHANNEL_DISABLED
Um cluster do GKE não está inscrito em um canal de lançamento.
Inscreva-se em um canal de lançamento para automatizar os upgrades de versão do cluster do GKE. Eles também reduzem a complexidade do gerenciador de versões ao número de recursos e ao nível de estabilidade necessários. Para mais informações, consulte Canais de lançamento.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Na seção Princípios básicos do cluster, clique em
Fazer upgrade da versão mestre do cluster na linha Canal de lançamento.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Na caixa de diálogo, selecione Canal de lançamento e escolha o canal de lançamento que você quer inscrever-se.
Se a versão do plano de controle do cluster não puder ser atualizada para um canal de lançamento, esse canal poderá ser desativado como opção.
Clique em Salvar alterações.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRSASHA1 for signing
Nome da categoria na API: RSASHA1_FOR_SIGNING
RSASHA1 é usado para assinatura de chaves em zonas do Cloud DNS. O algoritmo usado para a assinatura de chaves não pode ser fraco.
Para corrigir essa descoberta, substitua o algoritmo por um recomendado seguindo o guia Como usar opções avançadas de assinatura.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osService account key not rotated
Nome da categoria na API: SERVICE_ACCOUNT_KEY_NOT_ROTATED
Essa descoberta não está disponível para ativações no nível do projeto.
Uma chave de conta de serviço gerenciada pelo usuário não é rotacionada há mais de 90 dias.
Em geral, as chaves de conta de serviço gerenciadas pelo usuário precisam ser trocadas pelo menos a cada 90 dias para garantir que os dados não possam ser acessados com uma chave antiga que pode ter sido perdida, comprometida ou roubada. Para saber mais, consulte Girar chaves de conta de serviço para reduzir o risco de segurança causado por vazamentos de chaves.
Se você gerou o par de chave pública/privada, armazenou a chave privada em um módulo de segurança de hardware (HSM) e fez o upload da chave pública para o Google, talvez não seja necessário alternar a chave a cada 90 dias. Em vez disso, você pode girar a chave se acreditar que ela pode ter sido comprometida.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Contas de serviço no console Google Cloud .
Se necessário, selecione o projeto indicado na descoberta.
Na lista de contas de serviço, encontre a conta de serviço listada na descoberta.
Clique na guia Chaves e identifique a chave que você quer desativar.
Para desativar a chave, siga as instruções em Desativar uma chave de conta de serviço.
Opcional: depois de ter certeza de que a chave não está mais em uso, exclua a chave da conta de serviço.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre os
Service account role separation
Nome da categoria na API: SERVICE_ACCOUNT_ROLE_SEPARATION
Essa descoberta não está disponível para ativações no nível do projeto.
Um ou mais membros de sua organização têm múltiplas permissões de conta de serviço atribuídas. Nenhuma conta deve ter permissão de Administrador da conta de serviço simultaneamente com outras permissões da conta de serviço. Para saber mais sobre contas de serviço e os papéis disponíveis, consulte Contas de serviço.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página IAM no console Google Cloud .
Para cada membro listado na descoberta, faça o seguinte:
- Verifique se o papel foi herdado de um recurso ou pasta da organização checando a coluna Herança. Se a coluna contiver um link para um recurso pai, clique no link para acessar a página do IAM do recurso pai.
- Clique em Editar ao lado de uma conta principal.
- Para remover permissões, clique em Excluir ao lado de Administrador da conta de serviço. Se quiser remover todas as permissões da conta de serviço, clique em Excluir ao lado de todas as outras permissões.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osShielded VM disabled
Nome da categoria na API: SHIELDED_VM_DISABLED
A VM protegida está desativada nesta instância do Compute Engine.
As VM protegida são máquinas virtuais (VMs) no Google Cloud que têm a proteção aumentada por um conjunto de controles de segurança que ajudam a proteger contra rootkits e bootkits. As VMs protegidas ajudam a garantir que o carregador de inicialização e o firmware sejam assinados e verificados. Saiba mais sobre VM protegida.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias de VM no Google Cloud console.
Selecione a instância relacionada à descoberta do Security Health Analytics.
Na página Detalhes da instância carregada, clique em
Interromper.Depois que a instância for interrompida, clique em
Editar.Na seção VM protegida, alterne entre Ativar vTPM e Ativar o monitoramento de integridade para ativar a VM protegida.
Como opção, se você não usar drivers personalizados ou não assinados, ative também a Inicialização segura.
Clique em Save. A nova configuração aparecerá na página Detalhes da instância.
Clique em
Iniciar para iniciar a instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL CMEK disabled
Nome da categoria na API: SQL_CMEK_DISABLED
Uma instância de banco de dados SQL não está usando chaves de criptografia gerenciadas pelo cliente (CMEK).
Com a CMEK, as chaves que você cria e gerencia no Cloud KMS encapsulam as chaves que o Google usa para criptografar seus dados, oferecendo mais controle sobre o acesso a eles. Para mais informações, consulte as visões gerais da CMEK para o produto: Cloud SQL para MySQL, Cloud SQL para PostgreSQL ou Cloud SQL para SQL Server. As CMEK geram custos adicionais relacionados ao Cloud KMS.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
ExcluirPara criar uma nova instância com a CMEK ativada, siga as instruções para configurar a CMEK para o produto:
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL contained database authentication
Nome da categoria na API: SQL_CONTAINED_DATABASE_AUTHENTICATION
Uma instância de banco de dados Cloud SQL para SQL Server não tem a sinalização de banco de dados autenticação de banco de dados contido definida como Desativada.
A sinalização de autenticação de banco de dados contidos controla se é possível criar ou anexar bancos de dados contidos ao Database Engine. Um banco de dados contido inclui todas as configurações e metadados de banco de dados necessários para definir o banco de dados. Ele não tem dependências de configuração na instância do Database Engine em que o banco de dados está instalado.
Não é recomendável ativar essa sinalização porque:
- Os usuários podem se conectar ao banco de dados sem autenticação no nível do mecanismo de banco de dados.
- Isolar o banco de dados do Database Engine possibilita migrar o banco de dados para outra instância do SQL Server.
Os bancos de dados contidos enfrentam ameaças únicas que precisam ser compreendidas e atenuadas pelos administradores do SQL Server Database Engine. A maioria das ameaças é decorrente do processo de autenticação USUÁRIO COM SENHA, que transfere o limite de autenticação do nível do Database Engine para o nível do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do Database, defina a sinalização de autenticação do banco de dados contidocom o valor Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL cross DB ownership chaining
Nome da categoria na API: SQL_CROSS_DB_OWNERSHIP_CHAINING
Uma instância de banco de dados do Cloud SQL para SQL Server não tem a sinalização de banco de dados encadeamento de propriedade entre bancos de dados definida como Desativado.
A sinalização de encadeamento de propriedade entre bancos de dados permite controlar o encadeamento de propriedade entre bancos de dados no nível do banco de dados ou permite o encadeamento de propriedades de bancos de dados de todas as instruções do banco de dados.
A ativação dessa sinalização não é recomendada, a menos que todos os bancos de dados hospedados pela instância do SQL Server participem do encadeamento de propriedade entre bancos de dados e você esteja ciente das implicações de segurança dessa configuração.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização da cadeia de propriedade entre bancos de dados com o valor Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL external scripts enabled
Nome da categoria na API: SQL_EXTERNAL_SCRIPTS_ENABLED
Uma instância de banco de dados do Cloud SQL para SQL Server não tem a sinalização do banco de dados scripts externos ativados definida como Desativada.
Quando ativada, essa configuração permite a execução de scripts com determinadas extensões de linguagem remota. Como esse recurso pode afetar negativamente a segurança do sistema, recomendamos desativá-lo.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização dos scripts externos ativados com o valor Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL instance not monitored
Nome da categoria na API: SQL_INSTANCE_NOT_MONITORED
Essa descoberta não está disponível para ativações no nível do projeto.
As métricas e os alertas de registro não estão configurados para monitorar alterações na configuração da instância do Cloud SQL.
A configuração incorreta das opções de instâncias do SQL pode causar riscos de segurança. Desativar as opções de backup automático e alta disponibilidade pode afetar a continuidade de negócios e deixar de restringir as redes autorizadas pode aumentar a exposição a redes não confiáveis. O monitoramento de alterações na configuração da instância do SQL ajuda a reduzir o tempo necessário para detectar e corrigir configurações incorretas.
Para mais informações, consulte Visão geral de métricas com base em registros.
Dependendo da quantidade de informações, os custos do Cloud Monitoring podem ser significativos. Para entender o uso do serviço e os custos dele, consulte Preços do Google Cloud Observability.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Criar métrica
Acesse a página Métricas com base em registros no console do Google Cloud .
Clique em Criar métrica.
Em Tipo de Métrica, selecione Contador.
Em Detalhes:
- Defina um Nome da métrica de registro.
- Adicione uma descrição.
- Definir Unidades para 1.
Em Seleção de filtros, copie e cole o texto a seguir na caixa Criar filtro, substituindo o texto existente, se necessário:
protoPayload.methodName="cloudsql.instances.update" OR protoPayload.methodName="cloudsql.instances.create" OR protoPayload.methodName="cloudsql.instances.delete"
Clique em Criar métrica. Você verá uma confirmação.
Criar política de alertas
-
No console Google Cloud , acesse a página Métricas com base em registros:
Acessar Métricas com base em registros
Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.
- Na seção Métricas definidas pelo usuário, selecione a métrica que você criou na seção anterior.
-
Clique em Mais
e depois em Criar alerta com base na métrica.A caixa de diálogo Nova condição é aberta com as opções de transformação de dados e métricas pré-preenchidas.
- Clique em Próxima.
- Revise as configurações pré-preenchidas. Convém modificar o Valor do limite.
- Clique em Nome da condição e digite um nome para ela.
- Clique em Next.
Para adicionar notificações à sua política de alertas, clique em Canais de notificação. Na caixa de diálogo, selecione um ou mais canais de notificação no menu e clique em OK.
Para receber uma notificação quando os incidentes forem abertos ou fechados, marque Notificar sobre o fechamento de incidentes. Por padrão, as notificações são enviadas apenas quando incidentes são abertos.
- Opcional: Atualize a Duração do fechamento automático do incidente. Este campo determina quando o Monitoring fecha incidentes na ausência de dados de métrica.
- Opcional: clique em Documentação e adicione as informações que quer incluir em uma mensagem de notificação.
- Clique em Nome e digite um nome para a política de alertas.
- Clique em Criar política.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL local infile
Nome da categoria na API: SQL_LOCAL_INFILE
Uma instância de banco de dados do Cloud SQL para MySQL não tem a sinalização de banco de dados local_infile definida como Desativada. Devido a problemas de segurança associados à sinalização local_infile, ela precisa ser desativada. Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados local_infile com o valor Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log checkpoints disabled
Nome da categoria na API: SQL_LOG_CHECKPOINTS_DISABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_checkpoints definida como Ativada.
A ativação de log_checkpoints faz com que os pontos de verificação e os pontos de reinicialização sejam registrados no registro do servidor. Algumas estatísticas são incluídas nas mensagens de registro, incluindo o número de buffers gravados e o tempo gasto para gravá-los.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_checkpoints database flag com o valor Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log connections disabled
Nome da categoria na API: SQL_LOG_CONNECTIONS_DISABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_connections definida como Ativada.
A ativação da configuração log_connections faz com que as tentativas de conexão ao servidor sejam registradas, com a conclusão bem-sucedida da autenticação do cliente. Os registros podem ser úteis para solucionar problemas e confirmar tentativas de conexão incomuns no servidor.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_connections com o valor Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log disconnections disabled
Nome da categoria na API: SQL_LOG_DISCONNECTIONS_DISABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_disconnections definida como Ativado.
Ativar a configuração log_disconnections cria entradas de registro no final de cada sessão. Os registros são úteis para solucionar problemas e confirmar atividades incomuns em um período. Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do Database, defina a sinalização do banco de dados log_disconnections com o valor Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log duration disabled
Nome da categoria na API: SQL_LOG_DURATION_DISABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_duration definida como Ativado.
Quando log_duration está ativada, essa configuração faz com que o ambiente de execução e a duração de cada instrução concluída sejam registrados. Monitorar o tempo necessário para executar consultas pode ser essencial para identificar consultas lentas e resolver problemas no banco de dados.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_duration como Ativada.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log error verbosity
Nome da categoria na API: SQL_LOG_ERROR_VERBOSITY
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_error_verbosity definida como default ou verbose.
A flag log_error_verbosity controla a quantidade de detalhes nas mensagens registradas. Quanto maior o nível de detalhes, mais informações são gravadas nas mensagens. Recomendamos definir essa flag como default ou verbose.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Flags do banco de dados, defina a flag log_error_verbosity como default ou verbose.
Clique em Salvar. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log lock waits disabled
Nome da categoria na API: SQL_LOG_LOCK_WAITS_DISABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_lock_waits definida como Ativado.
A ativação da configuração log_lock_waits cria entradas de registro quando as sessões aguardam mais do que o tempo deadlock_timeout para adquirir um bloqueio. Os registros são úteis para determinar se as esperas de bloqueio estão causando um desempenho ruim.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do Database, defina a sinalização log_lock_waits do banco de dados com o valor Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log min duration statement enabled
Nome da categoria na API: SQL_LOG_MIN_DURATION_STATEMENT_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização log_min_duration_statement do banco de dados definida como -1.
A sinalização log_min_duration_statement faz com que as instruções SQL executadas por mais de um tempo especificado sejam registradas. Considere desativar essa configuração porque as instruções SQL podem conter informações confidenciais que não devem ser registradas. Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_min_duration_statement com o valor -1.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log min error statement
Nome da categoria na API: SQL_LOG_MIN_ERROR_STATEMENT
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização log_min_error_statement do banco de dados definida corretamente.
A sinalização log_min_error_statement controla se as instruções SQL que causam condições de erro são registradas nos registros do servidor. As instruções SQL da gravidade especificada ou superior são registradas com mensagens para as instruções de erro. Quanto maior a gravidade, menos mensagens são registradas.
Se log_min_error_statement não estiver definido como o valor pretendido, talvez as mensagens não sejam classificadas como mensagens de erro. Uma gravidade definida como baixa demais aumenta o número de mensagens e dificulta a localização de erros reais. Uma gravidade definida como muito alta pode fazer com que mensagens de erro reais não sejam registradas.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_min_error_statement com um dos valores recomendados a seguir, de acordo com a política de geração de registros da organização.
debug5
debug4
debug3
debug2
debug1
info
notice
warning
error
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log min error statement severity
Nome da categoria na API: SQL_LOG_MIN_ERROR_STATEMENT_SEVERITY
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização log_min_error_statement do banco de dados definida corretamente.
A sinalização log_min_error_statement controla se as instruções SQL que causam condições de erro são registradas nos registros do servidor. As instruções SQL sobre a gravidade especificada ou superior são registradas com mensagens para as instruções de erro. Quanto mais rigorosa a gravidade, menos mensagens são registradas.
Se log_min_error_statement não estiver definido como o valor pretendido, talvez as mensagens não sejam classificadas como mensagens de erro. Um conjunto de gravidade muito baixa poderia aumentar o número de mensagens e dificultar a localização de erros reais. Um nível de gravidade muito alto (muito rígido) pode fazer com que as mensagens de erro reais não sejam registradas.
Recomendamos que você defina essa sinalização como error ou uma opção mais rigorosa.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_min_error_statement com um dos valores recomendados a seguir, de acordo com a política de geração de registros da sua organização.
error
log
fatal
panic
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log min messages
Nome da categoria na API: SQL_LOG_MIN_MESSAGES
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_min_messages definida como o mínimo de warning.
A sinalização log_min_messages controla quais níveis de mensagem são gravados nos registros do servidor. Quanto maior a gravidade, menos mensagens são registradas. Definir o limite muito baixo pode resultar em aumento do tamanho e do comprimento do armazenamento de registros, dificultando a localização de erros reais.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Flags do banco de dados, defina a flag log_min_messages com um dos valores recomendados a seguir, de acordo com a política de geração de registros da organização.
debug5
debug4
debug3
debug2
debug1
info
notice
warning
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log executor stats enabled
Nome da categoria na API: SQL_LOG_EXECUTOR_STATS_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_executor_stats definida como Desativada.
Quando a flag log_executor_stats é ativada, as estatísticas de desempenho do executor são incluídas nos registros do PostgreSQL para cada consulta. Essa configuração pode ser útil para solucionar problemas, mas também pode aumentar significativamente a quantidade de registros e a sobrecarga de desempenho.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_executor_stats como Desativada.
Clique em Salvar. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log hostname enabled
Nome da categoria na API: SQL_LOG_HOSTNAME_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_hostname definida como Desativada.
Quando a sinalização log_hostname está ativada, o nome do host de conexão é registrado. Por padrão, as mensagens do registro de conexão mostram apenas o endereço IP. Essa configuração pode ser útil para resolver problemas. No entanto, isso pode gerar sobrecarga no desempenho do servidor, porque, para cada instrução registrada, a resolução DNS é necessária para converter um endereço IP em um nome de host.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_hostname como Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log parser stats enabled
Nome da categoria na API: SQL_LOG_PARSER_STATS_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_debugger_stats definida como Desativado.
Quando a sinalização log_debugger_stats é ativada, as estatísticas de desempenho do analisador são incluídas nos registros do PostgreSQL para cada consulta. Isso pode ser útil para solucionar problemas, mas também pode aumentar significativamente o número de registros e a sobrecarga de desempenho.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_parser_stats como Desativada.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log planner stats enabled
Nome da categoria na API: SQL_LOG_PLANNER_STATS_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_planner_stats definida como Desativada.
Quando a sinalização log_planner_stats é ativada, é usado um método bruto de criação de perfil para registrar as estatísticas de desempenho do planejador do PostgreSQL. Isso pode ser útil para solucionar problemas, mas também pode aumentar significativamente o número de registros e a sobrecarga de desempenho.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_planner_stats como Desativada.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log statement
Nome da categoria na API: SQL_LOG_STATEMENT
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a
flag de banco de dados log_statement definida como ddl
.
O valor dessa sinalização controla quais instruções SQL são registradas. A geração de registros ajuda
a solucionar problemas operacionais e permite a análise forense. Se essa sinalização
não estiver definida com o valor correto, as informações relevantes poderão ser ignoradas ou
estar ocultas em muitas mensagens. Recomenda-se um valor de ddl
(todas as instruções de definição de dados),
a menos que você receba outras orientações da política de geração de registros da organização.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Flags de banco de dados, defina a flag de banco de dados log_statement como
ddl
.Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log statement stats enabled
Nome da categoria na API: SQL_LOG_STATEMENT_STATS_ENABLED
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_statement_stats definida como Desativada.
Quando a sinalização log_statement_stats é ativada, as estatísticas de desempenho completas são incluídas nos registros do PostgreSQL para cada consulta. Essa configuração pode ser útil para solucionar problemas, mas também pode aumentar significativamente a quantidade de registros e a sobrecarga de desempenho.
Para mais informações, consulte Como configurar sinalizações do banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização do banco de dados log_statement_stats como Desativada.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL log temp files
Nome da categoria na API: SQL_LOG_TEMP_FILES
Uma instância de banco de dados do Cloud SQL para PostgreSQL não tem a sinalização de banco de dados log_temp_files definida como 0.
É possível criar arquivos temporários para classificações, hashes e resultados de consulta temporários. Definir a sinalização log_temp_files como 0 faz com que todas as informações dos arquivos temporários sejam registradas. Essa ação é útil para identificar possíveis problemas de desempenho. Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina a sinalização log_temp_files com o valor 0.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL no root password
Nome da categoria na API: SQL_NO_ROOT_PASSWORD
Uma instância de banco de dados MySQL não tem uma senha definida para a conta raiz. Você precisa adicionar uma senha à instância do banco de dados MySQL. Para mais informações, consulte Usuários do MySQL.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Na página Detalhes da instância carregada, selecione a guia Usuários.
Ao lado do usuário
root
, clique em Mais e depois selecione Alterar senha.Insira uma senha nova e forte e clique em OK.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL public IP
Nome da categoria na API: SQL_PUBLIC_IP
Um banco de dados do Cloud SQL tem um endereço IP público.
Para reduzir a superfície de ataque da organização, os bancos de dados do Cloud SQL não podem ter endereços IP públicos. Endereços IP privados oferecem maior segurança de rede e menor latência para o aplicativo.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
No menu à esquerda, clique em Conexões.
Clique na guia Rede e desmarque a caixa de seleção IP público.
Se a instância ainda não estiver configurada para usar um IP particular, consulte Como configurar o IP particular de uma instância atual.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL remote access enabled
Nome da categoria na API: SQL_REMOTE_ACCESS_ENABLED
Uma instância de banco de dados do Cloud SQL para SQL Server não tem a sinalização de banco de dados de acesso remoto definida como Desativada.
Quando ativada, essa configuração concede permissão para executar procedimentos armazenados no local a partir de servidores remotos ou procedimentos armazenados remotamente a partir do servidor local. Essa funcionalidade pode ser violada para lançar um ataque de negação de serviço (DoS) em servidores remotos ao descarregar o processamento de consultas em um destino. Para evitar abusos, recomendamos desativar essa configuração.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações, defina acesso remoto como Desativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL skip show database disabled
Nome da categoria na API: SQL_SKIP_SHOW_DATABASE_DISABLED
Uma instância de banco de dados do Cloud SQL para MySQL não tem a sinalização de banco de dados skip_show_database definida como Ativada.
Quando ativada, essa sinalização impede que os usuários usem a instrução SHOW DATABASES se não tiverem o privilégio SHOW DATABASES. Com essa configuração, os usuários sem permissão explícita não podem ver bancos de dados que pertencem a outros usuários. Recomendamos ativar essa sinalização.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações, defina skip_show_database como Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL trace flag 3625
Nome da categoria na API: SQL_TRACE_FLAG_3625
Uma instância de banco de dados do Cloud SQL para SQL Server não tem a sinalização do banco de dados 3625 (sinalizador de rastreamento) definida como Ativada.
Essa sinalização limita a quantidade de informações retornadas a usuários que não são
membros do papel de servidor fixo do administrador, mascarando os parâmetros de algumas
mensagens de erro usando asteriscos (******
). Para ajudar a evitar a
divulgação de informações confidenciais, recomendamos ativar essa sinalização.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, defina 3625 como Ativado.
Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL user connections configured
Nome da categoria na API: SQL_USER_CONNECTIONS_CONFIGURED
Uma instância de banco de dados do Cloud SQL para SQL Server tem a sinalização do banco de dados conexões do usuário configurada.
A opção conexões do usuário especifica o número máximo de conexões simultâneas do usuário que são permitidas em uma instância do SQL Server. Como é uma opção dinâmica (de autoconfiguração), o SQL Server ajusta o número máximo de conexões de usuário automaticamente conforme necessário, até o valor máximo permitido. O valor padrão é 0, o que significa que até 32.767 conexões de usuários são permitidas. Por esse motivo, não recomendamos configurar a sinalização do banco de dados conexões do usuário.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, ao lado de Conexões do usuário, clique em
Excluir.Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL user options configured
Nome da categoria na API: SQL_USER_OPTIONS_CONFIGURED
Uma instância de banco de dados do Cloud SQL para SQL Server tem a sinalização de banco de dados opções do usuário configurada.
Essa configuração substitui os valores padrão globais das opções SET para todos os usuários. Como os usuários e os aplicativos podem presumir que as opções SET do banco de dados padrão estão em uso, definir as opções do usuário pode causar resultados inesperados. Por esse motivo, não recomendamos configurar a sinalização do banco de dados opções do usuário.
Para mais informações, consulte Como configurar sinalizações de banco de dados.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Clique em
Editar.Na seção Sinalizações do banco de dados, ao lado de Opções do usuário, clique em
Excluir.Clique em Save. A nova configuração aparecerá na página Visão geral da instância.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSQL weak root password
Nome da categoria na API: SQL_WEAK_ROOT_PASSWORD
Uma instância de banco de dados MySQL tem uma senha fraca definida para a conta raiz. Você precisa definir uma senha forte para a instância. Para mais informações, consulte Usuários do MySQL.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Na página Detalhes da instância carregada, selecione a guia Usuários.
Ao lado do usuário
root
, clique em Mais e depois selecione Alterar senha.Insira uma senha nova e forte e clique em OK.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSSL not enforced
Nome da categoria na API: SSL_NOT_ENFORCED
Uma instância de banco de dados do Cloud SQL não requer que todas as conexões de entrada usem SSL.
Para evitar o vazamento de dados confidenciais em trânsito durante comunicações não criptografadas, todas as conexões de entrada com sua instância do banco de dados do SQL precisam usar o SSL. Saiba mais sobre Como configurar SSL/TLS.
Para remediar essa descoberta, permita apenas conexões SSL para suas instâncias SQL:
Acesse a página Instâncias do Cloud SQL no Google Cloud console.
Selecione a instância listada na descoberta do Security Health Analytics.
Na guia Conexões, clique em Permitir somente conexões SSL ou Exigir certificados do cliente confiáveis. Para mais informações, consulte Aplicar criptografia SSL/TLS.
Se você escolheu Exigir certificados do cliente confiáveis, crie um novo certificado do cliente. Para mais informações, consulte Criar um novo certificado do cliente.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osToo many KMS users
Nome da categoria na API: TOO_MANY_KMS_USERS
Limite o número de usuários principais que podem usar chaves criptográficas a três. Os papéis predefinidos a seguir concedem permissões para criptografar, descriptografar ou assinar dados usando chaves criptográficas:
roles/owner
roles/cloudkms.cryptoKeyEncrypterDecrypter
roles/cloudkms.cryptoKeyEncrypter
roles/cloudkms.cryptoKeyDecrypter
roles/cloudkms.signer
roles/cloudkms.signerVerifier
Para mais informações, consulte Permissões e papéis.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página chaves do Cloud KMS no console Google Cloud .
Clique no nome do keyring indicado na descoberta.
Clique no nome da chave indicada na descoberta.
Selecione a caixa ao lado da versão principal e clique em Mostrar painel de informações.
Reduza o número de principais com permissões para criptografar, descriptografar ou assinar dados para três ou menos. Para revogar permissões, clique em
Excluir ao lado de cada principal.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osUnconfirmed AppArmor profile
Nome da categoria na API: GKE_APP_ARMOR
Um contêiner pode ser explicitamente configurado para não ser confinado pelo AppArmor. Isso garante que nenhum perfil do AppArmor seja aplicado ao contêiner e, portanto, não seja restringido por um perfil. O controle de segurança preventivo desativado aumenta o risco de escape do contêiner.
Para corrigir essa descoberta, siga estas etapas nas cargas de trabalho afetadas:
- Abra o manifesto de cada carga de trabalho afetada.
- Defina os seguintes campos restritos para um dos valores permitidos.
Campos restritos
metadata.annotations["container.apparmor.security.beta.kubernetes.io/*"]
Valores permitidos
- falso
User managed service account key
Nome da categoria na API: USER_MANAGED_SERVICE_ACCOUNT_KEY
Um usuário gerencia uma chave de conta de serviço. As chaves da conta de serviço são um risco de segurança quando não são gerenciadas corretamente. Sempre que possível, escolha uma alternativa mais segura para as chaves de conta de serviço. Caso seja necessário autenticar com uma chave de conta de serviço, você será responsável pela segurança da chave privada e por outras operações descritas em Práticas recomendadas para gerenciar chaves de contas de serviço. Se não for possível criar uma chave de conta de serviço, a criação pode ser desativada para sua organização. Para mais informações, consulte Gerenciar recursos da organização com segurança por padrão.
Se você adquiriu a chave de conta de serviço de uma fonte externa, valide-a antes de usar. Para mais informações, consulte Requisitos de segurança para credenciais de origem externa.
Para corrigir essa descoberta, conclua as etapas a seguir:
Acesse a página Contas de serviço no console Google Cloud .
Se necessário, selecione o projeto indicado na descoberta.
Exclua as chaves da conta de serviço gerenciadas pelo usuário indicadas na descoberta se elas não forem usadas por nenhum aplicativo.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osWeak SSL policy
Nome da categoria na API: WEAK_SSL_POLICY
Uma instância do Compute Engine tem uma política de SSL fraca ou usa a política de SSL padrão do Google Cloud com TLS versão inferior a 1.2.
Os balanceadores de carga HTTPS e de proxy SSL usam políticas de SSL para determinar o protocolo e os pacotes de criptografia usados nas conexões TLS estabelecidas entre os usuários e a Internet. Essas conexões criptografam dados confidenciais para impedir que invasores mal-intencionados acessem esses dados. Com uma política de SSL fraca, os clientes que usam versões desatualizadas do TLS podem se conectar a um pacote ou protocolo de criptografia menos seguro. Para ver uma lista de pacotes de criptografia recomendados e desatualizados, acesse a página de parâmetros TLS do iana.org.
Para ativações no nível do projeto do nível Premium do Security Command Center, essa descoberta só estará disponível se o nível Standard estiver ativado na organização pai.
As etapas de correção para essa descoberta variam dependendo se ela foi acionada pelo uso de uma política de SSL padrão Google Cloud ou de uma política de SSL que permite um pacote de criptografia fraco ou uma versão de TLS mínima inferior a 1.2. Siga o procedimento abaixo que corresponde ao gatilho da descoberta.
Correção da política de SSL padrão Google Cloud
Acesse a página Proxies de destino no console do Google Cloud .
Encontre o proxy de destino indicado na descoberta e anote as regras de encaminhamento na coluna Em uso por.
Para criar uma nova política de SSL, consulte Como usar políticas de SSL. A política precisa ter uma versão mínima de TLS de 1.2 e um perfil moderno ou restrito.
Para usar um perfil Personalizado, verifique se os seguintes pacotes de criptografia estão desativados:
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
Aplique a política de SSL a cada regra de encaminhamento que você anotou.
Correção do pacote de criptografia fraco ou versão TLS de nível inferior
No console Google Cloud , acesse a página Políticas de SSL .
Encontre o balanceador de carga indicado na coluna Em uso por.
Clique no nome da política.
Clique em
Editar.Altere a Versão mínima do TLS para TLS 1.2 e Perfil para Moderno ou restrito.
Para usar um perfil Personalizado, verifique se os seguintes pacotes de criptografia estão desativados:
TLS_RSA_WITH_AES_128_GCM_SHA256
TLS_RSA_WITH_AES_256_GCM_SHA384
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osWeb UI enabled
Nome da categoria na API: WEB_UI_ENABLED
A IU da Web do GKE (painel) está ativada.
As contas de serviço do Kubernetes altamente privilegiadas apoiam a interface da Web do Kubernetes. Caso ela seja comprometida, a conta de serviço pode ser violada. Se você já estiver usando o console Google Cloud , a interface da Web do Kubernetes estende a superfície de ataque desnecessariamente. Saiba mais sobre Como desativar a interface da Web do Kubernetes.
Para corrigir essa descoberta, desative a interface da Web do Kubernetes:
Acesse a página Clusters do Kubernetes no console Google Cloud .
Clique no nome do cluster listado na descoberta do Security Health Analytics.
Clique em
Editar.Se a configuração do cluster tiver sido alterada recentemente, o botão de edição poderá ser desativado. Se você não conseguir editar as configurações do cluster, aguarde alguns minutos e tente novamente.
Clique em Complementos. A seção se expande para exibir os complementos disponíveis.
Na lista suspensa Painel do Kubernetes, selecione Desativado.
Clique em Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osWorkload Identity disabled
Nome da categoria na API: WORKLOAD_IDENTITY_DISABLED
A Identidade da carga de trabalho está desativada em um cluster do GKE.
A Identidade da carga de trabalho é a maneira recomendada de acessar os serviços do Google Cloud no GKE porque oferece melhores propriedades de segurança e capacidade de gerenciamento. Sua ativação evita que metadados de sistema potencialmente confidenciais das cargas de trabalho do usuário sejam executados no seu cluster. Saiba mais sobre ocultação de metadados.
Para corrigir essa descoberta, siga o guia para Ativar a identidade da carga de trabalho em um cluster.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCorrigir configurações incorretas da AWS
AWS Cloud Shell Full Access Restricted
Nome da categoria na API: ACCESS_AWSCLOUDSHELLFULLACCESS_RESTRICTED
O AWS CloudShell é uma maneira conveniente de executar comandos da CLI nos serviços da AWS. Uma política gerenciada do IAM ("AWSCloudShellFullAccess") oferece acesso total ao CloudShell, permitindo o upload e o download de arquivos entre o sistema local de um usuário e o ambiente do CloudShell. No ambiente do CloudShell, um usuário tem permissões de sudo e pode acessar a Internet. Portanto, é possível instalar um software de transferência de arquivos (por exemplo) e mover dados do Cloud Shell para servidores externos da Internet.
Recomendação: verifique se o acesso ao "AWSCloudShellFullAccess" está restrito Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Abra o console do IAM em https://console.aws.amazon.com/iam/
- No painel à esquerda, selecione "Políticas".
- Pesquise e selecione "AWSCloudShellFullAccess".
- Na guia "Entidades anexadas", marque a caixa de cada item e selecione "Desanexar".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAccess Keys Rotated Every 90 Days or Less
Nome da categoria na API: ACCESS_KEYS_ROTATED_90_DAYS_LESS
As chaves de acesso consistem em um ID de chave de acesso e uma chave de acesso secreta, que são usados para assinar solicitações programáticas feitas à AWS. Os usuários da AWS precisam das próprias chaves de acesso para fazer chamadas programáticas para a AWS na interface de linha de comando da AWS (CLI da AWS), nas ferramentas para Windows PowerShell, nos SDKs da AWS ou em chamadas HTTP diretas usando as APIs para serviços individuais da AWS. Recomendamos que todas as chaves de acesso sejam trocadas regularmente.
Recomendação: verifique se as chaves de acesso são alternadas a cada 90 dias ou menos Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Acesse o console de gerenciamento (https://console.aws.amazon.com/iam)
- Clique em
Users
- Clique em
Security Credentials
- Como administrador
- Clique emMake Inactive
para chaves que não foram rotacionadas em90
dias - Como um usuário do IAM
- Clique emMake Inactive
ouDelete
para chaves que não foram trocadas ou usadas em90
dias - Clique em
Create Access Key
- Atualizar a chamada programática com novas credenciais de chave de acesso
CLI da AWS
- Enquanto a primeira chave de acesso ainda estiver ativa, crie uma segunda, que fica ativa por padrão. Execute este comando:
aws iam create-access-key
Neste ponto, o usuário tem duas chaves de acesso ativas.
- Atualize todos os aplicativos e ferramentas para usar a nova chave de acesso.
- Determine se a primeira chave de acesso ainda está em uso com este comando:
aws iam get-access-key-last-used
- Uma abordagem é esperar vários dias e verificar se a chave de acesso antiga foi usada antes de continuar.
Mesmo que a etapa 3 indique que a chave antiga não está sendo usada, é recomendável não excluir imediatamente a primeira chave de acesso. Em vez disso, mude o estado da primeira chave de acesso para "Inativo" usando este comando:
aws iam update-access-key
-
Use apenas a nova chave de acesso para confirmar se os aplicativos estão funcionando. Todos os aplicativos e ferramentas que ainda usam a chave de acesso original vão parar de funcionar porque não terão mais acesso aos recursos da AWS. Se você encontrar um aplicativo ou ferramenta assim, mude o estado dele de volta para "Ativo" para reativar a primeira chave de acesso. Em seguida, volte à etapa 2 e atualize o aplicativo para usar a nova chave.
-
Depois de aguardar um período para garantir que todos os aplicativos e ferramentas foram atualizados, exclua a primeira chave de acesso com este comando:
aws iam delete-access-key
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAll Expired Ssl Tls Certificates Stored Aws Iam Removed
Nome da categoria na API: ALL_EXPIRED_SSL_TLS_CERTIFICATES_STORED_AWS_IAM_REMOVED
Para ativar conexões HTTPS com seu site ou aplicativo na AWS, você precisa de um certificado de servidor SSL/TLS. É possível usar o ACM ou o IAM para armazenar e implantar certificados de servidor.
Use o IAM como um gerenciador de certificados apenas quando for necessário oferecer suporte a conexões HTTPS em uma região que não é compatível com o ACM. O IAM criptografa suas chaves privadas com segurança e armazena a versão criptografada no armazenamento de certificados SSL do IAM. O IAM aceita a implantação de certificados de servidor em todas as regiões, mas você precisa obter o certificado de um provedor externo para usar com a AWS. Não é possível fazer upload de um certificado da ACM para o IAM. Além disso, não é possível gerenciar seus certificados no console do IAM.
Console da AWS
No momento, não é possível remover certificados expirados usando o AWS Management Console. Para excluir certificados SSL/TLS armazenados no IAM usando a API da AWS, use a interface de linha de comando (CLI).
CLI da AWS
Para excluir um certificado expirado, execute o seguinte comando, substituindo CERTIFICATE_NAME
pelo nome do certificado a ser excluído:
aws iam delete-server-certificate --server-certificate-name <CERTIFICATE_NAME>
Quando o comando anterior é bem-sucedido, ele não retorna nenhuma saída.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAutoscaling Group Elb Healthcheck Required
Nome da categoria na API: AUTOSCALING_GROUP_ELB_HEALTHCHECK_REQUIRED
Isso verifica se os grupos do Auto Scaling associados a um balanceador de carga estão usando verificações de integridade do Elastic Load Balancing.
Isso garante que o grupo possa determinar a integridade de uma instância com base em testes adicionais fornecidos pelo balanceador de carga. O uso de verificações de integridade do Elastic Load Balancing pode ajudar a manter a disponibilidade de aplicativos que usam grupos de escalonamento automático do EC2.
Recomendação: verifica se todos os grupos de escalonamento automático associados a um balanceador de carga usam verificações de integridade Para corrigir essa descoberta, siga estas etapas:Console da AWS
Para ativar as verificações de integridade do Elastic Load Balancing
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, em "Auto Scaling", escolha "Grupos do Auto Scaling".
- Marque a caixa de seleção do seu grupo.
- Escolha "Editar".
- Em "Verificações de integridade", escolha "ELB" em "Tipo de verificação de integridade".
- Em "Período de carência da verificação de integridade", insira 300.
- Na parte de baixo da página, escolha "Atualizar".
Para mais informações sobre como usar um balanceador de carga com um grupo de escalonamento automático, consulte o Guia do usuário do escalonamento automático da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAuto Minor Version Upgrade Feature Enabled Rds Instances
Nome da categoria na API: AUTO_MINOR_VERSION_UPGRADE_FEATURE_ENABLED_RDS_INSTANCES
Verifique se as instâncias de banco de dados do RDS têm a flag de upgrade automático de versão secundária ativada para receber upgrades automáticos do mecanismo durante a janela de manutenção especificada. Assim, as instâncias do RDS podem receber os novos recursos, correções de bugs e patches de segurança para os mecanismos de banco de dados.
Recomendação: verifique se o recurso de upgrade automático de versão secundária está ativado para instâncias do RDS Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS e acesse o painel do RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação à esquerda, clique em
Databases
. - Selecione a instância do RDS que você quer atualizar.
- Clique no botão
Modify
no canto superior direito. - Na página
Modify DB Instance: <instance identifier>
, na seçãoMaintenance
, selecioneAuto minor version upgrade
e clique no botão de opçãoYes
. - Na parte de baixo da página, clique em
Continue
, marque "Aplicar imediatamente" para aplicar as mudanças imediatamente ou selecioneApply during the next scheduled maintenance window
para evitar tempo de inatividade. - Confira as mudanças e clique em
Modify DB Instance
. O status da instância deve mudar de "disponível" para "em modificação" e voltar para "disponível". Depois que o recurso for ativado, o statusAuto Minor Version Upgrade
vai mudar paraYes
.
CLI da AWS
- Execute o comando
describe-db-instances
para listar todos os nomes de instâncias de banco de dados do RDS disponíveis na região da AWS selecionada:
aws rds describe-db-instances --region <regionName> --query 'DBInstances[*].DBInstanceIdentifier'
- A resposta ao comando vai retornar o identificador de cada instância de banco de dados.
- Execute o comando
modify-db-instance
para modificar a configuração da instância do RDS selecionada. Esse comando vai aplicar as mudanças imediatamente. Remova--apply-immediately
para aplicar as mudanças durante a próxima janela de manutenção programada e evitar tempo de inatividade:
aws rds modify-db-instance --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --auto-minor-version-upgrade --apply-immediately
- A resposta ao comando deve revelar os novos metadados de configuração da instância do RDS e verificar o valor do parâmetro
AutoMinorVersionUpgrade
. - Execute o comando
describe-db-instances
para verificar se o recurso de upgrade automático de versão secundária foi ativado:
aws rds describe-db-instances --region <regionName> --db-instance-identifier <dbInstanceIdentifier> --query 'DBInstances[*].AutoMinorVersionUpgrade'
- A resposta ao comando precisa retornar o status atual do recurso definido como
true
. O recurso éenabled
, e os upgrades secundários do mecanismo serão aplicados à instância do RDS selecionada.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAws Config Enabled All Regions
Nome da categoria na API: AWS_CONFIG_ENABLED_ALL_REGIONS
O AWS Config é um serviço da Web que realiza o gerenciamento de configuração dos recursos compatíveis da AWS na sua conta e entrega arquivos de registro. As informações registradas incluem o item de configuração (recurso da AWS), as relações entre itens de configuração (recursos da AWS) e as mudanças de configuração entre recursos. Recomendamos que o AWS Config seja ativado em todas as regiões.
Recomendação: verifique se o AWS Config está ativado em todas as regiões Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Selecione a região que você quer focar no canto superior direito do console
- Clique em "Serviços".
- Clique em "Configuração".
- Se um gravador do Config estiver ativado nessa região, acesse a página "Configurações" no menu de navegação à esquerda. Se um gravador de configuração ainda não estiver ativado nessa região, selecione "Começar".
- Selecione "Registrar todos os recursos compatíveis nesta região".
- Escolha incluir recursos globais (recursos do IAM)
- Especifique um bucket do S3 na mesma conta ou em outra conta gerenciada da AWS.
- Crie um tópico do SNS na mesma conta da AWS ou em outra conta gerenciada da AWS.
CLI da AWS
- Verifique se há um bucket do S3, um tópico do SNS e um papel do IAM adequados, de acordo com os pré-requisitos do serviço AWS Config.
- Execute este comando para criar um gravador de configuração:
aws configservice put-configuration-recorder --configuration-recorder name=default,roleARN=arn:aws:iam::012345678912:role/myConfigRole --recording-group allSupported=true,includeGlobalResourceTypes=true
- Crie um arquivo de configuração de canal de entrega localmente que especifique os atributos do canal, preenchidos com base nos pré-requisitos definidos anteriormente:
{
"name": "default",
"s3BucketName": "my-config-bucket",
"snsTopicARN": "arn:aws:sns:us-east-1:012345678912:my-config-notice",
"configSnapshotDeliveryProperties": {
"deliveryFrequency": "Twelve_Hours"
}
}
- Execute este comando para criar um novo canal de entrega, referenciando o arquivo de configuração JSON criado na etapa anterior:
aws configservice put-delivery-channel --delivery-channel file://deliveryChannel.json
- Inicie o gravador de configuração executando o seguinte comando:
aws configservice start-configuration-recorder --configuration-recorder-name default
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osAws Security Hub Enabled
Nome da categoria na API: AWS_SECURITY_HUB_ENABLED
O Security Hub coleta dados de segurança de contas, serviços e produtos de parceiros terceirizados compatíveis da AWS. Ele ajuda você a analisar suas tendências de segurança e identificar os problemas de segurança de maior prioridade. Quando você ativa o Security Hub, ele começa a consumir, agregar, organizar e priorizar descobertas dos serviços da AWS que você ativou, como o Amazon GuardDuty, o Amazon Inspector e o Amazon Macie. Também é possível ativar integrações com produtos de segurança de parceiros da AWS.
Recomendação: verifique se a Central de Segurança da AWS está ativada Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Use as credenciais da identidade do IAM para fazer login no console do Security Hub.
- Ao abrir o console da Central de Segurança pela primeira vez, escolha "Ativar a Central de Segurança da AWS".
- Na página de boas-vindas, os "Padrões de segurança" listam os padrões compatíveis com o Security Hub.
- Escolha "Ativar o Security Hub".
CLI da AWS
- Execute o comando enable-security-hub. Para ativar os padrões padrão, inclua
--enable-default-standards
.
aws securityhub enable-security-hub --enable-default-standards
- Para ativar o hub de segurança sem os padrões padrão, inclua
--no-enable-default-standards
.
aws securityhub enable-security-hub --no-enable-default-standards
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudtrail Logs Encrypted Rest Using Kms Cmks
Nome da categoria na API: CLOUDTRAIL_LOGS_ENCRYPTED_REST_USING_KMS_CMKS
O AWS CloudTrail é um serviço da Web que registra chamadas de API da AWS para uma conta e disponibiliza esses registros a usuários e recursos de acordo com as políticas do IAM. O AWS Key Management Service (KMS) é um serviço gerenciado que ajuda a criar e controlar as chaves de criptografia usadas para criptografar dados da conta e usa módulos de segurança de hardware (HSMs) para proteger a segurança das chaves de criptografia. Os registros do CloudTrail podem ser configurados para aproveitar a criptografia do lado do servidor (SSE) e as chaves mestras criadas pelo cliente (CMK) do KMS para proteger ainda mais os registros do CloudTrail. Recomendamos que o CloudTrail seja configurado para usar SSE-KMS.
Recomendação: verifique se os registros do CloudTrail são criptografados em repouso usando CMKs do KMS Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e abra o console do CloudTrail em https://console.aws.amazon.com/cloudtrail
- No painel de navegação à esquerda, escolha
Trails
. - Clique em um programa
- Na seção
S3
, clique no botão de edição (ícone de lápis). - Clique em
Advanced
. - Selecione uma CMK no menu suspenso
KMS key Id
. Observações: a CMK precisa estar na mesma região do bucket do S3. Além disso, é necessário aplicar uma política de chave do KMS à CMK selecionada para que o CloudTrail como serviço criptografe e descriptografe arquivos de registros usando a CMK fornecida.
As etapas para editar a política de chave CMK selecionada estão aqui. - Clique em
Save
. - Você vai receber uma mensagem de notificação informando que é necessário ter permissões de descriptografia na chave do KMS especificada para descriptografar arquivos de registros.
- Clique em
Yes
.
CLI da AWS
aws cloudtrail update-trail --name <trail_name> --kms-id <cloudtrail_kms_key>
aws kms put-key-policy --key-id <cloudtrail_kms_key> --policy <cloudtrail_kms_key_policy>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudtrail Log File Validation Enabled
Nome da categoria na API: CLOUDTRAIL_LOG_FILE_VALIDATION_ENABLED
A validação de arquivos de registro do CloudTrail cria um arquivo de resumo assinado digitalmente que contém um hash de cada registro gravado pelo CloudTrail no S3. Esses arquivos de resumo podem ser usados para determinar se um arquivo de registro foi alterado, excluído ou permaneceu inalterado depois que o CloudTrail entregou o registro. Recomendamos que a validação de arquivos seja ativada em todos os CloudTrails.
Recomendação: verifique se a validação do arquivo de registros do CloudTrail está ativada Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS e abra o console do IAM em https://console.aws.amazon.com/cloudtrail
- Clique em
Trails
no painel de navegação à esquerda. - Clique no rastro do destino
- Na seção
General details
, clique emedit
. - Na seção
Advanced settings
- Marque a caixa de seleção em
Log file validation
- Clique em
Save changes
.
CLI da AWS
aws cloudtrail update-trail --name <trail_name> --enable-log-file-validation
A validação periódica de registros usando esses resumos pode ser feita executando o seguinte comando:
aws cloudtrail validate-logs --trail-arn <trail_arn> --start-time <start_time> --end-time <end_time>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudtrail Trails Integrated Cloudwatch Logs
Nome da categoria na API: CLOUDTRAIL_TRAILS_INTEGRATED_CLOUDWATCH_LOGS
O AWS CloudTrail é um serviço da Web que registra chamadas de API da AWS feitas em uma determinada conta da AWS. As informações registradas incluem a identidade do autor da chamada de API, o horário da chamada de API, o endereço IP de origem do autor da chamada de API, os parâmetros de solicitação e os elementos de resposta retornados pelo serviço da AWS. O CloudTrail usa o Amazon S3 para armazenamento e entrega de arquivos de registro, portanto, os arquivos são armazenados de forma durável. Além de capturar registros do CloudTrail em um bucket do S3 especificado para análise de longo prazo, é possível fazer análises em tempo real configurando o CloudTrail para enviar registros ao CloudWatch Logs. Para uma trilha ativada em todas as regiões de uma conta, o CloudTrail envia arquivos de registro de todas essas regiões para um grupo de registros do CloudWatch Logs. Recomendamos que os registros do CloudTrail sejam enviados para os registros do CloudWatch.
Observação: o objetivo desta recomendação é garantir que a atividade da conta da AWS seja capturada, monitorada e alertada adequadamente. O CloudWatch Logs é uma maneira nativa de fazer isso usando os serviços da AWS, mas não impede o uso de uma solução alternativa.
Recomendação: verifique se as trilhas do CloudTrail estão integradas aos registros do CloudWatch Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console do CloudTrail em
https://console.aws.amazon.com/cloudtrail/
- Selecione o
Trail
que precisa ser atualizado. - Role a tela para baixo até
CloudWatch Logs
. - Clique em
Edit
. - Em
CloudWatch Logs
, clique na caixaEnabled
. - Em
Log Group
, escolha um novo grupo de registros ou selecione um existente. - Edite o
Log group name
para corresponder ao CloudTrail ou escolha o grupo do CloudWatch atual. - Em
IAM Role
, escolha "Novo" ou selecione um já criado. - Edite o
Role name
para corresponder ao CloudTrail ou escolha a função do IAM atual. - Clique em "Salvar alterações".
CLI da AWS
aws cloudtrail update-trail --name <trail_name> --cloudwatch-logs-log-group-arn <cloudtrail_log_group_arn> --cloudwatch-logs-role-arn <cloudtrail_cloudwatchLogs_role_arn>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudwatch Alarm Action Check
Nome da categoria na API: CLOUDWATCH_ALARM_ACTION_CHECK
Verifica se o Amazon CloudWatch tem ações definidas quando um alarme faz a transição entre os estados "OK", "ALARM" e "INSUFFICIENT_DATA".
Configurar ações para o estado ALARM nos alarmes do Amazon CloudWatch é muito importante para acionar uma resposta imediata quando as métricas monitoradas violam os limites.
Isso garante a resolução rápida de problemas, reduz o tempo de inatividade e permite a correção automatizada, mantendo a integridade do sistema e evitando interrupções.
Os alarmes têm pelo menos uma ação.
Os alarmes têm pelo menos uma ação quando passam para o estado "INSUFFICIENT_DATA" de qualquer outro estado.
(Opcional) Os alarmes têm pelo menos uma ação quando passam para o estado "OK" de qualquer outro estado.
Console da AWS
Para configurar ações de ALARME para seus alarmes do Amazon CloudWatch, faça o seguinte:
- Abra o console do Amazon CloudWatch em https://console.aws.amazon.com/cloudwatch/.
- No painel de navegação, em "Alarmes", selecione "Todos os alarmes".
- Escolha o alarme do Amazon CloudWatch que você quer modificar, selecione "Ações" e clique em "Editar".
- À esquerda, escolha "Etapa 2: configurar ações (opcional)".
- Para o "Gatilho de estado do alarme", selecione a opção "Em alarme" para configurar uma ação baseada em ALARME.
- Para enviar uma notificação a um tópico do SNS recém-criado, selecione "Criar novo tópico".
- Na caixa "Criar novo tópico...", especifique um nome exclusivo para o tópico do SNS.
- Na caixa "Endpoints de e-mail que vão receber a notificação…", especifique um ou mais endereços de e-mail.
- Em seguida, selecione "Criar tópico" para criar o tópico necessário do Amazon SNS.
- Na parte de baixo à direita, selecione "Próxima", "Próxima" e escolha "Atualizar alarme" para aplicar as mudanças.
- Abra seu cliente de e-mail e, na mensagem das notificações da AWS, clique no link para confirmar sua inscrição no tópico do SNS em questão.
- Repita as etapas de 4 a 11 e, na etapa 5, escolha "OK" e "Dados insuficientes" para o "Gatilho de estado do alarme" e configure ações para esses dois estados.
- Repita o processo para todos os outros alarmes do CloudWatch na mesma região da AWS.
- Repita o processo para todos os outros alarmes do CloudWatch em todas as outras regiões da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudwatch Log Group Encrypted
Nome da categoria na API: CLOUDWATCH_LOG_GROUP_ENCRYPTED
Essa verificação garante que os registros do CloudWatch estejam configurados com o KMS.
Os dados do grupo de registros são sempre criptografados no CloudWatch Logs. Por padrão, o CloudWatch Logs usa a criptografia do lado do servidor para os dados de registro em repouso. Como alternativa, use o serviço de gerenciamento de chaves da AWS para essa criptografia. Nesse caso, a criptografia é feita usando uma chave do AWS KMS. A criptografia usando o AWS KMS é ativada no nível do grupo de registros, associando uma chave do KMS a um grupo de registros, seja ao criar o grupo ou depois que ele já existe.
Recomendação: verifica se todos os grupos de registros nos Registros do Amazon CloudWatch estão criptografados com o KMSPara mais informações, consulte Criptografar dados de registros no CloudWatch Logs usando o AWS Key Management Service no guia do usuário do Amazon CloudWatch.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCloudTrail CloudWatch Logs Enabled
Nome da categoria na API: CLOUD_TRAIL_CLOUD_WATCH_LOGS_ENABLED
Esse controle verifica se as trilhas do CloudTrail estão configuradas para enviar registros ao CloudWatch Logs. O controle falha se a propriedade "CloudWatchLogsLogGroupArn" da trilha estiver vazia.
O CloudTrail registra chamadas de API da AWS feitas em uma determinada conta. As informações gravadas incluem o seguinte:
- A identidade do autor da chamada de API
- O horário da chamada de API
- O endereço IP de origem do autor da chamada da API
- Parâmetros da solicitação
- Os elementos de resposta retornados pelo serviço da AWS
O CloudTrail usa o Amazon S3 para armazenamento e entrega de arquivos de registro. É possível capturar registros do CloudTrail em um bucket do S3 especificado para análise de longo prazo. Para fazer análises em tempo real, configure o CloudTrail para enviar registros ao CloudWatch Logs.
Para uma trilha ativada em todas as regiões de uma conta, o CloudTrail envia arquivos de registro de todas essas regiões para um grupo de registros do CloudWatch Logs.
O Security Hub recomenda que você envie registros do CloudTrail para o CloudWatch Logs. Essa recomendação tem como objetivo garantir que a atividade da conta seja capturada, monitorada e alertada adequadamente. É possível usar o CloudWatch Logs para configurar isso com seus serviços da AWS. Essa recomendação não impede o uso de uma solução diferente.
O envio de registros do CloudTrail para o CloudWatch Logs facilita o registro de atividades em tempo real e históricas com base no usuário, na API, no recurso e no endereço IP. Você pode usar essa abordagem para definir alarmes e notificações de atividades anômalas ou sensíveis na conta.
Recomendação: verifica se todas as trilhas do CloudTrail estão configuradas para enviar registros ao AWS CloudWatchPara integrar o CloudTrail ao CloudWatch Logs, consulte Enviar eventos para o CloudWatch Logs no Guia do usuário do AWS CloudTrail.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNo AWS Credentials in CodeBuild Project Environment Variables
Nome da categoria na API: CODEBUILD_PROJECT_ENVVAR_AWSCRED_CHECK
Isso verifica se o projeto contém as variáveis de ambiente AWS_ACCESS_KEY_ID
e AWS_SECRET_ACCESS_KEY
.
As credenciais de autenticação AWS_ACCESS_KEY_ID
e AWS_SECRET_ACCESS_KEY
nunca devem ser armazenadas em texto simples, porque isso pode levar à exposição não intencional de dados e ao acesso não autorizado.
Para remover variáveis de ambiente de um projeto do CodeBuild, consulte Mudar as configurações de um projeto de build no AWS CodeBuild no guia do usuário do AWS CodeBuild. Verifique se nada está selecionado em "Variáveis de ambiente".
É possível armazenar variáveis de ambiente com valores sensíveis no AWS Systems Manager Parameter Store ou no AWS Secrets Manager e depois recuperá-las da especificação de build. Para instruções, consulte a caixa marcada como "Importante" na seção "Ambiente" do Guia do usuário do AWS CodeBuild.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCodebuild Project Source Repo Url Check
Nome da categoria na API: CODEBUILD_PROJECT_SOURCE_REPO_URL_CHECK
Verifica se um URL de repositório de origem do Bitbucket de um projeto do AWS CodeBuild contém tokens de acesso pessoal ou um nome de usuário e senha. O controle falha se o URL do repositório de origem do Bitbucket contiver tokens de acesso pessoal ou um nome de usuário e uma senha.
As credenciais de login não devem ser armazenadas ou transmitidas em texto simples nem aparecer no URL do repositório de origem. Em vez de tokens de acesso pessoal ou credenciais de login, acesse seu provedor de origem no CodeBuild e mude o URL do repositório de origem para conter apenas o caminho até o local do repositório do Bitbucket. O uso de tokens de acesso pessoal ou credenciais de login pode resultar em exposição não intencional de dados ou acesso não autorizado.
Recomendação: verifica se todos os projetos que usam o github ou bitbucket como fonte usam o oauthVocê pode atualizar seu projeto do CodeBuild para usar o OAuth.
Para remover a autenticação básica / token de acesso pessoal (GitHub) da origem do projeto do CodeBuild
- Abra o console do CodeBuild em https://console.aws.amazon.com/codebuild/.
- Escolha o projeto de build que contém tokens de acesso pessoal ou um nome de usuário e uma senha.
- Em "Editar", escolha "Origem".
- Escolha "Desconectar do GitHub / Bitbucket".
- Escolha "Conectar usando OAuth" e depois "Conectar ao GitHub / Bitbucket".
- Quando solicitado, escolha autorizar conforme necessário.
- Reconfigure o URL do repositório e outras configurações, conforme necessário.
- Escolha "Atualizar origem".
Para mais informações, consulte Exemplos baseados em casos de uso do CodeBuild no Guia do usuário do AWS CodeBuild.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osCredentials Unused 45 Days Greater Disabled
Nome da categoria na API: CREDENTIALS_UNUSED_45_DAYS_GREATER_DISABLED
Os usuários do IAM da AWS podem acessar recursos da AWS usando diferentes tipos de credenciais, como senhas ou chaves de acesso. Recomendamos que todas as credenciais não usadas há 45 dias ou mais sejam desativadas ou removidas.
Recomendação: verifique se as credenciais não usadas há 45 dias ou mais estão desativadas Para corrigir essa descoberta, siga estas etapas:Console da AWS
Faça o seguinte para gerenciar a senha não utilizada (acesso ao console do usuário do IAM):
- Faça login no console de gerenciamento da AWS:
- Clique em
Services
. - Clique em
IAM
. - Clique em
Users
- Clique em
Security Credentials
- Selecionar usuários com
Console last sign-in
maior que 45 dias - Clique em
Security credentials
. - Na seção
Sign-in credentials
,Console password
clique emManage
- Em "Acesso ao console", selecione
Disable
10.Clique emApply
Faça o seguinte para desativar as chaves de acesso:
- Faça login no console de gerenciamento da AWS:
- Clique em
Services
. - Clique em
IAM
. - Clique em
Users
- Clique em
Security Credentials
- Selecione as chaves de acesso com mais de 45 dias e que foram usadas e
- Clique emMake Inactive
- Selecione as chaves de acesso com mais de 45 dias e que não foram usadas e
- Clique no X paraDelete
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDefault Security Group Vpc Restricts All Traffic
Nome da categoria na API: DEFAULT_SECURITY_GROUP_VPC_RESTRICTS_ALL_TRAFFIC
Uma VPC vem com um grupo de segurança padrão cujas configurações iniciais negam todo o tráfego de entrada, permitem todo o tráfego de saída e permitem todo o tráfego entre instâncias atribuídas ao grupo de segurança. Se você não especificar um grupo de segurança ao iniciar uma instância, ela será atribuída automaticamente a esse grupo de segurança padrão. Os grupos de segurança fornecem filtragem com estado do tráfego de rede de entrada/saída para recursos da AWS. Recomendamos que o grupo de segurança padrão restrinja todo o tráfego.
A VPC padrão em cada região precisa ter o grupo de segurança padrão atualizado para estar em conformidade. Todas as VPCs recém-criadas vão conter automaticamente um grupo de segurança padrão que precisa de correção para obedecer a essa recomendação.
OBSERVAÇÃO:ao implementar essa recomendação, a geração de registros de fluxo da VPC é muito útil para determinar o acesso à porta com privilégio mínimo necessário para que os sistemas funcionem corretamente, porque ela pode registrar todas as aceitações e rejeições de pacotes que ocorrem nos grupos de segurança atuais. Isso reduz drasticamente a principal barreira para a engenharia de privilégio mínimo: descobrir as portas mínimas necessárias pelos sistemas no ambiente. Mesmo que a recomendação de registro de fluxo da VPC neste comparativo não seja adotada como uma medida de segurança permanente, ela deve ser usada durante qualquer período de descoberta e engenharia para grupos de segurança com privilégios mínimos.
Recomendação: verifique se o grupo de segurança padrão de cada VPC restringe todo o tráfegoParticipantes do grupo de segurança
Siga estas etapas para implementar o estado prescrito:
- Identificar recursos da AWS que existem no grupo de segurança padrão
- Crie um conjunto de grupos de segurança de privilégio mínimo para esses recursos.
- Coloque os recursos nesses grupos de segurança
- Remova os recursos observados na etapa 1 do grupo de segurança padrão.
Estado do grupo de segurança
- Faça login no console de gerenciamento da AWS em https://console.aws.amazon.com/vpc/home
- Repita as próximas etapas para todas as VPCs, incluindo a VPC padrão em cada região da AWS:
- No painel à esquerda, clique em
Security Groups
- Para cada grupo de segurança padrão, faça o seguinte:
- Selecione o grupo de segurança
default
. - Clique na guia
Inbound Rules
. - Remover regras de entrada
- Clique na guia
Outbound Rules
. - Remover todas as regras de saída
Recomendado:
Os grupos do IAM permitem editar o campo "nome". Depois de corrigir as regras de grupos padrão para todas as VPCs em todas as regiões, edite esse campo para adicionar um texto semelhante a "NÃO USE. NÃO ADICIONE REGRAS"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDms Replication Not Public
Nome da categoria na API: DMS_REPLICATION_NOT_PUBLIC
Verifica se as instâncias de replicação do AWS DMS são públicas. Para isso, ele examina o valor do campo PubliclyAccessible
.
Uma instância de replicação particular tem um endereço IP privado que não pode ser acessado fora da rede de replicação. Uma instância de replicação precisa ter um endereço IP particular quando os bancos de dados de origem e de destino estão na mesma rede. A rede também precisa estar conectada à VPC da instância de replicação usando uma VPN, o AWS Direct Connect ou o peering de VPC. Para saber mais sobre instâncias de replicação públicas e privadas, consulte Instâncias de replicação públicas e privadas no Guia do usuário do AWS Database Migration Service.
Também é necessário garantir que o acesso à configuração da instância do AWS DMS seja limitado apenas a usuários autorizados. Para isso, restrinja as permissões do IAM dos usuários para modificar as configurações e os recursos do AWS DMS.
Recomendação: verifica se as instâncias de replicação do AWS Database Migration Service são públicasNão é possível mudar a configuração de acesso público de uma instância de replicação do DMS depois de criá-la. Para mudar a configuração de acesso público, exclua a instância atual e crie outra. Não selecione a opção "Acessível publicamente".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDo Setup Access Keys During Initial User Setup All Iam Users Console
Nome da categoria na API: DO_SETUP_ACCESS_KEYS_DURING_INITIAL_USER_SETUP_ALL_IAM_USERS_CONSOLE
Por padrão, o console da AWS não marca nenhuma caixa de seleção ao criar um usuário do IAM. Ao criar as credenciais de usuário do IAM, você precisa determinar o tipo de acesso necessário.
Acesso programático: o usuário do IAM pode precisar fazer chamadas de API, usar a CLI da AWS ou usar as ferramentas para Windows PowerShell. Nesse caso, crie uma chave de acesso (ID da chave de acesso e uma chave de acesso secreta) para esse usuário.
Acesso ao Console de Gerenciamento da AWS: se o usuário precisar acessar o Console de Gerenciamento da AWS, crie uma senha para ele.
Recomendação: não configure chaves de acesso durante a configuração inicial de usuário para todos os usuários do IAM que têm uma senha para o console Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS:
- Clique em
Services
. - Clique em
IAM
. - Clique em
Users
- Clique em
Security Credentials
- Como administrador
- Clique no X(Delete)
para chaves criadas ao mesmo tempo que o perfil de usuário, mas que não foram usadas. - Como um usuário do IAM
- Clique no X(Delete)
para chaves criadas ao mesmo tempo que o perfil do usuário, mas que não foram usadas.
CLI da AWS
aws iam delete-access-key --access-key-id <access-key-id-listed> --user-name <users-name>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDynamodb Autoscaling Enabled
Nome da categoria na API: DYNAMODB_AUTOSCALING_ENABLED
Isso verifica se uma tabela do Amazon DynamoDB pode escalonar a capacidade de leitura e gravação conforme necessário. Esse controle é aprovado se a tabela usa o modo de capacidade sob demanda ou provisionado com o escalonamento automático configurado. Ajustar a capacidade de acordo com a demanda evita exceções de limitação, o que ajuda a manter a disponibilidade dos aplicativos.
As tabelas do DynamoDB no modo de capacidade sob demanda são limitadas apenas pelas cotas padrão de taxa de transferência do DynamoDB. Para aumentar essas cotas, registre um tíquete de suporte pelo AWS Support.
As tabelas do DynamoDB no modo provisionado com escalonamento automático ajustam a capacidade de taxa de transferência provisionada de forma dinâmica em resposta aos padrões de tráfego. Para mais informações sobre a limitação de solicitações do DynamoDB, consulte "Limitação de solicitações e capacidade de burst" no Guia do desenvolvedor do Amazon DynamoDB.
Recomendação: as tabelas do DynamoDB precisam escalonar a capacidade automaticamente conforme a demandaPara instruções detalhadas sobre como ativar o escalonamento automático do DynamoDB em tabelas atuais no modo de capacidade, consulte Ativar o escalonamento automático do DynamoDB em tabelas atuais no Guia do desenvolvedor do Amazon DynamoDB.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDynamodb In Backup Plan
Nome da categoria na API: DYNAMODB_IN_BACKUP_PLAN
Esse controle avalia se uma tabela do DynamoDB está coberta por um plano de backup. O controle falha se uma tabela do DynamoDB não estiver coberta por um plano de backup. Esse controle avalia apenas as tabelas do DynamoDB que estão no estado "ACTIVE".
Os backups ajudam você a se recuperar mais rapidamente de um incidente de segurança. Elas também fortalecem a resiliência dos seus sistemas. Incluir tabelas do DynamoDB em um plano de backup ajuda a proteger seus dados contra perdas ou exclusões não intencionais.
Recomendação: as tabelas do DynamoDB precisam estar cobertas por um plano de backupPara adicionar uma tabela do DynamoDB a um plano de backup do AWS Backup, consulte Como atribuir recursos a um plano de backup no Guia do desenvolvedor do AWS Backup.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDynamodb Pitr Enabled
Nome da categoria na API: DYNAMODB_PITR_ENABLED
A recuperação pontual (PITR) é um dos mecanismos disponíveis para fazer backup de tabelas do DynamoDB.
Um backup point-in-time é mantido por 35 dias. Se você precisar de um período de retenção mais longo, consulte Configurar backups programados para o Amazon DynamoDB usando o AWS Backup na documentação da AWS.
Recomendação: verifica se a recuperação pontual (PITR) está ativada em todas as tabelas do AWS DynamoDB Para corrigir essa descoberta, siga estas etapas:Terraform
Para definir a PITR para tabelas do DynamoDB, defina o bloco point_in_time_recovery
:
resource "aws_dynamodb_table" "example" {
# ... other configuration ...
point_in_time_recovery {
enabled = true
}
}
Console da AWS
Para ativar a recuperação pontual do DynamoDB em uma tabela atual
- Abra o console do DynamoDB em https://console.aws.amazon.com/dynamodb/.
- Escolha a tabela com que você quer trabalhar e selecione "Backups".
- Na seção "Recuperação pontual", em "Status", escolha "Ativar".
- Escolha "Ativar" novamente para confirmar a mudança.
CLI da AWS
aws dynamodb update-continuous-backups \
--table-name "GameScoresOnDemand" \
--point-in-time-recovery-specification "PointInTimeRecoveryEnabled=true"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osDynamodb Table Encrypted Kms
Nome da categoria na API: DYNAMODB_TABLE_ENCRYPTED_KMS
Verifica se todas as tabelas do DynamoDB estão criptografadas com uma chave do KMS gerenciada pelo cliente (não padrão).
Recomendação: verifica se todas as tabelas do DynamoDB foram criptografadas com o AWS Key Management Service (KMS) Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, crie uma chave do KMS da AWS e use-a para criptografar o recurso do DynamoDB que viola a regra.
resource "aws_kms_key" "dynamodb_encryption" {
description = "Used for DynamoDB encryption configuration"
enable_key_rotation = true
}
resource "aws_dynamodb_table" "example" {
# ... other configuration ...
server_side_encryption {
enabled = true
kms_key_arn = aws_kms_key.dynamodb_encryption.arn
}
}
Console da AWS
Supondo que haja uma chave do AWS KMS disponível para criptografar o DynamoDB.
Para mudar a criptografia de uma tabela do DynamoDB para uma chave do KMS gerenciada e de propriedade do cliente.
- Abra o console do DynamoDB em https://console.aws.amazon.com/dynamodb/.
- Escolha a tabela com que você quer trabalhar e selecione "Configurações adicionais".
- Em "Criptografia", escolha "Gerenciar criptografia".
- Para a criptografia em repouso, escolha "Armazenados na sua conta e de sua propriedade e gerenciamento".
- Selecione a chave da AWS a ser usada. Salve as alterações.
CLI da AWS
aws dynamodb update-table \
--table-name <value> \
--sse-specification "Enabled=true,SSEType=KMS,KMSMasterKeyId=<kms_key_arn>"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEbs Optimized Instance
Nome da categoria na API: EBS_OPTIMIZED_INSTANCE
Verifica se a otimização do EBS está ativada para as instâncias do EC2 que podem ser otimizadas para EBS
Recomendação: verifica se a otimização do EBS foi ativada em todas as instâncias com suporte a elaPara configurar as instâncias otimizadas para EBS, consulte Instâncias otimizadas para Amazon EBS no guia do usuário do Amazon EC2.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEbs Snapshot Public Restorable Check
Nome da categoria na API: EBS_SNAPSHOT_PUBLIC_RESTORABLE_CHECK
Verifica se os snapshots do Amazon Elastic Block Store não são públicos. O controle falha se os snapshots do Amazon EBS puderem ser restaurados por qualquer pessoa.
Os snapshots do EBS são usados para fazer backup dos dados nos volumes do EBS para o Amazon S3 em um momento específico. É possível usar os snapshots para restaurar estados anteriores dos volumes do EBS. Raramente é aceitável compartilhar uma foto com o público. Normalmente, a decisão de compartilhar um snapshot publicamente foi tomada por engano ou sem uma compreensão completa das implicações. Essa verificação ajuda a garantir que todo o compartilhamento tenha sido totalmente planejado e intencional.
Recomendação: os snapshots do Amazon EBS não devem ser publicamente restauráveis Para corrigir essa descoberta, siga estas etapas:Console da AWS
Para corrigir esse problema, atualize o snapshot do EBS para que ele seja particular em vez de público.
Para tornar um snapshot público do EBS particular:
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, em "Elastic Block Store", escolha o menu "Snapshots" e selecione seu snapshot público.
- Em "Ações", escolha "Modificar permissões".
- Escolha "Privado".
- (Opcional) Adicione os números das contas da AWS autorizadas para compartilhar o snapshot e clique em "Adicionar permissão".
- Escolha "Salvar".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEbs Volume Encryption Enabled All Regions
Nome da categoria na API: EBS_VOLUME_ENCRYPTION_ENABLED_ALL_REGIONS
O Elastic Compute Cloud (EC2) oferece suporte à criptografia em repouso ao usar o serviço Elastic Block Store (EBS). Embora esteja desativada por padrão, é possível forçar a criptografia na criação de volumes do EBS.
Recomendação: verifique se a criptografia de volume do EBS está ativada em todas as regiões Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS e abra o console do Amazon EC2 usando https://console.aws.amazon.com/ec2/
- Em
Account attributes
, clique emEBS encryption
. - Clique em
Manage
. - Clique na caixa de seleção
Enable
. - Clique em
Update EBS encryption
. - Repita para cada região que precisa da mudança.
Observação:a criptografia de volume do EBS é configurada por região.
CLI da AWS
- Executar
aws --region <region> ec2 enable-ebs-encryption-by-default
- Verifique se
"EbsEncryptionByDefault": true
aparece. - Repita para cada região que precisa da mudança.
Observação:a criptografia de volume do EBS é configurada por região.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Instances In Vpc
Nome da categoria na API: EC2_INSTANCES_IN_VPC
A Amazon VPC oferece mais funcionalidades de segurança do que o EC2 Classic. Recomendamos que todos os nós pertençam a uma VPC da Amazon.
Recomendação: verifique se todas as instâncias pertencem a uma VPC Para corrigir essa descoberta, siga estas etapas:Terraform
Se você tiver instâncias do EC2 Classic definidas no Terraform, poderá modificar seus recursos para fazer parte de uma VPC. Essa migração depende de uma arquitetura que melhor atenda às suas necessidades. Confira a seguir um exemplo simples do Terraform que ilustra uma EC2 exposta publicamente em uma VPC.
resource "aws_vpc" "example_vpc" {
cidr_block = "10.0.0.0/16"
}
resource "aws_subnet" "example_public_subnet" {
vpc_id = aws_vpc.example_vpc.id
cidr_block = "10.0.1.0/24"
availability_zone = "1a"
}
resource "aws_internet_gateway" "example_igw" {
vpc_id = aws_vpc.example_vpc.id
}
resource "aws_key_pair" "example_key" {
key_name = "web-instance-key"
public_key = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD3F6tyPEFEzV0LX3X8BsXdMsQz1x2cEikKDEY0aIj41qgxMCP/iteneqXSIFZBp5vizPvaoIR3Um9xK7PGoW8giupGn+EPuxIA4cDM4vzOqOkiMPhz5XK0whEjkVzTo4+S0puvDZuwIsdiW9mxhJc7tgBNL0cYlWSYVkz4G/fslNfRPW5mYAM49f4fhtxPb5ok4Q2Lg9dPKVHO/Bgeu5woMc7RY0p1ej6D4CKFE6lymSDJpW0YHX/wqE9+cfEauh7xZcG0q9t2ta6F6fmX0agvpFyZo8aFbXeUBr7osSCJNgvavWbM/06niWrOvYX2xwWdhXmXSrbX8ZbabVohBK41 email@example.com"
}
resource "aws_security_group" "web_sg" {
name = "http and ssh"
vpc_id = aws_vpc.some_custom_vpc.id
ingress {
from_port = 80
to_port = 80
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
ingress {
from_port = 22
to_port = 22
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
egress {
from_port = 0
to_port = 0
protocol = -1
cidr_blocks = ["0.0.0.0/0"]
}
}
resource "aws_instance" "web" {
ami = <ami_id>
instance_type = <instance_flavor>
key_name = aws_key_pair.example_key.name
monitoring = true
subnet_id = aws_subnet.example_public_subnet.id
vpc_security_group_ids = [aws_security_group.web_sg.id]
metadata_options {
http_tokens = "required"
}
}
Console da AWS
Para migrar do EC2 Classic para a VPC, consulte Migrar do EC2-Classic para uma VPC.
CLI da AWS
Este exemplo da CLI da AWS ilustra a mesma infraestrutura definida com o Terraform. É um exemplo simples de uma instância do EC2 exposta publicamente em uma VPC.
Criar VPC
aws ec2 create-vpc \
--cidr-block 10.0.0.0/16
Criar sub-rede pública
aws ec2 create-subnet \
--availability-zone 1a \
--cidr-block 10.0.1.0/24 \
--vpc-id <id_from_create-vpc_command>
Criar gateway da Internet
aws ec2 create-internet-gateway
Anexar o gateway da Internet à VPC
aws ec2 attach-internet-gateway \
--internet-gateway-id <id_from_create-internet-gateway_command> \
--vpc-id <id_from_create-vpc_command>
Criar par de chaves: isso salva sua chave privada em /.ssh/web-instance-key.pem
.
aws ec2 create-key-pair \
--key-name web-instance-key \
--query "KeyMaterial" \
--output text > ~/.ssh/web-instance-key.pem && \
chmod 400 ~/.ssh/web-instance-key.pem
Criar grupo de segurança
aws ec2 create-security-group \
--group-name "http and ssh" \
--vpc-id <id_from_create-vpc_command>
Crie regras de grupo de segurança: para um acesso mais restrito, defina um CIDR mais restrito para SSH na porta 22.
aws ec2 authorize-security-group-ingress \
--group-id <id_from_create-security-group_command>
--protocol tcp \
--port 80 \
--cidr 0.0.0.0/0
aws ec2 authorize-security-group-ingress \
--group-id <id_from_create-security-group_command>
--protocol tcp \
--port 22 \
--cidr 0.0.0.0/0
aws ec2 authorize-security-group-egress \
--group-id <id_from_create-security-group_command>
--protocol -1 \
--port 0 \
--cidr 0.0.0.0/0
Criar uma instância EC2
aws ec2 run-instances \
--image-id <ami_id> \
--instance-type <instance_flavor> \
--metadata-options "HttpEndpoint=enabled,HttpTokens=required" \
--monitoring true \
--key-name web-instance-key \
--subnet-id <id_from_create-subnet_command> \
--security-group-ids <id_from_create-security-group_command>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Instance No Public Ip
Nome da categoria na API: EC2_INSTANCE_NO_PUBLIC_IP
As instâncias do EC2 com um endereço IP público correm um risco maior de serem comprometidas. Recomendamos que as instâncias do EC2 não sejam configuradas com um endereço IP público.
Recomendação: garante que nenhuma instância tenha um IP público Para corrigir essa descoberta, siga estas etapas:Terraform
Use o argumento associate_public_ip_address = false
com o recurso aws_instance
para garantir que as instâncias do EC2 sejam provisionadas sem um endereço IP público.
resource "aws_instance" "no_public_ip" {
...
associate_public_ip_address = false
}
Console da AWS
Por padrão, as sub-redes não padrão têm o atributo de endereçamento público IPv4 definido como "false", e as sub-redes padrão têm esse atributo definido como "true". Uma exceção é uma sub-rede não padrão criada pelo assistente de inicialização de instâncias do Amazon EC2. O assistente define o atributo como "true". É possível modificar esse atributo usando o console da Amazon VPC.
Para modificar o comportamento de endereçamento IPv4 público da sua sub-rede
- Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.
- No painel de navegação, escolha Sub-redes.
- Selecione sua sub-rede e escolha Ações, Editar configurações de sub-rede.
- A caixa de seleção Ativar atribuição automática de endereço IPv4 público, se marcada, solicita um endereço IPv4 público para todas as instâncias iniciadas na sub-rede selecionada. Marque ou desmarque a caixa de seleção conforme necessário e escolha Salvar.
CLI da AWS
O comando a seguir executa uma instância do EC2 em uma sub-rede padrão sem associar um endereço IP público a ela.
aws ec2 run-instances \
--image-id <ami_id> \
--instance-type <instance_flavor> \
--no-associate-public-ip-address \
--key-name MyKeyPair
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Managedinstance Association Compliance Status Check
Nome da categoria na API: EC2_MANAGEDINSTANCE_ASSOCIATION_COMPLIANCE_STATUS_CHECK
Uma associação do State Manager é uma configuração atribuída às suas instâncias gerenciadas. A configuração define o estado que você quer manter nas instâncias. Por exemplo, uma associação pode especificar que um software antivírus precisa estar instalado e em execução nas suas instâncias ou que determinadas portas precisam ser fechadas. As instâncias do EC2 associadas ao AWS Systems Manager são gerenciadas por ele, o que facilita a aplicação de patches, a correção de configurações incorretas e a resposta a eventos de segurança.
Recomendação: verifica o status de compliance da associação do AWS Systems Manager Para corrigir essa descoberta, siga estas etapas:Terraform
O exemplo a seguir demonstra como criar uma instância simples do EC2, um documento do AWS Systems Manager (SSM) e uma associação entre o SSM e a instância do EC2. Os documentos aceitos são do tipo Command
e Policy
.
resource "aws_instance" "web" {
ami = "<iam_id>"
instance_type = "<instance_flavor>"
}
resource "aws_ssm_document" "check_ip" {
name = "check-ip-config"
document_type = "Command"
content = <<DOC
{
"schemaVersion": "1.2",
"description": "Check ip configuration of a Linux instance.",
"parameters": {
},
"runtimeConfig": {
"aws:runShellScript": {
"properties": [
{
"id": "0.aws:runShellScript",
"runCommand": ["ifconfig"]
}
]
}
}
}
DOC
}
resource "aws_ssm_association" "check_ip_association" {
name = aws_ssm_document.check_ip.name
targets {
key = "InstanceIds"
values = [aws_instance.web.id]
}
}
Console da AWS
Para informações sobre como configurar associações com o AWS Systems Manager usando o console, consulte Como criar associações na documentação do AWS Systems Manager.
CLI da AWS
Criar um documento do SSM
aws ssm create-document \
--name <document_name> \
--content file://path/to-file/document.json \
--document-type "Command"
Criar uma associação do SSM
aws ssm create-association \
--name <association_name> \
--targets "Key=InstanceIds,Values=<instance-id-1>,<instance-id-2>"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Managedinstance Patch Compliance Status Check
Nome da categoria na API: EC2_MANAGEDINSTANCE_PATCH_COMPLIANCE_STATUS_CHECK
Esse controle verifica se o status de compliance da associação do AWS Systems Manager é COMPLIANT ou NON_COMPLIANT depois que a associação é executada em uma instância. O controle falha se o status de compliance da associação for NON_COMPLIANT.
Uma associação do State Manager é uma configuração atribuída às suas instâncias gerenciadas. A configuração define o estado que você quer manter nas instâncias. Por exemplo, uma associação pode especificar que um software antivírus precisa ser instalado e executado nas suas instâncias ou que determinadas portas precisam ser fechadas.
Depois de criar uma ou mais associações do State Manager, as informações de status de conformidade ficam disponíveis imediatamente. É possível conferir o status de conformidade no console ou em resposta a comandos da AWS CLI ou ações correspondentes da API do Systems Manager. Para associações, o Compliance de configuração mostra o status de compliance (em conformidade ou em não conformidade). Ele também mostra o nível de gravidade atribuído à associação, como "Crítica" ou "Média".
Para saber mais sobre a conformidade da associação do State Manager, consulte Sobre a conformidade da associação do State Manager no Guia do usuário do AWS Systems Manager.
Recomendação: verifica o status de compliance do patch do AWS Systems ManagerUma associação com falha pode estar relacionada a diferentes coisas, incluindo destinos e nomes de documentos do SSM. Para corrigir esse problema, primeiro identifique e investigue a associação acessando o histórico dela. Para instruções sobre como ver o histórico de associações, consulte Como ver o histórico de associações no Guia do usuário do AWS Systems Manager.
Depois de investigar, edite a associação para corrigir o problema identificado. É possível editar uma associação para especificar um novo nome, programação, nível de gravidade ou destinos. Depois que você edita uma associação, o AWS Systems Manager cria uma nova versão. Para instruções sobre como editar uma associação, consulte Editar e criar uma nova versão de uma associação no Guia do usuário do AWS Systems Manager.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Metadata Service Allows Imdsv2
Nome da categoria na API: EC2_METADATA_SERVICE_ALLOWS_IMDSV2
Ao ativar o serviço de metadados em instâncias do AWS EC2, os usuários podem usar a versão 1 do serviço de metadados de instância (IMDSv1, um método de solicitação/resposta) ou a versão 2 (IMDSv2, um método orientado a sessão).
Recomendação: verifique se o serviço de metadados do EC2 permite apenas IMDSv2No console:
1. Faça login no console de gerenciamento da AWS e abra o console do Amazon EC2 usando https://console.aws.amazon.com/ec2/
2. No menu "Instâncias", selecione "Instâncias".
3. Para cada instância, selecione-a e escolha Ações > Modificar opções de metadados da instância.
4. Se o serviço de metadados da instância estiver ativado, defina o IMDSv2 como "Obrigatório".
Na linha de comando:
aws ec2 modify-instance-metadata-options --instance-id <instance_id> --http-tokens required
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEc2 Volume Inuse Check
Nome da categoria na API: EC2_VOLUME_INUSE_CHECK
Identificar e remover volumes não conectados (não utilizados) do Elastic Block Store (EBS) na sua conta da AWS para reduzir o custo da fatura mensal da AWS. A exclusão de volumes do EBS não utilizados também reduz o risco de dados confidenciais/sensíveis saírem da sua empresa. Além disso, esse controle também verifica se as instâncias do EC2 arquivadas estão configuradas para excluir volumes no encerramento.
Por padrão, as instâncias do EC2 são configuradas para excluir os dados em todos os volumes do EBS associados à instância e para excluir o volume raiz do EBS da instância. No entanto, todos os volumes do EBS não raiz anexados à instância, no lançamento ou durante a execução, são mantidos após o encerramento por padrão.
Recomendação: verifica se os volumes do EBS estão anexados às instâncias do EC2 e configurados para exclusão no encerramento da instância Para corrigir essa descoberta, siga estas etapas:Terraform
Para evitar esse cenário usando o Terraform, crie instâncias do EC2 com blocos EBS incorporados. Isso garante que todos os blocos do EBS associados à instância (não apenas a raiz) sejam excluídos no encerramento da instância, com o atributo ebs_block_device.delete_on_termination
definido como padrão para true
.
resource "aws_instance" "web" {
ami = <ami_id>
instance_type = <instance_flavor>
ebs_block_device {
delete_on_termination = true # Default
device_name = "/dev/sdh"
}
Console da AWS
Para excluir um volume do EBS usando o console
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, escolha Volumes.
- Selecione o volume que você quer excluir e escolha Ações, Excluir volume.
- Observação: se a opção "Excluir volume" estiver esmaecida, o volume estará anexado a uma instância. É necessário separar o volume da instância antes de excluí-lo.
- Na caixa de diálogo de confirmação, escolha Excluir.
CLI da AWS
Este comando de exemplo exclui um volume disponível com o ID vol-049df61146c4d7901. Se o comando for bem-sucedido, nenhuma saída será retornada.
aws ec2 delete-volume --volume-id vol-049df61146c4d7901
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEfs Encrypted Check
Nome da categoria na API: EFS_ENCRYPTED_CHECK
O Amazon EFS oferece duas formas de criptografia para sistemas de arquivos: de dados em trânsito e em repouso. Isso verifica se todos os sistemas de arquivos EFS estão configurados com criptografia em repouso em todas as regiões ativadas na conta.
Recomendação: verifica se o EFS foi configurado para criptografar dados de arquivos usando o KMS Para corrigir essa descoberta, siga estas etapas:Terraform
O snippet de código a seguir pode ser usado para criar um EFS criptografado com KMS. Observação: o atributo kms_key_id
é opcional, e uma chave será criada se nenhum ID de chave do KMS for transmitido.
resource "aws_efs_file_system" "encrypted-efs" {
creation_token = "my-kms-encrypted-efs"
encrypted = true
kms_key_id = "arn:aws:kms:us-west-2:12344375555:key/16393ebd-3348-483f-b162-99b6648azz23"
tags = {
Name = "MyProduct"
}
}
Console da AWS
Para configurar o EFS com criptografia usando o console da AWS, consulte Criptografar um sistema de arquivos em repouso usando o console.
CLI da AWS
É importante observar que, embora a criação de EFS no console ative a criptografia em repouso por padrão, isso não é válido para EFS criados usando a CLI, a API ou o SDK. O exemplo a seguir permite criar um sistema de arquivos criptografado na sua infraestrutura.
aws efs create-file-system \
--backup \
--encrypted \
--region us-east-1 \
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEfs In Backup Plan
Nome da categoria na API: EFS_IN_BACKUP_PLAN
As práticas recomendadas da Amazon recomendam configurar backups para seus Elastic File Systems (EFS). Isso verifica todos os EFS em todas as regiões ativadas na sua conta da AWS para backups ativados.
Recomendação: verifica se os sistemas de arquivos do EFS estão incluídos nos planos de backup da AWS Para corrigir essa descoberta, siga estas etapas:Terraform
Use o recurso aws_efs_backup_policy
para configurar uma política de backup para sistemas de arquivos EFS.
resource "aws_efs_file_system" "encrypted-efs" {
creation_token = "my-encrypted-efs"
encrypted = true
tags = merge({
Name = "${local.resource_prefix.value}-efs"
}, {
git_file = "terraform/aws/efs.tf"
git_org = "your_git_org"
git_repo = "your_git_repo"
})
}
resource "aws_efs_backup_policy" "policy" {
file_system_id = aws_efs_file_system.encrypted-efs.id
backup_policy {
status = "ENABLED"
}
}
Console da AWS
Há duas opções para fazer backup do EFS: o serviço AWS Backup e a solução de backup do EFS para EFS. Para corrigir o EFS sem backup usando o console, consulte:
CLI da AWS
Há algumas opções para criar sistemas de arquivos EFS em conformidade usando a CLI:
- Crie um EFS com o backup automático ativado (padrão para armazenamento de uma zona e condicional à disponibilidade de backup na região da AWS).
- Criar um EFS e colocar uma política de backup
No entanto, supondo que a correção precise acontecer no EFS atual, a melhor opção é criar uma política de backup e associá-la ao EFS não compatível. Você vai precisar de um comando para cada EFS na sua infraestrutura.
arr=( $(aws efs describe-file-systems | jq -r '.FileSystems[].FileSystemId') )
for efs in "${arr[@]}"
do
aws efs put-backup-policy \
--file-system-id "${efs}" \
--backup-policy "Status=ENABLED"
done
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osElb Acm Certificate Required
Nome da categoria na API: ELB_ACM_CERTIFICATE_REQUIRED
Verifica se o balanceador de carga clássico usa certificados HTTPS/SSL fornecidos pelo AWS Certificate Manager (ACM). O controle falha se o balanceador de carga clássico configurado com listener HTTPS/SSL não usar um certificado fornecido pelo ACM.
Para criar um certificado, use o ACM ou uma ferramenta compatível com os protocolos SSL e TLS, como o OpenSSL. O Security Hub recomenda usar o ACM para criar ou importar certificados para o balanceador de carga.
O ACM se integra aos balanceadores de carga clássicos para que você possa implantar o certificado no seu balanceador de carga. Você também precisa renovar esses certificados automaticamente.
Recomendação: verifica se todos os balanceadores de carga clássicos usam os certificados SSL fornecidos pelo AWS Certificate ManagerPara saber como associar um certificado SSL/TLS do ACM a um balanceador de carga clássico, consulte o artigo da Central de Conhecimento da AWS Como posso associar um certificado SSL/TLS do ACM a um balanceador de carga clássico, de aplicativo ou de rede?
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osElb Deletion Protection Enabled
Nome da categoria na API: ELB_DELETION_PROTECTION_ENABLED
Verifica se um balanceador de carga de aplicativo tem a proteção contra exclusão ativada. O controle falha se a proteção contra exclusão não estiver configurada.
Ative a proteção contra exclusão para proteger o balanceador de carga de aplicativo contra exclusão.
Recomendação: a proteção contra exclusão do balanceador de carga de aplicativo precisa ser ativada Para corrigir essa descoberta, siga estas etapas:Console da AWS
Para evitar a exclusão acidental do balanceador de carga, ative a proteção contra exclusão. Por padrão, a proteção contra exclusão está desativada para o balanceador de carga.
Se você ativar a proteção contra exclusão para o balanceador de carga, será necessário desativá-la antes de excluir o balanceador.
Para ativar a proteção contra exclusão no console:
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, em BALANCEAMENTO DE CARGA, escolha Balanceadores de carga.
- Escolha o balanceador de carga.
- Na guia Descrição, escolha Editar atributos.
- Na página Editar atributos do balanceador de carga, selecione Ativar para proteção contra exclusão e clique em Salvar.
- Escolha Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osElb Logging Enabled
Nome da categoria na API: ELB_LOGGING_ENABLED
Isso verifica se o balanceador de carga de aplicativo e o balanceador de carga clássico estão com a geração de registros ativada. O controle falha se "access_logs.s3.enabled" for "false".
O Elastic Load Balancing fornece registros de acesso que capturam informações detalhadas sobre as solicitações enviadas ao seu balanceador de carga. Cada registro contém informações como o horário em que a solicitação foi recebida, o endereço IP do cliente, latências, caminhos de solicitação e respostas do servidor. É possível usar esses registros de acesso para analisar padrões de tráfego e solucionar problemas.
Para saber mais, consulte Registros de acesso para seu balanceador de carga clássico no guia do usuário para balanceadores de carga clássicos.
Recomendação: verifica se os balanceadores de carga de aplicativo e clássicos estão com a geração de registros ativada Para corrigir essa descoberta, siga estas etapas:Console da AWS
Para corrigir esse problema, atualize os balanceadores de carga para ativar o registro em registros.
Para ativar registros de acesso
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, escolha Balanceadores de carga.
- Escolha um balanceador de carga de aplicativo ou um balanceador de carga clássico.
- Em Ações, escolha Editar atributos.
- Em Registros de acesso, escolha Ativar.
- Insira o local do S3. Esse local pode existir ou ser criado para você. Se você não especificar um prefixo, os registros de acesso serão armazenados na raiz do bucket do S3.
- Escolha Salvar.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osElb Tls Https Listeners Only
Nome da categoria na API: ELB_TLS_HTTPS_LISTENERS_ONLY
Essa verificação garante que todos os balanceadores de carga clássicos estejam configurados para usar comunicação segura.
Um listener é um processo que verifica solicitações de conexão. Ele é configurado com um protocolo e uma porta para conexões de front-end (cliente para balanceador de carga) e um protocolo e uma porta para conexões de back-end (balanceador de carga para instância). Para informações sobre as portas, protocolos e configurações de listener compatíveis com o Elastic Load Balancing, consulte Listeners para o balanceador de carga clássico.
Recomendação: verifica se todos os balanceadores de carga clássicos foram configurados com listeners HTTPS ou SSLPara configurar SSL ou TLS para balanceadores de carga clássicos, consulte Criar um balanceador de carga HTTPS/SSL usando o AWS Management Console.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEncrypted Volumes
Nome da categoria na API: ENCRYPTED_VOLUMES
Verifica se os volumes do EBS anexados estão criptografados. Para passar nessa verificação, os volumes EBS precisam estar em uso e criptografados. Se o volume do EBS não estiver anexado, ele não estará sujeito a essa verificação.
Para uma camada extra de segurança dos seus dados sensíveis em volumes do EBS, ative a criptografia do EBS em repouso. A criptografia do Amazon EBS oferece uma solução simples para seus recursos do EBS que não exige que você crie, mantenha e proteja sua própria infraestrutura de gerenciamento de chaves. Ele usa chaves do KMS ao criar volumes e snapshots criptografados.
Para saber mais sobre a criptografia do Amazon EBS, consulte "Criptografia do Amazon EBS" no Guia do usuário do Amazon EC2 para instâncias do Linux.
Recomendação: os volumes anexados do Amazon EBS devem estar criptografados em repouso Para corrigir essa descoberta, siga estas etapas:Console da AWS
Não há uma maneira direta de criptografar um volume ou snapshot sem criptografia. Só é possível criptografar um novo volume ou snapshot quando você o cria.
Se você ativou a criptografia por padrão, o Amazon EBS criptografa o novo volume ou snapshot resultante usando sua chave padrão para criptografia do Amazon EBS. Mesmo que você não tenha ativado a criptografia por padrão, é possível ativá-la ao criar um volume ou snapshot individual. Em ambos os casos, é possível substituir a chave padrão da criptografia do Amazon EBS e escolher uma chave simétrica gerenciada pelo cliente.
Para mais informações, consulte Como criar um volume do Amazon EBS e Como copiar um snapshot do Amazon EBS no Guia do usuário do Amazon EC2 para instâncias do Linux.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEncryption At Rest Enabled Rds Instances
Nome da categoria na API: ENCRYPTION_AT_REST_ENABLED_RDS_INSTANCES
As instâncias de banco de dados criptografadas do Amazon RDS usam o algoritmo de criptografia AES-256 padrão do setor para criptografar seus dados no servidor que hospeda as instâncias de banco de dados do Amazon RDS. Depois que os dados são criptografados, o Amazon RDS processa a autenticação de acesso e a descriptografia de dados de forma transparente, com um impacto mínimo no desempenho.
Recomendação: verifique se a criptografia em repouso está ativada para instâncias do RDS Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e abra o painel do RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação à esquerda, clique em
Databases
. - Selecione a instância de banco de dados que precisa ser criptografada.
- Clique no botão
Actions
no canto superior direito e selecioneTake Snapshot
. - Na página "Criar snapshot", insira um nome de banco de dados para criar um snapshot no campo
Snapshot Name
e clique emTake Snapshot
. - Selecione o snapshot recém-criado, clique no botão
Action
no canto superior direito e selecioneCopy snapshot
no menu "Ação". - Na página "Fazer cópia do snapshot de banco de dados", faça o seguinte:
- No campo "Novo identificador de snapshot do banco de dados", insira um nome para o
new snapshot
. - Marque
Copy Tags
, "O novo snapshot precisa ter as mesmas tags do snapshot de origem". - Selecione
Yes
na lista suspensaEnable Encryption
para ativar a criptografia. Você pode usar a chave de criptografia padrão da AWS ou uma chave personalizada na lista suspensa "Chave principal".
- Clique em
Copy Snapshot
para criar uma cópia criptografada do snapshot de instância selecionado. - Selecione a nova cópia criptografada do snapshot e clique no botão
Action
no canto superior direito. Depois, selecione o botãoRestore Snapshot
no menu "Ação". Isso vai restaurar o snapshot criptografado para uma nova instância de banco de dados. - Na página "Restaurar instância de banco de dados", insira um nome exclusivo para a nova instância no campo "Identificador da instância de banco de dados".
- Revise os detalhes da configuração da instância e clique em
Restore DB Instance
. - À medida que o novo processo de provisionamento de instâncias é concluído, é possível atualizar a configuração do aplicativo para se referir ao endpoint da nova instância de banco de dados criptografado. Depois que o endpoint do banco de dados é alterado no nível do aplicativo, é possível remover a instância não criptografada.
CLI da AWS
- Execute o comando
describe-db-instances
para listar todos os nomes de bancos de dados do RDS disponíveis na região da AWS selecionada. A resposta ao comando vai retornar o identificador da instância de banco de dados.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
- Execute o comando
create-db-snapshot
para criar um snapshot da instância de banco de dados selecionada. A resposta ao comando vai retornar onew snapshot
com o nome "DB Snapshot Name".
aws rds create-db-snapshot --region <region-name> --db-snapshot-identifier <DB-Snapshot-Name> --db-instance-identifier <DB-Name>
- Agora, execute o comando
list-aliases
para listar os aliases de chaves do KMS disponíveis em uma região especificada. A resposta ao comando vai retornar cadakey alias currently available
. Para nosso processo de ativação da criptografia do RDS, localize o ID da chave KMS padrão da AWS.
aws kms list-aliases --region <region-name>
- Execute o comando
copy-db-snapshot
usando o ID da chave do KMS padrão para as instâncias do RDS retornadas anteriormente e crie uma cópia criptografada do snapshot da instância de banco de dados. A resposta ao comando vai retornar oencrypted instance snapshot configuration
.
aws rds copy-db-snapshot --region <region-name> --source-db-snapshot-identifier <DB-Snapshot-Name> --target-db-snapshot-identifier <DB-Snapshot-Name-Encrypted> --copy-tags --kms-key-id <KMS-ID-For-RDS>
- Execute o comando
restore-db-instance-from-db-snapshot
para restaurar o snapshot criptografado criado na etapa anterior em uma nova instância de banco de dados. Se a operação for bem-sucedida, a resposta ao comando vai retornar a nova configuração da instância de banco de dados criptografada.
aws rds restore-db-instance-from-db-snapshot --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --db-snapshot-identifier <DB-Snapshot-Name-Encrypted>
- Execute o comando
describe-db-instances
para listar todos os nomes de bancos de dados do RDS disponíveis na região da AWS selecionada. A saída vai retornar o nome do identificador da instância do banco de dados. Selecione o nome do banco de dados criptografado que acabamos de criar, DB-Name-Encrypted.
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
- Execute novamente o comando
describe-db-instances
usando o identificador da instância do RDS retornado anteriormente para determinar se a instância de banco de dados selecionada está criptografada. A resposta ao comando vai retornar o status da criptografiaTrue
.
aws rds describe-db-instances --region <region-name> --db-instance-identifier <DB-Name-Encrypted> --query 'DBInstances[*].StorageEncrypted'
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osEncryption Enabled Efs File Systems
Nome da categoria na API: ENCRYPTION_ENABLED_EFS_FILE_SYSTEMS
Os dados do EFS precisam ser criptografados em repouso usando o AWS KMS (Serviço de gerenciamento de chaves).
Recomendação: verifique se a criptografia está ativada nos sistemas de arquivos EFS Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de Gerenciamento da AWS e navegue até o painel
Elastic File System (EFS)
. - Selecione
File Systems
no painel de navegação à esquerda. - Clique no botão
Create File System
no menu superior do painel para iniciar o processo de configuração do sistema de arquivos. -
Na página de configuração
Configure file system access
, faça o seguinte:
- Escolha a VPC certa na lista suspensa.
- Na seção "Criar destinos de montagem", marque as caixas de seleção de todas as zonas de disponibilidade (ZDs) na VPC selecionada. Esses serão seus destinos de montagem.
- Clique emNext step
para continuar. -
Faça o seguinte na página
Configure optional settings
:
- Crietags
para descrever seu novo sistema de arquivos.
- Escolhaperformance mode
com base nos seus requisitos.
- Marque a caixa de seleçãoEnable encryption
e escolhaaws/elasticfilesystem
na lista suspensa "Selecionar chave-mestra do KMS" para ativar a criptografia do novo sistema de arquivos usando a chave-mestra padrão fornecida e gerenciada pelo AWS KMS.
- Clique emNext step
para continuar. -
Revise os detalhes da configuração do sistema de arquivos na página
review and create
e clique emCreate File System
para criar o novo sistema de arquivos EFS da AWS. - Copie os dados do sistema de arquivos EFS não criptografado antigo para o sistema de arquivos criptografado recém-criado.
- Remova o sistema de arquivos não criptografado assim que a migração de dados para o sistema de arquivos criptografado recém-criado for concluída.
- Mude a região da AWS na barra de navegação e repita todo o processo para outras regiões da AWS.
Na CLI:
1. Execute o comando "describe-file-systems" para descrever as informações de configuração disponíveis para o sistema de arquivos selecionado (não criptografado). Consulte a seção "Auditoria" para identificar o recurso certo:
aws efs describe-file-systems --region <region> --file-system-id <file-system-id from audit section step 2 output>
- A resposta ao comando vai retornar as informações de configuração solicitadas.
- Para provisionar um novo sistema de arquivos EFS da AWS, gere um identificador universalmente exclusivo (UUID) para criar o token exigido pelo comando "create-file-system". Para criar o token necessário, use um UUID gerado aleatoriamente em "https://www.uuidgenerator.net".
- Execute o comando "create-file-system" usando o token exclusivo criado na etapa anterior.
aws efs create-file-system --region <region> --creation-token <Token (randomly generated UUID from step 3)> --performance-mode generalPurpose --encrypted
- A resposta ao comando vai retornar os novos metadados de configuração do sistema de arquivos.
- Execute o comando create-mount-target usando o ID do sistema de arquivos do EFS recém-criado retornado na etapa anterior como identificador e o ID da zona de disponibilidade (AZ) que vai representar o destino de montagem:
aws efs create-mount-target --region <region> --file-system-id <file-system-id> --subnet-id <subnet-id>
- A resposta ao comando vai retornar os novos metadados do destino de montagem.
- Agora você pode ativar seu sistema de arquivos em uma instância do EC2.
- Copie os dados do sistema de arquivos EFS não criptografado antigo para o sistema de arquivos criptografado recém-criado.
- Remova o sistema de arquivos não criptografado assim que a migração de dados para o sistema de arquivos criptografado recém-criado for concluída.
aws efs delete-file-system --region <region> --file-system-id <unencrypted-file-system-id>
- Mude a região da AWS atualizando --region e repita todo o processo para outras regiões da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam Password Policy
Nome da categoria na API: IAM_PASSWORD_POLICY
A AWS permite políticas de senha personalizadas na sua conta da AWS para especificar requisitos de complexidade e períodos de rotação obrigatórios para as senhas dos usuários do IAM. Se você não definir uma política de senhas personalizada, as senhas de usuários do IAM precisarão atender à política de senhas padrão da AWS. As práticas recomendadas de segurança da AWS recomendam os seguintes requisitos de complexidade de senha:
- Exigir pelo menos uma letra maiúscula na senha.
- Exigir pelo menos um caractere minúsculo nas senhas.
- Exigir pelo menos um símbolo nas senhas.
- Exigir pelo menos um número nas senhas.
- Exija um tamanho mínimo de senha de pelo menos 14 caracteres.
- Exija pelo menos 24 senhas antes de permitir a reutilização.
- Exigir pelo menos 90 dias antes do vencimento da senha
Esse controle verifica todos os requisitos especificados da política de senhas.
Recomendação: verifica se a política de senha da conta para usuários do IAM atende aos requisitos especificados Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_iam_account_password_policy" "strict" {
allow_users_to_change_password = true
require_uppercase_characters = true
require_lowercase_characters = true
require_symbols = true
require_numbers = true
minimum_password_length = 14
password_reuse_prevention = 24
max_password_age = 90
}
Console da AWS
Para criar uma política de senha personalizada
- Faça login no console de gerenciamento do AWS e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, escolha "Configurações da conta".
- Na seção "Política de senha", escolha "Mudar política de senha".
- Selecione as opções que você quer aplicar à política de senhas e escolha "Salvar alterações".
Para mudar uma política de senha personalizada
- Faça login no console de gerenciamento do AWS e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, escolha "Configurações da conta".
- Na seção "Política de senha", escolha "Mudar".
- Selecione as opções que você quer aplicar à política de senhas e escolha "Salvar alterações".
CLI da AWS
aws iam update-account-password-policy \
--allow-users-to-change-password \
--require-uppercase-characters \
--require-lowercase-characters \
--require-symbols \
--require-numbers \
--minimum-password-length 14 \
--password-reuse-prevention 24 \
--max-password-age 90
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam Password Policy Prevents Password Reuse
Nome da categoria na API: IAM_PASSWORD_POLICY_PREVENTS_PASSWORD_REUSE
As políticas de senha do IAM podem impedir a reutilização de uma determinada senha pelo mesmo usuário. Recomendamos que a política de senhas impeça a reutilização de senhas.
Recomendação: verifique se a política de senha do IAM impede a reutilização da senha Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console da AWS com as permissões adequadas para ver as configurações da conta do gerenciamento de identidade e acesso.
- Acesse o serviço do IAM no console da AWS
- Clique em "Configurações da conta" no painel esquerdo.
- Marque "Impedir a reutilização de senhas".
- Defina "Número de senhas a serem lembradas" como
24
CLI da AWS
aws iam update-account-password-policy --password-reuse-prevention 24
Observação: todos os comandos que começam com "aws iam update-account-password-policy" podem ser combinados em um único comando.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam Password Policy Requires Minimum Length 14 Greater
Nome da categoria na API: IAM_PASSWORD_POLICY_REQUIRES_MINIMUM_LENGTH_14_GREATER
As políticas de senha são usadas, em parte, para aplicar requisitos de complexidade de senha. As políticas de senha do IAM podem ser usadas para garantir que as senhas tenham pelo menos um determinado tamanho. Recomendamos que a política de senha exija um tamanho mínimo de 14 caracteres.
Recomendação: verifique se a política de senha do IAM requer o tamanho mínimo de 14 ou mais Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console da AWS com as permissões adequadas para ver as configurações da conta do gerenciamento de identidade e acesso.
- Acesse o serviço do IAM no console da AWS
- Clique em "Configurações da conta" no painel esquerdo.
- Defina "Tamanho mínimo da senha" como
14
ou mais. - Clique em "Aplicar política de senhas".
CLI da AWS
aws iam update-account-password-policy --minimum-password-length 14
Observação: todos os comandos que começam com "aws iam update-account-password-policy" podem ser combinados em um único comando.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam Policies Allow Full Administrative Privileges Attached
Nome da categoria na API: IAM_POLICIES_ALLOW_FULL_ADMINISTRATIVE_PRIVILEGES_ATTACHED
As políticas do IAM são a maneira de conceder privilégios a usuários, grupos ou papéis. É recomendável e considerado um conselho de segurança padrão conceder privilégio mínimo, ou seja, conceder apenas as permissões necessárias para realizar uma tarefa. Determine o que os usuários precisam fazer e crie políticas para que eles realizem apenas essas tarefas, em vez de permitir privilégios administrativos completos.
Recomendação: verifique se as políticas do IAM que permitem privilégios de administrador "*:*" completos não estão anexadas Para corrigir essa descoberta, siga estas etapas:Console da AWS
Faça o seguinte para desvincular a política que tem privilégios administrativos completos:
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, clique em "Políticas" e procure o nome da política encontrado na etapa de auditoria.
- Selecione a política que precisa ser excluída.
- No menu de ação da política, selecione primeiro
Detach
. - Selecione todos os usuários, grupos e funções que têm essa política anexada
- Clique em
Detach Policy
. - No menu de ações da política, selecione
Detach
.
CLI da AWS
Faça o seguinte para remover a política que tem privilégios administrativos completos, conforme encontrado na etapa de auditoria:
- Lista todos os usuários, grupos e papéis do IAM a que a política gerenciada especificada está anexada.
aws iam list-entities-for-policy --policy-arn <policy_arn>
- Desanexe a política de todos os usuários do IAM:
aws iam detach-user-policy --user-name <iam_user> --policy-arn <policy_arn>
- Desanexe a política de todos os grupos do IAM:
aws iam detach-group-policy --group-name <iam_group> --policy-arn <policy_arn>
- Desanexe a política de todos os papéis do IAM:
aws iam detach-role-policy --role-name <iam_role> --policy-arn <policy_arn>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam Users Receive Permissions Groups
Nome da categoria na API: IAM_USERS_RECEIVE_PERMISSIONS_GROUPS
Os usuários do IAM recebem acesso a serviços, funções e dados por políticas do IAM. Há quatro maneiras de definir políticas para um usuário: 1) editar a política do usuário diretamente, também conhecida como política inline ou do usuário; 2) anexar uma política diretamente a um usuário; 3) adicionar o usuário a um grupo do IAM que tenha uma política anexada; 4) adicionar o usuário a um grupo do IAM que tenha uma política inline.
Apenas a terceira implementação é recomendada.
Recomendação: verifique se os usuários do IAM recebem permissões somente pelos gruposFaça o seguinte para criar um grupo do IAM e atribuir uma política a ele:
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, clique em
Groups
e emCreate New Group
. - Na caixa
Group Name
, digite o nome do grupo e clique emNext Step
. - Na lista de políticas, marque a caixa de seleção de cada uma que você quer aplicar a todos os membros do grupo. Em seguida, clique em
Next Step
. - Clique em
Create Group
.
Faça o seguinte para adicionar um usuário a um grupo:
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, clique em
Groups
- Selecione o grupo em que você quer adicionar um usuário
- Clique em
Add Users To Group
. - Selecione os usuários que serão adicionados ao grupo
- Clique em
Add Users
.
Faça o seguinte para remover uma associação direta entre um usuário e uma política:
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação à esquerda, clique em "Usuários".
- Para cada usuário:
- Selecione o usuário
- Clique na guiaPermissions
- ExpandaPermissions policies
- Clique emX
para cada política e em Desvincular ou Remover (dependendo do tipo de política)
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam User Group Membership Check
Nome da categoria na API: IAM_USER_GROUP_MEMBERSHIP_CHECK
Os usuários do IAM precisam sempre fazer parte de um grupo do IAM para seguir as práticas recomendadas de segurança do IAM.
Ao adicionar usuários a um grupo, é possível compartilhar políticas entre tipos de usuários.
Recomendação: verifica se os usuários do IAM são membros de pelo menos um grupo do IAM Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_iam_user" "example" {
name = "test-iam-user"
path = "/users/dev/"
}
resource "aws_iam_group" "example" {
name = "Developers"
path = "/users/dev/"
}
resource "aws_iam_user_group_membership" "example" {
user = aws_iam_user.example.name
groups = [aws_iam_group.example.name]
}
Console da AWS
Quando você usa o console de gerenciamento da AWS para excluir um usuário do IAM, o IAM exclui automaticamente as seguintes informações:
- O usuário
- Todas as associações a grupos de usuários, ou seja, o usuário é removido de todos os grupos de usuários do IAM de que fazia parte.
- Qualquer senha associada ao usuário
- Todas as chaves de acesso pertencentes ao usuário
- Todas as políticas inline incorporadas ao usuário (as políticas aplicadas a um usuário por permissões de grupo de usuários não são afetadas)
Para excluir um usuário do IAM:
- Faça login no console de gerenciamento do AWS e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, escolha "Usuários" e marque a caixa de seleção ao lado do nome do usuário que você quer excluir.
- Na parte de cima da página, escolha "Excluir".
- Na caixa de diálogo de confirmação, insira o nome de usuário no campo de entrada de texto para confirmar a exclusão.
- Escolha "Excluir".
Para adicionar um usuário a um grupo de usuários do IAM:
- Faça login no console de gerenciamento do AWS e abra o console do IAM em https://console.aws.amazon.com/iam/.
- No painel de navegação, escolha "Grupos de usuários" e selecione o nome do grupo.
- Escolha a guia "Usuários" e clique em "Adicionar usuários". Marque a caixa de seleção ao lado dos usuários que você quer adicionar.
- Escolha "Adicionar usuários".
CLI da AWS
Ao contrário do console de gerenciamento do Amazon Web Services, quando você exclui um usuário de maneira programática, é necessário excluir os itens anexados a ele manualmente. Caso contrário, a exclusão falha.
Antes de tentar excluir um usuário, remova os seguintes itens:
- Senha ( DeleteLoginProfile )
- Chaves de acesso ( DeleteAccessKey )
- Certificado de assinatura ( DeleteSigningCertificate )
- Chave pública SSH ( DeleteSSHPublicKey )
- Credenciais do Git ( DeleteServiceSpecificCredential )
- Dispositivo de autenticação multifator (MFA) ( DeactivateMFADevice , DeleteVirtualMFADevice )
- Políticas inline ( DeleteUserPolicy )
- Políticas gerenciadas anexadas ( DetachUserPolicy )
- Associações a grupos ( RemoveUserFromGroup )
Para excluir um usuário, depois de excluir todos os itens anexados a ele:
aws iam delete-user \
--user-name "test-user"
Para adicionar um usuário do IAM a um grupo do IAM:
aws iam add-user-to-group \
--group-name "test-group"
--user-name "test-user"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam User Mfa Enabled
Nome da categoria na API: IAM_USER_MFA_ENABLED
A autenticação multifator (MFA) é uma prática recomendada que adiciona uma camada extra de proteção além de nomes de usuários e senhas. Com a MFA, quando um usuário faz login no Console de Gerenciamento da AWS, ele precisa fornecer um código de autenticação sensível ao tempo, fornecido por um dispositivo virtual ou físico registrado.
Recomendação: verifica se a autenticação multifator (MFA) está ativada para os usuários do AWS IAM Para corrigir essa descoberta, siga estas etapas:Terraform
No caso do Terraform, há algumas opções para corrigir a ausência de dispositivos de MFA. Provavelmente, você já tem uma estrutura razoável para organizar seus usuários em grupos e políticas restritivas.
O exemplo a seguir mostra como:
- Criar usuários.
- Crie perfis de login de usuários com uma chave pública PGP.
- Crie um grupo e uma política de grupo que permitam o autogerenciamento do perfil do IAM.
- Anexe usuários ao grupo.
- Crie dispositivos de MFA virtual para usuários.
- Forneça a cada usuário o QR code e a senha gerados.
variable "users" {
type = set(string)
default = [
"test@example.com",
"test2@example.com"
]
}
resource "aws_iam_user" "test_users" {
for_each = toset(var.users)
name = each.key
}
resource "aws_iam_user_login_profile" "test_users_profile" {
for_each = var.users
user = each.key
# Key pair created using GnuPG, this is the public key
pgp_key = file("path/to/gpg_pub_key_base64.pem")
password_reset_required = true
lifecycle {
ignore_changes = [
password_length,
password_reset_required,
pgp_key,
]
}
}
resource "aws_iam_virtual_mfa_device" "test_mfa" {
for_each = toset(var.users)
virtual_mfa_device_name = each.key
}
resource "aws_iam_group" "enforce_mfa_group" {
name = "EnforceMFAGroup"
}
resource "aws_iam_group_membership" "enforce_mfa_group_membership" {
name = "EnforceMFAGroupMembership"
group = aws_iam_group.enforce_mfa_group.name
users = [for k in aws_iam_user.test_users : k.name]
}
resource "aws_iam_group_policy" "enforce_mfa_policy" {
name = "EnforceMFAGroupPolicy"
group = aws_iam_group.enforce_mfa_group.id
policy = <<POLICY
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "AllowViewAccountInfo",
"Effect": "Allow",
"Action": [
"iam:GetAccountPasswordPolicy",
"iam:ListVirtualMFADevices"
],
"Resource": "*"
},
{
"Sid": "AllowManageOwnPasswords",
"Effect": "Allow",
"Action": [
"iam:ChangePassword",
"iam:GetUser"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "AllowManageOwnAccessKeys",
"Effect": "Allow",
"Action": [
"iam:CreateAccessKey",
"iam:DeleteAccessKey",
"iam:ListAccessKeys",
"iam:UpdateAccessKey"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "AllowManageOwnSigningCertificates",
"Effect": "Allow",
"Action": [
"iam:DeleteSigningCertificate",
"iam:ListSigningCertificates",
"iam:UpdateSigningCertificate",
"iam:UploadSigningCertificate"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "AllowManageOwnSSHPublicKeys",
"Effect": "Allow",
"Action": [
"iam:DeleteSSHPublicKey",
"iam:GetSSHPublicKey",
"iam:ListSSHPublicKeys",
"iam:UpdateSSHPublicKey",
"iam:UploadSSHPublicKey"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "AllowManageOwnGitCredentials",
"Effect": "Allow",
"Action": [
"iam:CreateServiceSpecificCredential",
"iam:DeleteServiceSpecificCredential",
"iam:ListServiceSpecificCredentials",
"iam:ResetServiceSpecificCredential",
"iam:UpdateServiceSpecificCredential"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "AllowManageOwnVirtualMFADevice",
"Effect": "Allow",
"Action": [
"iam:CreateVirtualMFADevice",
"iam:DeleteVirtualMFADevice"
],
"Resource": "arn:aws:iam::*:mfa/$${aws:username}"
},
{
"Sid": "AllowManageOwnUserMFA",
"Effect": "Allow",
"Action": [
"iam:DeactivateMFADevice",
"iam:EnableMFADevice",
"iam:ListMFADevices",
"iam:ResyncMFADevice"
],
"Resource": "arn:aws:iam::*:user/$${aws:username}"
},
{
"Sid": "DenyAllExceptListedIfNoMFA",
"Effect": "Deny",
"NotAction": [
"iam:CreateVirtualMFADevice",
"iam:EnableMFADevice",
"iam:GetUser",
"iam:ListMFADevices",
"iam:ListVirtualMFADevices",
"iam:ResyncMFADevice",
"sts:GetSessionToken"
],
"Resource": "*",
"Condition": {
"BoolIfExists": {
"aws:MultiFactorAuthPresent": "false"
}
}
}
]
}
POLICY
}
output "user_password_map" {
# Outputs a map in the format {"test@example.com": <PGPEncryptedPassword>, "test2@example.com": <PGPEncryptedPassword>}
value = { for k, v in aws_iam_user_login_profile.test_users_profile : k => v.password }
}
output "user_qr_map" {
# Outputs a map in the format {"test@example.com": <QRCode>, "test2@example.com": <QRCode>}
value = { for k, v in aws_iam_virtual_mfa_device.test_mfa : k => v.qr_code_png }
}
Console da AWS
Para ativar a MFA em qualquer conta de usuário com acesso ao console da AWS, consulte Como ativar um dispositivo virtual de autenticação multifator (MFA) (console) na documentação da AWS.
CLI da AWS
Criar um dispositivo de MFA
aws iam create-virtual-mfa-device \
--virtual-mfa-device-name "test@example.com" \
--outfile ./QRCode.png \
--bootstrap-method QRCodePNG
Ativar um dispositivo de MFA para um usuário
aws iam enable-mfa-device \
--user-name "test@example.com" \
--serial-number "arn:aws:iam::123456976749:mfa/test@example.com" \
--authentication-code1 123456 \
--authentication-code2 654321
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osIam User Unused Credentials Check
Nome da categoria na API: IAM_USER_UNUSED_CREDENTIALS_CHECK
Isso verifica se há senhas do IAM ou chaves de acesso ativas que não foram usadas nos últimos 90 dias.
As práticas recomendadas sugerem que você remova, desative ou faça a rotação de todas as credenciais não usadas por 90 dias ou mais. Isso reduz a janela de oportunidade para o uso de credenciais associadas a uma conta comprometida ou abandonada.
Recomendação: verifica se todos os usuários do AWS IAM têm senhas ou chaves de acesso ativas que não foram usadas em "maxCredentialUsageAge" dias (o padrão é 90). Para corrigir essa descoberta, siga estas etapas:Terraform
Para remover chaves de acesso expiradas criadas com o Terraform, remova o recurso aws_iam_access_key
do módulo e aplique a mudança.
Para redefinir a senha de login de um usuário do IAM, use -replace
ao executar terraform apply
.
Suponha o seguinte perfil de login do usuário
resource "aws_iam_user" "example" {
name = "test@example.com"
path = "/users/"
force_destroy = true
}
resource "aws_iam_user_login_profile" "example" {
user = aws_iam_user.example.name
pgp_key = "keybase:some_person_that_exists"
}
Execute o comando a seguir para redefinir a senha do perfil de login do usuário:
terraform apply -replace="aws_iam_user_login_profile.example"
Console da AWS
Para desativar as credenciais de contas inativas:
- Abra o console do IAM em https://console.aws.amazon.com/iam/.
- Escolha "Usuários".
- Escolha o nome do usuário com credenciais com mais de 90 dias ou que foram usadas pela última vez há mais de 90 dias.
- Escolha "Credenciais de segurança".
- Para cada credencial de login e chave de acesso que não foi usada há pelo menos 90 dias, escolha "Tornar inativa".
Para exigir uma nova senha dos usuários do console no próximo login:
- Abra o console do IAM em https://console.aws.amazon.com/iam/.
- Escolha "Usuários".
- Escolha o nome do usuário com credenciais com mais de 90 dias ou que foram usadas pela última vez há mais de 90 dias.
- Escolha "Credenciais de segurança".
- Em "Credenciais de login e senha do console", escolha "Gerenciar".
- Defina uma nova senha (gerada automaticamente ou personalizada).
- Marque a caixa "Exigir redefinição de senha".
- Escolha "Aplicar".
CLI da AWS
Para deixar as chaves de acesso inativas
aws iam update-access-key \
--access-key-id <value> \
--status "Inactive"
Para excluir chaves de acesso
aws iam delete-access-key \
--access-key-id <value>
Para redefinir a senha de um perfil de login de usuário
aws iam update-login-profile \
--user-name "test@example.com" \
--password <temporary_password> \
--password-reset-required
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osKms Cmk Not Scheduled For Deletion
Nome da categoria na API: KMS_CMK_NOT_SCHEDULED_FOR_DELETION
Esse controle verifica se as chaves do KMS estão programadas para exclusão. O controle falha se uma chave do KMS estiver programada para exclusão.
Não é possível recuperar chaves do KMS depois de excluídas. Os dados criptografados com uma chave do KMS também não podem ser recuperados permanentemente se a chave for excluída. Se dados significativos foram criptografados com uma chave do KMS programada para exclusão, considere descriptografar ou recriptografar os dados com uma nova chave do KMS, a menos que você esteja realizando uma exclusão criptográfica intencional.
Quando uma chave do KMS é programada para exclusão, um período de espera obrigatório é aplicado para permitir a reversão da exclusão, caso ela tenha sido programada por engano. O período de espera padrão é de 30 dias, mas pode ser reduzido para até 7 dias quando a chave do KMS é programada para exclusão. Durante o período de espera, a exclusão programada pode ser cancelada, e a chave do KMS não será excluída.
Para mais informações sobre como excluir chaves do KMS, consulte Excluir chaves do KMS no Guia do desenvolvedor do AWS Key Management Service.
Recomendação: verifica se todas as CMKs não estão programadas para exclusãoPara cancelar uma exclusão programada de chave do KMS, consulte Para cancelar a exclusão de chaves em "Programação e cancelamento da exclusão de chaves (console)" no Guia do desenvolvedor do AWS Key Management Service.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLambda Concurrency Check
Nome da categoria na API: LAMBDA_CONCURRENCY_CHECK
Verifica se a função do Lambda está configurada com um limite de execução simultânea no nível da função. A regra é NON_COMPLIANT se a função do Lambda não estiver configurada com um limite de execução simultânea no nível da função.
Recomendação: verifica se as funções do Lambda estão configuradas com limite de execução simultânea no nível da funçãoPara configurar um limite de execução simultânea no nível da função, consulte Como configurar a simultaneidade reservada na documentação do AWS Lambda.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLambda Dlq Check
Nome da categoria na API: LAMBDA_DLQ_CHECK
Verifica se uma função do Lambda está configurada com uma fila de mensagens mortas. A regra é NON_COMPLIANT se a função do Lambda não estiver configurada com uma fila de mensagens mortas.
Recomendação: verifica se as funções do Lambda estão configuradas com uma fila de mensagens mortasPara atualizar as funções do Lambda e usar DLQs, consulte Filas de mensagens inativas na documentação da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLambda Function Public Access Prohibited
Nome da categoria na API: LAMBDA_FUNCTION_PUBLIC_ACCESS_PROHIBITED
As práticas recomendadas da AWS recomendam que a função do Lambda não seja exposta publicamente. Essa política verifica todas as funções do Lambda implantadas em todas as regiões ativadas na sua conta e falha se elas estiverem configuradas para permitir acesso público.
Recomendação: verifica se a política anexada à função do Lambda proíbe o acesso público Para corrigir essa descoberta, siga estas etapas:Terraform
O exemplo a seguir mostra como usar o Terraform para provisionar uma função do IAM que restringe o acesso a uma função do Lambda e anexar essa função à função do Lambda.
resource "aws_iam_role" "iam_for_lambda" {
name = "iam_for_lambda"
assume_role_policy = <<EOF
{
"Version": "2012-10-17",
"Statement": [
{
"Action": "sts:AssumeRole",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Effect": "Allow",
"Sid": ""
}
]
}
EOF
}
resource "aws_lambda_function" "test_lambda" {
filename = "lambda_function_payload.zip"
function_name = "lambda_function_name"
role = aws_iam_role.iam_for_lambda.arn
handler = "index.test"
source_code_hash = filebase64sha256("lambda_function_payload.zip")
runtime = "nodejs12.x"
}
Console da AWS
Se uma função do Lambda falhar nesse controle, isso indica que a instrução de política baseada em recursos para a função do Lambda permite acesso público.
Para corrigir o problema, atualize a política para remover as permissões ou adicione a condição AWS:SourceAccount
. Só é possível atualizar a política baseada em recursos na API Lambda.
As instruções a seguir usam o console para analisar a política e a interface de linha de comando da AWS para remover as permissões.
Para ver a política baseada em recursos de uma função do Lambda
- Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.
- No painel de navegação, escolha "Funções".
- Escolha a função.
- Escolha "Permissões". A política baseada em recursos mostra as permissões aplicadas quando outra conta ou serviço da AWS tenta acessar a função.
- Analise a política baseada em recursos.
- Identifique a instrução de política com valores de campo "Principal" que tornam a política pública. Por exemplo, permitir
"*"
ou{ "AWS": "*" }
.
Não é possível editar a política no console. Para remover permissões da função, use o comando "remove-permission" da CLI da AWS.
Anote o valor do ID da instrução (Sid) que você quer remover.
CLI da AWS
Para usar a CLI e remover permissões de uma função do Lambda, execute o comando remove-permission
da seguinte maneira.
aws lambda remove-permission \
--function-name <value> \
--statement-id <value>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osLambda Inside Vpc
Nome da categoria na API: LAMBDA_INSIDE_VPC
Verifica se uma função do Lambda está em uma VPC. Talvez você veja descobertas com falha para recursos do Lambda@Edge.
Ele não avalia a configuração de roteamento de sub-rede da VPC para determinar a acessibilidade pública.
Recomendação: verifica se existem funções do Lambda em uma VPC Para corrigir essa descoberta, siga estas etapas:Console da AWS
Para configurar uma função que se conecte a sub-redes particulares em uma nuvem privada virtual (VPC) na sua conta:
- Abra o console do AWS Lambda em https://console.aws.amazon.com/lambda/.
- Navegue até "Funções" e selecione sua função do Lambda.
- Role a tela até "Rede" e selecione uma VPC com os requisitos de conectividade da função.
- Para executar suas funções no modo de alta disponibilidade, o Security Hub recomenda escolher pelo menos duas sub-redes.
- Escolha pelo menos um grupo de segurança que tenha os requisitos de conectividade da função.
- Escolha "Salvar".
Para mais informações, consulte a seção sobre como configurar uma função do Lambda para acessar recursos em uma VPC no Guia do desenvolvedor do AWS Lambda.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osMfa Delete Enabled S3 Buckets
Nome da categoria na API: MFA_DELETE_ENABLED_S3_BUCKETS
Depois que a exclusão da MFA é ativada no bucket sensível e classificado do S3, o usuário precisa ter duas formas de autenticação.
Recomendação: verifique se a exclusão de MFA está ativada em buckets S3Siga as etapas abaixo para ativar a exclusão de MFA em um bucket do S3.
Observação:
-Não é possível ativar a exclusão com MFA usando o Console de Gerenciamento da AWS. Use a CLI ou a API da AWS.
-Você precisa usar sua conta "raiz" para ativar a exclusão da MFA em buckets do S3.
Na linha de comando:
- Execute o comando s3api put-bucket-versioning
aws s3api put-bucket-versioning --profile my-root-profile --bucket Bucket_Name --versioning-configuration Status=Enabled,MFADelete=Enabled --mfa “arn:aws:iam::aws_account_id:mfa/root-account-mfa-device passcode”
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osMfa Enabled Root User Account
Nome da categoria na API: MFA_ENABLED_ROOT_USER_ACCOUNT
A conta de usuário "raiz" é a mais privilegiada em uma conta da AWS. A autenticação multifator (MFA) adiciona uma camada extra de proteção além de um nome de usuário e uma senha. Com a MFA ativada, quando um usuário faz login em um site da AWS, ele precisa informar o nome de usuário e a senha, além de um código de autenticação do dispositivo de MFA da AWS.
Observação:quando a MFA virtual é usada em contas "raiz", recomendamos que o dispositivo usado NÃO seja pessoal, mas sim um dispositivo móvel dedicado (tablet ou smartphone) gerenciado para ser mantido carregado e seguro, independente de qualquer dispositivo pessoal individual. ("MFA virtual não pessoal") Isso reduz os riscos de perder o acesso à MFA devido à perda ou troca de dispositivo ou se a pessoa proprietária do dispositivo não estiver mais empregada na empresa.
Recomendação: verifique se a autenticação multifator (MFA) está ativada para a conta de usuário "raiz"Faça o seguinte para estabelecer a MFA na conta de usuário "raiz":
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam/.
Observação: para gerenciar dispositivos de MFA da conta "raiz" da AWS, use as credenciais dessa conta para fazer login na AWS. Não é possível gerenciar dispositivos de MFA para a conta "raiz" usando outras credenciais.
- Escolha
Dashboard
e , emSecurity Status
, expandaActivate MFA
na sua conta raiz. - Escolher
Activate MFA
- No assistente, escolha o dispositivo
A virtual MFA
e depoisNext Step
. - O IAM gera e mostra informações de configuração para o dispositivo MFA virtual, incluindo um gráfico de QR code. O gráfico é uma representação da "chave de configuração secreta" disponível para entrada manual em dispositivos que não são compatíveis com QR codes.
- Abra o aplicativo de MFA virtual. Para uma lista de apps que podem ser usados para hospedar dispositivos virtuais de MFA, consulte Aplicativos de MFA virtual. Se o aplicativo de MFA virtual aceitar várias contas (vários dispositivos de MFA virtual), escolha a opção para criar uma nova conta (um novo dispositivo de MFA virtual).
- Determine se o app de MFA aceita QR codes e faça uma destas ações:
- Use o app para ler o QR code. Por exemplo, você pode escolher o ícone de câmera ou uma opção semelhante a "Ler código" e usar a câmera do dispositivo para ler o código.
- No assistente "Gerenciar dispositivo de MFA", escolha "Mostrar chave secreta para configuração manual" e digite a chave de configuração secreta no seu aplicativo de MFA.
Quando você terminar, o dispositivo virtual de MFA vai começar a gerar senhas únicas.
No assistente "Gerenciar dispositivo MFA", na caixa "Código de autenticação 1", digite a senha única que aparece no dispositivo MFA virtual. Aguarde até 30 segundos para que o dispositivo gere uma nova senha única. Em seguida, digite a segunda senha única na caixa "Código de autenticação 2". Escolha "Atribuir MFA virtual".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osMulti Factor Authentication Mfa Enabled All Iam Users Console
Nome da categoria na API: MULTI_FACTOR_AUTHENTICATION_MFA_ENABLED_ALL_IAM_USERS_CONSOLE
A autenticação multifator (MFA) adiciona uma camada extra de garantia de autenticação além das credenciais tradicionais. Com a MFA ativada, quando um usuário faz login no console da AWS, ele precisa informar o nome de usuário e a senha, além de um código de autenticação do token de MFA físico ou virtual. Recomendamos que a MFA seja ativada para todas as contas que têm uma senha do console.
Recomendação: verifique se a autenticação multifator (MFA) está ativada para todos os usuários do IAM que têm uma senha do console Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e abra o console do IAM em "https://console.aws.amazon.com/iam/".
- No painel à esquerda, selecione
Users
. - Na lista
User Name
, escolha o nome do usuário da MFA desejado. - Escolha a guia
Security Credentials
e selecioneManage MFA Device
. - No
Manage MFA Device wizard
, escolha o dispositivoVirtual MFA
e selecioneContinue
.
O IAM gera e mostra informações de configuração para o dispositivo MFA virtual, incluindo um gráfico de QR code. O gráfico é uma representação da "chave de configuração secreta" disponível para entrada manual em dispositivos que não são compatíveis com QR codes.
- Abra o aplicativo de MFA virtual. Para uma lista de apps que podem ser usados para hospedar dispositivos de MFA virtual, consulte "Aplicativos de MFA virtual" em https://aws.amazon.com/iam/details/mfa/#Virtual_MFA_Applications. Se o aplicativo de MFA virtual aceitar várias contas (vários dispositivos de MFA virtual), escolha a opção para criar uma nova conta (um novo dispositivo de MFA virtual).
- Determine se o app de MFA aceita QR codes e faça uma destas ações:
- Use o app para ler o QR code. Por exemplo, você pode escolher o ícone de câmera ou uma opção semelhante a "Ler código" e usar a câmera do dispositivo para ler o código.
- No assistente "Gerenciar dispositivo de MFA", escolha "Mostrar chave secreta para configuração manual" e digite a chave de configuração secreta no seu aplicativo de MFA.
Quando você terminar, o dispositivo virtual de MFA vai começar a gerar senhas únicas.
-
No
Manage MFA Device wizard
, noMFA Code 1 box
, digite oone-time password
que aparece no dispositivo virtual de MFA. Aguarde até 30 segundos para que o dispositivo gere uma nova senha única. Em seguida, digite o segundoone-time password
noMFA Code 2 box
. -
Clique em
Assign MFA
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNo Network Acls Allow Ingress 0 0 0 0 Remote Server Administration
Nome da categoria na API: NO_NETWORK_ACLS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION
A função de lista de controle de acesso à rede (NACL) oferece filtragem sem estado do tráfego de rede de entrada e saída para recursos da AWS. Recomendamos que nenhuma NACL permita acesso de entrada irrestrito a portas de administração de servidor remoto, como SSH para a porta 22
e RDP para a porta 3389
, usando os protocolos TDP (6), UDP (17) ou ALL (-1).
Console da AWS
Faça o seguinte:
1. Faça login no console de gerenciamento da AWS em https://console.aws.amazon.com/vpc/home
2. No painel à esquerda, clique em Network ACLs
3. Para cada ACL de rede a ser corrigida, faça o seguinte:
- Selecione a ACL de rede
- Clique na guia Inbound Rules
- Clique em Edit inbound rules
- A) Atualize o campo "Origem" para um intervalo diferente de 0.0.0.0/0 ou B) Clique em Delete
para remover a regra de entrada ofensiva
- Clique em Save
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNo Root User Account Access Key Exists
Nome da categoria na API: NO_ROOT_USER_ACCOUNT_ACCESS_KEY_EXISTS
A conta de usuário "raiz" é a mais privilegiada em uma conta da AWS. As chaves de acesso da AWS oferecem acesso programático a uma determinada conta da AWS. Recomendamos que todas as chaves de acesso associadas à conta de usuário "raiz" sejam excluídas.
Recomendação: verifique se não há uma chave de acesso da conta de usuário "raiz" Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS como "root" e abra o console do IAM em https://console.aws.amazon.com/iam/.
- Clique em
<root_account>
no canto superior direito e selecioneMy Security Credentials
na lista suspensa. - Na tela pop-up, clique em
Continue to Security Credentials
. - Clique em
Access Keys
(ID da chave de acesso e chave de acesso secreta). - Na coluna
Status
(se houver chaves ativas). - Clique em
Delete
. Observação: não é possível recuperar chaves excluídas.
Observação: embora uma chave possa ser desativada, ela ainda vai aparecer no comando da CLI do procedimento de auditoria e pode levar a uma sinalização falsa de não conformidade.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNo Security Groups Allow Ingress 0 0 0 0 Remote Server Administration
Nome da categoria na API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_0_0_0_REMOTE_SERVER_ADMINISTRATION
Os grupos de segurança oferecem filtragem com estado do tráfego de rede de entrada e saída para recursos da AWS. Recomendamos que nenhum grupo de segurança permita acesso de entrada irrestrito a portas de administração remotas do servidor, como SSH para a porta 22
e RDP para a porta 3389
, usando os protocolos TDP (6), UDP (17) ou ALL (-1).
Siga estas etapas para implementar o estado prescrito:
- Faça login no console de gerenciamento da AWS em https://console.aws.amazon.com/vpc/home
- No painel à esquerda, clique em
Security Groups
- Para cada grupo de segurança, faça o seguinte:
- Selecione o grupo de segurança
- Clique na guia
Inbound Rules
. - Clique no botão
Edit inbound rules
. - Identificar as regras a serem editadas ou removidas
- A) Atualize o campo "Origem" para um intervalo diferente de 0.0.0.0/0 ou B) Clique em
Delete
para remover a regra de entrada ofensiva. - Clique em
Save rules
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osNo Security Groups Allow Ingress 0 Remote Server Administration
Nome da categoria na API: NO_SECURITY_GROUPS_ALLOW_INGRESS_0_REMOTE_SERVER_ADMINISTRATION
Os grupos de segurança oferecem filtragem com estado do tráfego de rede de entrada e saída para recursos da AWS. Recomendamos que nenhum grupo de segurança permita acesso de entrada irrestrito a portas de administração de servidor remoto, como SSH para a porta 22
e RDP para a porta 3389
.
Siga estas etapas para implementar o estado prescrito:
- Faça login no console de gerenciamento da AWS em https://console.aws.amazon.com/vpc/home
- No painel à esquerda, clique em
Security Groups
- Para cada grupo de segurança, faça o seguinte:
- Selecione o grupo de segurança
- Clique na guia
Inbound Rules
. - Clique no botão
Edit inbound rules
. - Identificar as regras a serem editadas ou removidas
- A) Atualize o campo "Origem" para um intervalo diferente de ::/0 ou B) Clique em
Delete
para remover a regra de entrada ofensiva. - Clique em
Save rules
.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osOne Active Access Key Available Any Single Iam User
Nome da categoria na API: ONE_ACTIVE_ACCESS_KEY_AVAILABLE_ANY_SINGLE_IAM_USER
As chaves de acesso são credenciais de longo prazo para um usuário do IAM ou o usuário "root" da conta da AWS. É possível usar chaves de acesso para assinar solicitações programáticas à CLI da AWS ou à API da AWS (diretamente ou usando o SDK da AWS).
Recomendação: verifique se há apenas uma chave de acesso ativa disponível para cada usuário do IAM Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e acesse o painel do IAM em
https://console.aws.amazon.com/iam/
. - No painel de navegação à esquerda, escolha
Users
. - Clique no nome do usuário da IAM que você quer examinar.
- Na página de configuração do usuário do IAM, selecione a guia
Security Credentials
. - Na seção
Access Keys
, escolha uma chave de acesso com menos de 90 dias. Essa deve ser a única chave ativa usada por esse usuário do IAM para acessar recursos da AWS de forma programática. Teste os aplicativos para garantir que a chave de acesso escolhida esteja funcionando. - Na mesma seção
Access Keys
, identifique as chaves de acesso não operacionais (além da escolhida) e desative-as clicando no linkMake Inactive
. - Se você receber a caixa de confirmação
Change Key Status
, clique emDeactivate
para desativar a chave selecionada. - Repita as etapas de 3 a 7 para cada usuário do IAM na sua conta da AWS.
CLI da AWS
-
Usando as informações do usuário e da chave de acesso do IAM fornecidas em
Audit CLI
, escolha uma chave de acesso com menos de 90 dias. Essa deve ser a única chave ativa usada por esse usuário do IAM para acessar recursos da AWS de forma programática. Teste os aplicativos para garantir que a chave de acesso escolhida esteja funcionando. -
Execute o comando
update-access-key
abaixo usando o nome de usuário do IAM e os IDs de chave de acesso não operacional para desativar as chaves desnecessárias. Consulte a seção "Auditoria" para identificar o ID da chave de acesso desnecessário do usuário do IAM selecionado.
Observação: o comando não retorna nenhuma saída:
aws iam update-access-key --access-key-id <access-key-id> --status Inactive --user-name <user-name>
- Para confirmar se o par de chaves de acesso selecionado foi
deactivated
, execute o comando de auditorialist-access-keys
novamente para esse usuário do IAM:
aws iam list-access-keys --user-name <user-name>
- A resposta ao comando deve expor os metadados de cada chave de acesso associada ao usuário do IAM. Se o par de chaves não operacionais
Status
estiver definido comoInactive
, a chave foi desativada e a configuração de acesso do usuário do IAM agora segue essa recomendação.
- Repita as etapas de 1 a 3 para cada usuário do IAM na sua conta da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osPublic Access Given Rds Instance
Nome da categoria na API: PUBLIC_ACCESS_GIVEN_RDS_INSTANCE
Verifique se as instâncias de banco de dados do RDS provisionadas na sua conta da AWS restringem o acesso não autorizado para minimizar os riscos de segurança. Para restringir o acesso a qualquer instância de banco de dados do RDS acessível publicamente, desative a flag "Acessível publicamente" do banco de dados e atualize o grupo de segurança da VPC associado à instância.
Recomendação: verifique se o acesso público não foi concedido à instância do RDS Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no console de gerenciamento da AWS e acesse o painel do RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, no painel do RDS, clique em
Databases
. - Selecione a instância do RDS que você quer atualizar.
- Clique em
Modify
no menu superior do painel. - No painel "Modificar instância de banco de dados", na seção
Connectivity
, clique emAdditional connectivity configuration
e atualize o valor dePublicly Accessible
para "Não acessível publicamente" para restringir o acesso público. Siga as etapas abaixo para atualizar as configurações de sub-rede:
- Selecione a guiaConnectivity and security
e clique no valor do atributo da VPC na seçãoNetworking
.
- Selecione a guiaDetails
no painel inferior do painel da VPC e clique em "Valor do atributo de configuração da tabela de rotas".
- Na página de detalhes da tabela de rotas, selecione a guia "Rotas" no painel inferior do painel e clique emEdit routes
.
- Na página "Editar rotas", atualize o destino do destino, que está definido comoigw-xxxxx
, e clique em rotasSave
. - No painel "Modificar instância de banco de dados", clique em
Continue
. Na seção "Programação de modificações", realize uma das seguintes ações com base nos seus requisitos:
- Selecione "Aplicar durante a próxima janela de manutenção programada" para aplicar as mudanças automaticamente durante a próxima janela de manutenção programada.
- Selecione "Aplicar imediatamente" para aplicar as mudanças na hora. Com essa opção, todas as modificações pendentes serão aplicadas de forma assíncrona assim que possível, independente da configuração da janela de manutenção para essa instância de banco de dados do RDS. Todas as mudanças disponíveis na fila de modificações pendentes também são aplicadas. Se alguma das modificações pendentes exigir tempo de inatividade, escolher essa opção poderá causar um tempo de inatividade inesperado para o aplicativo. - Repita as etapas de 3 a 6 para cada instância do RDS disponível na região atual.
- Mude a região da AWS na barra de navegação para repetir o processo em outras regiões.
CLI da AWS
- Execute o comando
describe-db-instances
para listar todos os identificadores de nomes de banco de dados do RDS disponíveis na região da AWS selecionada:
aws rds describe-db-instances --region <region-name> --query 'DBInstances[*].DBInstanceIdentifier'
- A resposta ao comando precisa retornar o identificador de cada instância de banco de dados.
- Execute o comando
modify-db-instance
para modificar a configuração da instância do RDS selecionada. Em seguida, use o comando a seguir para desativar a flagPublicly Accessible
nas instâncias do RDS selecionadas. Esse comando usa a flag "apply-immediately". Se você quiserto avoid any downtime --no-apply-immediately flag can be used
:
aws rds modify-db-instance --region <region-name> --db-instance-identifier <db-name> --no-publicly-accessible --apply-immediately
- A resposta ao comando vai mostrar a configuração
PubliclyAccessible
em valores pendentes e será aplicada no horário especificado. - No momento, não é possível atualizar o destino do gateway da Internet usando a CLI da AWS. Para atualizar informações sobre o gateway da Internet, use o procedimento do console da AWS.
- Repita as etapas de 1 a 5 para cada instância do RDS provisionada na região atual.
- Mude a região da AWS usando o filtro --region para repetir o processo em outras regiões.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRds Enhanced Monitoring Enabled
Nome da categoria na API: RDS_ENHANCED_MONITORING_ENABLED
O monitoramento avançado fornece métricas em tempo real sobre o sistema operacional em que a instância do RDS é executada, usando um agente instalado na instância.
Para mais detalhes, consulte Monitorar métricas do SO com o Enhanced Monitoring.
Recomendação: verifica se o monitoramento avançado está ativado em todas as instâncias de banco de dados do RDS Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, ative o monitoramento avançado nas instâncias do RDS da seguinte maneira:
Crie um papel do IAM para o RDS:
resource "aws_iam_role" "rds_logging" {
name = "CustomRoleForRDSMonitoring"
assume_role_policy = jsonencode({
Version = "2012-10-17"
Statement = [
{
Action = "sts:AssumeRole"
Effect = "Allow"
Sid = "CustomRoleForRDSLogging"
Principal = {
Service = "monitoring.rds.amazonaws.com"
}
},
]
})
}
Recupere a política gerenciada da AWS para o monitoramento avançado do RDS:
data "aws_iam_policy" "rds_logging" {
name = "AmazonRDSEnhancedMonitoringRole"
}
Anexe a política à função:
resource "aws_iam_policy_attachment" "rds_logging" {
name = "AttachRdsLogging"
roles = [aws_iam_role.rds_logging.name]
policy_arn = data.aws_iam_policy.rds_logging.arn
}
Defina um intervalo e uma função de monitoramento ARN para a instância do RDS que está violando a política para ativar o monitoramento avançado:
resource "aws_db_instance" "default" {
identifier = "test-rds"
allocated_storage = 10
engine = "mysql"
engine_version = "5.7"
instance_class = "db.t3.micro"
db_name = "mydb"
username = "foo"
password = "foobarbaz"
parameter_group_name = "default.mysql5.7"
skip_final_snapshot = true
monitoring_interval = 60
monitoring_role_arn = aws_iam_role.rds_logging.arn
}
Console da AWS
É possível ativar o monitoramento avançado ao criar uma instância de banco de dados, um cluster de banco de dados Multi-AZ ou uma réplica de leitura, ou ao modificar uma instância de banco de dados ou um cluster de banco de dados Multi-AZ. Se você modificar uma instância de banco de dados para ativar o monitoramento avançado, não será necessário reiniciá-la para que a mudança entre em vigor.
É possível ativar o monitoramento avançado no console do RDS ao realizar uma das seguintes ações na página "Bancos de dados":
- Crie uma instância de banco de dados ou um cluster de banco de dados Multi-AZ. Escolha "Criar banco de dados".
- Crie uma réplica de leitura: escolha "Ações" e "Criar réplica de leitura".
- Modificar uma instância de banco de dados ou um cluster de banco de dados Multi-AZ: escolha "Modificar".
Para ativar ou desativar o monitoramento avançado no console do RDS
- Role a tela até "Configuração adicional".
- No Monitoring, escolha "Ativar o monitoramento aprimorado" para sua instância de banco de dados ou réplica de leitura. Para desativar o monitoramento avançado, escolha "Desativar monitoramento avançado".
- Defina a propriedade "Função do Monitoring" como a função do IAM que você criou para permitir que o Amazon RDS se comunique com o Amazon CloudWatch Logs, ou escolha "Padrão" para que o RDS crie uma função chamada "rds-monitoring-role".
- Defina a propriedade "Granularidade" como o intervalo, em segundos, entre os pontos em que as métricas são coletadas para sua instância de banco de dados ou réplica de leitura. A propriedade "Granularidade" pode ser definida como um dos seguintes valores: 1, 5, 10, 15, 30 ou 60. O console do RDS é atualizado a cada 5 segundos. Se você definir a granularidade como 1 segundo no console do RDS, ainda verá métricas atualizadas apenas a cada 5 segundos. É possível recuperar atualizações de métricas de um segundo usando o CloudWatch Logs.
CLI da AWS
Crie o papel do IAM do RDS:
aws iam create-role \
--role-name "CustomRoleForRDSMonitoring" \
--assume-role-policy-document file://rds-assume-role.json
Anexe a política AmazonRDSEnhancedMonitoringRole
à função:
aws iam attach-role-policy \
--role-name "CustomRoleForRDSMonitoring"\
--policy-arn "arn:aws:iam::aws:policy/service-role/AmazonRDSEnhancedMonitoringRole"
Modifique a instância do RDS para ativar o monitoramento avançado definindo --monitoring-interval
e --monitoring-role-arn
:
aws rds modify-db-instance \
--db-instance-identifier "test-rds" \
--monitoring-interval 30 \
--monitoring-role-arn "arn:aws:iam::<account_id>:role/CustomRoleForRDSMonitoring"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRds Instance Deletion Protection Enabled
Nome da categoria na API: RDS_INSTANCE_DELETION_PROTECTION_ENABLED
Ativar a proteção contra exclusão de instâncias é uma camada extra de proteção contra exclusão acidental de bancos de dados ou exclusão por uma entidade não autorizada.
Enquanto a proteção contra exclusão está ativada, não é possível excluir uma instância de banco de dados do RDS. Antes que uma solicitação de exclusão seja concluída, a proteção contra exclusão precisa ser desativada.
Recomendação: verifica se a proteção contra exclusão está ativada em todas as instâncias do RDS Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, defina deletion_protection
como true
no recurso aws_db_instance
.
resource "aws_db_instance" "example" {
# ... other configuration ...
deletion_protection = true
}
Console da AWS
Para ativar a proteção contra exclusão de uma instância de banco de dados do RDS
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Bancos de dados" e selecione a instância de banco de dados que você quer modificar.
- Escolha "Modificar".
- Em "Proteção contra exclusão", escolha "Ativar proteção contra exclusão".
- Escolha "Continuar".
- Em "Programação de modificações", escolha quando aplicar as mudanças. As opções são "Aplicar durante a próxima janela de manutenção programada" ou "Aplicar imediatamente".
- Escolha "Modificar instância de banco de dados".
CLI da AWS
O mesmo se aplica à CLI da AWS. Defina --deletion-protection
como mostrado abaixo.
aws rds modify-db-instance \
--db-instance-identifier = "test-rds" \
--deletion-protection
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRds In Backup Plan
Nome da categoria na API: RDS_IN_BACKUP_PLAN
Essa verificação avalia se as instâncias do Amazon RDS DB estão cobertas por um plano de backup. Esse controle falha se uma instância de banco de dados do RDS não estiver coberta por um plano de backup.
O AWS Backup é um serviço de backup totalmente gerenciado que centraliza e automatiza o backup de dados em todos os serviços da AWS. Com o AWS Backup, é possível criar políticas de backup chamadas de planos de backup. Use esses planos para definir seus requisitos de backup, como a frequência com que os dados são salvos e por quanto tempo eles são mantidos. Incluir instâncias de banco de dados do RDS em um plano de backup ajuda a proteger seus dados contra perdas ou exclusões não intencionais.
Recomendação: as instâncias de banco de dados do RDS precisam estar cobertas por um plano de backup Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, defina backup_retention_period
com um valor maior que 7
no recurso aws_db_instance
.
resource "aws_db_instance" "example" {
# ... other Configuration ...
backup_retention_period = 7
}
Console da AWS
Para ativar backups automáticos imediatamente
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Bancos de dados" e selecione a instância de banco de dados que você quer modificar.
- Escolha "Modificar" para abrir a página "Modificar instância de banco de dados".
- Em "Período de retenção do backup", escolha um valor positivo diferente de zero, por exemplo, 30 dias, e clique em "Continuar".
- Selecione a seção "Programação de modificações" e escolha quando aplicar as modificações: você pode escolher "Aplicar durante a próxima janela de manutenção programada" ou "Aplicar imediatamente".
- Em seguida, na página de confirmação, escolha "Modificar instância de banco de dados" para salvar as mudanças e ativar os backups automáticos.
CLI da AWS
O mesmo se aplica à CLI da AWS. Para ativar os backups automáticos, mude o backup-retention-period
para um valor maior que 0
(padrão).
aws rds modify-db-instance --db-instance-identifier "test-rds" --backup-retention-period 7
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRds Logging Enabled
Nome da categoria na API: RDS_LOGGING_ENABLED
Isso verifica se os seguintes registros do Amazon RDS estão ativados e enviados para o CloudWatch.
Os bancos de dados do RDS precisam ter os registros relevantes ativados. O registro em banco de dados fornece registros detalhados de solicitações feitas ao RDS. Os registros do banco de dados podem ajudar com auditorias de segurança e acesso e a diagnosticar problemas de disponibilidade.
Recomendação: verifica se os registros exportados foram ativados em todas as instâncias do RDS DB Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_db_instance" "example" {
# ... other configuration for MySQL ...
enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
parameter_group_name = aws_db_parameter_group.example.name
}
resource "aws_db_parameter_group" "example" {
name = "${aws_db_instance.example.dbInstanceIdentifier}-parameter-group"
family = "mysql5.7"
parameter {
name = "general_log"
value = 1
}
parameter {
name = "slow_query_log"
value = 1
}
parameter {
name = "log_output"
value = "FILE"
}
}
Para o MariaDB, crie também um grupo de opções personalizado e defina option_group_name
no recurso aws_db_instance
.
resource "aws_db_instance" "example" {
# ... other configuration for MariaDB ...
enabled_cloudwatch_logs_exports = ["audit", "error", "general", "slowquery"]
parameter_group_name = aws_db_parameter_group.example.name
option_group_name = aws_db_option_group.example.name
}
resource "aws_db_option_group" "example" {
name = "mariadb-option-group-for-logs"
option_group_description = "MariaDB Option Group for Logs"
engine_name = "mariadb"
option {
option_name = "MARIADB_AUDIT_PLUGIN"
option_settings {
name = "SERVER_AUDIT_EVENTS"
value = "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
}
}
}
Console da AWS
Para criar um grupo de parâmetros de banco de dados personalizado
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Grupos de parâmetros".
- Escolha "Criar grupo de parâmetros".
- Na lista "Família do grupo de parâmetros", escolha uma família de grupos de parâmetros do banco de dados.
- Na lista "Tipo", escolha "Grupo de parâmetros do banco de dados".
- Em "Nome do grupo", insira o nome do novo grupo de parâmetros do banco de dados.
- Em "Descrição", insira uma descrição para o novo grupo de parâmetros do banco de dados.
- Escolha "Criar".
Para criar um grupo de opções para o registro do MariaDB usando o console
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Grupos de opções".
- Escolha "Criar grupo".
- Na janela "Criar grupo de opções", forneça o seguinte:
* Nome: precisa ser exclusivo na sua conta da AWS. Apenas letras, dígitos e hífens.
* Descrição: usada apenas para fins de exibição.
* Mecanismo: selecione seu mecanismo de banco de dados.
* Versão principal do mecanismo: selecione a versão principal do seu mecanismo de banco de dados. - Escolha "Criar".
- Escolha o nome do grupo de opções que você acabou de criar.
- Escolha a opção "Adicionar".
- Escolha MARIADB_AUDIT_PLUGIN na lista "Nome da opção".
- Defina SERVER_AUDIT_EVENTS como CONNECT, QUERY, TABLE, QUERY_DDL, QUERY_DML, QUERY_DCL.
- Escolha a opção "Adicionar".
Para publicar registros do SQL Server DB, Oracle DB ou PostgreSQL no CloudWatch Logs pelo Console de Gerenciamento da AWS
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Bancos de dados".
- Escolha a instância de banco de dados que você quer modificar.
- Escolha "Modificar".
- Em "Exportações de registros", escolha todos os arquivos de registros para começar a publicar no CloudWatch Logs.
- As exportações de registros estão disponíveis apenas para versões de mecanismos de banco de dados que oferecem suporte à publicação no CloudWatch Logs.
- Escolha "Continuar". Em seguida, na página de resumo, escolha "Modificar instância de banco de dados".
Para aplicar um novo grupo de parâmetros ou opções do banco de dados a uma instância de banco de dados do RDS
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Bancos de dados".
- Escolha a instância de banco de dados que você quer modificar.
- Escolha "Modificar".
- Em "Opções de banco de dados", mude o grupo de parâmetros e o grupo de opções do banco de dados conforme necessário.
- Quando terminar as mudanças, escolha "Continuar". Confira o resumo das modificações.
- Escolha "Modificar instância de banco de dados" para salvar as mudanças.
CLI da AWS
Recupere as famílias de mecanismos e escolha aquela que corresponde ao mecanismo e à versão da instância de banco de dados.
aws rds describe-db-engine-versions \
--query "DBEngineVersions[].DBParameterGroupFamily" \
--engine "mysql"
Crie um grupo de parâmetros de acordo com o mecanismo e a versão.
aws rds create-db-parameter-group \
--db-parameter-group-name "rds-mysql-parameter-group" \
--db-parameter-group-family "mysql5.7" \
--description "Example parameter group for logs"
Crie um arquivo rds-parameters.json
com os parâmetros necessários de acordo com o mecanismo de banco de dados. Este exemplo usa o MySQL 5.7.
[
{
"ParameterName": "general_log",
"ParameterValue": "1",
"ApplyMethod": "immediate"
},
{
"ParameterName": "slow_query_log",
"ParameterValue": "1",
"ApplyMethod": "immediate"
},
{
"ParameterName": "log_output",
"ParameterValue": "FILE",
"ApplyMethod": "immediate"
}
]
Modifique o grupo de parâmetros para adicionar os parâmetros de acordo com o mecanismo de banco de dados. Este exemplo usa o MySQL 5.7.
aws rds modify-db-parameter-group \
--db-parameter-group-name "rds-mysql-parameter-group" \
--parameters file://rds-parameters.json
Modifique a instância de banco de dados para associar o grupo de parâmetros.
aws rds modify-db-instance \
--db-instance-identifier "test-rds" \
--db-parameter-group-name "rds-mysql-parameter-group"
Além disso, para o MariaDB, crie um grupo de opções da seguinte maneira.
aws rds create-option-group \
--option-group-name "rds-mariadb-option-group" \
--engine-name "mariadb" \
--major-engine-version "10.6" \
--option-group-description "Option group for MariaDB logs"
Crie um arquivo rds-mariadb-options.json
da seguinte maneira.
{
"OptionName": "MARIADB_AUDIT_PLUGIN",
"OptionSettings": [
{
"Name": "SERVER_AUDIT_EVENTS",
"Value": "CONNECT,QUERY,TABLE,QUERY_DDL,QUERY_DML,QUERY_DCL"
}
]
}
Adicione a opção ao grupo de opções.
aws rds add-option-to-option-group \
--option-group-name "rds-mariadb-option-group" \
--options file://rds-mariadb-options.json
Associe o grupo de opções à instância de banco de dados modificando a instância do MariaDB.
aws rds modify-db-instance \
--db-instance-identifier "rds-test-mariadb" \
--option-group-name "rds-mariadb-option-group"
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRds Multi Az Support
Nome da categoria na API: RDS_MULTI_AZ_SUPPORT
As instâncias de banco de dados do RDS precisam ser configuradas para várias zonas de disponibilidade (AZs). Isso garante a disponibilidade dos dados armazenados. As implantações em várias AZs permitem failover automático se houver um problema com a disponibilidade da zona e durante a manutenção regular do RDS.
Recomendação: verifica se a alta disponibilidade foi ativada em todas as instâncias do RDS DB Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, defina multi_az
como "true" no recurso aws_db_instance
.
resource "aws_db_instance" "example" {
# ... other configuration ...
multi_az = true
}
Console da AWS
Para ativar várias zonas de disponibilidade em uma instância de banco de dados
- Abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.
- No painel de navegação, escolha "Bancos de dados" e selecione a instância de banco de dados que você quer modificar.
- Escolha "Modificar". A página "Modificar instância de BD" é exibida.
- Em "Especificações da instância", defina a implantação em várias zonas de disponibilidade como "Sim".
- Escolha "Continuar" e confira o resumo das modificações.
- (Opcional) Escolha "Aplicar imediatamente" para aplicar as mudanças imediatamente. Escolher essa opção pode causar uma interrupção em alguns casos. Para mais informações, consulte "Usar a configuração "Aplicar imediatamente" no guia do usuário do Amazon RDS".
- Na página de confirmação, revise as mudanças. Se estiverem corretas, escolha "Modificar instância de banco de dados" para salvar as mudanças.
CLI da AWS
O mesmo se aplica à CLI da AWS. Ative o suporte a várias AZs fornecendo a opção --multi-az
.
modify-db-instance
--db-instance-identifier "test-rds" \
--multi-az
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRedshift Cluster Configuration Check
Nome da categoria na API: REDSHIFT_CLUSTER_CONFIGURATION_CHECK
Isso verifica os elementos essenciais de um cluster do Redshift: criptografia em repouso, geração de registros e tipo de nó.
Esses itens de configuração são importantes para manter um cluster do Redshift seguro e observável.
Recomendação: verifica se todos os clusters do Redshift têm criptografia em repouso, geração de registros e tipo de nó. Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_kms_key" "redshift_encryption" {
description = "Used for Redshift encryption configuration"
enable_key_rotation = true
}
resource "aws_redshift_cluster" "example" {
# ... other configuration ...
encrypted = true
kms_key_id = aws_kms_key.redshift_encryption.id
logging {
enable = true
log_destination_type = "cloudwatch"
log_exports = ["connectionlog", "userlog", "useractivitylog"]
}
}
Console da AWS
Para ativar o registro de auditoria do cluster
- Abra o console do Amazon Redshift em https://console.aws.amazon.com/redshift/.
- No menu de navegação, escolha "Clusters" e selecione o nome do cluster que você quer modificar.
- Escolha "Propriedades".
- Escolha "Editar" e "Editar registro de auditoria".
- Defina "Configurar geração de registros de auditoria" como "Ativar", defina "Tipo de exportação de registros" como "CloudWatch (recomendado)" e escolha os registros a serem exportados.
Para usar o AWS S3 e gerenciar os registros de auditoria do Redshift, consulte Redshift - Database audit logging (em inglês) na documentação da AWS.
- Escolha "Salvar alterações".
Para modificar a criptografia de banco de dados em um cluster
- Faça login no AWS Management Console e abra o console do Amazon Redshift em https://console.aws.amazon.com/redshift/.
- No menu de navegação, escolha "Clusters" e selecione o cluster em que você quer modificar a criptografia.
- Escolha "Propriedades".
- Escolha "Editar" e "Editar criptografia".
- Escolha a criptografia a ser usada (KMS ou HSM) e forneça:
- Para o KMS: chave a ser usada
- Para HSM: conexão e certificado do cliente
CLI da AWS
- Criar uma chave do KMS e recuperar o ID dela
aws kms create-key \
--description "Key to encrypt Redshift Clusters"
- Modificar o cluster
aws redshift modify-cluster \
--cluster-identifiers "test-redshift-cluster" \
--encrypted \
--kms-key-id <value>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRedshift Cluster Maintenancesettings Check
Nome da categoria na API: REDSHIFT_CLUSTER_MAINTENANCESETTINGS_CHECK
Os upgrades automáticos de versão principal acontecem de acordo com a janela de manutenção
Recomendação: verifique se todos os clusters do Redshift têm allowVersionUpgrade ativado e preferredMaintenanceWindow e automatedSnapshotRetentionPeriod definidos Para corrigir essa descoberta, siga estas etapas:Terraform
Essa verificação está em conformidade com todos os valores padrão fornecidos pelo Terraform. Em caso de falha no cluster do Redshift, revise os requisitos e remova as substituições padrão dos seguintes atributos do recurso aws_redshift_cluster
.
resource "aws_redshift_cluster" "example" {
# ...other configuration ...
# The following values are compliant and set by default if omitted.
allow_version_upgrade = true
preferred_maintenance_window = "sat:10:00-sat:10:30"
automated_snapshot_retention_period = 1
}
Console da AWS
Ao criar um cluster do Redshift pelo console da AWS, os valores padrão já estão em conformidade com esse controle.
Para mais informações, consulte Gerenciar clusters usando o console.
CLI da AWS
Para corrigir esse controle usando a CLI da AWS, faça o seguinte:
aws redshift modify-cluster \
--cluster-identifier "test-redshift-cluster" \
--allow-version-upgrade
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRedshift Cluster Public Access Check
Nome da categoria na API: REDSHIFT_CLUSTER_PUBLIC_ACCESS_CHECK
O atributo "PubliclyAccessible" da configuração do cluster do Amazon Redshift indica se o cluster está acessível publicamente. Quando o cluster é configurado com "PubliclyAccessible" definido como "true", ele é uma instância voltada para a Internet com um nome DNS resolvível publicamente, que é resolvido para um endereço IP público.
Quando o cluster não está acessível publicamente, ele é uma instância interna com um nome DNS que aponta para um endereço IP particular. A menos que você queira que o cluster seja acessível publicamente, ele não deve ser configurado com "PubliclyAccessible" definido como "true".
Recomendação: verifica se os clusters do Redshift são acessíveis publicamente Para corrigir essa descoberta, siga estas etapas:Terraform
Para corrigir esse controle, é necessário modificar o recurso de cluster do Redshift e definir publicly_accessible
como false
. O valor padrão é true
.
resource "aws_redshift_cluster" "example" {
# ... other configuration ...
publicly_accessible = false
}
Console da AWS
Para desativar o acesso público a um cluster do Amazon Redshift
- Abra o console do Amazon Redshift em https://console.aws.amazon.com/redshift/.
- No menu de navegação, escolha "Clusters" e selecione o nome do cluster com o grupo de segurança que você quer modificar.
- Escolha "Ações" e, em seguida, "Modificar configuração de acesso público".
- Em "Permitir que instâncias e dispositivos fora da VPC se conectem ao banco de dados pelo endpoint do cluster", escolha "Não".
- Escolha "Confirmar".
CLI da AWS
Use o comando modify-cluster
para definir --no-publicly-accessible
.
aws redshift modify-cluster \
--cluster-identifier "test-redshift-cluster" \
--no-publicly-accessible
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRestricted Common Ports
Nome da categoria na API: RESTRICTED_COMMON_PORTS
Isso verifica se o tráfego de entrada irrestrito para os grupos de segurança está acessível às portas especificadas que têm o maior risco. Esse controle falha se alguma das regras em um grupo de segurança permitir o tráfego de entrada de "0.0.0.0/0" ou "::/0" para essas portas.
O acesso irrestrito (0.0.0.0/0) aumenta as oportunidades de atividades maliciosas, como invasão, ataques de negação de serviço e perda de dados.
Os grupos de segurança oferecem filtragem com estado do tráfego de rede de entrada e saída para recursos da AWS. Nenhum grupo de segurança pode permitir acesso de entrada irrestrito às seguintes portas:
- 20, 21 (FTP)
- 22 (SSH)
- 23 (Telnet)
- 25 (SMTP)
- 110 (POP3)
- 135 (RPC)
- 143 (IMAP)
- 445 (CIFS)
- 1433, 1434 (MSSQL)
- 3000 (frameworks de desenvolvimento da Web em Go, Node.js e Ruby)
- 3306 (mySQL)
- 3389 (RDP)
- 4333 (ahsp)
- 5.000 (frameworks de desenvolvimento da Web em Python)
- 5432 (postgresql)
- 5500 (fcp-addr-srvr1)
- 5601 (OpenSearch Dashboards)
- 8080 (proxy)
- 8088 (porta HTTP legada)
- 8888 (porta HTTP alternativa)
- 9200 ou 9300 (OpenSearch)
Console da AWS
Para excluir uma regra de grupo de segurança:
- Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.
- No painel de navegação, escolha "Grupos de segurança".
- Selecione o grupo de segurança que você quer atualizar, escolha "Ações" e "Editar regras de entrada" ou "Editar regras de saída".
- Clique no botão "Excluir" à direita da regra.
- Escolha "Visualizar mudanças" e "Confirmar".
Para saber como excluir regras de um grupo de segurança, consulte Configurar regras de grupo de segurança no guia do usuário do Amazon EC2.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRestricted Ssh
Nome da categoria na API: RESTRICTED_SSH
Os grupos de segurança oferecem filtragem com estado do tráfego de rede de entrada e saída para recursos da AWS.
O CIS recomenda que nenhum grupo de segurança permita acesso de entrada irrestrito à porta 22. Remover a conectividade irrestrita a serviços de console remoto, como SSH, reduz a exposição de um servidor a riscos.
Recomendação: os grupos de segurança não podem permitir entradas de 0.0.0.0/0 na porta 22 Para corrigir essa descoberta, siga estas etapas:Console da AWS
Siga estas etapas para cada grupo de segurança associado a uma VPC.
Abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.
- No painel à esquerda, escolha Grupos de segurança.
- Selecione um grupo de segurança.
- Na parte de baixo da página, escolha a guia Regras de entrada.
- Escolha Editar regras.
- Identifique a regra que permite o acesso pela porta 22 e escolha o X para remover.
- Escolha Salvar regras.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRotation Customer Created Cmks Enabled
Nome da categoria na API: ROTATION_CUSTOMER_CREATED_CMKS_ENABLED
Verifica se a rotação automática de chaves está ativada para cada chave e corresponde ao ID da chave KMS da AWS criada pelo cliente. A regra é NON_COMPLIANT se a função de gravador do AWS Config para um recurso não tiver a permissão kms:DescribeKey.
Recomendação: verifique se a rotação das CMKs criadas pelo cliente foi ativadaPara ativar a rotação automática de chaves do AWS KMS, consulte Como alternar chaves do AWS KMS na documentação da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRotation Customer Created Symmetric Cmks Enabled
Nome da categoria na API: ROTATION_CUSTOMER_CREATED_SYMMETRIC_CMKS_ENABLED
O serviço de gerenciamento de chaves (KMS) da AWS permite que os clientes façam a rotação da chave de suporte, que é o material da chave armazenado no KMS e vinculado ao ID da chave mestre do cliente (CMK) criada pelo cliente. É a chave de suporte usada para realizar operações criptográficas, como criptografia e descriptografia. A rotação automática de chaves retém todas as chaves de backup anteriores para que a descriptografia dos dados criptografados possa ocorrer de maneira transparente. Recomendamos que a rotação de chaves da CMK seja ativada para chaves simétricas. A rotação de chaves não pode ser ativada para nenhuma CMK assimétrica.
Recomendação: verifique se a rotação das CMKs simétricas criadas pelo cliente foi ativada Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e abra o console do IAM em https://console.aws.amazon.com/iam.
- No painel de navegação à esquerda, escolha
Customer managed keys
. - Selecione uma CMK gerenciada pelo cliente em que
Key spec = SYMMETRIC_DEFAULT
- Abaixo do painel "Configuração geral", abra a guia "Rotação de chaves".
- Marque a caixa de seleção "Fazer a rotação automática desta chave do KMS todos os anos".
CLI da AWS
- Execute o comando a seguir para ativar a rotação de chaves:
aws kms enable-key-rotation --key-id <kms_key_id>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osRouting Tables Vpc Peering Are Least Access
Nome da categoria na API: ROUTING_TABLES_VPC_PEERING_ARE_LEAST_ACCESS
Verifica se as tabelas de rotas para peering de VPC estão configuradas com o princípio de menor privilégio.
Recomendação: verifique se as tabelas de roteamento do peering de VPC são de "acesso mínimo"Para atualizar as tabelas de rotas do peering de VPC, consulte Atualizar as tabelas de rotas para uma conexão de peering de VPC no guia do usuário da VPC da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Account Level Public Access Blocks
Nome da categoria na API: S3_ACCOUNT_LEVEL_PUBLIC_ACCESS_BLOCKS
O Bloqueio de acesso público do Amazon S3 oferece configurações para pontos de acesso, buckets e contas que ajudam a gerenciar o acesso público aos recursos do Amazon S3. Por padrão, novos buckets, pontos de acesso e objetos não permitem acesso público.
Recomendação: verifica se as configurações necessárias de bloqueio de acesso público do S3 estão definidas no nível da conta Para corrigir essa descoberta, siga estas etapas:Terraform
A configuração de recurso do Terraform a seguir configura o acesso no nível da conta ao S3.
resource "aws_s3_account_public_access_block" "s3_control" {
block_public_acls = true
block_public_policy = true
ignore_public_acls = true
restrict_public_buckets = true
}
Console da AWS
Para editar as configurações de bloqueio de acesso público de todos os buckets do S3 em uma conta da AWS.
- Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.
- Escolha as configurações de bloqueio do acesso público para esta conta.
- Escolha "Editar" para mudar as configurações de bloqueio de acesso público de todos os buckets na sua conta da AWS.
- Escolha as configurações que você quer mudar e clique em "Salvar alterações".
- Quando a confirmação for solicitada, digite "confirm". Em seguida, escolha "Confirmar" para salvar as mudanças.
CLI da AWS
aws s3control put-public-access-block \
--account-id <value> \
--public-access-block-configuration '{"BlockPublicAcls": true, "BlockPublicPolicy": true, "IgnorePublicAcls": true, "RestrictPublicBuckets": true}'
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Buckets Configured Block Public Access Bucket And Account Settings
Nome da categoria na API: S3_BUCKETS_CONFIGURED_BLOCK_PUBLIC_ACCESS_BUCKET_AND_ACCOUNT_SETTINGS
O Amazon S3 oferece Block public access (bucket settings)
e Block public access (account settings)
para ajudar você a gerenciar o acesso público aos recursos do Amazon S3. Por padrão, os buckets e objetos do S3 são criados com o acesso público desativado. No entanto, um principal do IAM da AWS com permissões suficientes do S3 pode ativar o acesso público no nível do bucket ou do objeto. Quando ativada, a Block public access (bucket settings)
impede que um bucket individual e os objetos contidos nele se tornem acessíveis publicamente. Da mesma forma, Block public access (account settings)
impede que todos os buckets e objetos contidos se tornem acessíveis publicamente em toda a conta.
Verifique se os buckets do S3 estão configurados com Block public access (bucket settings)
.
Console da AWS
Se a saída mostrar true para as configurações separadas, elas estarão definidas na conta.
- Faça login no AWS Management Console e abra o console do Amazon S3 usando https://console.aws.amazon.com/s3/
- Escolha Bloquear acesso público (configurações da conta).
- Escolha Editar para mudar as configurações de bloqueio do acesso público de todos os buckets na sua conta da AWS.
- Escolha as configurações que você quer mudar e clique em Salvar. Para detalhes sobre cada configuração, pause nos ícones i.
- Quando for preciso confirmar, digite confirm. Em seguida, clique em Confirmar para salvar as mudanças.
CLI da AWS
Para definir as configurações de bloqueio do acesso público para essa conta, execute o seguinte comando:
aws s3control put-public-access-block
--public-access-block-configuration BlockPublicAcls=true, IgnorePublicAcls=true, BlockPublicPolicy=true, RestrictPublicBuckets=true
--account-id <value>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Access Logging Enabled Cloudtrail S3 Bucket
Nome da categoria na API: S3_BUCKET_ACCESS_LOGGING_ENABLED_CLOUDTRAIL_S3_BUCKET
A geração de registros de acesso ao bucket do S3 cria um registro com os registros de acesso de cada solicitação feita ao bucket do S3. Um registro de acesso contém detalhes sobre a solicitação, como o tipo de solicitação, os recursos especificados na solicitação que funcionaram e a hora e a data em que a solicitação foi processada. Recomendamos ativar a geração de registros de acesso ao bucket no bucket do CloudTrail S3.
Recomendação:Verifique se a geração de registros de acesso do bucket S3 está ativada no bucket do CloudTrail S3
Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Faça login no AWS Management Console e abra o console do S3 em https://console.aws.amazon.com/s3.
- Em Todos os buckets, clique no bucket S3 de destino.
- Clique em Propriedades no canto superior direito do console.
- Em Bucket: <s3\_bucket\_for\_cloudtrail>, clique em Logging</s3\_bucket\_for\_cloudtrail>.
- Configure o registro em bucket
- Clique na caixa de seleção Ativado
- Selecione "Bucket de destino" na lista
- Insira um prefixo de destino - Clique em Salvar.
CLI da AWS
- Confira o nome do bucket do S3 em que o CloudTrail está fazendo o registro:
aws cloudtrail describe-trails --region <region-name> --query trailList[*].S3BucketName
- Copie e adicione o nome do bucket de destino em
, o prefixo do arquivo de registro em e, opcionalmente, adicione um endereço de e-mail no modelo a seguir e salve como :
{
"LoggingEnabled": {
"TargetBucket": "<Logging_BucketName>",
"TargetPrefix": "<LogFilePrefix>",
"TargetGrants": [
{
"Grantee": {
"Type": "AmazonCustomerByEmail",
"EmailAddress": "<EmailID>"
},
"Permission": "FULL_CONTROL"
}
]
}
}
- Execute o comando put-bucket-logging com o nome do bucket e
como entrada. Para mais informações, consulte put-bucket-logging:
aws s3api put-bucket-logging --bucket <BucketName> --bucket-logging-status file://<FileName.Json>
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Logging Enabled
Nome da categoria na API: S3_BUCKET_LOGGING_ENABLED
O recurso de geração de registros de acesso ao servidor S3 da AWS registra solicitações de acesso a buckets de armazenamento, o que é útil para auditorias de segurança. Por padrão, o registro de acesso ao servidor não está ativado para buckets do S3.
Recomendação: verifica se a geração de registros está ativada em todos os buckets do S3 Para corrigir essa descoberta, siga estas etapas:Terraform
O exemplo a seguir demonstra como criar dois intervalos:
- Um bucket do Logging
- Um bucket em conformidade
variable "bucket_acl_map" {
type = map(any)
default = {
"logging-bucket" = "log-delivery-write"
"compliant-bucket" = "private"
}
}
resource "aws_s3_bucket" "all" {
for_each = var.bucket_acl_map
bucket = each.key
object_lock_enabled = true
tags = {
"Pwd" = "s3"
}
}
resource "aws_s3_bucket_acl" "private" {
for_each = var.bucket_acl_map
bucket = each.key
acl = each.value
}
resource "aws_s3_bucket_versioning" "enabled" {
for_each = var.bucket_acl_map
bucket = each.key
versioning_configuration {
status = "Enabled"
}
}
resource "aws_s3_bucket_logging" "enabled" {
for_each = var.bucket_acl_map
bucket = each.key
target_bucket = aws_s3_bucket.all["logging-bucket"].id
target_prefix = "log/"
}
resource "aws_s3_bucket_server_side_encryption_configuration" "example" {
for_each = var.bucket_acl_map
bucket = each.key
rule {
apply_server_side_encryption_by_default {
sse_algorithm = "aws:kms"
}
}
}
Console da AWS
Para saber como ativar o registro de acesso ao S3 pelo console da AWS, consulte Como ativar o registro de acesso ao servidor do Amazon S3 na documentação da AWS.
CLI da AWS
O exemplo a seguir demonstra como:
- Crie uma política de bucket para conceder ao principal do serviço de geração de registros permissão para
PutObject
no bucket de geração de registros.
policy.json
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "S3ServerAccessLogsPolicy",
"Effect": "Allow",
"Principal": {"Service": "logging.s3.amazonaws.com"},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::MyBucket/Logs/*",
"Condition": {
"ArnLike": {"aws:SourceARN": "arn:aws:s3:::SOURCE-BUCKET-NAME"},
"StringEquals": {"aws:SourceAccount": "SOURCE-AWS-ACCOUNT-ID"}
}
}
]
}
aws s3api put-bucket-policy \
--bucket my-bucket
--policy file://policy.json
- Aplicar a política ao bucket de geração de registros
logging.json
{
"LoggingEnabled": {
"TargetBucket": "MyBucket",
"TargetPrefix": "Logs/"
}
}
aws s3api put-bucket-logging \
--bucket MyBucket \
--bucket-logging-status file://logging.json
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Policy Set Deny Http Requests
Nome da categoria na API: S3_BUCKET_POLICY_SET_DENY_HTTP_REQUESTS
No nível do bucket do Amazon S3, é possível configurar permissões usando uma política do bucket, o que torna os objetos acessíveis apenas por HTTPS.
Recomendação: verifique se a política de bucket do S3 foi definida para negar as solicitações HTTP Para corrigir essa descoberta, siga estas etapas:Console da AWS
usando o gerador de políticas da AWS:
- Repita as etapas de 1 a 4 acima.
- Clique em
Policy Generator
na parte de baixo do editor de políticas do bucket. - Selecione o tipo de política
S3 Bucket Policy
- Adicionar instruções
-Effect
= Negar
-Principal
= *
-AWS Service
= Amazon S3
-Actions
= *
-Amazon Resource Name
= - Gerar política
- Copie o texto e adicione-o à política do bucket.
CLI da AWS
- Exporte a política do bucket para um arquivo JSON.
aws s3api get-bucket-policy --bucket <bucket_name> --query Policy --output text > policy.json
- Modifique o arquivo policy.json adicionando esta instrução:
{
"Sid": <optional>",
"Effect": "Deny",
"Principal": "*",
"Action": "s3:*",
"Resource": "arn:aws:s3:::<bucket_name>/*",
"Condition": {
"Bool": {
"aws:SecureTransport": "false"
}
}
}
- Aplique essa política modificada de volta ao bucket do S3:
aws s3api put-bucket-policy --bucket <bucket_name> --policy file://policy.json
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Replication Enabled
Nome da categoria na API: S3_BUCKET_REPLICATION_ENABLED
Esse controle verifica se um bucket do Amazon S3 tem a replicação entre regiões ativada. O controle falha se o bucket não tiver a replicação entre regiões ativada ou se a replicação na mesma região também estiver ativada.
A replicação é a cópia automática e assíncrona de objetos entre buckets na mesma região da AWS ou em regiões diferentes. A replicação copia objetos recém-criados e atualizações de objetos de um bucket de origem para um ou mais buckets de destino. As práticas recomendadas da AWS recomendam a replicação para buckets de origem e destino pertencentes à mesma conta da AWS. Além da disponibilidade, considere outras configurações de proteção do sistema.
Recomendação: verifica se os buckets do S3 estão com a replicação entre regiões ativadaPara ativar a replicação entre regiões em um bucket do S3, consulte Configurar a replicação para buckets de origem e destino pertencentes à mesma conta no Guia do usuário do Amazon Simple Storage Service. Em "Bucket de origem", escolha "Aplicar a todos os objetos no bucket".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Server Side Encryption Enabled
Nome da categoria na API: S3_BUCKET_SERVER_SIDE_ENCRYPTION_ENABLED
Isso verifica se o bucket do S3 tem a criptografia padrão do Amazon S3 ativada ou se a política do bucket do S3 nega explicitamente as solicitações de inclusão de objetos sem criptografia do lado do servidor.
Recomendação: verifique se todos os buckets do S3 usam a criptografia em repouso Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
bucket = "my-bucket"
rule {
apply_server_side_encryption_by_default {
sse_algorithm = "AES256"
}
}
}
Console da AWS
Para ativar a criptografia padrão em um bucket do S3
- Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.
- No painel de navegação à esquerda, escolha "Buckets".
- Escolha o bucket do S3 na lista.
- Escolha "Propriedades".
- Escolha "Criptografia padrão".
- Para a criptografia, escolha AES-256 ou AWS-KMS.
- Escolha AES-256 para usar chaves gerenciadas pelo Amazon S3 para criptografia padrão. Para mais informações sobre como usar a criptografia do lado do servidor do Amazon S3 para criptografar seus dados, consulte o Guia do usuário do Amazon Simple Storage Service.
- Escolha "AWS-KMS" para usar chaves gerenciadas pelo AWS KMS na criptografia padrão. Em seguida, escolha uma chave mestra na lista de chaves mestras do AWS KMS que você criou.
- Digite o nome de recurso da Amazon (ARN) da chave do KMS da AWS a ser usada. Você pode encontrar o ARN da sua chave do AWS KMS no console do IAM, em "Chaves de criptografia". Ou escolha um nome de chave na lista suspensa.
- Importante: se você usar a opção do AWS KMS para sua configuração de criptografia padrão, estará sujeito às cotas de RPS (solicitações por segundo) do AWS KMS. Para mais informações sobre cotas do AWS KMS e como solicitar um aumento de cota, consulte o Guia do desenvolvedor do AWS Key Management Service.
- Escolha "Salvar".
Para mais informações sobre como criar uma chave do KMS da AWS, consulte o Guia do desenvolvedor do AWS Key Management Service.
Para mais informações sobre como usar o AWS KMS com o Amazon S3, consulte o Guia do usuário do Amazon Simple Storage Service.
Ao ativar a criptografia padrão, talvez seja necessário atualizar a política do bucket. Para mais informações sobre como migrar de políticas de bucket para criptografia padrão, consulte o Guia do usuário do Amazon Simple Storage Service.
CLI da AWS
aws s3api put-bucket-encryption \
--bucket my-bucket \
--server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"SSEAlgorithm": "AES256"}}]}'
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Bucket Versioning Enabled
Nome da categoria na API: S3_BUCKET_VERSIONING_ENABLED
O Amazon S3 é uma maneira de manter várias variantes de um objeto no mesmo bucket e pode ajudar você a se recuperar mais facilmente de ações não intencionais do usuário e falhas de aplicativos.
Recomendação: verifica se o controle de versões está ativado em todos os buckets do S3 Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_s3_bucket" "my_bucket" {
bucket = "my-bucket"
versioning {
enabled = true
}
}
Console da AWS
Para ativar ou desativar o controle de versões em um bucket do S3
- Faça login no AWS Management Console e abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.
- Na lista "Buckets", escolha o nome do bucket em que você quer ativar o controle de versões.
- Escolha "Propriedades".
- Em "Controle de versões do bucket", escolha "Editar".
- Escolha "Suspender" ou "Ativar" e clique em "Salvar alterações".
CLI da AWS
aws s3control put-bucket-versioning \
--bucket <bucket_name> \
--versioning-configuration Status=Enabled
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osS3 Default Encryption Kms
Nome da categoria na API: S3_DEFAULT_ENCRYPTION_KMS
Verifica se os buckets do Amazon S3 estão criptografados com o AWS Key Management Service (AWS KMS)
Recomendação: verifica se todos os buckets estão criptografados com o KMS Para corrigir essa descoberta, siga estas etapas:Terraform
resource "aws_kms_key" "s3_encryption" {
description = "Used for S3 Bucket encryption configuration"
enable_key_rotation = true
}
resource "aws_s3_bucket_server_side_encryption_configuration" "enable" {
bucket = "my-bucket"
rule {
apply_server_side_encryption_by_default {
kms_master_key_id = aws_kms_key.s3_encryption.arn
sse_algorithm = "aws:kms"
}
}
}
Console da AWS
Para ativar a criptografia padrão em um bucket do S3
- Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.
- No painel de navegação à esquerda, escolha "Buckets".
- Escolha o bucket do S3 na lista.
- Escolha "Propriedades".
- Escolha "Criptografia padrão".
- Para a criptografia, escolha AWS-KMS.
- Escolha "AWS-KMS" para usar chaves gerenciadas pelo AWS KMS na criptografia padrão. Em seguida, escolha uma chave mestra na lista de chaves mestras do AWS KMS que você criou. Para mais informações sobre como criar chaves do KMS, consulte a documentação da AWS: como criar chaves.
- Digite o nome de recurso da Amazon (ARN) da chave do KMS da AWS a ser usada. Você pode encontrar o ARN da sua chave do AWS KMS no console do IAM, em "Chaves de criptografia". Ou escolha um nome de chave na lista suspensa.
- Importante: essa solução está sujeita às cotas de RPS (solicitações por segundo) do AWS KMS. Para mais informações sobre cotas do AWS KMS e como solicitar um aumento de cota, consulte o Guia do desenvolvedor do AWS Key Management Service.
- Escolha "Salvar".
Para mais informações sobre como usar o KMS da AWS com o Amazon S3, consulte o Guia do usuário do Amazon Simple Storage Service.
Ao ativar a criptografia padrão, talvez seja necessário atualizar a política do bucket. Para mais informações sobre como migrar de políticas de bucket para criptografia padrão, consulte o Guia do usuário do Amazon Simple Storage Service.
CLI da AWS
Criar uma chave do KMS
aws kms create-key \
--description "Key to encrypt S3 buckets"
Ativar a rotação de chaves
aws kms enable-key-rotation \
--key-id <key_id_from_previous_command>
Atualizar bucket
aws s3api put-bucket-encryption \
--bucket my-bucket \
--server-side-encryption-configuration '{"Rules": [{"ApplyServerSideEncryptionByDefault": {"KMSMasterKeyID": "<id_from_key>", "SSEAlgorithm": "AES256"}}]}'
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSagemaker Notebook Instance Kms Key Configured
Nome da categoria na API: SAGEMAKER_NOTEBOOK_INSTANCE_KMS_KEY_CONFIGURED
Verifica se uma chave do AWS Key Management Service (AWS KMS) está configurada para uma instância de notebook do Amazon SageMaker. A regra é NON_COMPLIANT se "KmsKeyId" não for especificado para a instância de notebook do SageMaker.
Recomendação: verifica se todas as instâncias de notebook do SageMaker foram definidas para usar o KMSPara configurar o KMS para o SageMaker, consulte Gerenciamento de chaves na documentação do Amazon SageMaker.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSagemaker Notebook No Direct Internet Access
Nome da categoria na API: SAGEMAKER_NOTEBOOK_NO_DIRECT_INTERNET_ACCESS
Verifica se o acesso direto à Internet está desativado para uma instância de notebook do SageMaker. Para isso, ele verifica se o campo "DirectInternetAccess" está desativado para a instância de notebook.
Se você configurar a instância do SageMaker sem uma VPC, o acesso direto à Internet será ativado por padrão. Configure a instância com uma VPC e mude a configuração padrão para "Desativar: acessar a Internet por uma VPC".
Para treinar ou hospedar modelos de um notebook, você precisa de acesso à Internet. Para ativar o acesso à Internet, verifique se a VPC tem um gateway NAT e se o grupo de segurança permite conexões de saída. Para saber mais sobre como conectar uma instância de notebook a recursos em uma VPC, consulte "Conectar uma instância de notebook a recursos em uma VPC" no Guia do desenvolvedor do Amazon SageMaker.
Além disso, limite o acesso à sua configuração do SageMaker apenas a usuários autorizados. Restrinja as permissões do IAM dos usuários para modificar as configurações e os recursos do SageMaker.
Recomendação: verifica se o acesso direto à Internet está desativado para todas as instâncias de notebook do SageMaker da Amazon Para corrigir essa descoberta, siga estas etapas:Console da AWS
Não é possível mudar a configuração de acesso à Internet depois que uma instância de notebook é criada. Ele precisa ser interrompido, excluído e recriado.
Para configurar uma instância de notebook do SageMaker e negar o acesso direto à Internet:
- Abra o console do SageMaker em https://console.aws.amazon.com/sagemaker/
- Acesse "Instâncias de notebook".
- Exclua a instância com acesso direto à Internet ativado. Escolha a instância, selecione "Ações" e clique em "Parar".
- Depois que a instância for interrompida, escolha "Ações" e "Excluir".
- Escolha "Criar instância de notebook". Forneça os detalhes da configuração.
- Expanda a seção de rede e escolha uma VPC, uma sub-rede e um grupo de segurança. Em "Acesso direto à Internet", escolha "Desativar: acesse a Internet por uma VPC".
- Escolha "Criar instância de notebook".
Para mais informações, consulte "Conectar uma instância de notebook a recursos em uma VPC" no guia do desenvolvedor do Amazon SageMaker.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSecretsmanager Rotation Enabled Check
Nome da categoria na API: SECRETSMANAGER_ROTATION_ENABLED_CHECK
Verifica se um secret armazenado no AWS Secrets Manager está configurado com rotação automática. O controle falha se o secret não estiver configurado com rotação automática. Se você fornecer um valor personalizado para o parâmetro maximumAllowedRotationFrequency
, o controle será aprovado somente se o secret for girado automaticamente dentro do período especificado.
O Secret Manager ajuda você a melhorar a postura de segurança da sua organização. Os secrets incluem credenciais de banco de dados, senhas e chaves de API de terceiros. Use o Secrets Manager para armazenar secrets de forma centralizada, criptografar secrets automaticamente, controlar o acesso a secrets e alternar secrets com segurança e de forma automática.
O Secrets Manager pode fazer a rotação de secrets. Você pode usar a rotação para substituir segredos de longo prazo por segredos de curto prazo. A rotação de secrets limita o tempo que um usuário não autorizado pode usar um secret comprometido. Por isso, é importante fazer a rotação dos seus secrets com frequência. Para saber mais sobre a rotação, consulte "Como fazer a rotação dos seus secrets do AWS Secrets Manager" no Guia do usuário do AWS Secrets Manager.
Recomendação: verifica se todos os secrets do AWS Secrets Manager têm a rotação ativadaPara ativar a rotação automática de secrets do Secrets Manager, consulte "Configurar a rotação automática de secrets do AWS Secrets Manager usando o console" no Guia do usuário do AWS Secrets Manager. É preciso escolher e configurar uma função do AWS Lambda para a rotação.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osSns Encrypted Kms
Nome da categoria na API: SNS_ENCRYPTED_KMS
Verifica se um tópico do SNS está criptografado em repouso usando o AWS KMS. Os controles falham se um tópico do SNS não usa uma chave do KMS para criptografia do lado do servidor (SSE).
A criptografia de dados em repouso reduz o risco de acesso a dados armazenados em disco por um usuário não autenticado no AWS. Ele também adiciona outro conjunto de controles de acesso para limitar a capacidade de usuários não autorizados de acessar os dados. Por exemplo, as permissões da API são necessárias para descriptografar os dados antes que eles possam ser lidos. Os tópicos do SNS precisam ser criptografados em repouso para aumentar a segurança.
Recomendação: verifica se todos os tópicos do SNS foram criptografados com o KMSPara ativar a SSE em um tópico do SNS, consulte "Como ativar a criptografia do lado do servidor (SSE) em um tópico do Amazon SNS" no Guia do desenvolvedor do Amazon Simple Notification Service. Antes de usar o SSE, também é necessário configurar políticas de chaves do KMS da AWS para permitir a criptografia de tópicos e a criptografia e descriptografia de mensagens. Para mais informações, consulte "Como configurar permissões do AWS KMS no guia do desenvolvedor do Amazon Simple Notification Service".
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osVpc Default Security Group Closed
Nome da categoria na API: VPC_DEFAULT_SECURITY_GROUP_CLOSED
Esse controle verifica se o grupo de segurança padrão de uma VPC permite tráfego de entrada ou saída. O controle falha se o grupo de segurança permitir tráfego de entrada ou saída.
As regras do grupo de segurança padrão permitem todo o tráfego de saída e entrada das interfaces de rede (e das instâncias associadas) atribuídas ao mesmo grupo de segurança. Recomendamos que você não use o grupo de segurança padrão. Como o grupo de segurança padrão não pode ser excluído, mude a configuração das regras dele para restringir o tráfego de entrada e saída. Isso evita tráfego não intencional se o grupo de segurança padrão for configurado acidentalmente para recursos como instâncias do EC2.
Recomendação: verifique se o grupo de segurança padrão de cada VPC restringe todo o tráfegoPara corrigir esse problema, comece criando novos grupos de segurança com privilégios mínimos. Para instruções, consulte "Criar um grupo de segurança" no guia do usuário da Amazon VPC. Em seguida, atribua os novos grupos de segurança às suas instâncias do EC2. Para instruções, consulte "Mudar o grupo de segurança de uma instância" no guia do usuário do Amazon EC2 para instâncias do Linux.
Depois de atribuir os novos grupos de segurança aos recursos, remova todas as regras de entrada e saída dos grupos de segurança padrão. Para instruções, consulte "Excluir regras de grupo de segurança" no guia do usuário da Amazon VPC.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osVpc Flow Logging Enabled All Vpcs
Nome da categoria na API: VPC_FLOW_LOGGING_ENABLED_ALL_VPCS
Os registros de fluxo da VPC são um recurso que permite capturar informações sobre o tráfego de IP de e para interfaces de rede na sua VPC. Depois de criar um registro de fluxo, é possível ver e recuperar os dados dele nos registros do Amazon CloudWatch. Recomendamos ativar os registros de fluxo da VPC para "Rejeições" de pacotes nas VPCs.
Recomendação: verifique se a geração de registros do fluxo de VPC está ativada em todas as VPCs Para corrigir essa descoberta, siga estas etapas:Console da AWS
- Fazer login no console de gerenciamento
- Selecione
Services
eVPC
. - No painel de navegação à esquerda, selecione
Your VPCs
- Selecione uma VPC
- No painel à direita, selecione a guia
Flow Logs
. - Se não houver um registro de fluxo, clique em
Create Flow Log
. - Em "Filtro", selecione
Reject
. - Insira um
Role
e umDestination Log Group
- Clique em
Create Log Flow
. - Clique em
CloudWatch Logs Group
Observação:definir o filtro como "Rejeitar" reduz drasticamente o acúmulo de dados de geração de registros para essa recomendação e fornece informações suficientes para fins de detecção, pesquisa e correção de violações. No entanto, durante períodos de engenharia de grupos de segurança de privilégio mínimo, definir o filtro como "Todos" pode ser muito útil para descobrir fluxos de tráfego necessários para a operação adequada de um ambiente já em execução.
CLI da AWS
- Crie um documento de política, nomeie-o como
role_policy_document.json
e cole o seguinte conteúdo:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "test",
"Effect": "Allow",
"Principal": {
"Service": "ec2.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}
- Crie outro documento de política e nomeie-o como
iam_policy.json
. Em seguida, cole o seguinte conteúdo:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action":[
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:DescribeLogGroups",
"logs:DescribeLogStreams",
"logs:PutLogEvents",
"logs:GetLogEvents",
"logs:FilterLogEvents"
],
"Resource": "*"
}
]
}
- Execute o comando abaixo para criar um papel do IAM:
aws iam create-role --role-name <aws_support_iam_role> --assume-role-policy-document file://<file-path>role_policy_document.json
- Execute o comando abaixo para criar uma política do IAM:
aws iam create-policy --policy-name <ami-policy-name> --policy-document file://<file-path>iam-policy.json
- Execute o comando
attach-group-policy
usando o ARN da política do IAM retornado na etapa anterior para anexar a política à função do IAM. Se o comando for bem-sucedido, nenhuma saída será retornada:
aws iam attach-group-policy --policy-arn arn:aws:iam::<aws-account-id>:policy/<iam-policy-name> --group-name <group-name>
- Execute
describe-vpcs
para receber o VpcId disponível na região selecionada:
aws ec2 describe-vpcs --region <region>
- A resposta ao comando vai retornar o ID da VPC disponível na região selecionada.
- Execute
create-flow-logs
para criar um registro de fluxo para a VPC:
aws ec2 create-flow-logs --resource-type VPC --resource-ids <vpc-id> --traffic-type REJECT --log-group-name <log-group-name> --deliver-logs-permission-arn <iam-role-arn>
- Repita a etapa 8 para outras VPCs disponíveis na região selecionada.
- Mude a região atualizando --region e repita o procedimento de correção para outras VPCs.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osVpc Sg Open Only To Authorized Ports
Nome da categoria na API: VPC_SG_OPEN_ONLY_TO_AUTHORIZED_PORTS
Esse controle verifica se um grupo de segurança do Amazon EC2 permite tráfego de entrada irrestrito de portas não autorizadas. O status de controle é determinado da seguinte forma:
Se você usar o valor padrão para authorizedTcpPorts, o controle vai falhar se o grupo de segurança permitir tráfego de entrada irrestrito de qualquer porta que não seja a 80 e a 443.
Se você fornecer valores personalizados para "authorizedTcpPorts" ou "authorizedUdpPorts", o controle vai falhar se o grupo de segurança permitir tráfego de entrada irrestrito de qualquer porta não listada.
Se nenhum parâmetro for usado, o controle vai falhar para qualquer grupo de segurança que tenha uma regra de tráfego de entrada sem restrições.
Os grupos de segurança fornecem filtragem com estado do tráfego de rede de entrada e saída para a AWS. As regras do grupo de segurança precisam seguir o princípio de acesso com privilégios mínimos. O acesso irrestrito (endereço IP com um sufixo /0) aumenta a oportunidade de atividades maliciosas, como invasão, ataques de negação de serviço e perda de dados. A menos que uma porta seja especificamente permitida, ela deve negar o acesso irrestrito.
Recomendação: verifica se os grupos de segurança com 0.0.0.0/0 de qualquer VPC permitem apenas o tráfego TCP/UDP de entradaPara modificar um grupo de segurança, consulte Trabalhar com grupos de segurança no guia do usuário da Amazon VPC.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre osBoth VPC VPN Tunnels Up
Nome da categoria na API: VPC_VPN_2_TUNNELS_UP
Um túnel de VPN é um link criptografado em que os dados podem passar da rede do cliente para ou da AWS em uma conexão de VPN site a site da AWS. Cada conexão VPN inclui dois túneis VPN que podem ser usados simultaneamente para alta disponibilidade. É importante garantir que os dois túneis VPN estejam ativos para uma conexão VPN, confirmando uma conexão segura e de alta disponibilidade entre uma VPC da AWS e sua rede remota.
Esse controle verifica se ambos os túneis VPN fornecidos pela VPN site-to-site da AWS estão no status UP. O controle falha se um ou os dois túneis estiverem no status "DOWN".
Recomendação: verifica se ambos os túneis VPN da AWS fornecidos pela AWS site-to-site estão no status UPPara modificar as opções de túnel VPN, consulte Modificar as opções de túnel VPN site a site no Guia do usuário da VPN site a site da AWS.
recursos compatíveis e as configurações de verificação desse tipo de descoberta.
Saiba mais sobre os