📩 Fique por dentro das novidades com a nossa newsletter

Como detectar backdoor no WordPress em 7 sinais

Relacionados

Como detectar backdoor no WordPress em 7 sinais

Usar WP-CLI para gestão do WordPress em 5 frentes

Schema product no WooCommerce: 4 passos no Rank Math

Conheça a loja da FULL Services

Plugins premium, suporte de verdade e tudo o que seu site WordPress precisa em um só lugar.

Pergunte a uma IA sobre este artigo

Obtenha um resumo ou tire dúvidas com seu assistente favorito

Um backdoor é um trecho de código escondido que dá ao invasor acesso administrativo ao site mesmo depois de você trocar todas as senhas, e ele costuma se disfarçar de arquivo legítimo do WordPress. O sinal mais traiçoeiro não é a página desfigurada: é o site que parece normal enquanto envia spam ou redireciona visitantes só em buscas do Google. Detectar a porta dos fundos cedo evita que o malware se replique pelo banco de dados e pelo agendador. Este guia faz parte do hub de segurança WordPress da FULL e mostra os sete sinais e os comandos de varredura na ordem certa.


Neste artigo

Diagnóstico rápido: 7 sinais de backdoor no WordPress

Reconhecer um backdoor no WordPress passa por sete sinais que aparecem em camadas diferentes do site, do sistema de arquivos ao banco de dados. Nenhum isolado prova a infecção, mas dois ou mais juntos já justificam varredura imediata: a tabela abaixo cruza cada sinal com onde procurar e o risco que ele representa, para você priorizar a investigação pelo que pesa mais.

Backdoor no WordPress: 7 sinais, onde procurar e risco
Sinal Onde procurar Risco
Arquivo PHP novo em uploads wp-content/uploads Alto
Admin fantasma criado Painel Usuários, tabela wp_users Crítico
Funções eval e base64_decode Plugins e tema, wp-config.php Alto
Tarefa estranha no WP-Cron wp_options, cron events Alto
Tráfego de saída inesperado Logs do servidor, firewall Médio
Linha em .htaccess ou .user.ini Raiz do site Alto
Redirecionamento só em buscadores Cabeçalhos, header.php Médio

Legenda: um único arquivo PHP fora do padrão na pasta uploads costuma ser a porta dos fundos.

Por que o backdoor é difícil de detectar no WordPress

O backdoor é difícil de achar porque ele foi desenhado para parecer parte do WordPress, não para chamar atenção. Diferente de um defacement, que estampa a invasão na home, a porta dos fundos fica em silêncio por semanas e só age sob comando remoto. Em boa parte dos tickets de limpeza que chegam à FULL, o cliente descobre o problema pelo aviso do Google, não pelo próprio site.

O código se mistura a arquivos legítimos, usa nomes como wp-cache.php ou class-db.php e roda apenas quando recebe um parâmetro específico na URL. Por isso um scanner de superfície passa direto: ele lê o arquivo, vê PHP comum e segue. Detectar exige olhar comportamento e data de modificação, não só nome. Quando o site já foi comprometido por outro caminho, o backdoor é o que garante o retorno do atacante.

Onde o backdoor se esconde: Arquivos e banco de dados

Um backdoor no WordPress se aloja em quatro pontos previsíveis, e conhecer o mapa encurta a varredura de horas para minutos. O lugar mais comum é a pasta wp-content/uploads, que deveria conter só mídia mas acaba recebendo um arquivo .php plantado por upload sem validação durante a invasão. Em seguida vêm os plugins desatualizados: uma falha como a do Contact Form 7 antigo abria espaço para gravação de shell remoto.

O terceiro ponto é o wp-config.php, onde uma linha de auto_prepend_file força o PHP a carregar o código malicioso antes de qualquer página renderizar. O quarto é o próprio banco de dados: o backdoor injeta um administrador na tabela wp_users ou esconde um payload codificado em wp_options. Mapear esses quatro lugares evita que você limpe só o arquivo visível e deixe para trás a cópia oculta que reinfecta o site em seguida.

