Aumentando a segurança do WordPress
Autor: Breno Zumach | Publicado: 2012-05-27T09:24:00-07:00



Mantenha o seu WordPress seguro


Ter um blog utilizando a plataforma 
WordPress em seu próprio servidor (fora do WordPress.com) significa que 
você precisará, acima de tudo, manter a segurança do seu blog e cuidar 
para que nada de errado aconteça com ele.





Antes de começar com as dicas de 
segurança é importante salientar que nenhum sistema é 100% imune a 
falhas e que não existe segurança 100% garantida em qualquer sistema, 
seja WordPress ou qualquer outro que você conheça. Há sempre pessoas 
explorando cada falha de segurança já encontrada e outros estão 
constantemente à procura de novas vulnerabilidades para realizar os mais
 diversos tipos de ataques.

Uma questão importantíssima no que diz 
respeito à segurança de um site em WordPress é que o WordPress depende 
de outros softwares para funcionar e, dentre os mais importantes estão o
 Apache, o PHP e o MySQL porém a segurança desse trio não está nas mãos 
da maioria dos usuários, mas sim nas mãos dos administradores de sistema
 da empresa de host que você contratou para hospedar o seu site em 
WordPress. É preciso que esses softwares estejam sempre atualizados e 
com os últimos patches de segurança aplicados para que o seu site em 
WordPress não sofra ataques.

Em conjunto com a segurança oferecida 
pelos administradores de sistema da sua empresa de hospedagem você é 
responsável também por grande parte da segurança do WordPress e é 
justamente neste ponto que eu quero me focar neste texto, o que você, 
usuário de um sistema WordPress pode fazer para melhorar a segurança do 
seu site.

WordPress Sempre Atualizado

Pode parecer um ponto já batido mas é 
incrível notar a quantidade de sites em WordPress que estão no ar hoje 
rodando versões antigas do sistema. Manter o seu WordPress atualizado 
garante que você tenha sempre as últimas correções de segurança 
implantadas no seu WordPress, defendendo-o assim da maioria dos ataques 
realizados hoje em dia. Além do mais, sempre que o WordPress é 
atualizado os desenvolvedores lançam uma lista de correções e melhorias 
que foram feitas no código do WordPress e, tendo essa informação nas 
mãos, os hackers, crackers, defacers, script kids ou seja lá como você 
prefira chamar, terão informações suficientes para explorar 
vulnerabilidades em sites que estão rodando versões antigas do 
WordPress.

Usuário Padrão

Ao efetuar uma nova instalação do 
WordPress é solicitado que você crie o seu primeiro usuário, que será o 
administrador do geral do site. Evite utilizar o usuário “admin” para 
essa função pois nas primeiras versões do WordPress esse usuário era 
criado automaticamente, facilitando assim o ponto inicial do ataque à um
 site em WordPress pois já sabia-se o nome de usuário que teria sua 
senha quebrada para que o atacante tivesse acesso à todas as 
configurações e permissões dentro do WordPress. Hoje em dia é 
recomendado que você crie um usuário específico para a administração do 
site com um nome de usuário completamente diferente e, de preferência, 
não óbvio para que o ataque chamado “força bruta” não tenha tanto 
efeito.

Lembre-se também de criar uma senha forte para o seu usuário. Para isso recomendo a utilização do site Strong Password Generator
 pois ele gera senhas bastante fortes e de forma aleatória. Evite a 
utilização de senhas obvias e, principalmente, de senhas que contenham 
sequências de caracteres encontradas no dicionário (palavras reais ou 
até mesmo palavras de fácil decifração ou compreensão).

De Olho nos Plugins

Acredito que a grande variedade de 
plugins foi um fator decisivo para o crescimento do WordPress como 
plataforma e, principalmente, fator extremamente importante para a 
grande maioria dos usuários que optam &nbsp;por utilizar o WordPress como 
plataforma de trabalho. Acontece que os plugins podem ser considerados 
também como uma face de dois gumes quando utilizados em excesso e sem 
critérios de adoção.

