Por que devo me preocupar em proteger meus e-mails do WordPress?
Publicados: 2023-05-31Os e-mails estão por toda parte. Eles se tornaram um dos métodos mais comuns de comunicação entre as pessoas pela Internet. Administradores do WordPress e proprietários de sites usam e-mails para vários fins, como comunicação pessoal e profissional, marketing, recrutamento e muito mais.
Os e-mails também podem conter informações confidenciais que você usa para autenticar seus usuários ou permitir que eles executem determinadas ações, como redefinir uma senha etc. Neste tutorial, discutiremos tudo o que os proprietários de sites precisam saber sobre segurança de e-mail no WordPress.
Vamos começar a discussão com a necessidade de proteger os e-mails do seu site WordPress. Manter seus e-mails seguros ajuda em muitas coisas, como:
- Proteção de informações confidenciais — Conforme mencionado anteriormente, você costuma enviar e-mails que podem conter informações confidenciais. Isso pode incluir coisas como as credenciais de login de seus usuários e informações pessoais relacionadas à saúde ou finanças. Em qualquer caso, você precisa garantir que ninguém com intenção maliciosa possa interceptar essas informações.
- Entrega de e-mails — Spam é um grande problema na internet. Temos certeza de que você também recebeu sua parcela justa de e-mails de spam. Eles são irritantes na melhor das hipóteses e podem levar a consequências mais drásticas em outros casos. Uma maneira de os servidores de e-mail lidarem com possíveis spams é não enviar e-mails que não estejam de acordo com os padrões. Da mesma forma, e-mails que podem ser considerados spam por diferentes clientes de e-mail serão marcados como tal e colocados em uma pasta separada da caixa de entrada principal.
- Manter a reputação da marca — A reputação da sua marca pode estar em jogo se você não levar a sério a segurança de e-mail do WordPress. Pense nisso, como você se sentiria sobre uma marca cujos e-mails estão constantemente presos no filtro de spam ou uma marca cuja falta de segurança resulta no vazamento de suas informações pessoais?
- Prevenção de ataques baseados em e-mail — Pessoas mal-intencionadas podem usar phishing por e-mail para obter acesso ao seu site ou aos dados do usuário. Isso pode representar todos os tipos de problemas de segurança. Em ambos os casos, você precisa tomar as medidas apropriadas para proteger o e-mail do WordPress.
Envio de e-mails seguros no WordPress
O WordPress possui uma função wp_mail() integrada que ele usa para enviar e-mails. Esta função depende da popular biblioteca PHPMailer gratuita e de código aberto para enviar todos os seus e-mails.
Uma vantagem de usar a biblioteca é que ela possui um cliente SMTP integrado que permite enviar e-mails em todas as plataformas sem precisar de um servidor de e-mail local.
O termo SMTP significa Simple Mail Transfer Protocol. Um cliente SMTP é um programa que podemos usar para enviar e-mails de um servidor para outro. O cliente faz muitas coisas valiosas, como estabelecer uma conexão com o servidor de e-mail, autenticação do remetente e transmissão de e-mail.
O uso da função wp_mail() não é uma garantia automática de que o recebimento de seu e-mail foi bem-sucedido. Ele retornará true assim que a solicitação for bem-sucedida, independentemente do status de entrega do email. Portanto, você terá que garantir que os e-mails enviados sejam entregues.
Você pode adicionar suas configurações relacionadas a SMTP dentro do arquivo wp-config.php adicionando algumas linhas de PHP ao código-fonte existente. No entanto, uma opção muito mais fácil é usar um plugin.
Você pode usar um dos muitos plug-ins SMTP gratuitos do WordPress que o ajudarão a definir todas as suas configurações para enviar seus e-mails de maneira eficaz e segura. Já cobrimos a capacidade de entrega de e-mail do WordPress em grande detalhe no passado.
Configurando um plug-in SMTP
Vale ressaltar que existem vários plugins SMTP que você pode usar em seu site. Você pode experimentá-los para ver qual deles se adapta melhor a você. Um dos mais populares é o plugin WP Mail SMTP.
Qualquer plug-in que você usar solicitará que você escolha um mailer SMTP para o seu site. Existem várias opções disponíveis, como SendLayer, Postmark, SendGrid, Zoho Mail, etc. O assistente de configuração irá ajudá-lo com a configuração inicial, onde você fornece todas as informações necessárias, como a chave API, etc. plugins estarão disponíveis no painel do WordPress.
Há duas coisas importantes que você deve ter em mente ao configurar esses plugins:
- Certifique-se de enviar e-mails por SSL com seu cliente SMTP. Isso ajudará a evitar que os e-mails sejam interceptados enquanto estão em trânsito. muitos serviços como SendLayer, etc., lidarão automaticamente com a criptografia SSL/TLS para você. No entanto, você também pode fornecer manualmente informações sobre o host SMTP, número da porta, criptografia, etc. se selecionar Outro SMTP como seu SMTP Mailer.
- Você também pode desabilitar o registro de e-mail se enviar informações confidenciais por e-mail. Isso evitará vazamentos de dados indesejados se algo der errado. É bom ter essa opção ativada durante o teste, mas o ideal é que ela esteja desativada em outros casos.
Estruturas comuns de segurança de e-mail
Instalar e usar certificados SSL para enviar e-mails garantirá que o conteúdo do e-mail esteja seguro durante o trânsito entre o cliente de e-mail e o servidor de e-mail. Isso se torna possível pela prevenção de qualquer acesso não autorizado ou interceptação do e-mail durante a transmissão.
A próxima etapa para melhorar a segurança de e-mail do WordPress envolve o uso de criptografia para que apenas o destinatário pretendido possa ler o conteúdo do e-mail enviado a ele.
Existem muitas estruturas de segurança de e-mail diferentes que você pode usar para proteger e-mails em seu site WordPress. O termo estrutura de segurança de e-mail refere-se a um conjunto de diretrizes e padrões implementados para garantir que todas as suas comunicações por e-mail permaneçam protegidas contra riscos de segurança, como spam, phishing e acesso não autorizado.
Diferentes servidores SMTP podem usar uma combinação de várias estruturas de segurança de e-mail para atingir seu objetivo de proteger e-mails. Vamos aprender sobre alguns deles.
Estrutura da Política do Remetente
Sender Policy Framework, também conhecido como SPF, é uma estrutura de autenticação de e-mail que permite ao servidor de e-mail do destinatário verificar se um e-mail veio de uma fonte legítima.
Em suma, o SPF funciona verificando o registro DNS (Domain Name System) do domínio do remetente para verificar se o endereço IP do remetente corresponde aos endereços IP autorizados para esse domínio.
Depois que um e-mail é enviado, o servidor de e-mail do destinatário verifica os registros SPF para descobrir se o e-mail foi realmente enviado de um servidor de e-mail autorizado do remetente. O registro SPF conterá informações sobre todos os endereços IP e domínios que podem enviar um e-mail em nome de um determinado domínio. Qualquer incompatibilidade resultará na marcação do e-mail como suspeito.
O SPF ajuda a combater ataques de spam e phishing em que alguém finge ser o que não é.
E-mail identificado por DomainKeys
A estrutura DomainKeys Identified Mail (DKIM) depende do uso de assinaturas digitais para verificar se o remetente do e-mail é alguém legítimo. Ele também garante que o conteúdo do e-mail seja inalterado durante a transmissão do e-mail.
A assinatura digital nada mais é do que um valor criptográfico gerado a partir de uma chave privada associada ao nome de domínio legítimo. A mensagem de e-mail contém o valor criptográfico como um campo DKIM-Signature em seu cabeçalho.
O servidor de correio no lado do destinatário pode acessar a chave pública do domínio do remetente a partir dos registros DNS. O sistema de e-mail usa a chave pública para descriptografar a assinatura para verificar a autenticidade do remetente. O sistema entrega o e-mail na caixa postal do destinatário após validar a autenticidade do remetente.
O segredo aqui é que a chave privada é usada para gerar a assinatura criptográfica, e essa assinatura só pode ser descriptografada pela chave pública correspondente. Isso significa que um valor correspondente nos valores de hash gerados com as chaves pública e privada garante a autenticidade do e-mail.
Autenticação, relatórios e conformidade de mensagens baseadas em domínio
As duas estruturas anteriores permitem que você valide se o remetente de um e-mail é alguém que afirma ser. Isso ajuda a evitar ataques de spam e phishing.
E se um e-mail falhar nas verificações de SPF ou DKIM?
Você pode estar se perguntando como um e-mail legítimo pode falhar nas verificações de SPF ou DKIM. Isso pode acontecer em diversas situações, como registros SPF ou DKIM mal configurados, carimbo de data/hora inválido devido a um tempo de trânsito maior do que o normal e encaminhamento de e-mail em que o servidor de encaminhamento não está autorizado a enviar e-mails em nome do domínio do remetente original.
A estrutura de Autenticação, Relatórios e Conformidade de Mensagens Baseadas em Domínio (DMARC) vem em seu socorro neste caso.
Os proprietários de domínio podem adicionar uma política DMARC a seus registros DNS para especificar o que deve acontecer com as mensagens de e-mail que falham nas verificações de autenticação SPF ou DKIM.
Assim que um e-mail for reprovado nessas verificações, o servidor de e-mail do destinatário procurará a política DMARC do domínio do remetente. A política DMARC especificará se o e-mail deve ser rejeitado, colocado em quarentena ou entregue na caixa de correio do destinatário.
Além de verificar a legitimidade do remetente, o DMARC inclui mecanismos para relatar aos proprietários de domínio todas as informações sobre e-mails enviados de seu domínio. O acesso a essas informações pode ajudar os proprietários de domínio a identificar possíveis ataques de spoofing ou phishing. Em última análise, isso resulta em maior segurança de e-mail.
Muito boa privacidade
Pretty Good Privacy, ou PGP, é outra estrutura de segurança de e-mail interessante que fornece criptografia de ponta a ponta para seus e-mails, garantindo que apenas o destinatário pretendido possa ler seus e-mails.
O protocolo de segurança PGP depende de um par de chaves públicas e privadas para seu sistema de criptografia. Todos os usuários do protocolo PGP terão suas próprias chaves públicas e privadas. O PGP usa a chave pública para criptografar mensagens de e-mail e a chave privada para descriptografá-las. Todos que desejam se comunicar com o usuário têm acesso à chave pública. A chave privada fica com o usuário.
Digamos que você queira enviar um e-mail para alguém. Como remetente, você usará a chave pública fornecida pelo destinatário para criptografar sua mensagem. Isso garante que apenas o destinatário possa descriptografar a mensagem porque somente ele terá a chave privada.
O PGP também usa assinaturas digitais para verificar a autenticidade e integridade de um e-mail e para garantir que não houve adulteração durante a transmissão.
A chave privada é útil para gerar a assinatura digital, que verifica a autenticidade do remetente. A chave privada é usada para criar um hash da mensagem de e-mail. Como o PGP funciona com base no princípio de compartilhamento de chaves públicas, o destinatário do e-mail terá acesso à chave pública do remetente. Essa chave pública é útil para descriptografar o hash, que verifica se a mensagem está inalterada.
Outro aspecto importante do PGP é o sistema de “teia de confiança”, onde diferentes usuários podem assinar as chaves públicas uns dos outros para indicar que verificaram o proprietário da chave. Isso torna ainda mais difícil para alguém com intenção maliciosa se passar por um usuário.
Implementando segurança de e-mail em seu site WordPress
Agora aprenderemos como implementar diferentes estruturas de segurança de e-mail em seu site.
Estrutura da Política do Remetente
Conforme mencionado na seção anterior, o SPF funciona verificando o registro DNS do domínio do remetente. Ele verifica se o IP do remetente corresponde aos endereços IP autorizados para esse domínio.
Podemos testar isso usando wpwhitesecurity.com como exemplo. Tudo o que precisamos fazer é usar o comando nslookup da seguinte forma:
nslookup -type=txt nome de domínio
O resultado nos diz quais sistemas usamos para enviar e-mails.
v=spf1 a mx include:_spf.google.com include:relay.kinstamailservice.com include:servers.mcsv.net include:helpscoutemail.com include:sendgrid.net ~all
Se um e-mail que você receber de nós não for de nenhum desses sistemas, é provável que não seja legítimo.
Tudo o que precisamos fazer para implementar o SPF é adicionar um registro TXT ao arquivo de zona DNS do domínio. Um registro TXT pode conter texto arbitrário que você deseja associar a um nome de domínio. Nesse caso, ele conterá as informações do SPF.
A primeira etapa é fazer login em qualquer serviço que você usa para gerenciar seus registros DNS. Neste caso, estaremos usando Cloudflare. Portanto, primeiro fazemos login na conta Cloudflare e selecionamos o domínio cujos registros DNS serão editados.
Você deve ver a opção de alterar as configurações de DNS na barra lateral esquerda ou em Ações rápidas se estiver usando o Cloudflare. Clique nele para adicionar um registro DNS. Haverá um botão Adicionar registro na próxima página. Clique nele e você verá a seguinte tela.
Selecione TXT no menu suspenso Tipo. Defina o nome para a raiz do seu domínio. Mantenha TTL como Auto e defina o valor de Content como v=spf1 mx a ip4:XXX.XXX.XXX.XXX -all. Use a captura de tela abaixo para referência.
O registro DNS consiste em diferentes partes. Vamos ver o que eles significam um de cada vez:
- v=spf1 — Esta parte especifica a versão do protocolo SPF em uso. Nesse caso, a versão do SPF é 1.
- mx — Esta parte autoriza os registros MX do domínio a enviar e-mails em nome do domínio.
- a — Esta parte autoriza os registros A do domínio ou seus endereços ipv4 a enviar e-mails em nome do domínio.
- ip4:XXX.XXX.XXX.XXX — Você pode adicionar esta parte para adicionar um endereço IP específico à lista de permissões para enviar e-mails.
- -all — Esta parte especifica o que deve acontecer com e-mails que não correspondem a nenhum dos domínios ou endereços IP autorizados.
Certifique-se de substituir XXX.XXX.XXX.XXX pelo endereço IP que deseja colocar na lista de permissões. Você não precisa adicionar esta parte se planeja enviar apenas endereços de e-mail do seu domínio. No entanto, você deve incluir o endereço IP de seus servidores de e-mail aqui para evitar qualquer falsificação.
E-mail Identificado por DomainKey
A estrutura DKIM também depende de valores armazenados em registros DNS para verificar a autenticidade do remetente de um e-mail.
A principal diferença é que, enquanto o SPF depende da verificação de endereços IP nos registros DNS para garantir que alguns autorizados enviaram o e-mail, o DKIM depende do uso de chaves públicas e privadas.
Se você estiver usando o Cloudflare para gerenciar seu domínio, poderá adicionar um registro DNS, como fizemos na seção anterior. No entanto, também é possível atualizar os registros DNS no painel do seu provedor de hospedagem.
Aqui está uma captura de tela de um registro DKIM TXT atual no cPanel de uma conta de hospedagem. Você pode encontrar essas opções depois de fazer login na sua conta cPanel e verificar a capacidade de entrega de e-mail.
O nome do registro DKIM é definido como default._domainkey para garantir que ele possa ser localizado facilmente por diferentes provedores de serviços de e-mail.
O conteúdo do registro DKIM consiste em várias partes, conforme explicado abaixo:
- v=DKIM1 — Esta parte especifica a versão do protocolo DKIM em uso.
- k=rsa — Esta parte especifica que a chave pública que estamos usando é uma chave RSA.
- p=KEY_VALUE — Esta parte é a chave pública codificada em Base64.
Autenticação, relatórios e conformidade de mensagens baseadas em domínio
Agora aprenderemos como adicionar uma política DMARC ao nosso registro DNS TXT. O processo de adicionar um registro DNS permanecerá o mesmo aqui. A única coisa que muda é o nome do registro e seu conteúdo.
O nome do nosso registro DNS TXT será _dmarc.yourwebsite.com, onde yourwebsite.com é o seu site real. Novamente, esta é apenas uma convenção padrão em vigor para facilitar a identificação da política DMARC.
Você pode adicionar um total de 11 pares de valor de tag como o conteúdo do registro TXT do DNS da política DMARC. Você pode ler sobre eles nesta página que descreve minuciosamente um registro DMARC DNS TXT.
Vamos usar o assistente recém-introduzido no Cloudflare para adicionar uma política DMARC.
Depois de clicar no link do assistente, você verá a seguinte tela. Basta clicar no botão Adicionar e pronto.
Agora vamos aprender o que significa o conteúdo dentro do registro DMARC:
- v=DMARC1 — Como sempre, especifica a versão do protocolo DMARC em uso.
- p=none — Esta parte especifica que nenhuma ação de política ocorre para verificações com falha. Você também pode definir esse valor para quarentena ou rejeição. Definir o valor como quarentena marcará o e-mail como potencialmente suspeito, mas ainda o entregará na pasta de spam da caixa de correio do destinatário.
- rua=mailto:[email protected] — Esta parte especifica o endereço de e-mail que recebe os relatórios. Os relatórios conterão informações sobre as mensagens de e-mail que passaram ou falharam nas verificações DMRC.
Protegendo e-mails para melhor segurança
Como diz o velho ditado, uma corrente é tão forte quanto seu elo mais fraco. Isso é muito verdadeiro quando se trata de segurança, o que exige que os administradores do WordPress e proprietários de sites olhem além da segurança do WordPress e abordem a infraestrutura de suporte/ambiente.
A segurança de e-mail tende a ser negligenciada; no entanto, como acabamos de ver no artigo, proteger o e-mail é relativamente fácil e muito acessível. Desde a configuração de registros DNS até a criptografia de e-mails, isso não apenas garantirá um melhor alcance de clientes e usuários, mas também minimizará drasticamente os riscos de segurança.
Mais dicas para melhorar a segurança do WordPress
Tornar seus e-mails seguros é apenas uma parte da segurança geral do site. Aqui estão algumas dicas gerais para melhorar a segurança geral do seu site.
- Atualize regularmente — É importante manter todos os seus temas ou plugins do WordPress atualizados. As atualizações geralmente adicionam novos recursos, bem como corrigem vulnerabilidades conhecidas.
- Use senhas fortes — Você deve usar senhas fortes e exclusivas para todas as contas relacionadas ao seu site, incluindo host da Web, banco de dados, contas FTP, contas de administrador do WordPress, etc. Isso impedirá que ataques de força bruta quebrem sua senha. Você pode usar o plug-in MelaPress Login Security para seguir todas as melhores práticas de segurança de login, como senhas fortes, bloquear muitas tentativas de login com falha, etc.
- Instalar plug-ins de segurança — Você também deve considerar a instalação de um plug-in de segurança. Algumas das opções mais populares são Wordfence, iThemes Security, All-In-One security, etc. Você também pode instalar plugins como o WP Activity Log para registrar todas as alterações que acontecem no seu site WordPress.
- Use a autenticação de dois fatores — Você pode usar a autenticação de dois fatores para adicionar uma camada extra de segurança. Plugins gratuitos como o WP 2FA podem ajudá-lo a fazer isso com facilidade.
- Faça backups regulares — Você também deve fazer backups regulares do seu site. Isso ajudará você a colocar seu site online rapidamente em caso de violação de segurança ou outros problemas.
- Use um host confiável — Certifique-se de que está usando um host de renome e confiável para hospedar seu site. O host da web será responsável por várias coisas, como proteger o servidor da web, atualizá-lo, fazer backups no back-end, etc.
- Use um firewall — A instalação de um firewall impedirá o acesso não autorizado enquanto protege contra ameaças de segurança comuns e ataques DDOS. É possível instalar um firewall no nível do servidor pelo seu host ou no nível do site por você como um plug-in do WordPress. A boa notícia é que plug-ins como o Wordfence etc. já oferecem um firewall e o protegem contra malware.
- Limitar tentativas de login — Outra medida de segurança que você pode tomar é limitar o número de tentativas de login com falha para evitar ataques de força bruta por bots.