Passo a passo: Como detectar backdoor no WordPress

Detectar um backdoor no WordPress segue uma sequência de cinco passos que vai do scan automatizado à inspeção manual de arquivos modificados, e respeitar a ordem evita apagar evidência antes da hora. Cada passo abaixo isola uma camada do site, do plugin de varredura ao log do servidor, para você confirmar a infecção sem alarme falso. Faça um backup do estado atual antes de começar, porque a análise forense depende dos arquivos como eles estão agora.

Passo 1: Rode um scanner de malware confiável

Comece por um scanner reconhecido como o Wordfence ou o Sucuri SiteCheck, que comparam os arquivos do core com o repositório oficial e sinalizam o que foi alterado. O Wordfence varre plugin, tema e core e marca arquivos com assinatura de shell conhecida; o Sucuri SiteCheck faz a checagem remota, sem instalar nada, e detecta redirecionamento e blacklist. Veja como deixar o scanner pronto no guia de configuração do Wordfence. Nenhum scanner detecta toda porta dos fundos sozinho, então trate o resultado como ponto de partida, não como veredito final.

Passo 2: Procure arquivos PHP modificados recentemente

Liste os arquivos .php alterados nos últimos dias, porque um backdoor recém-plantado quase sempre tem data de modificação fora do ciclo de atualização do site. Via SSH, o comando find . -name "*.php" -mtime -7 mostra tudo que mudou na última semana; qualquer arquivo PHP na pasta uploads é suspeito imediato. O artigo de comandos de terminal para detectar malware traz a lista completa de varreduras. Compare as datas com a do seu último deploy: arquivo do core com data recente e que você não tocou é o primeiro candidato a backdoor.

Passo 3: Busque funções perigosas no código

Procure por funções que ofuscam e executam código, como eval, base64_decode, gzinflate e str_rot13, que aparecem na grande maioria das portas dos fundos. O comando grep -ril "base64_decode" wp-content/ aponta todo arquivo que usa o padrão; nem toda ocorrência é maliciosa, mas a combinação de eval com base64_decode numa mesma linha é forte indício de shell. Cheque também o wp-config.php em busca de auto_prepend_file. Anote os caminhos suspeitos em vez de apagar na hora, para não destruir a evidência que liga o backdoor à porta de entrada original.

Passo 4: Audite usuários administradores e o banco

Revise a lista de usuários em busca de um administrador que você não criou, sinal clássico de backdoor já ativo no banco de dados. No painel, ordene por data de registro; no banco, a query SELECT * FROM wp_users revela contas ocultas que o painel às vezes não mostra. Verifique também a tabela wp_options por entradas longas em base64. Um admin fantasma com e-mail genérico e data de criação igual à do incidente confirma que o atacante manteve acesso. Remova a conta e revogue todas as sessões antes de seguir, ou o invasor volta no minuto seguinte.

Passo 5: Analise logs de acesso e o wp-cron

Termine cruzando os logs de acesso do servidor com as tarefas agendadas, onde o backdoor mais astuto se esconde para reinstalar a si mesmo. Procure no log requisições POST repetidas a um arquivo isolado, ou GETs com parâmetros longos em base64. No WP-Cron, a query de eventos agendados expõe um job que reescreve o arquivo malicioso depois que você o apaga. Esse passo explica o caso mais frustrante: o malware que volta horas após a limpeza. Se encontrar o cron malicioso, remova-o junto com o arquivo, senão a porta dos fundos se regenera sozinha.

Cves reais que abrem porta para backdoor no WordPress

A maioria dos backdoors entra por uma vulnerabilidade conhecida em plugin desatualizado, e os CVEs abaixo são exemplos reais de como isso acontece no ecossistema WordPress. O CVE-2020-35489, com CVSS 10.0, afetava o Contact Form 7 abaixo da versão 5.3.2 e permitia upload irrestrito de arquivos no servidor.

