1. Fazer download do Worpress e criar uma instalação local usando o Laragon, Xampp, etc (Tutorial que pode ajudar – eu costumo usar o Método 2);
  2. Criar uma base de dados local, importar a base de dados do site actual e:
    1. Trocar os dados no ficheiro wp-config (inserir o nome da Base local, o username (costuma ser root) e a password (normalmente é deixar o campo vazio));
    2. Alterar os links na base de dados do url real para http://localhost/pastadosite (estes dois pontos estão igualmente explicados no link do Tutorial de cima).
  3. Copiar apenas as pastas necessárias do site com vírus para a instalação local (dentro da pasta wp-content usualmente):
    1. themes;
    2. plugins;
    3. uploads;
    4. languages (se houver traduções e a pasta existir).
  4. No caso de não se ter os dados de login admin, é possível adicionar um user com essa permissão na base de dados (Tutorial de como o fazer);
  5. Remover todos os admins suspeitos
  6. Alterar todas as passwords dos restantes users
  7. Remover temas não utilizados
  8. Remover plugins não utilizados
  9. Verificar se não existem ficheiros suspeitos ou pouco usuais no WP ou plugins;
  10. Procurar por virus em todo o site:
    https://stackoverflow.com/questions/16956810/how-do-i-find-all-files-containing-specific-text-on-linux
    grep -rnwl ‘.’ -e ‘error_reporting(0);’
    grep -rnwl ‘.’ -e ‘lock360.php’
    grep -rnwl ‘.’ -e ‘urldecode(‘
    grep -rnwl ‘.’ -e ‘eval(‘

11. Confirmar que os ficheiros são virus e eliminar todos em simultaneo. Exemplo:

rm ./wp-content/plugins/contact-form-7/.htaccess
rm ./wp-content/plugins/contact-form-cfdb7/.htaccess
rm ./wp-content/plugins/custom-fonts/.htaccess
rm ./wp-content/plugins/revslider/.htaccess
rm ./.htaccess

rm ./wp-content/languages/wpml/2index.php
rm ./wp-content/languages/wpml/new-index.php
rm ./wp-content/backups-dup-lite/index.php
rm ./wp-content/plugins/contact-form-7/content.php
rm ./wp-content/plugins/contact-form-cfdb7/index.php
rm ./wp-content/plugins/custom-fonts/content.php
rm ./wp-content/plugins/custom-fonts/index.php
rm ./wp-content/plugins/revslider/radio.php

12. Verificar se o clone local ficou bem feito e que o site está funcional, se sim, fazer um backup como garantia da Base de Dados e Ficheiros do site que está live e substituir pela versão local limpa que se criou.

Alternativa iPanel

Com o iPanel é possivel clonar toda a aplicação para um subdomínio. Por exemplo temp.app.pt e fazer as operações supracitadas no servidor e depois eliminar a app original e importar a do temp. Atualmente é preciso ter algum cuidado com as base de dados remotas mas no futuro esta operação será totalmente seamless.