Antes de instalar um plugin no seu 
WordPress verifique cuidadosamente se o desenvolvedor mantém o plugin 
sempre atualizado e, principalmente, qual o nível de maturidade do 
plugin que você está pensando em instalar. Digo isso porque como a 
oferta de plugins é crescente, várias pessoas acabam disponibilizando 
plugins não acabados para que os próprios usuários façam os testes e 
enviem o feedback para os desenvolvedores. A quantidade de plugins em 
versão 0.x é enorme e todos nós sabemos que versões começadas com 0 
(zzero) são plugins em versões “beta” ou mesmo em versões “alfa“,
 o que significa que o plugin ainda não está completamente pronto e nem 
completamente testado, sendo recomendado apenas para uso em ambientes de
 teste. Ninguém te explicou isso, não é? O uso de plugins em versão alfa
 ou beta pode acarretar uma série de problemas para o seu site em 
WordPress pois o plugin pode conter um bug que fará com que o seu site 
saia do ar, tenha o conteúdo corrompido ou até mesmo abra uma brecha de 
segurança que pode fazer com que pessoas alheias tenham acesso à todo o 
controle do seu site e imagino que isso nem de longe passa por sua lista
 de considerações.

Além de instalar uma versão estável do 
plugin é importante observar como anda o desenvolvimento do plugin, como
 por exemplo, como o desenvolvedor acata as mudanças sugeridas pelos 
usuários e, principalmente, qual a frequencia de atualização deste 
plugin. Existem plugins disponíveis no repositório oficial do WordPress 
que não apresentam atualizações há mais de dois anos (!) o que, em 
alguns casos, significa que o plugin utiliza um código ultrapassado e já
 em desuso. É claro que existem plugins que não são atualizados com 
tanta frequência simplesmente pelo fato de não precisarem, mas é impossível extremamente difícil encontrar um plugin que não precisou de atualização nos últimos 2 anos.

Outro fator importante é manter os seus plugins sempre atualizados pois, assim como acontece com o core
 do WordPress, alguns desenvolvedores optam por divulgar as falhas que 
foram corrigidas na última versão de seus plugins e, dessa forma, uma 
pessoa maliciosa terá informações sobre possíveis fraquezas do seu site 
em WordPress caso você esteja utilizando uma versão desatualizada do 
plugin.

Permissões de Arquivos

Outro aspecto básico na segurança não só
 de um site em WordPress como em qualquer outro site é o nível de 
permissões que os arquivos recebem ao serem enviados para o servidor. 
Não adianta nada você ter um host de qualidade hospedando os seus 
arquivos se no seu sistema você possui arquivos que entregam de mão 
beijada permissões em excesso para os usuários através das permissões 
dos arquivos.

A maioria dos arquivos e diretórios do 
WordPress devem ter permissões de escrita apenas pelo proprietário do 
arquivo, com exceção do diretório “wp-content“, que deve ter 
permissões de escrita para todos os usuários pois é para este diretório 
que você você enviará os arquivos que compõem o conteúdo do seu site. Já
 o diretório “wp-content/themes” deverá receber permissões de 
escrita APENAS se você quiser utilizar o editor de arquivos embutido no 
WordPress para editar o seu tema online, recomendo que você de 
preferência à edição desses arquivos offline, em seu computador, e 
posteriormente enviando-os para o seu servidor através de uma conexão 
FTP. Já o diretório “wp-content/plugins” precisa de um cuidado 
especial pois alguns plugins necessitam de certas permissões “especiais”
 para funcionarem por isso é preciso analisar com cuidado cada plugin 
instalado em seu site WordPress e verificando com mais cuidado ainda 
caso algum plugin necessite de permissões especiais para funcionar 
corretamente. Um caso especial de permissões é o arquivo “wp-config.php”
 localizado na raiz do seu WordPress. Este arquivo deve receber a 
permissão “750″, principalmente se você utiliza um servidor de 
hospedagem compartilhado, o que é o caso da grande maioria dos sites 
WordPress que estão online hoje. A permissão “750″ significa que ninguém
 terá a permissão de leitura do seu arquivo “wp-config.php” e, sendo 