Na prática, o atacante subia um .php disfarçado de anexo e ganhava execução remota, o cenário perfeito para plantar uma porta dos fundos sem deixar rastro óbvio. Já o CVE-2023-48777, CVSS 9.9, atingia o Elementor abaixo da 3.18.2 com upload arbitrário que abria o mesmo caminho de comprometimento. Os dois já foram corrigidos pelos desenvolvedores, então o risco hoje está em quem não atualizou, não no plugin em si. Manter o Contact Form 7 e o Elementor sempre na versão atual fecha exatamente essas duas portas de entrada.

Como a FULL trata vulnerabilidade com autoridade de CNA

A FULL é a única empresa brasileira credenciada como CVE Numbering Authority (CNA) sob a CISA desde maio de 2022, o que significa que ela atribui identificadores CVE oficiais às falhas que descobre. Quem escreve sobre CVE aqui não repassa boletim de terceiro: faz parte do processo de catalogação global, ao lado de nomes como MITRE.

Esse status de CNA sustenta a forma como tratamos cada porta dos fundos, sempre separando o risco atual sem correção do histórico de CVEs já resolvidas. Segundo o Cloudflare Radar, na medição de 9 de junho de 2026 no Brasil, 82,4% dos ataques de camada de aplicação foram do tipo DDoS e 16,4% foram mitigados por WAF, o que reforça por que um firewall de aplicação à frente do site barra boa parte das tentativas de plantar backdoor antes que cheguem ao PHP.

Proteja seu WordPress com o bundle da FULL

Manter vários sites livres de backdoor exige o mesmo conjunto de firewall, scanner e hardening em cada um, e é aí que a licença avulsa pesa no bolso de quem gerencia carteira. No plano PRO da FULL, por R$849 você ativa o bundle completo, com o All in One Security entre os plugins, em até dez sites, o que dá R$85 por site. A gente vê no suporte da FULL que quem padroniza o stack de segurança fecha as portas de entrada antes do incidente, em vez de pagar limpeza emergencial depois. Conheça os planos da FULL e escaneie seu site gratuitamente no FULL Scan para saber se algum plugin está exposto.

Decisão rápida: Backdoor confirmado, e agora?

A reação certa a um backdoor confirmado depende de quanto do site ainda é confiável, e tratar a etapa errada primeiro só dá tempo ao atacante. Use a árvore abaixo para decidir o próximo passo com base no que a sua varredura encontrou, antes de partir para a limpeza completa.

  • Se achou só um arquivo isolado e tem backup limpo → restaure o backup e troque todas as senhas em seguida.
  • Se há admin fantasma no banco → remova a conta, revogue sessões e gere novas chaves de segurança no wp-config.
  • Se o malware volta após a limpeza → procure o cron malicioso e a linha auto_prepend_file antes de qualquer coisa.
  • Se não confia em nenhum arquivo → reinstale o core e os plugins do zero a partir das fontes oficiais.

Resumo técnico da detecção

  • Sinal mais confiável: arquivo PHP com data de modificação recente dentro da pasta wp-content/uploads, que não deveria conter código executável.
  • Sinal mais perigoso: usuário administrador criado na data do incidente, porque dá acesso total mesmo após a troca de senhas.
  • Por que o malware volta: um job no WP-Cron ou uma linha auto_prepend_file reescreve o arquivo malicioso depois que você o apaga.
  • Melhor defesa gratuita: manter Contact Form 7 e Elementor atualizados fecha CVE-2020-35489 e CVE-2023-48777, dois vetores reais de upload.
  • Em uma frase: detectar backdoor é procurar comportamento e data de modificação, não apenas nome de arquivo.

Perguntas frequentes sobre backdoor no WordPress

Como saber se o WordPress tem um backdoor sem instalar plugin?

