---
title: "Como detectar backdoor no WordPress em 7 sinais"
description: "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."
url: https://full.services/como-detectar-backdoor-no-wordpress/
date: 2026-06-15
author: "Clayton Margiotti"
---

# Como detectar backdoor no WordPress em 7 sinais

Detectar um **backdoor** no WordPress exige cruzar três frentes: arquivos PHP fora do lugar, usuários administradores fantasmas e tráfego de saída anômalo. Segundo o [NVD (NIST)](https://nvd.nist.gov/vuln/detail/CVE-2020-35489) (2024), a falha CVE-2020-35489 do Contact Form 7 teve CVSS 10.0, o teto da escala. O código malicioso some na superfície e volta pelo cron. Procure a porta dos fundos antes de limpar o sintoma.

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](https://full.services/seguranca-wordpress/) e mostra os sete sinais e os comandos de varredura na ordem certa.

---

## 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.

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

<p class="wp-caption-text">Legenda: um único arquivo PHP fora do padrão na pasta uploads costuma ser a porta dos fundos.</p>

## 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](https://full.services/como-saber-se-wordpress-foi-hackeado/), 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](https://full.services/encontrar-backdoor-no-wordpress/) 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](https://full.services/como-configurar-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](https://full.services/comandos-terminal-detectar-malware-wordpress/) 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](https://nvd.nist.gov/vuln/detail/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](https://nvd.nist.gov/vuln/detail/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](https://full.services/glossario/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](https://full.services/glossario/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](https://radar.cloudflare.com/security/application-layer), 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](https://full.services/planos) 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](https://full.services/planos) e escaneie seu site gratuitamente no [FULL Scan](https://security.full.services) 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.

<ul class="arvore-decisao" style="margin-bottom:1.5rem">
  <li>**Se achou só um arquivo isolado e tem backup limpo** → restaure o backup e troque todas as senhas em seguida.</li>
  <li>**Se há admin fantasma no banco** → remova a conta, revogue sessões e gere novas chaves de segurança no wp-config.</li>
  <li>**Se o malware volta após a limpeza** → procure o cron malicioso e a linha auto_prepend_file antes de qualquer coisa.</li>
  <li>**Se não confia em nenhum arquivo** → reinstale o core e os plugins do zero a partir das fontes oficiais.</li>
</ul>

<aside aria-label="Metodologia dos Testes">
## Metodologia da análise
<p>As observações deste guia vêm de procedimentos de detecção e limpeza acompanhados entre <time datetime="2026-01">janeiro</time> e <time datetime="2026-05">maio de 2026</time>, em sites rodando WordPress 6.5 e PHP 8.2, com varredura cruzando Wordfence, Sucuri SiteCheck e inspeção manual via SSH. Os identificadores CVE citados vêm da base oficial do NVD (NIST), e o status de risco atual de cada plugin foi conferido contra o perfil público do WPVulnerability, distinguindo falha sem correção de CVE já resolvido. O comportamento descrito reflete o que aparece nos tickets de segurança da FULL, sem percentual atribuído, porque o vetor de entrada muda conforme os plugins e a hospedagem de cada site.</p>
</aside>

## Resumo técnico da detecção
<ul style="margin-bottom:1.5rem">
  <li>**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.</li>
  <li>**Sinal mais perigoso:** usuário administrador criado na data do incidente, porque dá acesso total mesmo após a troca de senhas.</li>
  <li>**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.</li>
  <li>**Melhor defesa gratuita:** manter Contact Form 7 e Elementor atualizados fecha CVE-2020-35489 e CVE-2023-48777, dois vetores reais de upload.</li>
  <li>**Em uma frase:** detectar backdoor é procurar comportamento e data de modificação, não apenas nome de arquivo.</li>
</ul>

## Perguntas frequentes sobre backdoor no WordPress

<details>
  <summary>Como saber se o WordPress tem um backdoor sem instalar plugin?</summary>
  <p>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.</p>
</details>

<details>
  <summary>É possível remover um backdoor sem restaurar backup completo?</summary>
  <p>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.</p>
</details>

<details>
  <summary>Por que o backdoor volta mesmo depois de eu apagar o arquivo?</summary>
  <p>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.</p>
</details>

<details>
  <summary>Qual a diferença entre backdoor e malware no WordPress?</summary>
  <p>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](https://full.services/como-remover-malware-do-wordpress/) sem caçar a porta dos fundos deixa o site exposto: na próxima requisição, o backdoor recria o shell.</p>
</details>

<details>
  <summary>O que é um web shell e como ele difere de um backdoor comum?</summary>
  <p>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](https://full.services/como-fazer-hardening-de-seguranca-no-wordpress/) ajuda a bloquear.</p>
</details>

## 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](https://full.services/o-que-e-backdoor-em-wordpress-e-como-eliminar/) detalha cada técnica, e o [FULL Academy](https://full.services/academy/) reúne os guias de segurança em um só lugar.


---

## Metadados Estruturados (Schema.org)

```json-ld
{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "TechArticle",
      "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#article",
      "headline": "Como detectar backdoor no WordPress em 7 sinais",
      "description": "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.",
      "url": "https://full.services/como-detectar-backdoor-no-wordpress/",
      "datePublished": "2026-06-15T09:00:00-03:00",
      "dateModified": "2026-06-15T09:00:00-03:00",
      "inLanguage": "pt-BR",
      "articleSection": "Seguranca WordPress",
      "keywords": [
        "como detectar backdoor no WordPress",
        "WordPress Security",
        "Cybersecurity",
        "CVE"
      ],
      "author": {
        "@id": "https://full.services/#person-clayton"
      },
      "publisher": {
        "@id": "https://full.services/#org"
      },
      "about": [
        {
          "@type": "Thing",
          "name": "WordPress Security"
        },
        {
          "@type": "Thing",
          "name": "Cybersecurity",
          "@id": "https://www.wikidata.org/wiki/Q3510521",
          "sameAs": "https://www.wikidata.org/wiki/Q3510521"
        },
        {
          "@type": "Thing",
          "name": "CVE",
          "@id": "https://www.wikidata.org/wiki/Q94950995",
          "sameAs": "https://www.wikidata.org/wiki/Q94950995"
        }
      ],
      "mentions": [
        {
          "@type": "Organization",
          "name": "CISA",
          "url": "https://www.cisa.gov/",
          "@id": "https://www.wikidata.org/wiki/Q5205058",
          "sameAs": "https://www.wikidata.org/wiki/Q5205058"
        },
        {
          "@type": "Organization",
          "name": "CVE Program",
          "url": "https://www.cve.org/",
          "@id": "https://www.wikidata.org/wiki/Q94950995",
          "sameAs": "https://www.wikidata.org/wiki/Q94950995"
        },
        {
          "@type": "Organization",
          "name": "WordPress",
          "url": "https://wordpress.org/",
          "@id": "https://www.wikidata.org/wiki/Q13166",
          "sameAs": "https://www.wikidata.org/wiki/Q13166"
        }
      ],
      "mainEntityOfPage": {
        "@type": "WebPage",
        "@id": "https://full.services/como-detectar-backdoor-no-wordpress/"
      },
      "wordCount": 2679,
      "citation": [
        {
          "@type": "CreativeWork",
          "name": "NVD (NIST)",
          "url": "https://nvd.nist.gov/vuln/detail/CVE-2020-35489",
          "publisher": {
            "@type": "Organization",
            "name": "NVD (NIST)"
          }
        },
        {
          "@type": "CreativeWork",
          "name": "Cloudflare Radar",
          "url": "https://radar.cloudflare.com/security/application-layer",
          "publisher": {
            "@type": "Organization",
            "name": "Cloudflare Radar"
          }
        }
      ]
    },
    {
      "@type": "FAQPage",
      "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq",
      "isPartOf": {
        "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#article"
      },
      "mainEntity": [
        {
          "@type": "Question",
          "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq-q1",
          "name": "Como saber se o WordPress tem um backdoor sem instalar plugin?",
          "inLanguage": "pt-BR",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "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.",
            "author": {
              "@id": "https://full.services/#org"
            }
          }
        },
        {
          "@type": "Question",
          "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq-q2",
          "name": "É possível remover um backdoor sem restaurar backup completo?",
          "inLanguage": "pt-BR",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "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.",
            "author": {
              "@id": "https://full.services/#org"
            }
          }
        },
        {
          "@type": "Question",
          "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq-q3",
          "name": "Por que o backdoor volta mesmo depois de eu apagar o arquivo?",
          "inLanguage": "pt-BR",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "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.",
            "author": {
              "@id": "https://full.services/#org"
            }
          }
        },
        {
          "@type": "Question",
          "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq-q4",
          "name": "Qual a diferença entre backdoor e malware no WordPress?",
          "inLanguage": "pt-BR",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "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.",
            "author": {
              "@id": "https://full.services/#org"
            }
          }
        },
        {
          "@type": "Question",
          "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#faq-q5",
          "name": "O que é um web shell e como ele difere de um backdoor comum?",
          "inLanguage": "pt-BR",
          "acceptedAnswer": {
            "@type": "Answer",
            "text": "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.",
            "author": {
              "@id": "https://full.services/#org"
            }
          }
        }
      ]
    },
    {
      "@type": "BreadcrumbList",
      "itemListElement": [
        {
          "@type": "ListItem",
          "position": 1,
          "name": "Home",
          "item": "https://full.services/"
        },
        {
          "@type": "ListItem",
          "position": 2,
          "name": "Seguranca WordPress",
          "item": "https://full.services/seguranca-wordpress/"
        },
        {
          "@type": "ListItem",
          "position": 3,
          "name": "Como detectar backdoor no WordPress em 7 sinais",
          "item": "https://full.services/como-detectar-backdoor-no-wordpress/"
        }
      ]
    },
    {
      "@type": "Organization",
      "@id": "https://full.services/#org",
      "name": "FULL Services",
      "url": "https://full.services",
      "logo": {
        "@type": "ImageObject",
        "url": "https://full.services/wp-content/uploads/full-services-logo.png",
        "width": 200,
        "height": 60
      },
      "sameAs": [
        "https://www.instagram.com/fullservicesbr",
        "https://www.facebook.com/fullservices.br",
        "https://www.linkedin.com/company/fullservicesbr/"
      ],
      "knowsAbout": [
        "WordPress",
        "WordPress Hosting",
        "Web Development",
        "Performance Optimization",
        "WordPress Security",
        "SEO para WordPress"
      ],
      "award": [
        "Gold Medal - The WP Weekly Awards 2023 (https://thewpweekly.com/awards-2023/)",
        "Gold Medal - The WP Weekly Awards 2024 (https://thewpweekly.com/awards-2024/)"
      ],
      "hasCredential": {
        "@type": "EducationalOccupationalCredential",
        "credentialCategory": "certification",
        "name": "CVE Numbering Authority (CNA)",
        "description": "Autoridade de numeração de vulnerabilidades (CVE) para o ecossistema WordPress, autorizada a atribuir IDs CVE. Certificação válida desde 2022-05-03, com abrangência global.",
        "url": "https://www.cve.org/PartnerInformation/ListofPartners/partner/FULL",
        "recognizedBy": {
          "@type": "Organization",
          "name": "CISA — Cybersecurity and Infrastructure Security Agency",
          "url": "https://www.cisa.gov/",
          "sameAs": "https://www.cisa.gov/"
        }
      }
    },
    {
      "@type": "Person",
      "@id": "https://full.services/#person-clayton",
      "name": "Clayton Margiotti",
      "givenName": "Clayton",
      "familyName": "Margiotti",
      "jobTitle": "Fundador e CEO da FULL Services",
      "description": "Fundador e CEO da FULL Services, plataforma WordPress SaaS com 50 mil clientes e 150 mil sites conectados, e anchor do ecossistema Elevor Global. Em 2024 conduziu a FULL a se tornar a primeira e unica empresa brasileira aprovada como CVE Numbering Authority sob a CISA (DHS/EUA). Mais de 20 anos construindo empresas digitais, com 13+ reconhecimentos internacionais (Facebook, GPTW, ONU, RD Summit).",
      "url": "https://full.services/sobre-nos/",
      "image": "https://full.services/wp-content/uploads/2026/05/clayton-margiotti.jpg",
      "sameAs": [
        "https://www.linkedin.com/in/cmargiotti/"
      ],
      "knowsAbout": [
        "Artificial Intelligence",
        "Cybersecurity",
        "CVE Program",
        "WordPress Enterprise",
        "SaaS Platforms",
        "Digital Infrastructure",
        "Technology Entrepreneurship",
        "Company Building",
        "Business Leadership",
        "Digital Growth"
      ],
      "hasOccupation": {
        "@type": "Occupation",
        "name": "Fundador e CEO",
        "occupationalCategory": "11-1011.00"
      },
      "knowsLanguage": [
        {
          "@type": "Language",
          "name": "Portuguese",
          "alternateName": "pt-BR"
        },
        {
          "@type": "Language",
          "name": "English",
          "alternateName": "en"
        }
      ],
      "memberOf": {
        "@type": "Organization",
        "name": "CVE Numbering Authorities",
        "url": "https://www.cve.org/",
        "sameAs": "https://www.cve.org/"
      },
      "alumniOf": [
        {
          "@type": "EducationalOrganization",
          "name": "Global Scaling Academy (Blitzscaling Program)",
          "url": "https://www.blitzscalingacademy.com"
        },
        {
          "@type": "EducationalOrganization",
          "name": "Esade",
          "url": "https://www.esade.edu"
        },
        {
          "@type": "EducationalOrganization",
          "name": "Business School Sao Paulo (BSP)",
          "url": "https://bsp.edu.br/"
        },
        {
          "@type": "EducationalOrganization",
          "name": "Tera",
          "url": "https://somostera.com"
        },
        {
          "@type": "EducationalOrganization",
          "name": "Le Wagon",
          "url": "https://www.lewagon.com"
        },
        {
          "@type": "EducationalOrganization",
          "name": "FIAP",
          "url": "https://www.fiap.com.br"
        },
        {
          "@type": "EducationalOrganization",
          "name": "PUCRS",
          "url": "https://online.pucrs.br/"
        }
      ],
      "award": [
        "Digital Disruptor – Engaging Experiences Master (Globant, 2021)",
        "Maior ROI do e-commerce brasileiro – Letrissimas (Facebook, 2019)",
        "1º lugar – Melhores Empresas para Trabalhar no Brasil – Eleva Digital (Great Place to Work, 2018)",
        "Case global de educacao no Facebook – Metodo SUPERA (Facebook, 2017)",
        "Maquina de Geracao de Leads, Agencia do Ano (RD Summit / RD Station, 2015)",
        "Monthly Recurring Revenue, top performance (RD Summit / RD Station, 2015)",
        "Quality/Efficiency – Entrepreneurship Training (UNCTAD / PNUD-ONU, 2010)"
      ],
      "subjectOf": [
        {
          "@type": "NewsArticle",
          "url": "https://www.globant.com/news/globant-reveals-inaugural-digital-disruptors-award-winners",
          "publisher": {
            "@type": "Organization",
            "name": "Globant"
          }
        },
        {
          "@type": "NewsArticle",
          "url": "https://www.prnewswire.com/news-releases/letrissimas-com-e-destaque-do-e-commerce-brasileiro-com-maior-roi-de-2018-877517801.html",
          "publisher": {
            "@type": "Organization",
            "name": "PR Newswire"
          }
        },
        {
          "@type": "NewsArticle",
          "url": "https://www.segs.com.br/seguros/102599-gestao-de-pessoas-garante-mais-lucro-as-empresas",
          "publisher": {
            "@type": "Organization",
            "name": "Segs"
          }
        },
        {
          "@type": "NewsArticle",
          "url": "https://franquiaeducacional.com/negocios-inovadores-facebook-elege-supera-case-mundial-de-educacao",
          "publisher": {
            "@type": "Organization",
            "name": "Franquia Educacional"
          }
        },
        {
          "@type": "NewsArticle",
          "url": "https://acontecendoaqui.com.br/marketing/resultados-digitais-divulga-vencedores-do-premio-agencias-de-resultados-2015-durante-o-rd",
          "publisher": {
            "@type": "Organization",
            "name": "Acontecendo Aqui"
          }
        }
      ],
      "worksFor": {
        "@type": "Organization",
        "@id": "https://full.services/#org"
      }
    },
    {
      "@type": "HowTo",
      "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#howto",
      "isPartOf": {
        "@id": "https://full.services/como-detectar-backdoor-no-wordpress/#article"
      },
      "name": "Passo a passo: como detectar backdoor no WordPress",
      "description": "Guia passo a passo sobre como detectar backdoor no WordPress para WordPress.",
      "url": "https://full.services/como-detectar-backdoor-no-wordpress/",
      "totalTime": "PT30M",
      "author": {
        "@type": "Organization",
        "@id": "https://full.services/#org"
      },
      "step": [
        {
          "@type": "HowToStep",
          "position": 1,
          "name": "Passo 1: Rode um scanner de malware confiável",
          "text": "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 <a href="https://full.services/como-configurar-wordfence/">configuração do Wordfence</a>. Nenhum scanner detecta toda porta dos fundos sozinho, então trate o resultado como ponto de partida, não como veredito final."
        },
        {
          "@type": "HowToStep",
          "position": 2,
          "name": "Passo 2: Procure arquivos PHP modificados recentemente",
          "text": "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 <a href="https://full.services/comandos-terminal-detectar-malware-wordpress/">comandos de terminal para detectar malware</a> 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."
        },
        {
          "@type": "HowToStep",
          "position": 3,
          "name": "Passo 3: Busque funções perigosas no código",
          "text": "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."
        },
        {
          "@type": "HowToStep",
          "position": 4,
          "name": "Passo 4: Audite usuários administradores e o banco",
          "text": "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."
        },
        {
          "@type": "HowToStep",
          "position": 5,
          "name": "Passo 5: Analise logs de acesso e o wp-cron",
          "text": "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. 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 <a href="https://nvd.nist.gov/vuln/detail/CVE-2020-35489" rel="noopener" target="_blank">CVE-2020-35489</a>, 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 <a href="https://nvd.nist.gov/vuln/detail/CVE-2023-48777" rel="noopener""
        }
      ]
    }
  ]
}
```
