Ciberssegurança

Autenticação e segurança dos E-mails. Entendendo as siglas SPF, DKIM e DMARC.

Por:
Hugo Carvalho, CTO

No mundo digital atual, a troca de informações por meio de e-mails é uma parte fundamental das comunicações comerciais e pessoais. No entanto, uma vez que a segurança dessas mensagens muitas vezes é negligenciada, abriu-se um grande espaço para ataques cibernéticos e fraudes. 

A partir desta preocupação, a autenticação de e-mails acabou se tornando um tópico crucial para garantir que as mensagens sejam legítimas e confiáveis. Hoje em dia, apenas criptografar as mensagens entre servidores de e-mail não é o suficiente para impedir spammers e o envio de phishing - mensagens falsas enviadas no nome de algum remetente e tentando aplicar algum tipo de ataque/roubo/golpe. Pessoas mal intencionadas usam técnicas para falsificar mensagens e fazê-las parecer que vêm de um remetente legítimo.

O segredo para proteger sua empresa e sua reputação online é utilizar técnicas de segurança para validar que um email realmente veio de onde ele diz vir e que as mensagens enviadas não sofreram adulterações.

Nesse blog post, vamos explicar a origem dos protocolos de email e também as medidas que você pode tomar para proteger a sua empresa contra ataques de phishing, quando algum atacante envia email para seus clientes ou para pessoas da sua própria empresa, se passando por exemplo por um CEO ou diretor e tentando aplicar algum tipo de golpe.


O problema com o protocolo SMTP

O Simple Mail Transfer Protocol (SMTP) é o protocolo padrão de envio de mensagens de correio eletrônico através da Internet entre dois dispositivos computacionais (emissor e receptor). Semelhante ao carteiro, é responsável por especificar (e na maioria das vezes, validar) o(s) destinatário(s) para depois encaminhar a mensagem Na época que foi criado (década de 1980), por ter seu uso majoritariamente acadêmico e, consequentemente, estar em um ambiente onde as pessoas poderiam confiar umas nas outras, acabou não se preocupando com a segurança dos e-mails.

Nos dias de hoje, mesmo que o tráfego SMTP entre servidores de e-mail possa ser criptografado e autenticado usando o protocolo TLS (Transport Layer Security) e, com isso, proteja o conteúdo de uma mensagem durante o seu transporte. Por este primeiro não possuir nada em sua versão original relacionado à autenticação de remetentes, acaba que não é possível saber se o remetente é realmente quem ele diz ser.

Pensando nisso e tendo o e-mail como um dos principais vetores para ameaças cibernéticas (afinal, mensagens de bancos, contratos, confirmações de compra, etc. são sempre enviadas por email), três protocolos de autenticação foram desenvolvidos:

  • Sender Policy Framework (SPF)
  • DomainKeys Identified Mail (DKIM)
  • Domain-based Message Authentication, Reporting and Conformance (DMARC)


Autenticação de e-mails com SPF, DKIM e DMARC

Implementar um protocolo completamente novo para substituir o SMTP é complexo e na prática, inviável pois exigiria mudanças em muitos sistemas relacionados e um grande período de transição. Por isso, os mecanismos de autenticação de emails se baseiam em sistemas existentes, principalmente o DNS (Domain Name System).

O DNS é um sistema distribuído que é responsável por traduzir endereços de Internet. Para explicar, vamos pensar em uma analogia. Imagine que um amigo te convidou para visitar um restaurante novo, que inaugurou na cidade. O problema é que vocês só sabem o nome do lugar e não têm ideia de onde ele fica. Tentando encontrar a localização e saber como chegar, você busca no Google Maps pelo restaurante e o aplicativo retorna com a coordenada geográfica, assim como as instruções de rota.

O DNS funciona como o Google Maps da internet. Quando não sabemos qual é o endereço IP do servidor e nem por onde enviar o nosso pedido de acesso a um site no navegador, enviamos ao DNS esse requerimento e ele nos responde as coordenadas para que saibamos chegar ao nosso destino final, no caso o site desejado.

Mas o que o DNS tem a ver com email? O DNS é um serviço distribuído e publicamente disponível. Quando você compra um domínio como seusite.com.br, você precisa comprar esse domínio em um site que ofereça o serviço, como o Registro BR e o GoDaddy. Depois de comprar um domínio, você recebe um acesso (como um usuário e uma senha) que você usa para gerenciar o conteúdo do seu novo site (ex. seusite.com.br vai apontar para qual endereço IP?). Na prática, o DNS do seu site é uma grande tabela, com várias entradas. Uma delas por exemplo pode dizer: se alguém buscar por seusite.com.br, retorne o endereço ip 200.100.12.30.

