Problema de segurança no WordPress manipula title e metadesc

   [google_plusone size=”medium”]   Passei quase um mês sem escrever nenhum post nesse blog e sem fazer as atualizações recomendadas do WordPress e seus plugins. Eu utilizo poucos plugins, já que meu blog é relativamente simples e não faço muita questão de elementos avançados.

Paguei um preço caro por ter deixado o blog abandonado por quase um mês, bem nesse período foi publicada uma vulnerabilidade no Timthumb, uma função usada para redimensionar imagens e criar thumbs. Fui afetado por essa vulnerabilidade e algum espertinho se aproveitou dessa falha para modificar alguns arquivos do WordPress desse blog e manipular as tags title e metadesc.

Só fui descobrir quando realizei minha rotina regular de SEO, onde avalio como está o posicionamento do blog no Google. Tomei um susto enorme quando no resultado de busca, meu blog apareceu da seguinte forma:

Resultado de Busca com title e metadesc alterados

Resultado de Busca com title e metadesc alterados

No mesmo instante bateu aquele desespero e fui analisar o código fonte através do próprio navegador. Fiquei surpreso ao ver que, pelo navegador, tudo estava normal. Title e Metadesc do jeito que deveriam ser. Fiz uma pesquisa no fonte pelo termo “Cialis” e não encontrei nada. Depois conectei no servidor e dei um grep recursivo no diretório do WordPress, nada de encontrar o maldito termo. Fiz um dump do banco de dados e editei o arquivo, nada do maldito “cialis” lá dentro. Como os resultados poderiam ter sido manipulados?

Cheguei a pensar em um bug no Google. Mas bug justamente no Google?

Veio aquela luz, entrei no Webmasters Tools, fui até “Diagnósticos” e “Buscar como o Googlebot” e o resultado está na imagem abaixo (clique para ampliar):

Webmaster Tool modificado

Webmaster Tool modificado

Bingo! O cara que fez um cloaking, ou seja, implementou uma função que detecta o user-agent e se for o Googlebot, exibe um resultado diferente do navegador. Dessa forma, através de um browser comum, seria impossível ver essas tags modificadas. O cara fez isso para tornar o trabalho de rastreamento bem complicado.

Resolvi fuçar no servidor e procurar os arquivos modificados recentemente. Cheguei então no arquivo wp-includes/pluggable.php, que tem uma função enorme utilizando um eval e base64. Dessa forma é possível esconder muito bem o código e dificultar muito o trabalho “forense” de quem foi vítima de uma vulnerabilidade.

O que fazer para corrigir?

Como o banco de dados não foi modificado, no meu caso, eu instalei outro WordPress do zero, depois instalei o tema e copiei todo o conteúdo do wp-content/uploads. Dessa forma, o blog voltou sem nenhuma vulnerabilidade.

Eu comprei meu tema da Woo Themes, pesquisando no blog deles, encontrei diversos posts sobre essa vulnerabilidade (veja em Timthumb Security Flaw). Ou seja, foi um grande vacilo meu. Se tivesse mantido o tema e o framework “woo” atualizados, jamais teria acontecido esse problema.

E mais uma vez, é sempre bom lembrar:

Mantenha sempre seu WordPress, plugins e tema atualizados!

Crédito da imagem: http://www.freedigitalphotos.net/