Nesse artigo iremos tratar de alguns passos para proteger o WordPress, focando em dicas simples para serem implementados através de sua área administrativa do site.
As áreas administrativas dos sites são alvo favorito dos hackers e DEVEM SER BEM PROTEGIDAS.
O mesmo vale para o WordPress: ao criar um blog, o sistema cria um usuário administrativo com uma senha segura e bloqueia o acesso público à área de configurações com uma página de login.
Este artigo se concentra em defender a área de administração do WordPress, ou seja, todas as páginas na pasta wp-admin (ou http://www.seublog.com/wp-admin/) que são exibidas depois que um usuário é verificado.
10 passos para proteger seu site WordPress
– Dificulte os ataques
Para dificultar um ataque, você deve executar as seguintes ações manualmente. Essas soluções não garantem 100% de segurança, mas trazem uma série de obstáculos ao caminho de um Hacker.
1 – Renomear e carregar a pasta do wordpress
Ao extrair os arquivos compactados do WordPress, você verá uma pasta chamada WordPress. Esta pasta deve ser renomeada (preferencialmente para algo criptográfico) e, após também ajustar o arquivo wp-config.php, carregada no diretório raiz do domínio. O que essa mudança faz?
• Primeiro, os arquivos não estarão mais soltos no diretório principal, aumentando assim a clareza do nível da raiz. Outros arquivos e pastas serão encontrados mais rapidamente.
• Segundo, muitas instâncias do WordPress agora podem ser criadas e podem ser colocadas paralelas umas às outras sem interferir em outros arquivos e configurações do sistema, tornando-a perfeita para testes e desenvolvimento.
• A terceira vantagem realmente trata de segurança: a área de administração (e o próprio site) não está mais no domínio raiz e deve ser encontrada primeiro por robôs. Não será fácil encontrar o caminho desta página de login relocalizada, pelo menos para um ser humano. Até lá, essa mudança protegerá seu blog. Nota: se os arquivos de sistema de um site do WordPress não estiverem mais no diretório principal e o nome da pasta principal da instalação tiver sido alterado (conforme recomendado acima), o blog ainda poderá ser acessado em http://exemplo.com. Como? No campo Endereço do WordPress (URL), sob as configurações gerais, inclua o caminho da pasta renomeada. Por exemplo, se a pasta do WordPress descompactada for renomeada para wordpress_live_Ts6K, insira o caminho como http://exemplo.com/wordpress_live_Ts6K.
2. Estenda o arquivo wp-config.php
O arquivo de configuração do WordPress wp-config.php contém configurações e dados de acesso para o banco de dados. Mas os valores relacionados à segurança também podem ser encontrados no arquivo. As seguintes definições devem estar no arquivo wp-config.php e devem ser adicionadas ou modificadas:
• Chaves de segurança: Desde o WordPress 2.7, o WordPress possui quatro tipos de chaves de segurança, que devem ser configuradas corretamente. O WordPress evita que você tenha que criar as strings gerando as linhas de chaves de segurança automaticamente. Você só precisa implementar essas chaves de segurança no seu arquivo de configuração. Essas chaves são essenciais para a segurança do seu blog instalado.
• O prefixo da tabela de uma instalação recém-criada do WordPress não deve ser o padrão _wp__. Quanto mais enigmática a palavra, menor a probabilidade de ocorrer uma intrusão nas tabelas de banco de dados do MySQL.
RUIM: _ $ table_prefix = ‘wp’ ;
ÓTIMO: _ $ table_prefix = ‘wp4FZ52Y’ ;
Esse valor é atribuído apenas uma vez e você não precisa se lembrar disso porque tem uma função interna.
• Se o servidor tiver criptografia SSL disponível, recomenda-se criptografar a área de administração. Isso pode ser feito adicionando o seguinte comando ao arquivo wp-config.php: _define (‘FORCE_SSLADMIN’, true);
• Além disso, você pode ajustar outras configurações do sistema no arquivo de configuração. Uma lista clara e abrangente de configurações para maior segurança e desempenho pode ser encontrada no WordPress Codex.
3. Mova o arquivo wp-config.php
Também desde a versão 2.6, o WordPress permite mover o arquivo wp-config.php para um nível superior. Como esse arquivo de sistema contém informações muito mais confidenciais do que qualquer outro, e como é difícil acessar o nível do servidor de arquivos pai, certamente faz sentido armazená-lo fora da instalação real. O WordPress analisa automaticamente o índice subjacente mais alto do arquivo de configurações. Qualquer tentativa dos usuários de ajustar o caminho é, portanto, inútil.
4. Proteja o arquivo wp-config.php
Nem todos os ISPs, no entanto, permitem transferir dados para um nível superior ao diretório principal. Os administradores nem sempre podem executar a etapa anterior se não tiverem esse privilégio. Neste caso, o acesso externo ao arquivo wp-config.php pode ser excluído através do arquivo .htaccess. É importante certificar-se de que o arquivo .htaccess, com essa proteção integrada, compartilha o mesmo diretório que o arquivo wp-config.php. Aliás, essa técnica também é útil se você usar várias instalações do WordPress, mas não tiver permissão para realocar os arquivos de configuração relevantes.
5. Exclua a conta de usuário admin
Quando o WordPress é instalado, uma conta de administrador com o nome de usuário admin é criada automaticamente, sem nenhuma opção definida. Este é um gesto bem intencionado do WordPress, mas um usuário padrão com direitos administrativos e um ID atribuído como nº 1 é um alvo fácil para hackers. Em um ataque, somente a senha desse usuário teria que ser quebrada. Daí nosso conselho:
1. Crie outro administrador na área administrativa.
2. Faça logout
3. Faça o login como o novo usuário.
4. Exclua o antigo administrador da lista de usuários.
Um segundo usuário oferece maior segurança: esse nome será exibido em todos os artigos e comentários publicados no futuro, e o nome do administrador real nunca será exibido nas páginas do blog e, portanto, nunca será comunicado ao mundo externo.
6. Escolha senhas fortes
As senhas são o elo mais fraco na corrente de sistemas de proteção de um site. O motivo? A maneira como elas são escolhidas é muito imprudente. Vários estudos mostram que um número muito grande de senhas contém poucos caracteres e é muito fácil adivinhar. O WordPress respondeu a esse problema com um indicador intuitivo, baseado em um sinal visual, que mostra a força da senha desejada de um usuário. Inexplicavelmente, porém, esta ferramenta está disponível apenas para perfis existentes (encontrados em Configurações> Usuários> Seu perfil). Se o administrador criar novos usuários, a força da senha não será comunicada visualmente. Nossa recomendação para uma senha segura do WordPress é que ela tenha pelo menos sete caracteres e inclua caracteres maiúsculos e minúsculos, números e símbolos, como! “? $% ^ &).
7. Utilize uma proteção adicional por senha.
A consulta é tratada pelo .htaccess, que é armazenado na pasta wp-admin junto com .htpasswd. Depois de fazer essa alteração, o navegador solicitará os dados armazenados no .htaccess. Isso pode ser diferente para cada autor do blog ou o mesmo para todos. Nota: o gerador Htaccess e Htpasswd ajuda a criar os arquivos necessários com os valores desejados.
8. Suprimir o feedback de erro na página de login
Até fazer o login com sucesso, os visitantes – sejam bons ou ruins – têm inúmeras tentativas de inserir os dados corretos nos campos de login. Em caso de falha, o WordPress comunica ao usuário qual é o problema.
Ao solucionar problemas, o WordPress é realmente muito exigente e fornece uma mensagem única e significativa para cada erro. Portanto, se um nome de usuário for digitado incorretamente, isso será comunicado. Se a senha estiver errada, isso também será comunicado. Isso é uma bênção para o ladrão. Sem querer, o WordPress fornece um feedback valioso para os bad boys que estão tentando acessar seus dados.
É só uma questão de tempo até que eles tenham acesso ao back end. Um simples one-liner resolve este problema inteligentemente: A saída do erro na página de login é simplesmente bloqueada para saqueadores. Este código vai no arquivo functions.php do seu tema: add_filter (‘login_errors’, create_function (‘$ a’, ‘retorno nulo;’));
9. Restringir tentativas de login erradas
O WordPress não registra as tentativas fracassadas de fazer login, muito em detrimento do administrador do blog, que não vê o ataque insidioso chegando e, portanto, não consegue reunir as ferramentas para combater a ameaça. Existe uma saída para esse dilema? Existem duas soluções: Login LockDown e Limit Login Attempts. Ao ser instalado, eles registram todas as tentativas de login. Além disso, ambos os plugins podem bloquear visitantes por um período especificado após um determinado número de tentativas mal-sucedidas. Assim, robôs e hackers são limitados na escala de seu ataque. Os plugins são gratuitos e compatíveis com o WordPress 2.7.
10. Mantenha o software atualizado
Os desenvolvedores do WordPress são muito rápidos e reagem imediatamente a vulnerabilidades no WordPress. Mantenha suas instalações atualizadas e lembre-se: menos é mais. Como administrador, você deve garantir que apenas os plugins necessários estejam ativos em sua instalação. Cada plugin é um risco potencial e deve estar inativo ou, melhor ainda, removido se não for necessário.