assim, ninguém terá acesso à senha do seu banco de dados, uma informação
 vital para o seu WordPress.

Outro caso bastante comum em vários 
servidores é a disponibilização de um arquivo de log de erros 
diretamente na raiz do site, sendo assim, qualquer um terá acesso aos 
erros gerados pelo seu WordPress acessando a URL do seu site e 
colocando, no final da URL o caminho “/error_log“. Retire as 
permissões de leitura públicas deste arquivo também pois dessa forma 
somente você poderá ler o arquivo ao baixa-lo via FTP, afinal, você não 
quer que todo mundo fique sabendo dos erros que o seu WordPress está 
gerando ou gerou em algum momento, não é?

Caso você não saiba como proceder para 
alterar as permissões dos arquivos do seu site em WordPress peça ajuda 
ao suporte do seu servidor de hospedagem, com toda a certeza ele irá lhe
 indicar como fazer.

Segurança do Banco de Dados

A maior parte da segurança do banco de 
dados de um site em WordPress é feita pela equipe que administra os 
servidores da empresa de hospedagem, porém você pode dar uma grande 
ajuda à essa equipe fazendo duas coisas bastante simples. A primeira 
delas é escolher uma senha forte para o seu banco de dados. Uma senha 
forte, como já dito, é composta por letras maiúsculas e minúsculas, 
números e caracteres especiais. Recomendo mais uma vez a utilização do 
site Strong Password Generator para a geração dessa senha forte. Não economize na quantidade de caracteres e nem nos tipos de caracteres utilizados.

Outra dica importante é mudar o prefixo 
das tabelas do seu banco de dados. Geralmente quando instalamos o 
WordPress deixamos esse pequeno item passar quase que desapercebido e o 
WordPress já vem configurado para utilizar, por padrão, o prefixo “wp_”
 nas tabelas do banco de dados. Mudar esse prefixo fará com que o seu 
site esteja protegido contra ataques do tipo “0-day” (zero day) e 
tornará o seu banco de dados menos vulnerável a qualquer ataque 
específico ao MySQL.

Plugins que Ajudam na Segurança

Akismet – Esse plugin 
já vem instalado por padrão em qualquer WordPress bastando apenas que o 
usuário ative-o para proteger o site contra SPAM nos comentários (é aí 
que grande parte dos ataques à um site em WordPress inicia).

Exploit Scanner
 – Esse plugin faz uma verdadeira varredura nos seus arquivos do 
WordPress e no seu banco de dados à procura de possíveis injeções de 
códigos maliciosos no seu site WordPress. O próprio plugin, na maioria 
dos casos, já faz a limpeza do seu WordPress ou lhe indica como fazer 
essa limpeza.

WordPress Firewall
 – Já falei desse plugin aqui em um post dedicado à ele, então, 
recomendo que você leia o post sobre o WordPress Firewall para saber 
mais sobre esse ótimo plugin.

WP Security Scan
 – Esse plugin faz uma varredura geral no seu WordPress à procura de 
questões de segurança que foram negligenciadas durante a instalação do 
WordPress ou que podem ser melhoradas através de medidas simples. O 
próprio plugin já se encarrega de executar a maioria das modificações 
propostas.

Serviços que ajudam a proteger o seu WordPress

Se você precisa de um nível maior de 
segurança em seu WordPress, existem sites especializados em fornecer um 
WAF (Web Application Firewall) que funciona como uma verdadeira barreira
 contra os mais diversos tipos de ataques existentes hoje em dia, como o
 ataque de SQL Injection e o ataque de XSS (Cross Site Scripting). Deste
 tipo de serviço eu conheço apenas 2 empresas que são a Incapsula e a CloudFlare.
 As duas empresas oferecem um serviço semelhante e as duas possuem a 
opção de contas grátis que, logicamente, possui menos recursos (e, 
consequentemente, menos proteção) do que as contas pagas porém já são de
 grande valia para um nível básico de proteção.