O pecado original
O (Simple Mail Transfer Protocol) não tem autenticação de remetente. Qualquer servidor pode afirmar que envia em nome de qualquer domínio, e o protocolo carrega aquilo sem reclamar. Tudo o que vem abaixo é remendo posterior.
O remendo é confuso por uma razão estrutural: uma mensagem tem dois endereços de origem. O remetente de envelope é o que o servidor emissor declara durante a conversa SMTP, e é para onde vão as devoluções. O cabeçalho From é o que o destinatário de fato vê no cliente de e-mail. Eles podem ser diferentes de forma legítima, com frequência são, e a distância entre os dois é exatamente onde mora a falsificação.
Guarde essa distinção e os três registros deixam de ser siglas intercambiáveis.
SPF — quais servidores podem enviar
O (Sender Policy Framework) é um registro DNS que lista os endereços autorizados a enviar e-mail por um domínio. O servidor receptor compara o endereço que conectou com a lista e obtém aprovação ou reprovação.
O que ele confere é o remetente de envelope, e não o From visível. Esse é o fato mais incompreendido da área: uma mensagem pode passar no SPF com nota máxima exibindo o From que bem entender.
Seus limites práticos merecem ser conhecidos antes de você depender dele. A avaliação é limitada a dez consultas DNS, e cada include: de um provedor grande consome várias, então registros inchados falham em silêncio em vez de falhar alto. E encaminhamento quebra: quando um destinatário encaminha a mensagem, o servidor que encaminha não está na sua lista, então o SPF reprova sem que ninguém tenha errado.
DKIM — a mensagem foi alterada, e por quem
O (DomainKeys Identified Mail) assina cabeçalhos selecionados e o corpo com uma chave privada; a chave pública fica no DNS. O receptor verifica a assinatura e aprende que um domínio específico assumiu responsabilidade pela mensagem e que as partes assinadas não foram modificadas em trânsito.
Como a assinatura viaja com a mensagem, o DKIM sobrevive a encaminhamento simples, que é onde o SPF falha. Ele também não diz nada, por si só, sobre o From visível — uma assinatura válida de um domínio pode acompanhar uma mensagem que exibe outro.
Duas observações operacionais: chaves precisam de rotação como qualquer material criptográfico, e a etiqueta opcional de comprimento de corpo permite que a assinatura cubra só o começo do corpo, o que deixa acrescentar conteúdo abaixo de uma assinatura válida. Não use.
DMARC — o que amarra tudo
O DMARC (Domain-based Message Authentication, Reporting and Conformance) acrescenta a peça que faltava: alinhamento. Ele exige que um resultado aprovado de SPF ou DKIM pertença ao mesmo domínio que o leitor vê no campo From. Essa é a proteção de verdade, e nem SPF nem DKIM a fornecem sozinhos.
Ele também faz duas coisas subestimadas:
Publica uma política — none, quarantine ou reject — dizendo aos receptores o que fazer com mensagens não alinhadas que reivindicam o seu domínio.
Pede relatórios. Relatórios agregados chegam dos receptores descrevendo o que passou e o que falhou pelo seu domínio, e de quais endereços. Essa é a parte que torna a implantação possível, e é inteligência gratuita sobre quem envia como você — inclusive seus próprios sistemas esquecidos e quem estiver forjando o seu nome.
Por que quase todo mundo empaca no p=none
O caminho honesto de implantação não é o que se recomenda numa frase só.
- Publique SPF e DKIM direito, e então o DMARC em
p=none. Nada é bloqueado ainda. - Leia os relatórios por semanas. Você vai encontrar remetentes legítimos que ninguém te contou: o sistema de faturamento, a plataforma de marketing, a ferramenta de chamados, o relay de uma filial.
- Corrija ou autorize cada um. Este é o trabalho real, é organizacional e não técnico, e é onde os projetos morrem.
- Vá para
quarantine, depoisreject, de preferência com implantação percentual.
Organizações ficam anos em p=none porque o passo 3 exige achar todo sistema que envia e-mail em nome da empresa, numa empresa em que ninguém tem essa lista. Publicar p=reject antes de terminar significa bloquear as próprias faturas.
O que quebra no mundo real
Encaminhamento quebra o SPF, como descrito. Listas de discussão com frequência quebram o DKIM também, porque alteram assuntos ou acrescentam rodapés, invalidando a assinatura.
O existe para isso: um intermediário registra os resultados de autenticação que viu e assina esse registro, para que um receptor posterior consiga ver que a mensagem só falhou porque passou por um encaminhador confiável. A adoção é parcial, e exige confiar na afirmação do intermediário.
Contra o que isso não protege
Esta é a parte que se vende demais, então vale dizer sem rodeio:
- Domínios parecidos. DMARC em
suaempresa.comnão faz nada quanto asua3mpresa.com. Os atacantes registram o próprio domínio e o autenticam com perfeição. - Falsificação de nome de exibição. Uma mensagem de um endereço qualquer exibindo o nome do seu presidente passa em tudo, porque nada aqui autentica um nome legível por humanos.
- Contas legítimas comprometidas. E-mail enviado de uma caixa real e sequestrada é autêntico por toda medida que esses padrões aplicam.
O resumo exato: esses padrões impedem que outros enviem como o seu domínio. Eles não impedem que seus usuários caiam em phishing. Esse segundo problema exige outros controles, e confundir os dois é como organizações acabam acreditando que um projeto de autenticação as deixou seguras.
Vizinhos que costumam ser confundidos com estes
O MTA-STS e o DANE protegem o transporte — garantem que o e-mail para o seu domínio viaje sobre TLS verificado, em vez de ser rebaixado. Isso é confidencialidade e integridade em trânsito, problema diferente de autenticar o remetente. O BIMI exibe o logotipo da marca em clientes compatíveis e exige DMARC em aplicação, o que faz dele, na prática, um incentivo comercial para terminar o trabalho acima.
A lista curta
- Um registro SPF só, abaixo do limite de consultas, sem
+all. - Assinatura DKIM em todo sistema que envia, chaves com rotação, sem etiqueta de comprimento de corpo.
- DMARC em
p=nonecom endereço de relatório agregado, desde o primeiro dia. - Um dono nomeado para os relatórios, porque relatório não lido é igual a relatório nenhum.
- Um inventário escrito de tudo que envia e-mail como você — o artefato de que o projeto inteiro realmente trata.
- Aplicação quando, e somente quando, esse inventário estiver completo.