Iniciativa WordPress Seguro
A Apiki criou uma iniciativa chamada #WordPressSeguro para divulgar e colaborar com o que diz respeito à segurança para WordPress. Além de informações, disponibilizamos um Guia Prático de Implementações para Segurança em WordPress.
Senha forte e autenticação de dois fatores
Uma senha forte protege sua conta, privacidade e previne ataques direcionados ou automatizados como observamos no artigo Usuários e senhas fortes para um WordPress mais seguro.
Implementar a autenticação de dois fatores é adicionar uma segunda camada de segurança e aumentar o nível de proteção da plataforma e sua conta.
Visão geral sobre a camada de autenticação de dois fatores
Para se autenticar no WordPress, você faz uso de senha. Sua senha é algo que podemos afirmar que você sabe. Implementando a camada de autenticação de dois fatores, além de usar o que você sabe, a sua senha, será feito o uso também de algo que você tenha – nesse contexto, um dispositivo móvel ou algum outro.
As possibilidades de identificação de usuário
Como usuário de sistema, você pode ser identificado através de três fatores:
- Quem é você;
- O que você tem;
- O que você sabe.
Quem é você
Cada ser humano é único e algumas propriedades ajudam nessa identificação, como DNA, retinas, impressões digitais e qualquer outra coisa específica de um indivíduo – as chamadas informações biométricas.
O TouchID lançado pela Apple é um exemplo de autenticação que faz uso de impressões digitais se baseando no “Quem é você”. Informações biométricas não são perdidas ou esquecidas pelos usuários, mas são problemáticas porque não podemos resetá-las. O TouchID armazena suas impressões digitais localmente em seu aparelho, ao contrário de um banco de dados nas nuvens evitando um possível ganho dessas informações por hackers.
O que você tem
Dispositivos como celulares e smartphones, por exemplo, são algo que temos e que podem ser utilizados no processo de identificação. Autenticações de dois fatores modernas fazem uso desses aparelhos, nos quais um código único é enviado ao usuário após digitar sua senha, provando assim que ele tem o telefone.
Os códigos são comumente enviados via SMS, mas, por não ser um canal de comunicação segura, aplicativos e plugins têm sido desenvolvidos para trabalharem de forma segura e moderna no processo de autenticação.
O que você sabe
Sua senha ou o fator de conhecimento é o método de autenticação mais conhecido. E para se dar bem com ela é preciso que você faça sua parte criando senhas fortes e que o provedor da aplicação adote boas práticas de segurança para o armazenamento delas.
Armazenar as senhas de forma criptografada é preciso para não deixá-las expostas a hackers e gestores de banco de dados. O WordPress codifica as senhas baseado nas chaves secretas armazenadas no wp-config.php.
Além disso, é possível, e desejado, realizar a comunicação de uso das senhas dos usuários e do uso da administração do WordPress em ambiente seguro. Basta fazer uso das constantes abaixo no arquivo wp-config.php para orientar a aplicação de seu uso e, claro, ter um certificado disponível para seu domínio.
define( ‘FORCE_SSL_LOGIN’, true ); // Força o uso somente do login em ambiente seguro
define( ‘FORCE_SSL_ADMIN’, true ); // Força o uso do login e administração em ambiente seguro.
Plugins WordPress para implementar a autenticação de dois fatores no WordPress
Abaixo segue uma lista, em ordem alfabética, e visão geral sobre os plugins e sua implementação do recurso no WP. Os testes foram realizados em maio de 2015 e considerando o WordPress multi-site e possibilidade de uso gratuito dos plugins.
Gratuito | Suporte para multi-site | Configuração de funções (roles) de usuários | Métodos de autenticação | |
Authy | Sim. Mas requer um cartão de crédito válido após o trial. | Sim. Mas não possui configuração global na rede. | Sim | SMS e Aplicativos (iOS, Android, BlackBerry, OSX, Windows, Linux) |
Clef | Sim | Sim. Possui configuração global na rede. | Sim | Aplicativos (iOS e Android) |
Duo | Não oferece suporte para multi-site, testes não realizados. | |||
Google Authenticator | Não oferece suporte multi-site, testes não realizados. | |||
Rublon | Sim | Sim. Mas não possui configuração global na rede. | Sim | E-mail e aplicativo (iOS, Android e Windows Phone) |
WordFence | Não oferece versão gratuita para o recurso de autenticação de dois fatores, testes não realizados. |
O plugin Authy é uma boa alternativa para quem requer o uso de SMS e aplicativo. Isso possibilita atender usuários com ou sem smartphones. A aplicação tem uma dashboard externa ótima e gerencial que permite ao administrador uma visão global do comportamento dos usuários com o recurso.
O Clef, embora não suporte SMS, é moderno e inovador com sua tecnologia de autenticação via “ondas”. Sua dashboard externa é simples e utilizada somente para configuração, não apresentando recursos gerenciais.
O Rublon tem sua abordagem particular com autenticação via e-mail e aplicativo, também não suporta SMS. Durante os testes, a conexão com o web service foi lenta, o que tornou a autenticação com o WP demorada. Ele requer que o e-mail configurado como administrador no WordPress seja a conta Rublon, e não oferece uma dashboard externa.
Implementar a autenticação de dois fatores é adicionar uma camada extra de segurança, e o recurso é suportado pelo WordPress através dos plugins mencionados acima e outros disponíveis no repositório de plugins do WordPress.org. Analise o seu cenário e necessidades e faça a escolha de qual escolher e proteja sua aplicação ainda mais.