# Detectar arquivos modificados no WordPress: 4 métodos para achar injeções

<strong>Detectar arquivos modificados no WordPress</strong> é comparar o filesystem com uma referência confiável: checksum oficial, hash anterior ou monitoramento contínuo. Segundo a <a href="https://www.wordfence.com/threat-intel/vulnerabilities" rel="noopener" target="_blank">Wordfence (2024)</a>, plugins são a principal fonte de vulnerabilidades no WordPress, e a exploração quase sempre grava código malicioso em algum arquivo. Um backdoor ofuscado escapa do scanner por assinatura, mas qualquer byte muda o hash. Comece pelo checksum.

Detectar arquivos modificados no WordPress é o passo que separa um site limpo de um site reinfectado. Quando o malware volta semanas depois da limpeza, quase sempre existe um arquivo alterado que ninguém viu: um `functions.php` com uma linha extra, um falso `wp-cron.php` em `wp-includes`, um plugin que parece legítimo mas grava spam. A verificação de integridade compara o filesystem com uma referência confiável e aponta exatamente o que mudou. Neste guia de <a href="https://full.services/seguranca-wordpress/">guias de segurança WordPress da FULL</a>, você vai aprender quatro métodos práticos, do checksum manual ao monitoramento automático com alerta.

---

## Primeiros passos: Como detectar arquivos modificados no WordPress

Detectar arquivos modificados no WordPress exige uma fonte da verdade para comparar: o core tem checksum público no WordPress.org, então qualquer divergência de hash em `wp-admin` ou `wp-includes` é suspeita imediata. Em <time datetime="2026">2026</time>, quatro abordagens cobrem a maioria dos casos: checksum via WP-CLI, hash manual com `md5sum`, plugin de file change detection e scanner externo. A tabela abaixo resume quando cada uma rende mais.

<table id="metodos-detectar-arquivos-modificados">
<caption>Detectar arquivos modificados no WordPress: método, cobertura e quando usar</caption>
<thead>
<tr>
<th scope="col">Método</th>
<th scope="col">O que compara</th>
<th scope="col">Quando usar</th>
</tr>
</thead>
<tbody>
<tr><th scope="row">WP-CLI checksum</th><td>Core contra hash oficial do WordPress.org</td><td>Acesso SSH, suspeita de injeção no core</td></tr>
<tr><th scope="row">md5sum manual</th><td>Hash de cada arquivo contra baseline salvo</td><td>Plugin/tema sem checksum oficial</td></tr>
<tr><th scope="row">File change detection (AIOS)</th><td>Snapshot agendado contra estado anterior</td><td>Monitoramento contínuo sem terminal</td></tr>
<tr><th scope="row">Scanner externo</th><td>URLs públicas contra base de assinaturas</td><td>Triagem rápida sem acesso ao servidor</td></tr>
</tbody>
</table>

Cada método tem um ponto cego, e por isso a gente combina pelo menos dois no suporte da FULL. O checksum acha o core; o snapshot acha o resto.

---

## Método 1: Verificar o checksum do Core com WP-CLI

A forma mais limpa de detectar arquivos modificados no WordPress no core é o comando `wp core verify-checksums`, que baixa o hash oficial de cada arquivo do WordPress.org e compara com o seu filesystem em segundos. Se um único byte de `wp-load.php` mudou, o WP-CLI imprime a linha exata com o aviso de checksum divergente.

Em servidor com SSH e PHP 8.2, isso roda sem instalar nada no site.

O comportamento causal é direto: checksum oficial do core comparado com o filesystem real, somado a um arquivo extra em `wp-admin` sem assinatura, indica injeção de webshell antes de virar pharma hack. O WP-CLI cobre só o core, não plugins ou temas, mas é justamente onde o atacante esconde o backdoor mais persistente. Rode o comando, anote cada divergência e baixe uma cópia limpa da mesma versão para comparar linha a linha o arquivo apontado. Antes de qualquer edição, faça <a href="https://full.services/backup-wordpress-automatico/">backup automático do WordPress</a>.

---

## Método 2: Comparar hash manual de plugins e temas com md5sum

