A segurança dos e-mails aprimorada com DKIM e SPF

0 27

Um tópico de grande relevância na Internet é a segurança dos e-mails. Em busca disso, a utilização de mecanismos modernos como o DKIM e SPF são cruciais.

A segurança dos e-mails vem sendo debatida e bastante melhorada nos últimos anos.

Grandes empresas do setor de tecnologia abraçaram a causa visando diminuir o volume de spams, bem como a redução de práticas criminosas aplicadas sobre os usuários da rede.

Há pouco mais de 6 anos, foi realizada a mudança da porta padrão do SMTP (Simple Mail Transfer Protocol) para tornar mais fácil a identificação de anomalias nas transferências de e-mails.

No entanto, ainda temos um caminho longo a ser percorrido na busca de novas formas de aperfeiçoamentos. Hoje, vou apresentar dois mecanismos não tão novos, mas ainda pouco difundidos: DKIM e SPF.

Importância do SPF e DKIM na entrega de e-mails.
Fonte: https://www.dinamize.com.br/blog

O que é o SPF (Sender Policy Framework)?

O SPF foi introduzido como uma forma de validar se as mensagens foram enviadas por um servidor de e-mail autorizado pelo detentor de determinado domínio.

Isso porque, ao preparar uma mensagem para envio, é possível informar qualquer remetente (fulano@dominio.com.br), mesmo que você não seja o dono do domínio.

Sendo assim, para furar a segurança dos e-mails, um spammer ou qualquer outra pessoa pode se utilizar disso para enviar e-mails falsos em nome de outros.

Como funciona o SPF

Os servidores de e-mail (Gmail, Outlook etc), ao receberem qualquer mensagem, validam junto ao domínio do remetente qual ou quais são os servidores (IPs) permitidos a enviarem em seu nome.

Assim, dado a política de cada servidor, a mensagem pode ser recebida ou rejeitada. Além do que, as entidades que mantém black/white lists, podem ser alertadas para qualquer uso indevido.

O que é e como funciona SPF
O que é e como funciona SPF

Como configurar o SPF

A criação do SPF é feita adicionando-se uma chave TXT na configuração de registros DNS do domínio. Para que seja válida, deve ser as seguintes diretrizes:

  1. Um registro SPF deve sempre começar com o número da versão v=spf1 (versão 1).
  2. Após incluir a tag de versão, você deve informar todos os endereços IP autorizados a enviar e-mail em seu nome. Por exemplo: v=spf1 ip4:18.229.190.53 ip6:0:0:0:0:0:ffff:12e5:be35
  3. Em seguida, você pode informar todos os serviços de terceiros que podem enviar e-mails em seu nome. Por exemplo: v=spf1 ip4:18.229.190.53 include:servicoterceiro.com.br
  4. A última definição é a política a ser aplicada aos e-mails provenientes de fontes não autorizadas.
    • -all: servidores não listados não estão autorizados e os e-mails serão rejeitados.
    • ~all: servidores não listados terão os e-mails aceitos, porém, serão marcados.
    • +all: aceita e-mails provenientes de qualquer fonte (não recomendado).
Retorno da validação do SPF

Após a criação do registro, é possível validar se o mesmo está em conformidade com o padrão nesse site.

O que é o DKIM (Domain Keys Identified Mail)?

O DKIM é um mecanismo para assinatura e autenticação com um par chaves pública/privada das mensagens de e-mails enviadas. Enquanto o SPF garante a autenticidade do servidor, o DKIM certifica ao destinatário que a mensagem não foi alterada até ser entregue.

Fazendo uma analogia, o SPF seria a garantia de que o carteiro que entregou a carta (e-mail) é realmente um funcionário dos Correios, e o DKIM de que a carta não foi violada e seu conteúdo modificado entre a coleta e a entrega.

Como funciona o DKIM

A assinatura DKIM é gerada pelo MTA (Mail Transfer Agent). Ele cria uma sequência única de caracteres através de uma função de Hash.

Esse valor é então armazenado nas configurações de DNS do domínio. Após receber o e-mail, o destinatário pode verificar a assinatura usando a chave pública registrada no DNS.

Ele usa essa chave para descriptografar o valor de hash no cabeçalho e recalcular o valor de hash do e-mail recebido. Se essas duas assinaturas DKIM forem correspondentes, o MTA saberá que o e-mail não foi alterado.

Isso, portanto, confirma ao usuário que o e-mail foi realmente enviado do domínio listado.

Como configurar o DKIM

O primeiro passo é realizar o inventário de todos os domínios que farão envios dos seus e-mails.

Em seguida, é preciso instalar e configurar nos servidores de e-mail o software responsável por assinar cada mensagem antes do envio. O site do DKIM.org tem uma relação dos softwares e serviços e, ainda, como realizar a configuração.

Após isso, é preciso criar o par de chaves pública/privada DKIM. Eu utilizei o DKIM Wizard da SparkPost.

Com a chave pública em mãos, é preciso publicá-la em um registro TXT do DNS com o nome utilizado no wizard.

Já a chave privada deve ser adiciona em seu servidor no aplicativo responsável por assinar digitalmente seus e-mails.

Para verificar se sua configuração DKIM no DNS está correta visite esse site.

Deixe uma resposta

Seu endereço de email não será publicado.