Analisador de Cabeçalhos de E-mail
Analisa cabeçalhos de e-mail e rastreia rotas de entrega.
Visão geral
Todo servidor de e-mail que manipula uma mensagem acrescenta um cabeçalho
Received no início dela. Lidos em ordem, esses cabeçalhos são o caminho de
entrega: qual host passou a mensagem para qual, e quando. Lidos junto com os
resultados de autenticação, eles dizem se a mensagem vem mesmo de onde afirma
vir.
Esta ferramenta desdobra os cabeçalhos, reconstrói o caminho como uma lista numerada de saltos com o atraso de cada um, e traz os cabeçalhos de autenticação em separado, para que você não precise garimpá-los no meio do ruído.
Como usar
- No seu cliente de e-mail, abra o original ou o código-fonte bruto da mensagem. No Gmail isso é Mostrar original; no Outlook, Propriedades → Cabeçalhos da Internet; no Apple Mail, Visualizar → Mensagem → Código-fonte bruto.
- Cole tudo, do topo da mensagem até a primeira linha em branco. O corpo não é necessário.
- Leia a lista de saltos de cima para baixo — o salto 1 é a origem.
- Leia os resultados de autenticação logo abaixo dela.
Lendo a lista de saltos
Cada linha mostra o host remetente (from), o host receptor (by) e o atraso
desde o salto anterior. Uma entrega normal são dois a cinco saltos concluídos em
poucos segundos.
A direção importa. Os relays acrescentam no início, e não no fim, então os cabeçalhos brutos vêm do mais novo para o mais antigo; a lista aqui está invertida para que se leia na direção em que a mensagem viajou. Quando você comparar com o código-fonte bruto, lembre-se de que os dois estão de cabeça para baixo um em relação ao outro.
Os atrasos vêm da data em cada cabeçalho Received, e essas datas são escritas
por máquinas diferentes, com relógios ajustados de forma independente. Uma
discrepância de um ou dois segundos, inclusive negativa, é desvio de relógio e
não evidência de nada. Uma lacuna de minutos ou horas é real, e quase sempre
significa que o servidor receptor colocou a mensagem em fila — greylisting, que
deliberadamente adia um remetente de primeira viagem, é de longe a causa mais
comum.
Lendo os resultados de autenticação
Quatro cabeçalhos importam, e eles respondem a perguntas diferentes:
Received-SPF— o IP que se conectou estava autorizado a enviar pelo domínio do remetente de envelope? O SPF verifica o envelope (MAIL FROM), que não é o cabeçalhoFrom:que o seu destinatário vê. Uma mensagem pode passar no SPF e ainda assim exibir um remetente forjado.DKIM-Signature— uma assinatura criptográfica sobre cabeçalhos selecionados e sobre o corpo, verificável contra uma chave pública no DNS do domínio que assinou. Od=é o domínio que assinou e os=é o seletor, e juntos eles localizam a chave em<seletor>._domainkey.<domínio>.Authentication-Results— o veredicto do próprio servidor receptor, combinando SPF, DKIM e DMARC. É esta a linha para ler primeiro, porque foi escrita pela única máquina da cadeia em que você tem motivo para confiar.ARC-Authentication-Results— o veredicto registrado por um intermediário antes de ele modificar a mensagem. Listas de discussão reescrevem cabeçalhos e quebram o DKIM por natureza, e o ARC existe para que o resultado original sobreviva a isso.
O DMARC é o que determina o que os destinatários de fato fazem. Ele exige que o
SPF ou o DKIM passe e que esteja alinhado — o domínio que passou tem de bater
com o domínio do cabeçalho From: visível. O alinhamento é o motivo pelo qual uma
mensagem pode mostrar spf=pass e dkim=pass e ainda assim falhar no DMARC: os
dois passaram, para o domínio errado.
Exemplos
- «Nossos e-mails caem no spam». Leia o
Authentication-Resultsde uma mensagem que você mandou para si mesmo em outro provedor. Se o DKIM passa mas o DMARC falha, o problema é alinhamento, não assinatura. - Uma mensagem de phishing convincente. Compare o
fromdo salto 1 com o domínio do cabeçalhoFrom:visível. Forjar o nome de exibição é trivial; forjar um primeiro salto que corresponda à infraestrutura real do domínio alegado não é. - Uma entrega que leva vinte minutos. Encontre o salto com o atraso. Se for o primeiro servidor de entrada do destinatário, greylisting é a resposta provável e se resolve sozinha na nova tentativa.
- E-mails que pararam de chegar depois de uma mudança de DNS. Confira o SPF nos resultados. Dois registros SPF em um mesmo domínio, ou um registro que excede o limite de dez consultas, produzem uma falha permanente que parece um mistério.
- Uma lista de discussão quebrando a sua assinatura. Procure cabeçalhos ARC. A presença deles diz que um intermediário modificou a mensagem e registrou o veredicto anterior.
Observações
As linhas de continuação são desdobradas antes da interpretação. Cabeçalhos longos são quebrados em várias linhas com espaço em branco à esquerda, e um parser que lê linha por linha sem juntá-las vai truncar exatamente os cabeçalhos que mais importam.
Os valores de from e by são lidos apenas do início de uma cláusula. Um
cabeçalho Received sem cláusula from muitas vezes contém a string
envelope-from dentro de um comentário, e tratar isso como o host que se conectou
exibiria um endereço fornecido pelo atacante como origem da mensagem —
justamente o fato que você veio aqui verificar.
Tudo aqui descreve o que os cabeçalhos dizem. Cabeçalhos escritos antes da primeira máquina que você controla podem ser fabricados por inteiro, então a cadeia é evidência sobre a sua própria infraestrutura e uma alegação sobre tudo o que vem antes dela.
Para inspecionar uma mensagem salva em vez dos cabeçalhos dela, use o visualizador EML.