Conecte-se à AWS para detecção de vulnerabilidades e avaliação de risco

É possível conectar o nível Security Command Center Enterprise ao ambiente AWS para fazer o seguinte:

  • Detecte e corrija vulnerabilidades de software e configurações incorretas no ambiente da AWS
  • Crie e gerencie uma postura de segurança para a AWS
  • Identificar possíveis caminhos de ataque da Internet pública para seus recursos de alto valor da AWS
  • Mapear a conformidade dos recursos da AWS com vários padrões e comparativos de mercado

Conectar o Security Command Center à AWS cria um local único para sua equipe de operações de segurança gerenciar e corrigir ameaças e vulnerabilidades no Google Cloud e na AWS.

Para permitir que o Security Command Center monitore sua organização da AWS, configure uma conexão usando um agente de serviço do Google Cloud e uma conta da AWS que tenha acesso aos recursos que você quer monitorar. O Security Command Center usa essa conexão para coletar periodicamente metadados de recursos em todas as contas e regiões da AWS que você definir.

Neste documento, descrevemos como configurar a conexão com a AWS. Ao configurar uma conexão, você configura o seguinte:

  • Uma série de contas na AWS que têm acesso direto aos recursos da AWS que você quer monitorar. No console do Google Cloud, essas contas são chamadas de contas de coletor.
  • Uma conta na AWS que tenha as políticas e os papéis apropriados para permitir a autenticação nas contas de coletor. No console do Google Cloud, essa conta é chamada de conta delegada. A conta delegada e as contas de coletor precisam estar na mesma organização da AWS.
  • um agente de serviço no Google Cloud que se conecta à conta delegada para autenticação;
  • Um pipeline para coletar dados de recursos da AWS.

Essa conexão não se aplica aos recursos de SIEM do Security Command Center que permitem ingerir registros da AWS para detecção de ameaças.

O diagrama a seguir mostra essa configuração. O projeto de locatário é um projeto criado automaticamente e contém a instância de pipeline de coleta de dados de recursos.

Configuração da AWS e do Security Command Center.

Antes de começar

Conclua essas tarefas antes de concluir as tarefas restantes nesta página.

Ativar o nível Enterprise do Security Command Center

Conclua as etapas 1 e 2 do guia de configuração para ativar o nível Enterprise do Security Command Center.

Configurar permissões

Para receber as permissões necessárias para usar o conector da AWS, peça ao administrador para conceder a você o papel do IAM de Proprietário de recursos do Cloud (roles/cloudasset.owner). Para mais informações sobre como conceder papéis, consulte Gerenciar acesso.

Também é possível receber as permissões necessárias com papéis personalizados ou outros papéis predefinidos.

Criar contas da AWS

Verifique se você criou os seguintes recursos da AWS:

Configurar o Security Command Center

  1. No console do Google Cloud, acesse a página de configuração.

    Acessar a configuração

  2. Verifique se você está visualizando a organização em que ativou o nível Security Command Center Enterprise.

  3. Clique em Etapa 3: configurar o conector da Amazon Web Services (AWS).

  4. Em ID da conta delegada, insira o ID da conta da AWS que você pode usar como delegada.

  5. Se quiser, analise as opções avançadas.

  6. Clique em Continuar.

  7. Siga uma das etapas a seguir:

    • Faça o download dos modelos do CloudFormation para o papel delegado e o papel de coletor.
    • Se você configurou as opções avançadas ou precisa alterar os nomes de papéis padrão da AWS (aws-delegated-role e aws-collector-role), selecione Usar o console da AWS. Copie o ID do agente de serviço, o nome da função delegada e o nome da função do coletor.

    Não é possível alterar os nomes dos papéis depois de criar a conexão.

Não clique em Criar. Em vez disso, configure o ambiente da AWS.

Configurar o ambiente da AWS

É possível configurar o ambiente da AWS usando um dos seguintes métodos:

Usar modelos do CloudFormation para configurar seu ambiente AWS

