Andrey Escarião

Pesquisas, contos e ciência.

Autenticação de e-mail na prática: implementando SPF, DKIM e DMARC

·

·

4 min de leitura

Todo dia alguém recebe um golpe que finge vir de uma empresa conhecida. Boa parte disso acontece porque o domínio da empresa não se protege contra falsificação. Sem os três mecanismos de autenticação de e-mail, qualquer pessoa consegue enviar mensagem que parece vir do seu domínio.

SPF, DKIM e DMARC resolvem isso. Não são difíceis de configurar, mas a ordem importa, e apressar a última etapa é o jeito clássico de bloquear o próprio e-mail legítimo.

O que cada um faz

MecanismoResponde à pergunta
SPFEste servidor tem autorização para enviar e-mail do meu domínio?
DKIMEsta mensagem foi mesmo assinada pelo meu domínio e não foi alterada no caminho?
DMARCO que o destinatário deve fazer quando SPF e DKIM não confirmam?

É o mesmo trio que, do lado da investigação, permite descobrir se uma mensagem é falsa, como tratei em Análise de cabeçalhos de e-mail. Aqui montamos a proteção; lá lemos o resultado dela.

Passo 1: descobrir quem envia pelo seu domínio

Antes de qualquer registro, liste tudo que envia e-mail em seu nome: o servidor principal, o serviço de marketing, o sistema que dispara notas fiscais, a ferramenta de suporte. Esquecer um deles é o que faz o e-mail legítimo cair no passo final.

Passo 2: publicar o SPF

O SPF é um único registro TXT no DNS, listando quem pode enviar. Um exemplo que autoriza o Google Workspace e um serviço de envio:

tipo: TXT
nome: @
valor: v=spf1 include:_spf.google.com include:servico-de-envio.com -all

O -all ao final significa “rejeite tudo que não está nesta lista”. Comece com ~all, que apenas marca como suspeito em vez de rejeitar, e só troque para -all depois de confirmar que não faltou ninguém. Cuidado com um limite técnico: o SPF não pode exigir mais de dez consultas de DNS, e cada include conta.

Passo 3: ativar o DKIM

O DKIM assina cada mensagem com uma chave criptográfica. A parte pública dessa chave fica publicada no seu DNS, e o servidor de destino usa ela para conferir a assinatura.

Isso é ativado no painel do seu provedor de e-mail, que gera a chave e informa qual registro publicar. O detalhe que importa: o DKIM sobrevive ao encaminhamento, ao contrário do SPF. Quando alguém encaminha sua mensagem, o SPF quebra, mas a assinatura DKIM continua válida. Por isso os dois se complementam.

Passo 4: DMARC, com muita cautela

O DMARC amarra os dois anteriores e define a política. É o mais poderoso e o mais perigoso, porque uma política rígida ativada cedo demais joga seu e-mail legítimo na lixeira dos destinatários.

A regra de ouro é começar apenas observando, sem punir nada:

tipo: TXT
nome: _dmarc
valor: v=DMARC1; p=none; rua=mailto:relatorios@seudominio.com.br

O p=none não bloqueia nada. Ele só pede que os destinatários enviem relatórios sobre o que está passando pelo seu domínio. Durante semanas, esses relatórios mostram cada remetente legítimo que você esqueceu no passo 1.

Passo 5: endurecer aos poucos

Só depois de os relatórios confirmarem que todo remetente legítimo passa é que você aperta a política, em dois degraus:

  1. p=quarantine: mensagens que falham vão para o spam. Observe por mais algumas semanas.
  2. p=reject: mensagens que falham são recusadas. É o objetivo final, e o que de fato impede a falsificação.

Pular direto para p=reject sem passar pela observação é o erro que faz a empresa desligar o DMARC no dia seguinte, depois que um sistema esquecido parou de entregar. Paciência aqui é o que separa proteção efetiva de dor de cabeça.

Como conferir

Você verifica os três de fora, consultando o próprio DNS:

dig +short txt seudominio.com.br | grep spf
dig +short txt _dmarc.seudominio.com.br

E, mais importante, leia os relatórios do DMARC. Eles são o painel que mostra quem está tentando se passar pelo seu domínio, e são a mesma matéria-prima que um investigador usaria para rastrear uma campanha de falsificação contra a sua marca.

O ganho final

Com os três configurados e a política em reject, falsificar o seu domínio deixa de ser trivial. Não elimina todo o phishing, porque o atacante pode usar um domínio parecido, mas fecha a porta mais fácil, que é usar o seu nome exato. É proteção que custa alguns registros de DNS e a paciência de subir a política com calma.