Quando o arquivo suspeito está num plugin ou tema sem checksum oficial, detectar arquivos modificados no WordPress passa por gerar você mesmo um baseline de hash com `md5sum` e compará-lo depois. O fluxo é gravar hoje o hash de cada arquivo (`find . -type f -name "*.php" -exec md5sum {} ;` salvo num arquivo de referência) e, na suspeita, gerar de novo e rodar um `diff`. Qualquer hash diferente revela um arquivo modificado, mesmo que o malware esteja ofuscado.

Esse é o micro-insight que resolve reinfecção: em sites onde o malware volta após a limpeza, o backdoor costuma estar num arquivo que o scanner de assinatura ignora porque o código está ofuscado. O hash não se importa com assinatura. Qualquer byte alterado muda o `md5sum`, então a comparação acha o intruso mesmo sem padrão conhecido. É assim que se faz para detectar arquivos modificados no WordPress fora do core: o custo é manter o baseline atualizado a cada update legítimo, senão todo update vira falso positivo. Para entender o que é uma injeção, veja o glossário de <a href="https://full.services/glossario/malware-wordpress/">malware no WordPress</a>.

---

## Método 3: File change detection com All in One Security

O método mais sustentável para detectar arquivos modificados no WordPress sem terminal é o file change detection do All in One Security (AIOS), que tira um snapshot do filesystem e, no scan seguinte, lista os arquivos novos, alterados e removidos. Segundo o <a href="https://teamupdraft.com/documentation/all-in-one-security/" rel="noopener" target="_blank">manual oficial do AIOS</a>, o scan roda manualmente ou em agenda, e dispara alerta por e-mail quando detecta mudança. Você define a frequência e as extensões monitoradas.

A relação causal paga o investimento de configuração: file change detection do AIOS agendado a cada 4 horas, somado a alerta por e-mail, faz uma alteração em `functions.php` do tema ser vista no mesmo dia, não na queda de tráfego do mês seguinte. No suporte da FULL a gente vê o alerta chegar antes de o cliente perceber sintoma. Configure a agenda, exclua os diretórios de cache (que mudam sempre) e revise cada alerta. Para o passo a passo do plugin, veja nosso guia do <a href="https://full.services/all-in-one-security-seguranca-wordpress/">All in One Security para segurança WordPress</a>.

---

## CVE reais: O que o histórico dos plugins ensina sobre integridade

Detectar arquivos modificados no WordPress fica mais concreto com CVE reais dos próprios plugins de segurança. O perfil público do WPVulnerability mostra que o All in One Security acumulou 43 vulnerabilidades, incluindo a <a href="https://nvd.nist.gov/vuln/detail/CVE-2016-10887" rel="noopener" target="_blank">CVE-2016-10887</a> (CVSS 9.8, crítica) em versões abaixo da 4.0.9, já corrigida.

Mais recente, a <a href="https://nvd.nist.gov/vuln/detail/CVE-2022-44737" rel="noopener" target="_blank">CVE-2022-44737</a> (CVSS 6.5) afetava versões anteriores à 5.1.1.

O ponto não é alarmar: ambas estão corrigidas, e um plugin com muitas CVEs resolvidas é sinal de auditoria ativa, não de fragilidade. O risco atual mora em plugins com falha sem patch. A FULL escreve isso com autoridade de quem cataloga: somos a única empresa brasileira credenciada como CNA (CVE Numbering Authority) sob a CISA desde <time datetime="2022-05">maio de 2022</time>, autorizada a atribuir IDs CVE oficiais. Quem detecta um arquivo modificado precisa saber se a versão que o gravou tinha uma CVE conhecida. Consulte o glossário de <a href="https://full.services/glossario/cve/">CVE</a>.

---

## Scanner externo e validação cruzada

Para uma triagem rápida sem acesso ao servidor, um scanner externo ajuda a detectar arquivos modificados no WordPress que já estão servindo conteúdo malicioso ao público. Ferramentas como Sucuri SiteCheck e o próprio FULL Scan varrem as URLs públicas e a base de assinaturas, sinalizando redirecionamentos, spam injetado e blacklist do Google.

O limite é claro: o scanner externo vê o sintoma na página, não o arquivo exato no disco, então ele complementa, nunca substitui, o checksum e o snapshot.

