Voltar para blog

Auditoria forense em WordPress: como identificar usuários maliciosos via terminal (WP-CLI e logs)

21/08/2025 · 2 min · WordPress

Compartilhar

A presença de administradores desconhecidos no WordPress é um forte indício de comprometimento. Em auditoria, não basta remover o usuário: você precisa entender quando ele foi criado, como acessou o sistema e qual impacto deixou.

1) PHP-CLI vs PHP-CGI: erro comum no início da análise

Em servidores com múltiplas versões de PHP (como Plesk), usar o binário errado quebra o WP-CLI com erros como 404 Not Found ou No such file or directory.

Use sempre o binário CLI correto da versão do site:

/opt/plesk/php/8.2/bin/php /usr/local/bin/wp core version --allow-root

2) Liste os administradores e procure padrões de ataque

Comece pela base de usuários administrativos:

wp user list --role=administrator --fields=ID,user_login,user_email,user_registered --allow-root

Sinais de alerta:

3) Use IDs como evidência cronológica

Datas podem ser adulteradas no banco. Já o ID em AUTO_INCREMENT costuma entregar a ordem real de criação.

Exemplo: usuário legítimo com ID 2 e usuário suspeito com ID 17 alegando data mais antiga. Isso indica forte chance de manipulação de user_registered.

4) Verifique metadados e sessões recentes

O WordPress não mantém trilha completa de login por padrão, mas os session_tokens podem trazer IP, user-agent e timestamp.

wp user meta get [ID_DO_USUARIO] session_tokens --allow-root

Essa etapa ajuda a correlacionar identidade suspeita com origem de acesso.

5) Confirme no log de acesso do servidor

Se o banco estiver alterado, os logs Apache/Nginx funcionam como caixa-preta. Procure logins aceitos via POST /wp-login.php com retorno 302.

grep "POST /wp-login.php" /var/log/httpd/domains/domain.com.log | grep " 302 "

302 normalmente indica autenticação aceita e redirecionamento ao dashboard.

6) Resposta e remediação

Se a invasão for confirmada:

  1. Remova usuários maliciosos e reatribua conteúdo:
wp user delete [ID] --reassign=[ID_ADMIN_CONFIAVEL] --allow-root
  1. Force reset de senha de todos os usuários legítimos.
  2. Faça varredura por backdoors PHP em public_html.
  3. Instale trilha de auditoria (por exemplo, WP Activity Log / Simple History).

Em perícia WordPress, a interface gráfica mostra pouco. Terminal, WP-CLI e logs de servidor revelam a linha do tempo real da invasão. Em segurança, dados podem ser forjados, mas metadados e logs consistentes quase sempre expõem o ataque.

CC BY-NC

Este post está licenciado sob CC BY-NC.

Comentários

Participe da discussão abaixo.