Dá para detectar sem plugin usando varredura remota e acesso por SSH. O Sucuri SiteCheck escaneia o site de fora e aponta redirecionamento e blacklist sem instalar nada. Por SSH, o comando find lista arquivos PHP modificados nos últimos dias, e o grep busca funções como eval e base64_decode no código. Some a isso uma revisão manual da lista de administradores no painel. Essa combinação cobre as três camadas principais de um backdoor: arquivo, código e usuário, sem precisar de nenhum plugin instalado.

É possível remover um backdoor sem restaurar backup completo?

Sim, é possível remover sem backup desde que você localize todas as cópias do código malicioso. A condição é encontrar não só o arquivo visível, mas também o job no WP-Cron e a linha auto_prepend_file que o reinstalam. Se qualquer cópia escapar, o backdoor volta em horas. Por isso a remoção manual exige paciência: apagar o shell, limpar o agendador, revisar o wp-config e auditar o banco. Quando há backup limpo anterior ao incidente, restaurar é mais rápido e seguro do que caçar cada fragmento.

Por que o backdoor volta mesmo depois de eu apagar o arquivo?

O backdoor volta porque você apagou só uma das cópias, e o mecanismo de reinstalação continua ativo. Os mais sofisticados plantam um evento no WP-Cron que reescreve o arquivo malicioso poucas horas depois da limpeza, ou usam uma linha auto_prepend_file no wp-config para recriar o shell a cada requisição. Enquanto esse gatilho existir, apagar o arquivo é inútil. A solução é remover o cron malicioso e a diretiva auto_prepend junto com o shell. Sem fechar o vetor de entrada que plantou tudo, a reinfecção é questão de tempo.

Qual a diferença entre backdoor e malware no WordPress?

Backdoor é um subtipo de malware: todo backdoor é malware, mas nem todo malware é backdoor. A diferença define a ação: o malware causa o dano visível, como spam ou redirecionamento, enquanto o backdoor só mantém o acesso do atacante após a limpeza. Um scanner como o Wordfence marca os dois com rótulos distintos. Por isso remover só o malware aparente sem caçar a porta dos fundos deixa o site exposto: na próxima requisição, o backdoor recria o shell.

O que é um web shell e como ele difere de um backdoor comum?

Um web shell é um script, quase sempre em PHP, que dá ao atacante uma interface para executar comandos no servidor pelo navegador. É uma forma avançada de backdoor: o backdoor simples só recria um admin ou abre um login oculto, enquanto o web shell entrega controle quase total, com upload de arquivos e execução de comandos. Os exemplos c99 e WSO são conhecidos. Detectar exige procurar arquivos PHP que usam funções como system ou exec, padrões que um hardening adequado ajuda a bloquear.

Próximos passos para blindar o site

Detectar um backdoor no WordPress é, no fundo, treinar o olhar para o que não deveria estar ali: arquivo PHP fora de lugar, admin que você não criou, tarefa de cron sem dono. Rode o scanner primeiro, depois confira data de modificação e funções suspeitas, e só então limpe, sempre fechando o vetor de entrada antes de comemorar. Para aprofundar a defesa, o conteúdo sobre o que é backdoor e como eliminar detalha cada técnica, e o FULL Academy reúne os guias de segurança em um só lugar.

Compartilhe este conteúdo

Equipe Full Services

A FULL. é especialista em WordPress e oferece plugins premium com licenças originais, suporte técnico e instalação facilitada. Já ajudou mais de 25 mil clientes a impulsionar seus sites com performance, segurança e praticidade.

Como detectar backdoor no WordPress em 7 sinais

Um backdoor é um trecho de código escondido que dá

Usar WP-CLI para gestão do WordPress em 5 frentes

Usar WP-CLI para gestão do WordPress é operar o site

Schema product no WooCommerce: 4 passos no Rank Math

Rank Math WooCommerce SEO é a configuração que faz a
Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.