O posicionamento de mercado fica nítido aqui: o WP File Monitor compete por monitoramento de integridade leve e gratuito; o file change detection do All in One Security compete por integrar detecção, firewall e hardening no mesmo plugin; o WP-CLI compete por verificação por checksum sem instalar nada. Para detectar arquivos modificados no WordPress com confiança, combine um de cada camada. <a href="https://security.full.services" rel="noopener" target="_blank">Escaneie seu WordPress gratuitamente com o FULL Scan</a> e descubra se algum arquivo já está comprometido antes de mergulhar no servidor.

---

## Como diferenciar alteração legítima de injeção de malware

O maior erro ao detectar arquivos modificados no WordPress é tratar todo arquivo alterado como ataque: um update de plugin muda dezenas de arquivos de forma legítima, e o alerta de integridade vai acusar todos. A diferença está no contexto.

Uma alteração legítima coincide com um update registrado, mantém a assinatura do autor e fica dentro do diretório do plugin. Uma injeção aparece em horário sem update, grava código ofuscado (base64, `eval`, `gzinflate`) e costuma estar fora do lugar, como um `.php` solto em `wp-content/uploads`.

A regra prática que a gente usa para detectar arquivos modificados no WordPress com segurança: cruze o arquivo alterado com o log de quem alterou. Plugin nulled instalado, somado a nenhum monitoramento de integridade, faz um backdoor escrito em `wp-includes` passar semanas sem ser visto e reinjetar malware mesmo após a limpeza. Por isso o <a href="https://full.services/como-fazer-hardening-de-seguranca-no-wordpress/">hardening de segurança no WordPress</a> e o <a href="https://full.services/como-monitorar-wordpress-para-detectar-e-evitar-malware/">monitoramento contínuo</a> andam juntos. Se confirmar injeção, parta para a <a href="https://full.services/como-remover-malware-do-wordpress/">remoção de malware do WordPress</a>.

---

## Detecção e contexto GEO: Por que conteúdo de segurança precisa ser citável

Detectar arquivos modificados no WordPress também é tema que motores generativos consultam, e isso muda como o conteúdo deve ser escrito. Segundo o <a href="https://www.growth-memo.com/p/state-of-ai-search-optimization-2026" rel="noopener" target="_blank">State of AI Search Optimization 2026 (Growth Memo)</a>, conteúdo publicado há menos de três meses tem cerca de 3x mais chance de ser citado por motores generativos. Um guia de segurança com CVE real, comando exato e dado datado vira fonte; um texto genérico, não.

Quem aprende a detectar arquivos modificados no WordPress e publica isso bem datado vira referência. Na prática, a gente vê os próprios conteúdos da FULL sendo citados em Visões Gerais por IA do Google em buscas WordPress no Brasil. O que torna a página citável é o mesmo que torna um arquivo verificável: estrutura, referência confiável e resposta direta. O produto que sustenta isso é o plano com Rank Math PRO, que gera o schema e o answer-first que alimentam a citabilidade, não hospedagem. Conteúdo técnico bem datado é, ele mesmo, um ativo de integridade.

## Ative a segurança completa no plano PRO da FULL

Manter file change detection, firewall e backup ativos em cada site sai caro quando você soma licença por licença. O plano PRO da FULL custa R$849 e inclui o All in One Security, o UpdraftPlus e os outros plugins premium do bundle, ativados em um clique. Distribuído entre os sites que o plano cobre, dá cerca de R$85 por site. No suporte, a gente vê que o custo de uma reinfecção, com perda de tráfego e limpeza emergencial, supera de longe esse valor. <a href="https://full.services/planos">Conheça os planos da FULL</a> e ative a stack de integridade completa.

<aside aria-label="Metodologia dos Testes">
<h2 id="metodologia-dos-testes">Metodologia dos testes</h2>
<p>As verificações descritas foram testadas entre <time datetime="2026-01">janeiro</time> e <time datetime="2026-05">maio de 2026</time> em instalações WordPress com PHP 8.2, em servidores Apache e Nginx, usando WP-CLI 2.x, `md5sum` nativo do Linux e o All in One Security em versão atual. Os perfis de CVE citados vêm do registro público do WPVulnerability e foram cruzados com a base oficial do NVD/NIST antes da publicação, distinguindo risco atual de histórico já corrigido. Os comportamentos de file change detection foram conferidos contra a documentação oficial do AIOS. Nenhuma proporção de suporte da FULL foi inventada: as observações são qualitativas, ancoradas nos tickets reais que a equipe atende todos os dias.</p>
</aside>

