Respuesta breve: el malware vuelve cuando una limpieza quitó el síntoma pero dejó el mecanismo de persistencia o la vía de entrada. También puede llegar de nuevo desde otra web infectada en la misma cuenta de hosting.
Los cinco supervivientes habituales — y cómo comprobar cada uno
- Una puerta trasera en un sitio distinto del archivo detectado. Ejecuta
grep -RIlE 'eval\s*\(|base64_decode\s*\(|gzinflate\s*\(|str_rot13\s*\(|assert\s*\(|create_function\s*\(' wp-content/por toda la instalación, uploads incluidos. - Una credencial válida aún en manos del atacante. Rota contraseñas de WordPress, base de datos, SFTP y hosting e invalida sesiones.
- Un componente vulnerable nunca actualizado. Compara las versiones instaladas con vulnerabilidades conocidas y actualiza o sustituye.
- Una tarea de cron que reescribe archivos. Inspecciona
wp cron event listpor hooks desconocidos. - Contaminación cruzada desde otra instalación de la cuenta. Escanea todas las webs del mismo usuario de hosting.
Distingue caché de reinfección real
Una página cacheada puede seguir sirviendo una respuesta maliciosa antigua sin infección nueva. Antes de concluir que volvió, registra hashes y fechas de modificación: archivos nuevos o modificados recientemente indican reinfección real; archivos idénticos tras una caché obsoleta indican un problema de caché. Vacía todas las capas de caché y vuelve a comprobar.
Qué incluye una limpieza completa
Comparación con fuentes limpias de núcleo/plugin/tema, revisión de archivos no estándar en directorios con escritura, auditoría de base de datos (opciones, entradas, usuarios, cron), revisión de la configuración del servidor, rotación de credenciales y comprobaciones en webs vecinas. La pregunta más útil no es “¿está limpio?” sino “¿cuál fue la vía de entrada, qué persistencia se eliminó y qué se vigilará?”.
Vigila después
Controla la integridad de archivos, las cuentas de usuario y los resultados de búsqueda al menos unas semanas. La reinfección suele volver de forma discreta, y cuanto antes se detecte más pequeña será la segunda limpieza.
CRITERIO DE INCIDENTE WP REPAIR
Cómo acotar el fallo sin adivinar
La reinfección significa que sobrevivió la persistencia, sigue abierta la entrada, quedan credenciales expuestas o una web vecina reintroduce la carga.
Compara hashes y fechas de archivos entre estado limpio y retorno.
Audita cron, mu-plugins, directorios escribibles, usuarios y opciones por persistencia.
Rota credenciales WordPress, base, SFTP, hosting y API e invalida sesiones.
Escanea todas las webs y tareas del mismo usuario de hosting.
Qué debe quedar verificado
- La integridad permanece estable tras vaciar cachés y ejecutar ciclos cron.
- No reaparecen usuarios, tareas ni PHP desconocido en directorios escribibles.
- El componente vulnerable se parchea, sustituye o elimina.
Fuentes técnicas oficiales
Continúa el diagnóstico
Esta guía explica el diagnóstico. Si la web está afectada ahora, la intervención debe preservar una vía de vuelta y verificar el recorrido real del negocio.
Ver el servicio de reparación urgente →SOBRE ESTE SÍNTOMA
Preguntas frecuentes de esta guía.
¿Cómo puedo saber si el malware realmente volvió frente a una caché que muestra la vieja página infectada?+
Compare los hashes de archivo y los tiempos de modificación con su registro de limpieza. Los archivos nuevos o modificados recientemente significan reinfección real; los archivos idénticos e inalterados detrás de una caché rancio significan un problema de caché, no un ataque nuevo. Purgue cada capa de caché, incluyendo el CDN, antes de concluir cualquier cosa.
¿Puede malware volver incluso si mi sitio fue limpiado correctamente?+
Sí, a través de la contaminación cruzada de otro sitio infectado compartiendo la misma cuenta hosting. Escanear sólo el sitio que mostró síntomas no es suficiente si un hermano instalar en el mismo servidor todavía está comprometido y reinfectar sus archivos o base de datos.
Ya cambié mi contraseña WordPress, ¿por qué eso no detiene la reinfección?+
Una rotación de contraseña sólo ayuda si el inicio de sesión WordPress era el punto de entrada. Los atacantes suelen mantener el acceso a través de la credencial de la base de datos, SFTP o hosting contraseña, un plugin todavía vulnerable, o una tarea cron que reescriba archivos en el horario. Todos los que necesitan comprobar y rotar, no sólo la contraseña de administración WordPress.
¿Cuál es el signo más confiable de que una limpieza fue completa en realidad en lugar de sólo cosmética?+
Una limpieza completa puede responder a tres preguntas específicas: cuál era el vector de entrada, qué mecanismo de persistencia se eliminó, y lo que ahora se está monitoreando. Si una limpieza sólo confirma el sitio 'parece limpio' sin responder a ellos, tratarlo como inacabado.