◇ OpenCyber Academy
Curso rápido · Capítulo 2 · Português

Capítulo 2 — Escopo, permissão e prática segura

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Capítulo 2 — Escopo, permissão e prática segura

Mapa da aula

Aula 02 publicada. Mapa, exemplo, EX014.

flowchart TD
  N0["2.1 O que o papel precisa dizer"]
  N1["2.2 Conferir uma lista de alvos"]
  N2["2.3 Condições de parada e proibições"]
  N3["2.4 Quando alguém pede para você quebrar as regras"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4
  N4 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX014"]

Desenho lógico

flowchart LR
  N0["2.1 O que o papel precisa dizer"]
  N1["2.2 Conferir uma lista de alvos"]
  N2["2.3 Condições de parada e proibições"]
  N3["2.4 Quando alguém pede para você quebrar as regras"]
  N4["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> Q["EX014"]
[2.1 O que o papel precisa dizer]
    |
    v
[2.2 Conferir uma lista de alvos]
    |
    v
[2.3 Condições de parada e proibições]
    |
    v
[2.4 Quando alguém pede para você quebrar as regras]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX014]

Objetivos de aprendizagem

Você vai (1) listar o que uma autorização escrita precisa conter; (2) conferir alvos propostos contra um escopo com um script curto; (3) explicar condições de parada e regras de proibição; e (4) lidar com um pedido que quebraria as regras.

2.1 O que o papel precisa dizer

Antes de qualquer teste, um acordo escrito — às vezes chamado de regras de engajamento — precisa nomear os sistemas e as pessoas no escopo, o que está fora do escopo, quais métodos são permitidos, os horários de início e de fim, a quem ligar numa emergência, como os achados serão relatados e como os dados serão tratados depois. O NIST SP 800-115 e o PTES tratam a definição do escopo como uma etapa de primeira classe, e não como formalidade. Se qualquer um desses itens faltar, o teste espera até que o acordo seja corrigido e assinado de novo. O pacote de sala de aula de Maya cobre 192.0.2.0/25, exclui o servidor da folha de pagamento em 192.0.2.10 e permite apenas uma revisão de configuração e de políticas.

2.2 Conferir uma lista de alvos

Os testadores comparam cada endereço ou nome de host proposto com o escopo escrito. Sistemas excluídos — folha de pagamento, dispositivos médicos, sistemas de segurança física — nunca podem ser tocados, mesmo que compartilhem uma rede. Uma verificação local simples pega erros antes que alguém envie um pacote.

"""Lab 2: check synthetic targets against a written scope (no network traffic is sent)."""
import ipaddress
in_scope = [ipaddress.ip_network("192.0.2.0/25")]          # documentation range, synthetic
excluded = {ipaddress.ip_address("192.0.2.10")}             # payroll server: owner excluded it
requested = ["192.0.2.5", "192.0.2.10", "192.0.2.130", "198.51.100.7"]
for t in requested:
    ip = ipaddress.ip_address(t)
    if ip in excluded:
        verdict = "EXCLUDED - do not test"
    elif any(ip in n for n in in_scope):
        verdict = "in scope"
    else:
        verdict = "OUT OF SCOPE - do not test"
    print(f"{t:14} {verdict}")

Execute com python3 lab_scope.py. Saída verificada:

192.0.2.5      in scope
192.0.2.10     EXCLUDED - do not test
192.0.2.130    OUT OF SCOPE - do not test
198.51.100.7   OUT OF SCOPE - do not test

O script do laboratório compara quatro endereços com uma faixa permitida e um endereço excluído, e não envia tráfego algum. Só o 192.0.2.5 está no escopo: o 192.0.2.10 é o servidor da folha de pagamento excluído, e o 192.0.2.130 e o 198.51.100.7 ficam fora de 192.0.2.0/25. Execute-o sempre que a lista mudar e guarde a saída junto com o plano, como registro de que a verificação aconteceu antes do início de qualquer trabalho.

2.3 Condições de parada e proibições

Condições de parada são eventos que encerram ou suspendem o teste na hora: o dono pede para parar, aparece uma indisponibilidade inesperada, sistemas de segurança física são envolvidos ou dados sensíveis são expostos além do propósito do teste. As regras de proibição listam métodos que nunca são permitidos, como negação de serviço ou engenharia social com estudantes, a menos que o papel os permita explicitamente. Quando ocorre uma condição de parada, suspenda na hora, acione o contato de emergência nomeado no acordo e anote o horário e o que você estava fazendo. O teste só é retomado quando o contato que autorizou disser. No exercício de sala de aula de Maya, uma página de teste do portal dos funcionários lenta é motivo suficiente para suspender e ligar.

2.4 Quando alguém pede para você quebrar as regras

Colegas às vezes pedem uma "olhadinha rápida" num sistema que não está no escopo. A resposta é sempre não, até que a autorização seja mudada por escrito. Ser prestativo não cria permissão. Se o pedido é legítimo, a pessoa deve pedir ao dono do sistema que mude o acordo por escrito. No exercício de Maya, um colega pede que ela acrescente um blog pessoal, e ela recusa: a autorização da faculdade cobre apenas os sistemas combinados da faculdade, e pressão ou amizade não mudam isso. Registre cada pedido recusado, para que seu gestor veja que as regras se mantiveram.

Exemplo resolvido (RCC sintético)

Maya recebe um rascunho de lista de alvos para um exercício de sala de aula que usa apenas endereços de documentação: 192.0.2.5, 192.0.2.10 (folha de pagamento, excluído), 192.0.2.130 e 198.51.100.7. Ela executa o script de verificação. Só o 192.0.2.5 está no escopo; os demais estão excluídos ou fora da rede combinada. Ela os retira da lista antes de qualquer outro trabalho.

Caso sintético — RCC. Os endereços vêm de faixas de documentação (RFC 5737); a faculdade e as exclusões foram inventadas.

Erros e limites

Um script só confere a lista que você lhe entrega; ele não consegue descobrir se a rede real corresponde ao papel. A varredura real exige uma autorização separada e explícita.

Exercícios

Síntese

Escopo escrito, exclusões e condições de parada decidem cada ação; tudo o que não está claro está proibido.

Continue estudando — capítulo 02 de 04

← Capítulo 01 (rascunho) · Índice de capítulos do curso · Capítulo 03 (rascunho) →