Se você fez o download dos modelos do CloudFormation, use estas etapas para configurar o ambiente da AWS.

  1. Faça login no console de contas delegadas da AWS. Verifique se você fez login na conta delegada usada para assumir outras contas de coletor da AWS.
  2. Acesse o console do Modelo do AWS CloudFormation.
  3. Clique em Pilhas > Com novos recursos (padrão).
  4. Faça upload do arquivo do modelo de função delegada e clique em Próxima.
  5. Insira um nome para a pilha. Se você alterou o nome do papel delegado, atualize os parâmetros. Clique em Próxima.
  6. Conforme exigido pela sua organização, atualize as opções de pilha e clique em Próximo.
  7. Revise as informações e clique em Enviar. Aguarde a pilha ser criada. Se ocorrer um problema, consulte Solução de problemas.

    Se você optar por adicionar contas da AWS individualmente (desativando a descoberta automática de contas), também poderá criar pilhas separadas para cada conta da AWS em vez de criar um único conjunto de pilhas.

  8. Usando uma conta de gerenciamento da AWS ou qualquer conta de membro registrada como administrador delegado, clique em Stackset > Create StackSet.

  9. Clique em Permissões gerenciadas pelo serviço.

  10. Faça upload do arquivo de modelo da função do coletor. Clique em Próxima.

  11. Na página Especificar detalhes do StackSet, insira o nome e a descrição do conjunto de pilhas. Verifique e atualize o ID da conta delegada e os nomes das funções. Clique em Próximo.

  12. Conforme exigido pela sua organização, configure as opções do conjunto de pilhas. Clique em Next.

  13. Na página Definir opções de implantação, faça o seguinte:

    1. Escolha os destinos de implantação. É possível implantar em toda a organização da AWS ou em uma unidade organizacional que inclua todas as contas da AWS de que você quer coletar dados.

    2. Especifique as regiões da AWS em que os papéis e as políticas serão criados. Como os papéis são recursos globais, você não precisa especificar várias regiões.

    3. Mude outras configurações, se necessário, e clique em Próxima.

  14. Revise as mudanças e clique em Enviar. Se você receber um erro, consulte Solução de problemas.

  15. Implante uma pilha separada para provisionar a função de coletor na conta de gerenciamento, porque um conjunto de pilhas do AWS CloudFormation não cria instâncias de pilha em uma conta de gerenciamento. Para mais informações, consulte DeploymentTargets.

Para concluir o processo de integração, consulte Concluir o processo de integração.

Configurar contas da AWS manualmente

Se não for possível usar os modelos do CloudFormation (por exemplo, se estiver usando nomes de papéis diferentes ou personalizando a integração), crie manualmente as políticas e os papéis do IAM da AWS necessários.

Você precisa criar políticas do IAM da AWS e papéis do IAM da AWS para a conta delegada e as contas de coletor.

Crie a política de IAM da AWS para o papel delegado

Para criar uma política de IAM da AWS para o papel delegado (uma política delegada), faça o seguinte:

  1. Faça login no console de contas delegadas da AWS.

  2. Clique em Políticas > Criar política.

  3. Clique em JSON e cole o seguinte:

    {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Action": "sts:AssumeRole",
              "Resource": "arn:aws:iam::*:role/COLLECTOR_ROLE_NAME",
              "Effect": "Allow"
          },
          {
              "Action": [
                  "organizations:List*",
                  "organizations:Describe*"
              ],
              "Resource": "*",
              "Effect": "Allow"
          }
      ]
    
    }
    

    Substitua COLLECTOR_ROLE_NAME pelo nome do papel do coletor que você copiou ao configurar o Security Command Center (o padrão é aws-collector-role).

  4. Clique em Próxima.

  5. Na seção Detalhes da política, insira um nome e uma descrição para a política.

  6. Clique em Criar política.

Criar um papel do AWS IAM para a relação de confiança entre a AWS e o Google Cloud

Criar um papel delegado que configure uma relação confiável entre a AWS e o Google Cloud. Esse papel usa a política delegada que foi criada em Criar a política de IAM da AWS para o papel delegado.

  1. Faça login no console de contas delegadas da AWS como um usuário da AWS que possa criar papéis e políticas do IAM.

  2. Clique em Papéis > Criar papel.

  3. Em Tipo de entidade confiável, clique em Identidade da Web.

  4. Em Identity Provider, clique em Google.

  5. Em Público-alvo, insira o ID da conta de serviço que você copiou ao configurar o Security Command Center. Clique em Próximo.

  6. Para conceder ao papel delegado acesso aos papéis do coletor, anexe as políticas de permissão a ele. Pesquise a política delegada que foi criada em Criar a política de IAM da AWS para o papel delegado e selecione-a.

  7. Na seção Detalhes do papel, insira o Nome do papel delegado que você copiou ao configurar o Security Command Center (o nome padrão é aws-delegated-role).

  8. Clique em Criar função.

Criar a política de IAM da AWS para a coleta de dados de recursos

