Introdução
Este documento descreve os conceitos gerais da arquitetura DMARC (Domain-based Message Authentication, Reporting and Conformance), juntamente com os requisitos de alinhamento do Sender Policy Framework (SPF) e do DKIM (DomainKeys Identified Mail) em relação ao DMARC.
Terminologia
Esta seção descreve e fornece definição para alguns dos termos principais usados neste documento.
- EHLO/HELO - Os comandos que fornecem a identidade de um cliente SMTP durante a inicialização de uma sessão SMTP, conforme definido no RFC 5321.
- Do cabeçalho - O campo De: especifica os autores de uma mensagem. Ele normalmente incluirá o nome de exibição (o que é mostrado a um usuário final pelo cliente de e-mail), juntamente com um endereço de e-mail que contém uma parte local e um nome de domínio (por exemplo, "John Doe" <johndoe@example.com>) conforme definido no RFC 5322.
- MAIL FROM - deriva do comando MAIL no início de uma sessão SMTP e fornece a identificação do remetente, conforme definido no RFC5321. Também é amplamente conhecido como remetente de envelope, caminho de retorno ou endereço de devolução.
DMARC - Alinhamento de identificador
O DMARC vincula o que o DKIM e o SPF autenticam ao que está listado no cabeçalho De. Isso é feito por alinhamento. O alinhamento requer que a identidade de domínio autenticada pelo SPF e DKIM corresponda ao domínio no endereço de e-mail visível para o usuário final.
Vamos começar com o que é um identificador e por que eles são importantes em relação ao DMARC.
Identificadores
Os identificadores identificam um nome de domínio a ser autenticado.
Identificadores em referência ao DMARC:
- SPF:
O SPF autentica o domínio que aparece na parte MAIL FROM ou EHLO/HELO da conversação SMTP, ou em ambas. Esses domínios podem ser diferentes e geralmente não são visíveis para o usuário final.
- DKIM:
O DKIM autentica o domínio de assinatura que é afixado a uma assinatura dentro da marca d=.
Esses identificadores (SPF e DKIM) são autenticados no identificador de domínio derivado no cabeçalho From. O domínio do cabeçalho De é usado porque é o campo do Agente de Correio de Usuário (MUA) mais comum para o originador da mensagem e é aquele usado pelos usuários finais para identificar a origem da mensagem (um remetente), o que também torna o cabeçalho De um alvo principal para abuso.
Cuidado: o DMARC só pode proteger contra um cabeçalho From válido.
O DMARC não pode operar em:
- Cabeçalhos RFC 5322 malformados, ausentes ou repetidos
- Cabeçalhos não compatíveis, pois não serão validados
- Quando houver mais de uma identidade de domínio no cabeçalho (*)
Portanto, deve existir um processo além do DMARC para identificar mensagens com cabeçalhos malformados não compatíveis e implementar uma maneira de marcá-los e torná-los visíveis como cabeçalhos não qualificados para DMARC.
(*) O DMARC precisa extrair uma única identidade de domínio do cabeçalho. Se houver mais de um endereço de e-mail no cabeçalho, esse cabeçalho será ignorado na maioria das implementações de DMARC. Os cabeçalhos de processamento com mais de uma identidade de domínio são declarados como fora do escopo na especificação DMARC.
Quando o Cisco ESA pode detectar mais de uma identidade de domínio, ele deixa uma mensagem apropriada nos logs de e-mail:
(Machine esa.lab.local) (SERVICE)> grep -i "verification skipped" mail_logs
Tue Oct 16 14:13:52 2018 Info: MID 2003 DMARC: Verification skipped (Sending domain could not be determined)
Alinhamento do identificador
O alinhamento do identificador define uma relação entre o domínio autenticado por SPF e/ou DKIM e o cabeçalho From. O alinhamento é um processo de correspondência que precisa ser atendido adicionalmente após a verificação bem-sucedida de SPF e/ou DKIM. O processo de autenticação DMARC requer que pelo menos um dos identificadores (identidade de domínio) usados por SPF ou DKIM seja alinhado com a parte de domínio do endereço do cabeçalho De.
O DMARC introduz dois modos de alinhamento:
- o modo estrito requer uma correspondência exata (alinhamento) entre nomes de domínio
- o modo relaxado permite o subdomínio do mesmo domínio
O Alinhamento de Identificadores é necessário porque uma mensagem pode conter uma assinatura válida de qualquer domínio, incluindo domínios usados por uma lista de endereçamento ou até mesmo um fator ruim. Portanto, apenas portar uma assinatura válida não é suficiente para inferir a autenticidade do Domínio Autor.
Alinhamento DKIM
O identificador de domínio DKIM é obtido pela revisão da marca d= em uma assinatura DKIM e é comparado com o domínio Do cabeçalho para verificar com êxito uma assinatura DKIM.
Como exemplo, a mensagem pode ser assinada em nome do domínio d=blog.cisco.com, que identifica o domínio blog.cisco.com como signatário. O DMARC usa esse domínio e o compara com a parte de domínio do cabeçalho De (Por exemplo, noreply@cisco.com). O alinhamento entre esses identificadores falhará no modo estrito, mas será transmitido usando o modo relaxado.
Observação: um único e-mail pode conter várias assinaturas DKIM e é considerado um "passo" DMARC se qualquer assinatura DKIM estiver alinhada e for verificada.
Alinhamento SPF
O mecanismo SPF (spfv1) autentica identificadores de domínio fornecidos por:
- identidade MAIL FROM (comando MAIL FROM)
- Identidade HELO/EHLO (comando HELO/EHLO)
A identidade de domínio MAIL FROM tenta ser autenticada por padrão. A identidade do domínio HELO é autenticada pelo DMARC somente para mensagens com uma identidade MAIL FROM vazia, como mensagens devolvidas.
Um exemplo comum disso seria quando uma mensagem é enviada com um endereço MAIL FROM diferente (noreply@blog.cisco.com) em comparação com o que está no cabeçalho From (noreply@cisco.com). A parte MAIL FROM da identidade de domínio de noreply@blog.cisco.com se alinhará com o cabeçalho From domínio de noreply@cisco.com no modo relaxado, mas não no modo estrito.
Marcas do modo de alinhamento
Os modos de alinhamento de DMARC podem ser definidos em um registro de política de DMARC usando as marcas de modo de alinhamento adkim e aspf. Essas tags indicam que modo é necessário para o alinhamento do identificador DKIM ou SPF.
Os modos podem ser definidos como relaxado ou estrito, com relaxado sendo o padrão se nenhuma tag estiver presente. Isso pode ser definido sob o valor de tag como:
- r: modo relaxado
- s: modo estrito
Referência