Capítulo 2 — Redes e protocolos
Mapa da aula
Aula 02 publicada. Mapa, exemplo, EX005.
flowchart TD
N0["2.1 Serviços em escuta aprovados"]
N1["2.2 Noções de protocolo"]
N2["2.3 Nada de varredura livre"]
N3["2.4 Nomes divergentes"]
N4["2.5 Caminhos de saída"]
N5["2.6 Registro"]
N6["2.7 Identidade TCP versus identidade da aplicação"]
N7["2.8 Relato de serviços em escuta não aprovados"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
N7 --> EX["Exemplo resolvido"]
EX --> Q["Exercício EX005"]
Desenho lógico
flowchart LR
N0["2.1 Serviços em escuta aprovados"]
N1["2.2 Noções de protocolo"]
N2["2.3 Nada de varredura livre"]
N3["2.4 Nomes divergentes"]
N4["2.5 Caminhos de saída"]
N5["2.6 Registro"]
N6["2.7 Identidade TCP versus identidade da aplicação"]
N7["2.8 Relato de serviços em escuta não aprovados"]
N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX005"]
[2.1 Serviços em escuta aprovados]
|
v
[2.2 Noções de protocolo]
|
v
[2.3 Nada de varredura livre]
|
v
[2.4 Nomes divergentes]
|
v
[2.5 Caminhos de saída]
|
v
[2.6 Registro]
|
v
[2.7 Identidade TCP versus identidade da aplicação]
|
v
[2.8 Relato de serviços em escuta não aprovados]
|
v
[Exemplo resolvido] --> [Exercício EX005]
Objetivos de aprendizagem
Você vai (1) ler portas comuns numa lista aprovada; (2) sinalizar serviços em escuta não aprovados a partir de uma lista sintética; (3) explicar por que a escolha de protocolo importa para os testes; (4) evitar varreduras sem autorização.
2.1 Serviços em escuta aprovados
A NMT publica uma lista aprovada para a VLAN web de homologação: 80/http, 443/https, 22/ssh-jump. Qualquer outra coisa é relatada, e não tratada como "interessante para cutucar".
"""Lab 2: classify synthetic listening ports against an approved service list (no scanning)."""
approved = {80: "http", 443: "https", 22: "ssh-jump"}
observed = [(80, "http"), (443, "https"), (22, "ssh"), (3389, "rdp"), (8080, "http-alt")]
for port, name in observed:
if port not in approved:
print(f"{port:5}/{name:8} NOT APPROVED - report")
elif name.split("-")[0] != approved[port].split("-")[0]:
print(f"{port:5}/{name:8} unexpected name (expected {approved[port]})")
else:
print(f"{port:5}/{name:8} ok")
Execute com python3 lab_ports.py. Saída verificada:
80/http ok
443/https ok
22/ssh ok
3389/rdp NOT APPROVED - report
8080/http-alt NOT APPROVED - report
O bloco verificado do lab_ports é colado no caderno do ENG-512: 80, 443 e 22 com ok; 3389/rdp e 8080/http-alt com NOT APPROVED - report. Os serviços em escuta aprovados de Sam são apenas os da lista assinada; qualquer outro vira achado, e não um alvo bônus de varredura. Essas duas linhas viram chamados no mesmo dia. Como o laboratório lê uma lista fixa, executá-lo de novo imprime as mesmas cinco linhas até que o próprio inventário mude.
2.2 Noções de protocolo
HTTP/HTTPS transportam o site e a API; o SSH alcança os jump hosts; RDP numa VLAN web é inesperado. Os testadores descrevem o que veem sem enviar tráfego de exploração. As notas de método de Sam nomeiam as noções de protocolo do ENG-512: HTTPS para as verificações do planejador de viagens, SSH apenas para jump hosts nomeados e RDP como serviço em escuta não aprovado a ser relatado. Ele não inventa verificações de protocolos exóticos fora das ROE, e a identidade do protocolo ainda depende do mapa de portas do lab_ports. A curiosidade sobre protocolos além dessa lista espera por uma mudança nas ROE.
2.3 Nada de varredura livre
Até listar portas em produção exige autorização; o laboratório deste capítulo apenas classifica offline uma lista sintética. Nada de varredura livre significa que Sam não acrescenta portas porque uma ferramenta as sugeriu. Se 3389 ou 8080 aparecem como NOT APPROVED, ele as relata e para; a expansão livre do ENG-512 é o caminho pelo qual hosts vizinhos da rede de tarifas são tocados por acidente. A abertura inclui a leitura em voz alta da linha que proíbe a varredura livre. Portas sugeridas por ferramentas vão para um chamado de estacionamento, nunca para o inventário ativo no meio da janela. O chamado é revisto com o responsável pela rede depois da janela, e só uma mudança assinada nas ROE pode promover uma porta estacionada à lista aprovada.
2.4 Nomes divergentes
A porta 22 rotulada apenas como "ssh" ainda corresponde, no laboratório, à família aprovada ssh-jump, mas Sam anota o nome no inventário para limpeza. Divergências de nome de outro tipo, um rótulo de DNS que aponta para um IP diferente da lista de hosts das ROE, são condições de pausa. Sam consulta o responsável pela rede antes de continuar; supor que api-staging é seguro porque o nome diz homologação já causou erros de escopo na NMT. Uma pausa por divergência de DNS registra o nome consultado, a resposta, o endereço das ROE e a resposta do responsável. Retomar sem essa resposta por escrito reprova na revisão por pares.
2.5 Caminhos de saída
Notebooks de funcionários que alcançam a homologação e a internet podem servir de ponte entre ambientes; as ROE dizem quais redes de origem são permitidas. Os caminhos de saída a partir dos jump hosts de homologação são listados para que Sam saiba quais destinos externos suas verificações podem atingir. Se um jump host de homologação passa de repente a alcançar um prefixo ou uma nuvem de um fornecedor de tarifas, Sam interrompe a janela e pede à equipe de rede que classifique o caminho por escrito. Perseguir esse caminho como descoberta no meio da janela está fora do escopo, por mais interessante que pareça.
2.6 Registro
As equipes de rede podem espelhar as origens de teste autorizadas; Sam coordena para que seu tráfego seja atribuível. O registro de início, parada e pausas do ENG-512 vai para o canal do engajamento, e cada linha traz o ID do chamado e o horário, para que o SOC possa filtrar o ruído dos testes. O SOC usa essas linhas quando os aplicativos dos passageiros ficam lentos; o silêncio os deixa adivinhando se as verificações de Sam estão envolvidas. O texto do exercício do laço das 10:12, do Capítulo 8, é reaproveitado quando acontece uma parada real, para que a equipe de resposta reconheça o formato na hora.
2.7 Identidade TCP versus identidade da aplicação
Uma porta aberta não é o mesmo que um serviço seguro. Sam registra tanto a porta quanto o banner da aplicação ou o nome do certificado, quando o inventário permite. A porta 443 aberta em TCP não prova que a API do planejador de viagens está saudável; a identidade da aplicação ainda exige um cartão de método. Depois que as portas são classificadas sem problemas, Sam executa o cartão de método de aplicação no planejador de viagens e registra os dois resultados, para que os achados não sejam um teatro só de portas. Uma porta TCP verde, sozinha, nunca vira atestado de saúde.
2.8 Relato de serviços em escuta não aprovados
Não aprovado não significa "explorar agora". Significa abrir um chamado, anexar a observação sintética e esperar que o responsável confirme se o serviço deveria existir. Por isso, 3389/rdp e 8080/http-alt saem do ENG-512 como achados com responsáveis, e não como notas silenciosas. Sam os registra no mesmo dia, citando literalmente as linhas NOT APPROVED do lab_ports, para que a equipe de rede possa desativá-los ou autorizá-los antes do próximo sábado, em vez de deixá-los como folclore de chat que os examinadores nunca veem. O encerramento é a desativação ou uma autorização futura deliberada, e não um silêncio conveniente.
Exemplo resolvido (NMT sintética)
Sam classifica a lista sintética: 80, 443 e 22 estão ok; 3389/rdp e 8080/http-alt estão NOT APPROVED. Ele abre um chamado para os dois serviços em escuta não aprovados na homologação.
Caso sintético — Northline Municipal Transit (NMT). A operadora de transporte, Sam Park e todos os números foram inventados para fins didáticos.
Erros e limites
Sistemas de transporte reais e equipamentos de tarifa nunca são testados sem uma autorização separada e especializada. Este livro usa apenas dados sintéticos e não concede autorização para testar sistemas reais.
Exercícios
- EX005 — Não aprovados. Quais dois serviços em escuta o laboratório marca como NOT APPROVED? Rubrica: 3 = 3389/rdp e 8080/http-alt; 2 = um; 1 = errado; 0 = nada.
- EX006 — Por que o RDP importa. Por que RDP na VLAN web é uma preocupação? Rubrica: 3 = exposição inesperada de área de trabalho remota; ampla superfície de ataque; 2 = parcial; 1 = tudo bem; 0 = nada.
- EX007 — Autorização. Sam pode fazer varredura de portas na produção para montar a própria lista? Rubrica: 3 = não sem autorização por escrito; 2 = não; 1 = sim; 0 = nada.
- EX008 — Acompanhamento do inventário. O que Sam faz, depois do laboratório, a respeito do nome ssh? Rubrica: 3 = anotar a limpeza do nome no inventário; continuar usando o processo de jump; 2 = parcial; 1 = ignorar; 0 = nada.
Síntese
Listas aprovadas transformam portas cruas em chamados; a varredura livre continua proibida.
Continue estudando — capítulo 02 de 18
← Capítulo 01 (rascunho) · Índice de capítulos do curso · Capítulo 03 (rascunho) →