Para criar uma política do AWS IAM para coleta de dados de recursos (a política do coletor), faça o seguinte:

  1. Faça login no console de contas do coletor da AWS.

  2. Clique em Políticas > Criar política.

  3. Clique em JSON e cole o seguinte:

    {
      "Version": "2012-10-17",
      "Statement": [
          {
              "Effect": "Allow",
              "Action": [
                  "ce:GetCostAndUsage",
                  "dynamodb:DescribeTableReplicaAutoScaling",
                  "identitystore:ListGroupMemberships",
                  "identitystore:ListGroups",
                  "identitystore:ListUsers",
                  "lambda:GetFunction",
                  "lambda:GetFunctionConcurrency",
                  "logs:ListTagsForResource",
                  "s3express:GetBucketPolicy",
                  "s3express:ListAllMyDirectoryBuckets",
                  "wafv2:GetIPSet"
              ],
              "Resource": [
                  "*"
              ]
          },
          {
              "Effect": "Allow",
              "Action": [
                  "apigateway:GET"
              ],
              "Resource": [
                  "arn:aws:apigateway:*::/usageplans",
                  "arn:aws:apigateway:*::/usageplans/*/keys",
                  "arn:aws:apigateway:*::/vpclinks/*"
              ]
          }
      ]
    
    }
    
  4. Clique em Próxima.

  5. Na seção Detalhes da política, insira um nome e uma descrição para a política.

  6. Clique em Criar política.

  7. Repita essas etapas para cada conta de coletor.

Criar o papel do IAM da AWS para coleta de dados em cada conta

Crie o papel de coletor que permite que o Security Command Center receba dados de recursos da AWS. Esse papel usa a política do coletor que foi criada em Criar a política do IAM da AWS para a coleta de dados do recurso.

  1. Faça login no console de contas do coletor da AWS como um usuário que pode criar papéis do IAM para as contas do coletor.

  2. Clique em Papéis > Criar papel.

  3. Em Tipo de entidade confiável, clique em Política de confiança personalizada.

  4. Na seção Política de confiança personalizada, cole o seguinte:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::DELEGATE_ACCOUNT_ID:role/DELEGATE_ACCOUNT_ROLE"
          },
          "Action": "sts:AssumeRole"
        }
      ]
    }
    

    Substitua:

  5. Para conceder ao papel de coletor acesso aos dados de configuração de recursos da AWS, anexe as políticas de permissão ao papel. Pesquise a política de coletor personalizada que foi criada em Criar a política de IAM da AWS para a coleta de dados de recursos e selecione-a.

  6. Pesquise e selecione as seguintes políticas gerenciadas:

    • arn:aws:iam::aws:policy/job-function/ViewOnlyAccess
    • arn:aws:iam::aws:policy/SecurityAudit
  7. Na seção Detalhes do papel, insira o Nome do papel do coletor que você copiou ao configurar o Security Command Center.

  8. Clique em Criar função.

  9. Repita essas etapas para cada conta de coletor.

Para concluir o processo de integração, consulte Concluir o processo de integração.

Conclua o processo de integração

  1. No console do Google Cloud, acesse a página Adicionar conector do Amazon Web Services.

    Acessar o conector do Amazon Web Services

  2. Clique em Testar conector para verificar se o Security Command Center pode se conectar ao ambiente AWS. Se a conexão for bem-sucedida, o agente de serviço do Google Cloud poderá assumir o delegado, que terá todas as permissões necessárias para assumir o papel de coletor. Se a conexão não for bem-sucedida, consulte Como solucionar erros ao testar a conexão.

  3. Clique em Criar.

Configuração personalizada

Nesta seção, descrevemos algumas maneiras de personalizar a conexão entre o Security Command Center e a AWS. Essas opções estão disponíveis na seção Opções avançadas (opcional) da página Adicionar conector da Amazon Web Services no console do Google Cloud.

Por padrão, o Security Command Center descobre automaticamente suas contas da AWS em todas as regiões da AWS. A conexão usa o endpoint global padrão para o AWS Security Token Service e as consultas por segundo (QPS) padrão para o serviço da AWS que você está monitorando. Essas opções avançadas permitem personalizar os padrões.

