MDT Seguridad
Seguridad WordPress

Cómo escanear WordPress en busca de malware

El malware en WordPress casi nunca se ve: el sitio carga bien, a usted no le redirige a ningún lado y el panel funciona. Mientras tanto, el sitio puede estar mostrando spam a Google, redirigiendo a los visitantes que llegan desde el celular o alojando una página de phishing. Le explicamos cómo detectar malware en WordPress en tres niveles (desde afuera, con un plugin y revisando el servidor) y qué hacer si encuentra algo.

¿Prefiere que lo revisemos nosotros? Diagnóstico gratis, sin claves.




    Señales de que su WordPress puede tener malware

    Antes de escanear, conviene saber qué buscar. Estas son las señales más comunes de malware en WordPress:

    • Redirecciones que usted no ve

      El sitio lleva a casinos, farmacias o sorteos falsos solo desde el celular o desde un resultado de Google.

    • Resultados raros en Google

      Al buscar site:sudominio.com aparecen páginas en japonés, de pastillas o de productos que usted no vende.

    • Avisos de Google o del navegador

      «Sitio engañoso», «Este sitio puede estar hackeado» o un correo de Search Console sobre problemas de seguridad.

      Quitar el aviso de «Sitio engañoso»
    • Usuarios administradores que nadie creó

      Es una de las primeras cosas que deja un atacante para volver a entrar.

    • Correos que rebotan o caen en spam

      El servidor está mandando spam desde su dominio.

    • El hosting le avisa o suspende la cuenta

      Los hostings escanean y suspenden cuentas con archivos maliciosos.

    Nivel 1: escanear desde afuera (sin instalar nada)

    Estas herramientas ven el sitio como lo ve un visitante o un buscador. No necesitan acceso y sirven como primer chequeo:

    • Sucuri SiteCheck

      Escáner online gratuito: revisa el código que el sitio muestra, redirecciones, listas negras y versiones desactualizadas visibles.

    • Estado del sitio en Google Safe Browsing

      El informe de transparencia de Google le dice si su dominio está marcado como peligroso.

    • VirusTotal

      Analiza la dirección del sitio con decenas de motores antivirus y listas negras a la vez.

    • Google Search Console

      La sección «Problemas de seguridad» muestra si Google detectó malware, phishing o spam en su sitio, con ejemplos de las URL afectadas.

    Su límite: solo ven lo que el sitio muestra. Una puerta trasera escondida en un archivo que no se carga en ninguna página no aparece en un escaneo externo. Nuestro diagnóstico gratis también trabaja desde afuera, pero lo revisa una persona.

    Diagnóstico gratis

    ¿Quiere saber qué tiene abierto su sitio?

    Lo revisamos desde afuera, sin claves y sin instalar nada. Si no encontramos nada relevante, se lo decimos igual.

    Revisar mi sitio gratis

    Nivel 2: escanear con un plugin

    Un plugin de seguridad con escáner revisa los archivos desde adentro del servidor:

    • Wordfence

      Compara los archivos del núcleo, temas y plugins con las versiones originales del repositorio de WordPress y busca firmas de malware conocidas. En la versión gratuita, las firmas nuevas llegan con 30 días de demora.

    • MalCare

      Escanea desde sus propios servidores, sin cargar el hosting, y detecta bien el código ofuscado.

    • Jetpack Protect

      Escanea vulnerabilidades conocidas en plugins y temas, y malware en sus planes pagos.

    Su límite: si el atacante tiene acceso al sitio, puede esconderse del plugin o desactivarlo. Y un plugin no le dice por dónde entraron.

    Nivel 3: revisar el servidor a mano

    Si tiene acceso por SSH y WP-CLI (la consola de WordPress), puede hacer una revisión mucho más profunda. Son comandos de solo lectura: no modifican nada.

    1. 01

      Verificar los archivos del núcleo

      wp core verify-checksums compara cada archivo de WordPress con la versión oficial y lista los que fueron modificados o agregados.

    2. 02

      Verificar los plugins

      wp plugin verify-checksums --all hace lo mismo con los plugins del repositorio oficial. Los plugins pagos no se pueden verificar así: hay que compararlos con una copia descargada del proveedor.

    3. 03

      Buscar archivos PHP donde no deberían estar

      La carpeta wp-content/uploads es para imágenes y documentos. Un archivo .php ahí es casi siempre una puerta trasera: find wp-content/uploads -name "*.php".

    4. 04

      Buscar archivos modificados hace poco

      find . -name "*.php" -mtime -7 lista los archivos PHP cambiados en la última semana. Si nadie actualizó nada, cualquier resultado merece una mirada.

    5. 05

      Revisar usuarios y tareas programadas

      wp user list --role=administrator muestra los administradores, y wp cron event list las tareas programadas. Una tarea con un nombre raro puede estar reinstalando el malware cada hora.

    6. 06

      Revisar la base de datos

      Busque código insertado en las entradas y en las opciones: etiquetas <script> que usted no puso, o una dirección del sitio (siteurl y home) que no es la suya.

    Cómo se ve el código malicioso en WordPress

    Si revisa los archivos a mano, estos son los patrones más frecuentes. Ninguno es malicioso por sí solo en todos los casos, pero juntos o en lugares raros son una alarma:

    • Código ofuscado

      Funciones como eval, base64_decode, gzinflate o str_rot13 encadenadas, con un texto largo e ilegible. El código legítimo rara vez necesita esconderse así.

    • Archivos con nombres que imitan a WordPress

      wp-tmp.php, wp-feed.php, class-wp-cache.php en carpetas donde no corresponden.

    • Reglas extrañas en .htaccess

      Redirecciones que dependen del navegador o de si el visitante viene de Google. Es la técnica clásica para que el dueño no vea la redirección.

    • Scripts inyectados en la base de datos

      Etiquetas <script> al final de entradas o en opciones del tema, cargando código desde dominios desconocidos.

    • Plugins que no instaló

      Carpetas en wp-content/plugins con nombres genéricos que no aparecen en el panel, porque están ocultas.

    • Usuarios administradores con correos raros

      O creados en fechas en las que nadie trabajó en el sitio.

    Falsos positivos: cuándo el escáner exagera

    Los escáneres también se equivocan. Algunos casos comunes:

    • Plugins que usan código comprimido

      Legítimamente: los de caché, optimización o licencias suelen disparar alertas.

    • Archivos de copia de seguridad o de migración

      Que contienen código «sospechoso» porque son copias del sitio.

    • Herramientas de administración

      Que el hosting instala en la cuenta.

    Ante la duda, compare el archivo con la versión original del plugin descargada del sitio oficial. Si son idénticos, no es malware. Si no puede comprobarlo, mejor pedir una segunda opinión: borrar un archivo legítimo puede romper el sitio, y dejar uno malicioso, reinfectarlo.

    Qué hacer si encuentra malware

    • No borre archivos a ciegas

      Primero haga una copia completa del estado actual: es la evidencia para saber qué pasó, y su red de seguridad si algo sale mal.

      Copias de seguridad en WordPress
    • Cambie todas las claves

      Panel de WordPress, hosting, FTP, base de datos y correo.

    • Busque la vía de entrada

      Un plugin desactualizado, un tema pirata o una clave filtrada. Si limpia sin cerrarla, vuelve.

      Plugins nulled
    • Limpie todo, no solo lo que marcó el escáner

      Puertas traseras, usuarios falsos, tareas programadas y contenido inyectado en la base de datos.

    • Pida la revisión a Google

      Cuando el sitio esté limpio, para que saque los avisos.

    Si no tiene tiempo o acceso para hacerlo, la limpieza de sitio hackeado incluye todo esto, con garantía de 30 días.

    Cada cuánto escanear

    Qué Frecuencia
    Escaneo externo (SiteCheck, Search Console) Mensual, y siempre que algo parezca raro
    Escaneo con plugin Semanal, en un horario de poco tráfico
    Revisión manual con WP-CLI Trimestral, o ante cualquier sospecha
    Revisión de vulnerabilidades de plugins y temas Continua (alertas) o mensual

    Para una revisión periódica de fallas conocidas, sin escaneos de malware, existe el análisis de vulnerabilidades. Y para ver todas las capas juntas: guía de seguridad en WordPress.

    Preguntas

    Preguntas frecuentes

    ¿Cuál es el mejor escáner de malware para WordPress?

    No hay uno que lo encuentre todo. Lo más efectivo es combinar un escaneo externo, un plugin con escáner y, si hay sospechas, una revisión manual del servidor.

    ¿Un escáner online puede detectar todo el malware?

    No. Solo ve lo que el sitio muestra a los visitantes. Las puertas traseras que no se cargan en ninguna página no aparecen.

    El escáner dice que está todo limpio, pero mi sitio redirige. ¿Qué pasa?

    Muchas infecciones muestran el contenido malicioso solo a ciertos visitantes (desde el celular, desde Google o la primera vez) y se esconden del administrador y de los escáneres.

    ¿El plugin de seguridad borra el malware?

    Algunos sí borran o reparan archivos, pero rara vez encuentran todo: puertas traseras, usuarios falsos, tareas programadas y código en la base de datos.

    ¿Cómo evito que vuelva?

    Cerrando la vía por la que entraron, actualizando todo y manteniendo el sitio vigilado. → Seguridad WordPress mensual

    ¿Le parece que su sitio tiene algo raro?

    Déjenos la dirección. Lo revisamos desde afuera, sin claves, y le decimos qué encontramos.