Sem dúvida alguma o WordPress é o melhor e mais popular gerenciador de conteúdo para blogs, porém toda esta popularidade atrai uma enorme quantidade de hackers que aproveitam-se do fato que o sistema é open source para estudá-lo por completo e descobrir maneiras de invadir. Para evitar estes problemas vamos dar algumas dicas de segurança para você implementar no seu WordPress.
Todas as dicas que serão mostradas agora são para o WordPress 2.7 e superior. Se você ainda utiliza uma versão anterior está aí um bom motivo para atualizar. ![]()
Protegendo seu login
- 1. CHAP Secure Login – Este plugin utiliza o protocolo CHAP para criptografar sua senha e garantir mais segurança durante o sessão de acesso à administração. Não é necessário nenhuma configuração, basta fazer o upload do plugin e ativá-lo.
- 2. Stealth Login – Neste caso o plugin oculta a página de login default do WP (wp-login.php) permitindo que você configure uma nova URL para realizar o login. É uma boa forma para evitar que bots encontrem a página de login e tentem quebrar sua senha.
- 3. Login Lockdown – Já tinha comentado sobre este plugin aqui no pBlog, sua função é bloquear o login temporariamente se ocorrer diversas tentativas não bem sucedidas seguidas vezes em curto período de tempo.
- 4. AskApache Password Protect – Este plugin adiciona uma autenticação HTTP extra, garantindo uma camada a mais de proteção, assim você poderá adicionar uma nova senha. É importante verificar se o servidor onde seu blog está hospedado possui compatibilidade com a HTTP Basic Authentication ou HTTP Digest Authentication (o próprio plugin tem uma ferramenta de deste).
Protegendo seu Banco de Dados
- 5. WP-DB-Backup – Lembre-se sempre de fazer backup! O plugin WP-DB-Backup facilitará esta tarefa chata, podendo até enviar um backup do seu banco de dados todos os dias para seu email.
- 6. Trocando o prefixo das tabelas do Banco de Dados – Por default o WordPress adiciona o prefixo “wp” em todas as tabelas do BD. Para trocar este prefixo facilmente basta utilizar o plugin WP-Security-Scan.
- 7. Protegendo o arquivo wp-config.php – Este arquivo possui todas as informações do seu BD, protegê-lo do acesso público é uma importantíssimo. Para isso adicione o seguinte código ao seu arquivo .htaccess.
order allow,deny
deny from all
Protegendo as Páginas da Administração
- 8. Admin SSL – Plugi que força criptografia SSL em todas as páginas que exige senha, assim todas as informações transmitidas estarão cryptografadas.
- 9. Mude o seu Login!! – Utilizando o login “admin” que é adicionado por default durante a instalação, o hacker terá que quebrar apenas sua senha, pois já saberá o login. Para isso crie um novo usuário com poderes de administrador e apague o usuário “admin”.
Prevenindo que usuários vejam a estrutura de pastas do WP
- 10. Escondendo a Pasta wp-content – Nesta pasta estão armazenadas o seu tema, plugins e uploads, torná-la inacessível é uma boa opção. Uma maneira é criar um arquivo index.html em branco dentro da pasta ou criar um arquivo .htaccess também dentro da pasta wp-content com o seguinte código:
- 11. Bloquei as pasta do WP dos mecanismos de busca – Enquanto você deseja que os mecanismos de busca indexem todo o conteúdo do seu blog para trazer o máximo de visitantes possível, a última coisa que você gostaria é que os mesmos mecanismos de buscas tornasse público a estrutura de pastas do seu blog. Para evitar este problema adicione o seguinte código ao arquivo robot.txt:
Options All -Indexes
Disallow: /wp-*
Manutenção
- 12. WP Security Scan – Já citado anteriormente, este plugin procura por vulnerabilidades e fornece sugestões corretivas. É sempre bom executá-lo de tempos em tempos para que verifique eventuais problemas de segurança.
- 13. Troque sua senha com regularidade!!
- 14. Mantenha sempre atualizado seu WordPress e todos os plugins instalados.
- 15. Proteja sua conexão de FTP – Algo bastante comum no dia-a-dia de qualquer blogueiro, a transferência de arquivos via FTP pode expor seus arquivos durante o envio, o ideal é utilizar uma conexão SFTP (secure FTP). A grande maioria das hospedagem já possuem suporte a SFTP e apesar de sua configuração ser um pouco mais trabalhosa, você só precisará fazer uma vez. Aprenda a configurar com este tutorial.
Aplicando todas estas dicas em seu blog pode ter a certeza que ele estará 99,9% seguro!!
Fonte: MakeUseOf.com