Opção Descrição
Especificar as contas da AWS a serem usadas Permita que o Security Command Center descubra as contas da AWS automaticamente ou forneça uma lista de contas da AWS que o Security Command Center possa usar para encontrar recursos.
Especificar quais contas da AWS serão excluídas Se você permitir que o Security Command Center descubra contas automaticamente, forneça uma lista de contas da AWS que o Security Command Center não possa usar para encontrar recursos.
Especificar quais regiões da AWS serão monitoradas É possível selecionar uma ou mais regiões da AWS para o Security Command Center monitorar. Deixe o campo AWS regions vazio para monitorar todas as regiões.
Substituir as consultas por segundo (QPS) padrão para serviços da AWS É possível alterar o QPS para controlar o limite de cota do Security Command Center. Defina a substituição como um valor menor que o valor padrão para esse serviço e maior ou igual a 1. O valor padrão é o máximo. Se você alterar o QPS, o Security Command Center poderá ter problemas ao buscar dados. Portanto, não recomendamos alterar esse valor.
Altere o endpoint do serviço de token de segurança da AWS É possível especificar um endpoint específico para o serviço de token de segurança da AWS (por exemplo, https://sts.us-east-2.amazonaws.com). Deixe o campo Serviço de token de segurança da AWS (AWS STS) (opcional) vazio para usar o endpoint global padrão (https://sts.amazonaws.com).

Solução de problemas

Esta seção inclui alguns problemas comuns que você pode encontrar ao integrar o Security Command Center com a AWS.

Os recursos já existem

Esse erro ocorre no ambiente da AWS quando você tenta criar as políticas e os papéis do IAM da AWS. Esse problema ocorre quando o papel já existe na sua conta da AWS e você está tentando criá-lo novamente.

Para resolver esse problema, siga estas etapas:

  • Verifique se o papel ou a política que você está criando já existe e atende aos requisitos listados neste guia.
  • Se necessário, mude o nome da função para evitar conflitos.

Principal inválido na política

Esse erro pode ocorrer no ambiente da AWS quando você cria os papéis do coletor, mas o papel delegado ainda não existe.

Para resolver esse problema, conclua as etapas em Criar a política de IAM da AWS para o papel delegado e aguarde até que o papel delegado seja criado antes de continuar.

Limitações de limitação na AWS

A AWS limita as solicitações de API para cada conta da AWS por conta ou por região. Para garantir que esses limites não sejam excedidos quando o Security Command Center coleta metadados de recursos da AWS, o Security Command Center coleta os dados em um QPS máximo fixo para cada serviço da AWS, conforme descrito na documentação da API para o serviço da AWS.

Se houver limitação de solicitações no ambiente da AWS devido ao consumo de QPS, você poderá atenuar o problema fazendo o seguinte:

  • Na página de configurações do conector da AWS, defina um QPS personalizado para o serviço da AWS que está enfrentando problemas de limitação de solicitações.

  • Restrinja as permissões do papel de coletor da AWS para que os dados desse serviço específico não sejam mais coletados. Essa técnica de mitigação impede que as simulações de caminho de ataque funcionem corretamente na AWS.

A revogação de todas as permissões na AWS interrompe o processo do coletor de dados imediatamente. A exclusão do conector da AWS não interrompe imediatamente o processo do coletor de dados, mas não recomeça após a conclusão.

Como solucionar erros ao testar a conexão

Esses erros podem ocorrer quando você testa a conexão entre o Security Command Center e a AWS.

AWS_FAILED_TO_ASSUME_DELEGATED_ROLE

A conexão é inválida porque o agente de serviço do Google Cloud não pode assumir o papel delegado.

Para resolver esse problema, considere o seguinte:

AWS_FAILED_TO_LIST_ACCOUNTS

A conexão é inválida porque a descoberta automática está ativada, e o papel delegado não pode acessar todas as contas da AWS nas organizações.

Esse problema indica que alguns recursos estão faltando na política que permite a ação organizations:ListAccounts no papel delegado. Para resolver esse problema, verifique quais recursos estão faltando. Para verificar as configurações da política delegada, consulte Criar a política de IAM da AWS para o papel delegado.

AWS_INVALID_COLLECTOR_ACCOUNTS

A conexão é inválida porque há contas de coletor não permitidas. A mensagem de erro inclui mais informações sobre as possíveis causas, que incluem as seguintes:

AWS_FAILED_TO_ASSUME_COLLECTOR_ROLE

A conta do coletor é inválida porque o papel delegado não pode assumir o de coletor na conta do coletor.

Para resolver esse problema, considere o seguinte:

AWS_COLLECTOR_ROLE_POLICY_MISSING_REQUIRED_PERMISSION

A conexão é inválida porque a política do coletor não tem algumas das configurações de permissão necessárias.

Para resolver esse problema, considere as seguintes causas:

A seguir