Coletar registros de proxy da Web do Cisco Umbrella

Versão do analisador:16.0

Compatível com:

Este documento explica como ingerir registros do proxy da Web do Cisco Umbrella no Google Security Operations usando o Amazon S3. O proxy da Web do Cisco Umbrella oferece visibilidade e controle total de URLs para o tráfego da Web, atuando como um gateway da Web seguro (SWG, na sigla em inglês) baseado na nuvem. Os registros do proxy da Web capturam detalhes do tráfego HTTP e HTTPS, incluindo URLs completos, identidades de usuários, tipos de conteúdo e veredictos de segurança para solicitações encaminhadas pelo proxy inteligente do Umbrella.

Antes de começar

Verifique se você tem os pré-requisitos a seguir:

  • Instância do Google SecOps.
  • Acesso privilegiado ao painel do Cisco Umbrella com a função de administrador completo ou somente leitura.
  • Acesso privilegiado à AWS (S3, IAM).
  • Licença do Cisco Umbrella Secure Internet Gateway (SIG) ou do DNS Security Advantage com proxy inteligente ativado.

Configurar a exportação de registros do Cisco Umbrella para o Amazon S3

O Cisco Umbrella oferece suporte nativo à exportação de registros do proxy da Web para um bucket do Amazon S3 gerenciado por você. Se você já tiver configurado a exportação de registros do S3 para registros do DNS do Umbrella, o mesmo bucket do S3 e a mesma configuração do IAM poderão ser reutilizados. O Umbrella armazena os registros de proxy em um prefixo separado.

  1. Faça login no painel do Cisco Umbrella em https://dashboard.umbrella.com.
  2. Acesse Administrador > Gerenciamento de registros.
  3. Se a exportação de registros do S3 ainda não estiver configurada, clique em Usar o bucket do Amazon S3 gerenciado pela sua empresa.
  4. Informe os seguintes detalhes de configuração:
    • Nome do bucket: insira o nome do bucket do S3 (por exemplo, umbrella-logs).
    • Região: selecione a região da AWS em que o bucket está localizado.
  5. Copie o ID da conta da AWS e o ID externo exibidos pelo Umbrella, se ainda não tiverem sido salvos.
  6. Clique em Salvar.

Configurar o bucket do AWS S3 e o IAM para o Google SecOps

  1. Crie um bucket do Amazon S3 seguindo este guia do usuário: Como criar um bucket
  2. Salve o Nome e a Região do bucket para referência futura (por exemplo, umbrella-logs).
  3. Crie um usuário seguindo este guia: Criar um usuário do IAM.
  4. Selecione o usuário criado.
  5. Selecione a guia Credenciais de segurança.
  6. Clique em Criar chave de acesso na seção Chaves de acesso.
  7. Selecione Serviço de terceiros como Caso de uso.
  8. Clique em Próxima.
  9. Opcional: adicione uma tag de descrição.
  10. Clique em Criar chave de acesso.
  11. Clique em Fazer o download do arquivo CSV para salvar a chave de acesso e a chave de acesso secreta para referência futura.
  12. Clique em Concluído.
  13. Selecione a guia Permissões.
  14. Clique em Adicionar permissões na seção Políticas de permissões.
  15. Selecione Adicionar permissões.
  16. Selecione Anexar políticas diretamente.
  17. Pesquise a política AmazonS3FullAccess.
  18. Selecione a política.
  19. Clique em Próxima.
  20. Clique em Adicionar permissões

Configurar a política e o papel do IAM para acesso ao Cisco Umbrella S3

O Cisco Umbrella exige uma função do IAM entre contas para gravar registros no seu bucket do S3.

  1. No console da AWS, acesse IAM > Políticas > Criar política > guia JSON.
  2. Copie e cole a seguinte política (substitua umbrella-logs se você inseriu um nome de bucket diferente):

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Sid": "AllowUmbrellaPutObjects",
          "Effect": "Allow",
          "Action": [
            "s3:PutObject",
            "s3:GetBucketLocation"
          ],
          "Resource": [
            "arn:aws:s3:::umbrella-logs",
            "arn:aws:s3:::umbrella-logs/*"
          ]
        }
      ]
    }
    
  3. Clique em Próxima > Criar política. Dê o nome UmbrellaS3WritePolicy a ela.

  4. Acesse IAM > Papéis > Criar papel > Política de confiança personalizada.

  5. Cole a seguinte política de confiança, substituindo UMBRELLA_AWS_ACCOUNT_ID e UMBRELLA_EXTERNAL_ID pelos valores copiados do painel do Umbrella:

    {
      "Version": "2012-10-17",
      "Statement": [
        {
          "Effect": "Allow",
          "Principal": {
            "AWS": "arn:aws:iam::UMBRELLA_AWS_ACCOUNT_ID:root"
          },
          "Action": "sts:AssumeRole",
          "Condition": {
            "StringEquals": {
              "sts:ExternalId": "UMBRELLA_EXTERNAL_ID"
            }
          }
        }
      ]
    }
    
  6. Clique em Próxima.

  7. Anexe a política UmbrellaS3WritePolicy.

  8. Nomeie a função como UmbrellaS3Role e clique em Criar função.

  9. Copie o ARN da função para usar no painel do Umbrella.

