Os serviços de e-mail são onipresentes e, quando mal configurados, generosos com informação. Três protocolos governam o e-mail: o SMTP (envio de mensagens), o POP3 e o IMAP (recebimento/acesso). Para o pentester, o mais interessante em termos de enumeração é o SMTP, porque ele possui comandos que, em servidores mal configurados, permitem validar quais usuários existem — transformando o servidor de e-mail numa fonte de nomes de contas válidas. Esta aula cobre a enumeração desses serviços, fechando o inventário dos protocolos individuais.
As portas dos três protocolos
Situe as portas, seu reflexo de sempre: SMTP na porta 25 (e variantes 587 e 465 para envio autenticado/cifrado); POP3 na 110 (e 995 com TLS); IMAP na 143 (e 993 com TLS). Quando o scan revela a porta 25 aberta, você identificou um servidor de e-mail cuja função é aceitar mensagens — e é aí que mora a oportunidade de enumeração.
VRFY e EXPN como oráculo de usuários
O cerne da aula são dois comandos do protocolo SMTP: VRFY e EXPN. O VRFY foi projetado para verificar se um endereço/usuário existe no servidor; o EXPN para expandir uma lista de distribuição, revelando seus membros. Em servidores mal configurados que respondem a esses comandos, o atacante ganha um oráculo: ele pergunta "o usuário joão existe?" e o servidor responde de forma diferente para usuários válidos e inválidos, permitindo montar uma lista de contas reais. Você pode fazer isso manualmente, conectando-se com uma ferramenta simples, o que é ótimo para entender o mecanismo antes de automatizar:
# conecta manualmente ao SMTP para interagir com o protocolo
nc 192.168.1.10 25 # netcat abre uma conexão bruta na porta 25
# uma vez conectado, digitam-se comandos do protocolo:
# HELO teste
# VRFY root → resposta indica se "root" existe
# VRFY usuarioX → compara a resposta com a de um usuário inexistente
# automação com a ferramenta dedicada
smtp-user-enum -M VRFY -U usuarios.txt -t 192.168.1.10
# -M método -U wordlist -t alvo
# script NSE
nmap --script smtp-enum-users 192.168.1.10
Conversar o protocolo à mão com o netcat
Conectar-se manualmente com o nc (netcat) e "conversar" o protocolo à mão é um exercício que recomendo fortemente: você digita os comandos, vê as respostas cruas, e entende por que a diferença entre elas vaza a existência do usuário. Depois, o smtp-user-enum automatiza isso sobre uma wordlist inteira. O resultado — uma lista de usuários válidos — é, mais uma vez, o insumo direto dos ataques de senha do Bloco VII.
Banner e open relay
Além da enumeração de usuários, o SMTP revela outras coisas úteis. O banner do servidor (que você lê ao conectar) frequentemente denuncia o software e a versão do servidor de e-mail (Postfix, Exchange, Sendmail...), conectando com vulnerabilidades conhecidas. E há a questão do open relay — um servidor SMTP mal configurado que aceita retransmitir e-mails de qualquer origem para qualquer destino. Um open relay é um achado sério: ele pode ser abusado para enviar spam ou e-mails de phishing que aparentam vir de dentro da organização, o que tem valor tanto para spammers quanto para a fase de engenharia social (Bloco XIV). Testar se um servidor é open relay é parte da enumeração SMTP completa.
POP3 e IMAP como alvo de autenticação
POP3 e IMAP, por sua vez, são menos ricos em enumeração, mas ainda relevantes. Seu banner revela versão (e vulnerabilidades associadas). E, crucialmente, são alvos de ataques de autenticação: se você obteve uma lista de usuários (via SMTP, LDAP, SMB — a correlação da aula Consolidando o reconhecimento: do fragmento à inteligência em ação), pode tentar força bruta ou password spraying contra o login POP3/IMAP para acessar caixas de e-mail, cujo conteúdo pode conter credenciais, informação sensível e mais material de reconhecimento. Um detalhe de segurança que você deve notar e reportar: versões antigas desses protocolos transmitem credenciais em texto claro (sem TLS), o que os torna vulneráveis a sniffing (aula Sniffing: escutando a rede com Wireshark) — encontrar POP3/IMAP sem criptografia é um achado de relatório.
Funcionalidade legítima virando vetor
O ponto conceitual que amarra: os serviços de e-mail ilustram como funcionalidades legítimas viram vetores de enumeração. VRFY e EXPN existiam para propósitos administrativos válidos; o open relay era um comportamento "amigável" de servidores antigos; o texto claro era o padrão de uma internet mais ingênua. Nenhum foi projetado para atacar, mas todos, mal configurados, servem ao atacante. É o tema recorrente do curso: a segurança falha menos por maldade e mais por configurações permissivas herdadas de uma época menos hostil.
Desligar VRFY/EXPN e forçar TLS
Do lado defensivo, as contramedidas são diretas: desabilitar VRFY e EXPN (ou configurá-los para não vazar diferença entre usuário válido e inválido); impedir open relay (exigir autenticação para envio, restringir os domínios de retransmissão); forçar TLS em todos os serviços de e-mail, eliminando o texto claro; manter os servidores atualizados; e implementar as proteções anti-phishing (SPF, DKIM, DMARC — os mesmos registros TXT da aula DNS, WHOIS e subdomínios: mapeando a infraestrutura) que, do outro lado, dificultam a falsificação de e-mails da organização. O passo de escala seguinte troca a enumeração serviço por serviço pelos scanners de vulnerabilidade, que automatizam a detecção em massa — com suas virtudes e seus perigos.
Fontes e leituras recomendadas
- HackTricks — seções "Pentesting SMTP" (25), POP3 (110) e IMAP (143)
- Documentação de smtp-user-enum e do netcat
- RFCs de SMTP — para entender VRFY, EXPN e o funcionamento do protocolo
- Salas de enumeração no TryHackMe que incluem serviços de e-mail
Exercícios
-
Quais são as portas padrão de SMTP, POP3 e IMAP, e qual desses serviços é o mais interessante para enumeração de usuários?
✓ Resposta:SMTP na 25 (também 587/465), POP3 na 110 (995 com TLS) e IMAP na 143 (993 com TLS). O SMTP é o mais interessante para enumeração de usuários, por causa dos comandos VRFY/EXPN.
-
Explique o que os comandos VRFY e EXPN fazem e por que se tornam um "oráculo" de usuários válidos num servidor mal configurado.
✓ Resposta:VRFY verifica se um usuário/endereço existe; EXPN expande listas de distribuição, revelando membros. Num servidor mal configurado, o servidor responde de forma distinta para usuários válidos e inválidos, permitindo ao atacante confirmar quais contas existem — funcionando como um oráculo de usuários.
-
O que é um open relay, e por que ele é um achado sério — inclusive para a fase de engenharia social?
✓ Resposta:É um servidor SMTP que aceita retransmitir e-mails de qualquer origem para qualquer destino. É sério porque pode ser abusado para enviar spam ou phishing que aparenta vir de dentro da organização, sendo valioso para campanhas de engenharia social e prejudicial à reputação do domínio.
-
Por que encontrar POP3 ou IMAP sem TLS é um achado de relatório?
✓ Resposta:Porque versões sem TLS transmitem credenciais em texto claro, tornando-as vulneráveis a interceptação por sniffing — uma exposição direta de credenciais que deve constar do relatório.
-
Cite três contramedidas defensivas para os serviços de e-mail e relacione uma delas com os registros TXT da aula DNS, WHOIS e subdomínios: mapeando a infraestrutura.
✓ Resposta:Contramedidas: desabilitar/neutralizar VRFY e EXPN; impedir open relay; forçar TLS; manter servidores atualizados; implementar SPF, DKIM e DMARC. Estas últimas são justamente os registros TXT da aula DNS, WHOIS e subdomínios: mapeando a infraestrutura, que dificultam a falsificação de e-mails do domínio.