Alguns dos achados mais valiosos vêm de protocolos que ninguém olha. O SNMP (Simple Network Management Protocol) é o exemplo perfeito: criado para gerenciar dispositivos de rede — roteadores, switches, impressoras, servidores —, ele foi projetado para relatar, sob consulta, uma quantidade impressionante de informação sobre o dispositivo. Quando mal configurado (o que é assustadoramente comum), o SNMP vaza esse tesouro para qualquer um que saiba perguntar. É frequentemente negligenciado tanto por administradores (que o deixam inseguro) quanto por pentesters iniciantes (que esquecem de checá-lo) — e essa negligência dupla o torna um achado de ouro. Esta aula fecha os grandes protocolos de enumeração.
Em UDP, invisível a um scan de TCP
O primeiro detalhe crucial é que o SNMP roda sobre UDP, na porta 161 — o que significa que um scan focado só em TCP (aula Teoria de scanning: interrogando o alvo pela primeira vez) não o encontra. Este é um lembrete prático do porquê de escanear UDP apesar de mais lento: um SNMP exposto passa completamente despercebido num scan TCP-only, e você perde um dos alvos mais reveladores. Ao escanear, inclua o UDP para as portas de gerência: nmap -sU -p 161 192.168.1.10.
A community string em texto claro
O conceito que define a (in)segurança do SNMP é a community string — essencialmente uma "senha" que autoriza a consulta. E aqui está o problema histórico: nas versões antigas e ainda muito usadas do protocolo (SNMPv1 e v2c), essas community strings são transmitidas em texto claro e, pior, são deixadas nos valores padrão com frequência alarmante. A community string padrão de leitura é quase universalmente "public", e a de escrita, "private". Um administrador que instala um dispositivo e não muda essas strings deixa o SNMP escancarado — e adivinhar "public" não é exatamente um feito de hacking. Encontrar SNMP com community string padrão é um dos achados mais comuns e mais reveladores de um pentest de infraestrutura.
snmpwalk e a árvore MIB
As ferramentas de enumeração SNMP consultam o dispositivo usando a community string e extraem sua base de informação (a MIB, uma árvore estruturada de dados sobre o dispositivo):
# testa community strings comuns contra o alvo
onesixtyone 192.168.1.10 public
# "caminha" pela MIB, despejando toda a informação disponível
snmpwalk -v2c -c public 192.168.1.10
# -v2c = versão 2c; -c public = community string
# snmp-check — apresenta a informação de forma organizada e legível
snmp-check 192.168.1.10 -c public
# scripts NSE
nmap -sU -p 161 --script snmp-info,snmp-brute 192.168.1.10
O snmpwalk "caminha" por toda a árvore de dados do dispositivo, e o snmp-check organiza o resultado de forma legível. O que eles despejam é impressionante.
Um dossiê da rede vista de dentro
O que o SNMP revela, quando aberto, é quase um dossiê do sistema: contas de usuário do dispositivo; processos em execução e software instalado; conexões de rede ativas e portas abertas (um mapa da rede visto de dentro); tabelas de rotas e interfaces (revelando a topologia interna, outras redes alcançáveis — precioso para o pivoting do Bloco VIII); e, dependendo do dispositivo, muito mais. Em roteadores e switches, pode revelar a configuração da rede inteira. A ironia é cruel: um protocolo feito para facilitar a gestão facilita igualmente o reconhecimento do atacante. E se a community string de escrita ("private") estiver acessível, o cenário piora — em certos dispositivos, é possível alterar a configuração via SNMP, o que transcende a enumeração e vira controle.
Não negligencie nem o óbvio nem o obscuro
O ponto que quero fixar desta aula, e que vale para todo o Bloco VI, é: não negligencie o óbvio nem o obscuro. O SNMP é esquecido justamente por ser "chato" e menos glamouroso que explorar uma vulnerabilidade sofisticada — mas ele frequentemente entrega, de graça e sem esforço, informação que economiza horas de trabalho e revela caminhos que nenhuma outra fonte mostraria. O pentester metódico verifica todos os serviços expostos, os famosos e os obscuros, os TCP e os UDP, porque o achado decisivo tantas vezes está onde os apressados não olham. Essa minúcia é uma marca do profissional.
Trocar o padrão e migrar para o v3
Do lado defensivo, as contramedidas contra a exposição SNMP são simples e frequentemente ignoradas, o que explica a prevalência do problema: mudar as community strings padrão (jamais deixar "public"/"private"); migrar para SNMPv3, que adiciona autenticação e criptografia reais (ao contrário do v1/v2c); restringir o acesso SNMP por firewall, permitindo consultas apenas de estações de gerência autorizadas; desabilitar o SNMP onde não é usado (superfície desnecessária é risco desnecessário); e usar apenas acesso somente-leitura quando escrita não for essencial. A auditoria defensiva testa a própria rede com as mesmas ferramentas — onesixtyone, snmpwalk — para achar dispositivos vazando. Com o SNMP, encerramos os grandes protocolos individuais.
Fontes e leituras recomendadas
- HackTricks — seção "Pentesting SNMP" (161 UDP)
- Documentação de snmpwalk, snmp-check e onesixtyone
- RFCs do SNMP e material sobre SNMPv3 (a versão segura)
- Salas de enumeração de rede no TryHackMe que incluem SNMP
Exercícios
-
Por que um scan focado apenas em TCP não encontra o SNMP, e o que isso ensina sobre a importância de escanear UDP?
✓ Resposta:Porque o SNMP roda sobre UDP (porta 161), e scans TCP-only não sondam portas UDP. Isso ensina que ignorar o UDP cria pontos cegos, deixando passar despercebidos serviços reveladores como o SNMP, apesar de scans UDP serem mais lentos.
-
O que é uma community string, e qual o problema histórico com as strings padrão "public" e "private"?
✓ Resposta:A community string é uma espécie de senha que autoriza consultas SNMP. O problema é que, nas versões v1/v2c, ela trafega em texto claro e frequentemente permanece nos valores padrão — "public" (leitura) e "private" (escrita) —, deixando o SNMP acessível a qualquer um que teste esses valores óbvios.
-
O que o comando
snmpwalkfaz, e cite três tipos de informação que a enumeração SNMP pode revelar sobre um dispositivo.✓ Resposta:O
snmpwalkpercorre toda a árvore de dados (MIB) do dispositivo, despejando as informações disponíveis. Pode revelar, por exemplo: contas de usuário, processos/software em execução, conexões e portas ativas, e tabelas de rotas/interfaces. (Três quaisquer.) -
Por que a informação de tabelas de rotas e interfaces obtida via SNMP é especialmente valiosa para fases posteriores do ataque?
✓ Resposta:Porque revelam a topologia interna da rede — outras redes alcançáveis, interfaces e rotas — vista de dentro do dispositivo, o que é insumo direto para o pivoting e a movimentação lateral (Bloco VIII), indicando por onde avançar após o comprometimento.
-
Liste três contramedidas defensivas contra a exposição SNMP e explique por que migrar para SNMPv3 é relevante.
✓ Resposta:Contramedidas: mudar as community strings padrão; migrar para SNMPv3; restringir o acesso SNMP por firewall; desabilitar o SNMP onde não é usado; usar acesso somente-leitura. Migrar para SNMPv3 é relevante porque ele adiciona autenticação e criptografia reais, ausentes no v1/v2c, protegendo tanto o acesso quanto a confidencialidade das consultas.