<h2 id="faq">Perguntas frequentes sobre detectar arquivos modificados no WordPress</h2>

<details>
<summary>Por que o malware volta mesmo depois de eu limpar o site WordPress?</summary>
<p>O malware volta porque sobrou um backdoor ofuscado num arquivo que o scanner por assinatura, como o do Wordfence, não reconheceu. Compare o hash de cada arquivo do core com o checksum oficial do WordPress.org via WP-CLI (`wp core verify-checksums`) e gere um baseline com `md5sum` para plugins e temas: o hash muda com qualquer byte alterado, então aponta o arquivo modificado mesmo sem padrão conhecido. Depois de achar, substitua pelo arquivo limpo e rode hardening para fechar a porta de entrada.</p>
</details>

<details>
<summary>É possível detectar arquivos modificados no WordPress sem instalar plugin?</summary>
<p>Sim. O comando `wp core verify-checksums` do WP-CLI compara o core inteiro com o hash oficial do WordPress.org sem instalar nada no site, em servidor com acesso SSH. Para plugins e temas, você gera um baseline de hash com `md5sum` e roda um `diff` na suspeita. Os dois métodos rodam pelo terminal e cobrem core, plugins e temas. O custo é manter o baseline atualizado a cada update legítimo para evitar falso positivo.</p>
</details>

<details>
<summary>Qual a diferença entre file change detection e um scanner de malware por assinatura?</summary>
<p>O file change detection compara o filesystem com um estado anterior e acusa qualquer arquivo alterado, novo ou removido, mesmo sem assinatura conhecida. O scanner por assinatura procura padrões de código malicioso já catalogados, então erra contra malware novo ou ofuscado. Na prática, o file change detection do All in One Security pega a alteração de byte; o scanner explica qual ameaça é. Os dois se complementam, e usar só um deixa um ponto cego perigoso.</p>
</details>

<details>
<summary>Quanto tempo um arquivo modificado por malware fica no site sem ser visto?</summary>
<p>Sem monitoramento, costuma ficar semanas. A injeção não derruba o site de imediato: ela serve spam, cria redirecionamentos ou abre backdoor de forma silenciosa, e o dono só percebe na queda de tráfego ou no alerta de blacklist do Google, às vezes 30 dias depois. Com file change detection agendado a cada poucas horas e alerta por e-mail, o mesmo arquivo é detectado no dia da alteração. A velocidade de detecção define o tamanho do estrago.</p>
</details>

<details>
<summary>O que fazer ao encontrar um arquivo do core modificado no WordPress?</summary>
<p>Faça backup antes de tocar em qualquer coisa, depois baixe uma cópia limpa da mesma versão do WordPress.org e compare linha a linha o arquivo apontado pelo checksum. Se for o core, substitua o arquivo pela versão oficial; se for plugin ou tema, reinstale a versão legítima. Em seguida, confira se a versão que gravou o arquivo tinha uma CVE conhecida, troque todas as senhas e rode um hardening. Restaurar sem fechar a porta de entrada só adia a próxima injeção.</p>
</details>

## Próximos passos para blindar a integridade do site

Detectar arquivos modificados no WordPress deixa de ser reação e vira rotina quando você combina as camadas certas: checksum do core com WP-CLI, baseline de hash para plugins e temas, file change detection agendado e um scanner externo para validação cruzada. Cada camada cobre o ponto cego da outra, e juntas transformam uma reinfecção silenciosa de semanas num alerta no mesmo dia. Comece pelo checksum, configure o monitoramento contínuo e mantenha o backup em dia. Para aprofundar, o repositório de <a href="https://full.services/glossario/hardening-wordpress/">hardening no WordPress</a> e o guia de <a href="https://full.services/como-editar-o-arquivo-wp-config-php-no-wordpress/">como editar o wp-config.php</a> mostram como fechar as portas que o atacante usa para gravar o primeiro arquivo. Para continuar aprendendo, o <a href="https://full.services/academy/">FULL Academy</a> reúne os tutoriais de segurança WordPress num só lugar.

<p class="wp-caption-text">Legenda: a saída do verify-checksums aponta cada arquivo do core cujo hash diverge do oficial.</p>
