O papel do SPF na autenticação de correio eletrónico
O Sender Policy Framework (SPF) é um padrão de autenticação de correio eletrónico que permite aos proprietários de domínios especificar quais os servidores de correio autorizados a enviar mensagens em nome dos seus domínios. Esta especificação ajuda a combater a falsificação de identidade (spoofing) e a melhorar a entrega de mensagens legítimas.
O registo SPF é publicado como um registo TXT no Sistema de Nomes de Domínio (DNS). Quando um servidor de correio recetor processa uma mensagem, verifica o registo SPF do domínio do remetente para validar se o endereço IP de origem consta da lista de remetentes autorizados.
Sintaxe do registo SPF e termos comuns
Um registo SPF é composto por uma versão obrigatória seguida de mecanismos, modificadores e qualificadores que definem a política de envio.
- Versão (
v=spf1): O registo tem de começar porv=spf1. Esta declaração deve ser o primeiro termo e o registo não pode conter mais de um termo de versão. - Mecanismos: Identificam os remetentes autorizados. Os mecanismos comuns incluem
ip4(para endereços ou intervalos IPv4),ip6(para endereços ou intervalos IPv6),a(endereços IP associados ao domínio),mx(servidores de correio do domínio),include(integração de políticas de terceiros),existseptr. - Qualificadores: Aplicam-se aos mecanismos para ditar o resultado da avaliação. Os qualificadores incluem
+(Pass),-(Fail),~(SoftFail) e?(Neutral). Se nenhum qualificador for especificado, o padrão é+. - O mecanismo
all: Geralmente colocado no final do registo, define o comportamento para qualquer remetente que não corresponda aos mecanismos anteriores. - Modificadores: Elementos como
redirectpermitem delegar a política SPF para outro domínio. Um modificador não pode ter um qualificador+,-,~ou?.
O limite de 10 consultas DNS e o seu impacto
A especificação do SPF impõe um limite estrito de um máximo de 10 consultas DNS durante a avaliação completa de um registo. Este limite existe para evitar ataques de negação de serviço (DoS) baseados em amplificação de DNS.
Os termos que acionam e contam para este limite de consultas DNS incluem include, a, mx, ptr, exists e redirect. Os mecanismos ip4 e ip6 não requerem consultas DNS adicionais.
Se a avaliação de um registo SPF exigir mais de 10 consultas DNS, os servidores de correio recetores têm de tratar o resultado como um erro permanente (PermError). Isto pode fazer com que mensagens legítimas falhem a autenticação SPF e sejam rejeitadas ou marcadas como spam. É importante notar que os destinos de include ou redirect podem conter os seus próprios termos que acionam consultas DNS, aumentando o total recursivo para além da estimativa do primeiro registo.
Avaliação de políticas e erros comuns
Durante a avaliação do SPF, os servidores de correio processam os termos sequencialmente, da esquerda para a direita.
- Termos inacessíveis: Qualquer termo colocado após o mecanismo
allfica inacessível durante a avaliação, uma vez que oallfaz a correspondência com todos os remetentes restantes. - Interação entre
redirecteall: O modificadorredirecté ignorado se o registo também contiver o mecanismoall. - Ausência de política terminal: Se o registo não tiver
allnemredirect, os remetentes sem correspondência recebem um resultado neutro, o que reduz a eficácia da proteção. - O perigo de
+all: Este qualificador autoriza explicitamente qualquer remetente na Internet a enviar correio em nome do domínio, o que geralmente anula a finalidade do SPF. - O uso de
?all: Devolve um resultado neutro, oferecendo aos servidores recetores pouca orientação sobre como tratar mensagens que não correspondam aos restantes termos. - O mecanismo
ptr: O mecanismoptrnão deve ser publicado porque é lento, pouco fiável e considerado obsoleto.
Funcionamento do Verificador de registos SPF
O Verificador de registos SPF realiza uma análise local da sintaxe e estima as consultas DNS do primeiro registo com base no texto fornecido.
O processamento é efetuado localmente: o seu registo SPF permanece no navegador. O BroBroGo não o carrega nem guarda. A ferramenta não realiza consultas DNS reais, não expande registos de fornecedores, não testa IPs de remetentes nem confirma o resultado que um servidor de correio recetor devolverá.
O campo de introdução aceita um valor TXT do SPF com um comprimento máximo de 20 000 carateres. Segmentos TXT de DNS entre aspas são aceites e unidos automaticamente antes da análise.
Se o registo introduzido for válido e não apresentar problemas, a ferramenta exibe a mensagem: Não foi encontrado qualquer risco de sintaxe ou de política no registo colado.. Caso contrário, são apresentadas notas detalhadas sobre os erros de sintaxe ou riscos de política identificados.
Mensagens de erro de validação de dados de entrada
Introduza um registo SPF suportado.Cole primeiro um registo SPF.Esse registo é invulgarmente grande. Mantenha-o abaixo de 20 000 carateres.
Notas de sintaxe e de política geradas
O registo tem de começar por v=spf1.Termo ‹term›: v=spf1 tem de ser o primeiro termo.O registo contém mais de um termo v=spf1.Termo ‹term›: “‹detail›” não é um mecanismo SPF reconhecido.Termo ‹term›: o valor de ‹detail› está em falta ou malformado.Termo ‹term›: introduza um endereço IPv4 ou intervalo CIDR válido.Termo ‹term›: introduza um endereço IPv6 ou intervalo CIDR válido.Termo ‹term›: o modificador ‹detail› aparece mais de uma vez.Termo ‹term›: um modificador não pode ter um qualificador +, -, ~ ou?.Termo ‹term›: mais de um mecanismo all dificulta a revisão da política.Os termos após all ficam inacessíveis durante a avaliação SPF.redirect é ignorado porque o registo também contém all.Este registo já contém ‹detail› termos que acionam o DNS, acima do limite de 10 do SPF.Os destinos de include ou redirect podem acrescentar mais consultas DNS do que esta estimativa do primeiro registo.O mecanismo ptr não deve ser publicado porque é lento e pouco fiável.+all autoriza qualquer remetente e geralmente anula a finalidade do SPF.?all devolve um resultado neutro e oferece aos recetores pouca orientação sobre a política.O registo não tem all nem redirect, pelo que os remetentes sem correspondência recebem um resultado neutro.Os segmentos TXT de DNS entre aspas foram unidos antes da análise.
Perguntas Frequentes
Como é calculada a estimativa de consultas DNS do SPF?
A estimativa conta os termos include, a, mx, ptr, exists e redirect no registo colado. Os registos incluídos e redirecionados podem acrescentar mais consultas, pelo que uma verificação local não consegue determinar o total recursivo final.
O que acontece se o SPF precisar de mais de 10 consultas DNS?
Os recetores de SPF têm de tratar como erro permanente uma avaliação que exceda o limite de 10 termos com consulta DNS. O limite abrange toda a cadeia de include e redirect, não apenas o primeiro registo.
Um resultado sem problemas prova que a minha configuração SPF funciona?
Não. Esta página verifica apenas o texto que colar. Não consulta o DNS, não expande registos de fornecedores, não testa um IP remetente nem confirma o que um servidor de correio recetor devolverá.