Pingback: ericooliveira
Pingback: Renato Bontempo
Pingback: Proteção do WordPress | Santaum Ponto Orgue
A dica 7 parece ser meio inútil. O arquivo wp-config.php só contem declarações de variáveis e constantes em PHP, que nunca são retornadas a quem o acessa pela web, portanto pouco importa se ele é acessível ou não.
A dica 11 também não me convenceu. A estrutura do WordPress é a mesma para todos que usem WordPress. Não há muito o que esconder nisso.
Uma dica que eu daria, principalmente para quem faz backups (tanto de arquivos quanto de banco de dados) e os deixa no servidor mesmo, é nunca, NUNCA deixá-los numa pasta acessível via web. Para a maioria dos servidores, a estrutura de pastas é “usuario/www”, onde “www” (e tudo que está dentro dela, consequentemente) é acessível via web. Assim o melhor a fazer é colocar os backups em “usuario/backups” ao invés de “usuario/www/backups”. Se isso não for possível, então deve-se proteger a pasta de backups contra acesso web, usando um arquivo .htaccess mais ou menos como o da dica 7, mas trocando “Files” por “Directory”.
Caraca…muito bom esse post…essa tradução foi show de bola…
parabéns
Ótimo artigo, Érico.
Em janeiro saiu um artigo similar na Smashing Magazine; uma das dicas relatadas lá é excluir o usuário “admin” (migrando os posts para um outro usuário), assim que instalar o wordpress, afinal “an default user with administrative rights and an assigned ID of #1 is an easy target for hackers. In an attack, only the password of this user would have to be broken.”
Minha tradução de pé quebrado: “um usuário default com direitos administrativos e usando o ID #1 é um alvo fácil para hackers. Em um ataque, apena a senha deste usuário teria que ser quebrada”
Eu vim aqui justamente pra comentar o que o Anizio comentou. 6 minutos antes de mim. Hehehehe!
O wp-security scan te dá este toque também, falando que o usuário admin existe e que é aconselhável que você o troque.
No mais, parabéns pela tradução.
Danillo, no arquivo wp-config.php estão as informações do nome, usuário e senha do banco de dados, além das chaves únicas de autenticação, por isso é importante protegê-lo.
Pingback: Melhores clicks da semana - #24 | Último Click
Meu blog/site começou como “fun” então nunca me preocupei com essas coisas. Mas, ele crescendo e tal, vou precisar adotar algumas dessas medidas!
Parabéns pelo post!
Érico, o arquivo já é protegido pelo fato de que o servidor nunca retorna o código-fonte de um arquivo PHP.
Caro Danillo, todo cuidado é pouco. Veja o que aconteceu com o blog Revolução ETC, em que o hacker modificou o arquivo .htaccess, o qual também não é “retornado”, EM TESE, pelo servidor … http://www.marketingdebusca.com.br/o-futuro-sombrio-do-seo/
Pingback: Links 22-03-09. | WebVicio.com
Pingback: Google Shared Items - March 23, 2009
Valeu pela dica Érico, estava precisando disso!
Olá,
muito boa as dicas de segurança. Parabéns…
Ótimo post! Muitas das orientações eu já havia seguido, exceto a do wp-config.php e a do $user_id. A primeira acabei de implementar, mas e a segunda?
Seria realmente necessário trocar o $user_id do usuário admin? E qual a maneira de fazer isso? Digo, que tabelas e que campos devem ser alterados para fazer isso?
Érico,
A minha pergunta não tem a ver com segurança, eu gostaria de saber o seguinte: Estou querendo mudar o tema do meu blog, já escolhi, fiz algumas alterações, porém ele por padrão não mostra o número total de posts por mês nos arquivos (assim como o pBlog), e também o número de posts por categoria. Gostaria de saber, como fazer, e se já tem algo “meio pronto”, função para chamar… etc..
Obrigado!
Fernando, uma boa referência é: http://codex.wordpress.org/
[]s!
Pingback: Derek Camara
Eu instalei o “CHAP Secure Login” e ele travou meu login, mesmo digitando a senha correta, sempre dava “senha incorreta”. Só consegui logar depois que entrei pelo ftp e apaguei a pasta do plugin.
Será que fiz algo de errado, ou isso é erro mesmo?
Renato, eu instalei este mesmo plugin aqui no pBlog e funcionou sem problemas, não precisei configurar nada. O que acontece muitas vezes é incompatibilidade entre plugins, talvez seja isso.
“Protegendo seu login”… vou fazer uns testes depois. Tinha habilitado os 3 primeiros itens indicados ali acima (CHAP, Stealth e Lockdown)… o problema é que ou algum deles ou o conjunto inviabiliza a utilização do Windows Live Writer, o que me levou a num primeiro momento remover os três.
Pode ser que o que aconteceu comigo tenha acontecido com o Renato também, o Stealth (alterando de wp-login e wp-admin para login e admin) me deu um pouco de dor de cabeça… as vezes ele me deixava acessar via wp-login, as vezes não deixava, e o mesmo pro login.
Concordo com o ponto do Danillo, o arquivo wp-config.php, se alguém conseguir acesso será por ftp, por web ele não retorna NADA. Isso é resolvido removendo contas ftp da hospedagem e utilizando acesso sftp. fica a dica
Poxa vida, quanto mais eu estudo menos eu sei…. Gostaria de parabenizar e agradecer o pblog pelas dicas importantíssimas que reuniram.
Agora vou começar a me proteger melhor, afinal, o seguro morreu de velho…
Abraço a todos.
Érico, depois que adicionei a linha order allow,deny deny from all no arquivo .htaccess criado pelo Stealth Login não consigo acessar meu blogue e nem mesmo o painel administrativo do WordPress.
Saberia, então, a solução para este problema?
Antecipadamente agradecido,
Isaac Ribeiro
Utilize o FTP para baixar o arquivo .htaccess, editá-lo e depois fazer o upload para o servidor.
queria saber se tem algum plugin que informa o ip do usuário ao se cadastrar…
Érico, obrigado pela orientação. Necessitava mesmo apenas a retirada da linha adicionada. Na verdade, isso era óbvio, mas na hora a “surpresa” foi tão grande que não enxergava o arquivo .htaccess, que era o primeiro na root.
Depois de resolver esse caso, aprofundei minhas pesquisas e conclui que não fui o único “privilegiado”. Encontrei também quem recomendasse adicionar o código abaixo em lugar do está exposto no tópico (sem #, claro).
#
#
# deny from all
#
#
Um abraço,
Isaac Ribeiro
Já que o código não aparece, uma das referências é o endereço http://www.wordpress-pt.com/2008/02/21/10-medidas-de-seguranca-a-implementar-no-seu-blog-wordpress/
Valeu!
Isaac Ribeiro
Pingback: 15 Dicas para Proteger o seu WordPress | Ajuda Wordpress em Português
Pingback: Denny Lira
Pingback: Brascripts – O melhor Conteúdo » Arquivo » 15 Dicas para proteger o seu WordPress