Cómo saber si tu WordPress está hackeado
En resumen
Las señales más claras de un WordPress hackeado son redirecciones que solo ven otros (en el móvil o viniendo de Google), avisos de Google o Chrome, páginas de spam indexadas con tu dominio, administradores que nadie creó y archivos PHP donde no toca. El dueño casi nunca las ve porque mucho malware se esconde de quien ha iniciado sesión. Si encuentras alguna, haz una copia antes de borrar nada; la limpieza con WebIntacta cuesta 219 €.
Un WordPress hackeado casi nunca se nota a simple vista. Los atacantes no quieren romperte la web: quieren usarla para mandar visitas a otra parte, colar enlaces de spam o robar datos, y para eso necesitan que siga funcionando. Estas son las diez señales que más veo, ordenadas de la más visible a la más escondida.
Por Jose SorianoPublicada: Última actualización: 5 min de lectura
Esta guía es específica de WordPress. Si tu web usa otro gestor (PrestaShop, Joomla, una tienda a medida), empieza por cómo saber si tu web está hackeada, que vale para cualquier CMS.
Por qué tú no lo ves
Buena parte del malware de WordPress está programado para esconderse del administrador: no se activa si has iniciado sesión, solo salta en móvil, solo con visitas que llegan desde Google o solo la primera vez que alguien entra. Así puede pasar semanas sin que nadie lo note. Por eso «a mí me funciona bien» no descarta nada.
Las 10 señales
1. Tus visitas acaban en otra web
Apuestas, farmacia, premios, falsas alertas de virus o notificaciones push. Si un cliente te lo comenta y tú no lo ves, pruébalo desde el móvil con datos (no con tu wifi), entrando desde un resultado de Google. Lo explico a fondo en la guía sobre redirecciones.
2. Google o Chrome avisan
«Este sitio puede haber sido pirateado» bajo tu resultado de Google, o la pantalla roja de Chrome con «Sitio engañoso». Es la señal más clara, y tiene su propia guía para quitar el aviso.
3. Páginas en Google que no son tuyas
Busca en Google site:tudominio.com y revisa los resultados. Si aparecen páginas en japonés, de productos que no vendes o con títulos de casino, alguien ha creado contenido en tu web para posicionar el suyo. Es el llamado «spam de palabras clave japonesas» y es muy común.
4. Administradores que nadie ha creado
En Usuarios → Todos los usuarios, filtra por «Administrador». Cualquier cuenta que no reconozcas es una mala señal, sobre todo si tiene un nombre genérico (admin2, wpadmin, support) o un email de un dominio desconocido. Ojo: algunos ataques ocultan su usuario del listado, así que que no aparezca no lo descarta.
5. Plugins que no instalaste
Revisa Plugins y busca nombres que no te suenen. Mira también la carpeta wp-content/mu-plugins/ desde el gestor de archivos del hosting: los «must-use plugins» se cargan siempre y no aparecen en el listado normal, por eso los atacantes los usan.
6. Archivos .php donde no toca
La carpeta wp-content/uploads/ es para imágenes y documentos. Un archivo .php ahí dentro (o en subcarpetas por año y mes) es casi siempre una puerta trasera. Busca también archivos con nombres aleatorios en la raíz, junto a wp-config.php.
7. Cambios en .htaccess o en wp-config.php
Abre el .htaccess de la raíz. Un WordPress normal tiene un bloque corto entre # BEGIN WordPress y # END WordPress. Reglas con RewriteCond %{HTTP_REFERER} o %{HTTP_USER_AGENT} que mandan a un dominio externo son una redirección maliciosa. En wp-config.php, cualquier línea con eval, base64_decode o una URL extraña al principio del archivo es sospechosa.
8. El hosting te avisa o te suspende
Envío masivo de correo, uso de CPU disparado o un aviso de «malware detectado». Los hostings escanean sus servidores y a veces son los primeros en darse cuenta. No lo ignores aunque la web parezca normal.
9. Tus correos llegan a spam o rebotan
Si tu web se usa para enviar spam, tu dominio o la IP del servidor acaban en listas negras, y tus correos legítimos dejan de llegar. El análisis gratuito comprueba las listas negras y la configuración del correo del dominio (SPF, DKIM y DMARC).
10. Archivos del núcleo que no coinciden con los originales
Es la señal más fiable y la menos visible. Cada versión de WordPress publica las sumas de comprobación de sus archivos; si alguno de wp-admin o wp-includes no coincide, alguien lo ha modificado. Con acceso SSH y WP-CLI se comprueba así:
wp core verify-checksums
wp plugin verify-checksums --allSin SSH, el conector de solo lectura hace la misma comparación desde el panel de WordPress, sin darme FTP; es lo que uso en la auditoría de seguridad WordPress.
Qué hacer si encuentras alguna
- No borres archivos a ciegas. Lo infectado indica por dónde entraron. Si borras solo lo visible, la puerta sigue abierta y vuelve.
- Haz una copia completa (archivos y base de datos) tal como está, aunque esté infectada. Sirve de prueba y para volver atrás.
- Cambia las contraseñas del hosting, del FTP, de la base de datos y de los administradores, desde un ordenador limpio.
- Actualiza todo lo que puedas: núcleo, plugins y tema. La mayoría de las infecciones entra por un plugin desactualizado; cómo encontrar los que tienen fallos aunque el panel no avise, en plugins de WordPress vulnerables.
- Busca la entrada antes de dar el caso por cerrado. Si no sabes cuál fue, la limpieza es un parche.
El orden completo, de la primera hora a la revisión de Google, está en cómo recuperar una web hackeada. Y si estás eligiendo un plugin de seguridad, en qué plugin de seguridad elegir explico qué hace cada uno y qué no hace ninguno.
Si prefieres que lo haga yo
La limpieza de un WordPress hackeado cuesta 219 € (IVA no incluido), con 90 días de garantía y un informe de lo que había y de lo que se ha hecho. Los detalles, en limpieza de malware en WordPress.
Fuentes
- WordPress: FAQ «My site was hacked» (señales de compromiso como avisos de Google, suspensión del hosting o usuarios nuevos, y el
.htaccesscomo uno de los archivos que más se modifican). - WP-CLI: wp core verify-checksums y wp plugin verify-checksums (comparan los archivos del núcleo y de los plugins con las sumas de comprobación de WordPress.org).
- WordPress: must-use plugins (se activan automáticamente y no aparecen en el listado normal de plugins).
- WordPress: el .htaccess básico (el bloque entre
# BEGIN WordPressy# END WordPress). - web.dev: solucionar el spam de palabras clave japonesas (páginas de spam creadas en tu dominio).
Preguntas frecuentes
¿Un plugin de seguridad detecta todo esto?
Detecta bien las firmas conocidas y algunos cambios de archivos, pero no revisa a fondo la base de datos ni te dice por dónde entraron. Es una ayuda, no un diagnóstico.
¿Puede estar hackeado si Google no avisa?
Sí. Google avisa cuando detecta malware o spam en lo que rastrea; muchas infecciones (puertas traseras, envío de spam por correo, robo de datos) no dan ninguna señal en los resultados.
¿Cada cuánto debería revisarlo?
Las actualizaciones, cada semana. Una revisión completa de archivos y usuarios, al menos una vez al año o tras cualquier cambio importante.