Verificar a exportação de registros do Cisco Umbrella

  1. Volte ao painel do Cisco Umbrella.
  2. Acesse Administrador > Gerenciamento de registros.
  3. Insira o ARN da função do papel do IAM que você criou (se ainda não estiver configurado).
  4. Clique em Verificar para confirmar que o Umbrella pode gravar no bucket do S3.
  5. Após a verificação, o Umbrella vai começar a exportar os registros de proxy para o bucket do S3.

Configurar um feed no Google SecOps para ingerir registros do proxy da Web do Cisco Umbrella

  1. Acesse Configurações do SIEM > Feeds.
  2. Clique em + Adicionar novo feed.
  3. No campo Nome do feed, insira um nome para o feed (por exemplo, Cisco Umbrella Web Proxy logs).
  4. Selecione Amazon S3 V2 como o Tipo de origem.
  5. Selecione Proxy da Web do Cisco Umbrella como o Tipo de registro.
  6. Clique em Próxima.
  7. Especifique valores para os seguintes parâmetros de entrada:

    • URI do S3: s3://umbrella-logs/proxylogs/
    • Opções de exclusão da fonte: selecione a opção de exclusão de acordo com sua preferência.
    • Idade máxima do arquivo: inclui arquivos modificados nos últimos dias. O padrão é de 180 dias.
    • ID da chave de acesso: chave de acesso do usuário com acesso ao bucket do S3.
    • Chave de acesso secreta: chave secreta do usuário com acesso ao bucket do S3.
    • Namespace do recurso: o namespace do recurso.
    • Rótulos de ingestão: o rótulo aplicado aos eventos deste feed.
  8. Clique em Próxima.

  9. Revise a nova configuração do feed na tela Finalizar e clique em Enviar.

Tabela de mapeamento de UDM

Campo de registro Mapeamento do UDM Lógica
ampDisposition security_result.detection_fields[].value O valor de ampDisposition do registro bruto.
ampMalware security_result.detection_fields[].value O valor de ampMalware do registro bruto.
ampScore security_result.detection_fields[].value O valor de ampScore do registro bruto.
avDetections security_result.detection_fields[].value O valor de avDetections do registro bruto.
blockedCategories security_result.threat_name O valor de blockedCategories do registro bruto.
certificateErrors security_result.detection_fields[].value O valor de certificateErrors do registro bruto.
contentType security_result.detection_fields[].value O valor de contentType do registro bruto.
destinationIp target.ip O valor de destinationIp do registro bruto.
destinationListID security_result.detection_fields[].value O valor de destinationListID do registro bruto.
dlpstatus security_result.detection_fields[].value O valor de dlpstatus do registro bruto.
externalIp principal.ip O valor de externalIp do registro bruto.
fileAction security_result.detection_fields[].value O valor de fileAction do registro bruto.
fileName target.file.names O valor de fileName do registro bruto.
identitiesV8 principal.hostname O valor de identitiesV8 do registro bruto.
identity principal.location.name O valor de identity do registro bruto.
internalIp principal.ip O valor de internalIp do registro bruto.
isolateAction security_result.detection_fields[].value O valor de isolateAction do registro bruto.
referer network.http.referral_url O valor de referer do registro bruto.
requestMethod network.http.method O valor de requestMethod do registro bruto.
requestSize security_result.detection_fields[].value O valor de requestSize do registro bruto.
responseBodySize security_result.detection_fields[].value O valor de responseBodySize do registro bruto.
responseSize security_result.detection_fields[].value O valor de responseSize do registro bruto.
ruleID security_result.rule_id O valor de ruleID do registro bruto.
rulesetID security_result.detection_fields[].value O valor de rulesetID do registro bruto.
sha security_result.about.file.sha256 O valor de sha do registro bruto.
statusCode network.http.response_code O valor de statusCode do registro bruto.
ts timestamp O valor de ts do registro bruto, analisado em um carimbo de data/hora.
url target.url O valor de url do registro bruto.
userAgent network.http.user_agent O valor de userAgent do registro bruto.
verdict security_result.detection_fields[].value O valor de verdict do registro bruto.
warnstatus security_result.detection_fields[].value O valor de warnstatus do registro bruto. O valor de collection_time do registro bruto. Fixado no código como NETWORK_HTTP. Fixado no código como Cisco. Fixado no código como Umbrella. Fixado no código como UMBRELLA_WEBPROXY. Derivado do esquema do campo "URL" (http ou https). Analisado do campo userAgent usando uma biblioteca de análise de user agent. O valor de requestSize do registro bruto, convertido em um número inteiro. O valor de responseSize do registro bruto, convertido em um número inteiro. Derivado do campo identity quando identityType (ou identityTypeV8 com identitiesV8) indica um usuário. Além disso, são analisados para extrair detalhes do usuário, como nome de exibição, nome, sobrenome e endereço de e-mail. Mapeado do campo verdict: allowed ou allowed -> ALLOW, outros valores -> BLOCK. Se categories não estiver vazio, defina como NETWORK_CATEGORIZED_CONTENT. O valor de categories do registro bruto. Com base no verdict e possivelmente em outros campos. Geralmente Traffic allowed ou Traffic blocked. Se verdict não for allowed ou blocked e statusCode estiver presente, o resumo será Traffic %{statusCode}.

Registro de alterações

Ver o registro de alterações deste analisador

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.