O DNS não permite só configurar para onde aponta o seu site, mas também pode ser usado para validar quem é o verdadeiro dono do domínio. Afinal, somente quem tem o usuário e senha para mexer nas configurações de DNS de um domínio é o verdadeiro dono. Por exemplo, para configurar um servidor de email e poder enviar e receber emails como empresa@seusite.com.br, você precisa colocar uma entrada na sua configuração de DNS que funcione como uma prova de que você é o dono. Geralmente, ao configurar uma plataforma de envio de emails como um Gsuite, MailChimp, ou um CRM como o Hubspot, essas plataformas geram um código único e pedem para que você coloque esse código em uma entrada específica do DNS. Como a leitura do DNS é pública, essas plataformas podem verificar que de fato esse código aparece no DNS, validando que você é o dono legítimo do seusite.com.br.

No final do dia, as ferramentas de segurança de email aproveitam a mesma estrutura existente de DNS para colocar camadas adicionais de proteção no email. São criadas entradas específicas com esse intuito. Elas são: SPF, DKIM e DMARC.

O SPF, DKIM e DMARC trabalham juntos para combater spam, phishing e falsificação de e-mails. Eles publicam informações de autenticação no DNS.

O que é SPF?

O Sender Policy Framework (SPF) foi desenvolvido para permitir que domínios identifiquem quais servidores de e-mail estão autorizados a enviar mensagens em seu nome.

Quando o SPF está em uso, a quantidade de emails indesejados (SPAM) pode ser reduzida. Mensagens de phishing de domínios falsificados podem ser identificadas e descartadas.

Um registro SPF no DNS contém os endereços IP dos servidores autorizados. Servidores que recebem e-mails verificam esse registro SPF para validar o remetente. Por exemplo, se uma empresa utiliza o gsuite e o mailchimp para enviar emails, os hosts dessas duas plataformas precisam constar na entrada SPF.

As respostas possíveis para uma verificação SPF são:

  • Pass: O servidor de envio está autorizado
  • Fail: O servidor de envio não está autorizado
  • Soft fail: O servidor provavelmente não está autorizado
  • Neutral: O domínio não faz assertivas sobre servidores autorizados
  • Temporary error: Erro temporário na consulta
  • Permanent error: Erro ao processar o registro SPF

O que é DKIM?

O DKIM foi desenvolvido em 2011 para permitir a assinatura digital de mensagens de e-mail, vinculando-as com um domínio específico.

As assinaturas DKIM são incorporadas nos cabeçalhos dos e-mails. Servidores SMTP que suportam DKIM validam essas assinaturas automaticamente.

Os proprietários de domínios podem gerar pares de chaves pública/privada para diferentes serviços de e-mail. As chaves públicas são publicadas em registros DNS, permitindo a validação das assinaturas.

As chaves públicas e privadas funcionam como um par de chaves conectadas criptograficamente. Tudo que a chave pública codifica, somente a chave privada decodifica. E tudo que a chave privada codifica, somente a chave pública associada decodifica. Ao usar esse mecanismo, os servidores de email legítimo podem usar sua chave privada (que somente eles têm acesso) para assinar todos emails enviados. Para validar a assinatura, basta que o receptor da mensagem acesse a entrada DKIM, pegue a chave pública, e a use para validar a assinatura. A única forma de um atacante conseguir se passar por esse servidor seria conseguir uma credencial para acessar o servidor ou conseguir acesso a essa chave privada, que é altamente protegida no servidor de email.

O que é DMARC?

O DMARC foi criado em 2015 para que proprietários de domínios determinem o que fazer quando um e-mail falha na autenticação SPF ou DKIM (depois do seu surgimento).

Os registros DMARC no DNS definem as políticas de tratamento de e-mails não autenticados, como rejeitá-los ou direcioná-los para a caixa de spam.

O DMARC também possibilita a geração de relatórios forenses e agregados sobre falhas de autenticação. Isso ajuda a identificar ataques ao domínio.

Como SPF, DKIM e DMARC funcionam juntos

O SPF autentica servidores de e-mail autorizados a enviar mensagens de um domínio.

O DKIM verifica se a mensagem foi realmente enviada por um desses servidores autorizados e não foi falsificada.

O DMARC define o que fazer com mensagens que falham na autenticação SPF e/ou DKIM.

Juntos, esses três protocolos fornecem uma camada extra de segurança para o ecossistema de e-mails. Eles não previnem todos os tipos de ameaças, mas certamente tornam a vida mais difícil para spammers e fraudadores.


Conclusão


Parece muito complicado? De fato essas tecnologias são complexas e muitas vezes ficam restritas a especialistas de segurança da informação. É do nosso conhecimento que muitas empresas são vítimas de ataques e não possuem nem ideia de como detectar e muito menos de como resolver. Pensando nisso, a Divi está desenvolvendo uma solução que permite facilmente monitorar todos os domínios da sua empresa, detectar configurações equivocadas de proteção contra phishing, e indicar o caminho para resolver e também proteger o futuro dos domínios da sua empresa. O objetivo é resolver a complexidade de saber quais das entradas de DNS estão mal configuradas e qual combinação delas é a que melhor pode proteger o seu negócio.


Ficou interessado? Clique aqui para saber mais sobre as nossas soluções e ainda receber um relatório com dados valiosos sobre a segurança da sua marca.

Share this post