Reparar WordPress después de un hackeo
Aprende a reparar WordPress después de un hackeo con pasos claros para contener, limpiar y reforzar tu web sin agravar el problema.
Cuando una web sufre una intrusión, reparar WordPress después de un hackeo exige actuar con método. No se trata solo de borrar archivos infectados, sino de contener el acceso, verificar el alcance, limpiar o restaurar con criterio y reforzar la web para evitar reinfecciones. Ese orden importa: intervenir deprisa pero sin análisis puede dejar puertas abiertas, perder evidencias útiles o devolver a producción una copia ya contaminada.
En la práctica, la recuperación puede variar según el tipo de proyecto. Una web corporativa pequeña suele permitir una parada breve y una revisión más simple; una tienda WooCommerce, una membresía o una web con formularios y correos críticos requieren más cuidado por el impacto en pedidos, cuentas de usuario, pagos, correo transaccional e incluso posicionamiento orgánico.
La buena noticia es que hay un proceso técnico razonable para reducir daños, recuperar el sitio comprometido y volver a publicar con más garantías. A continuación tienes el orden recomendado, qué revisar y qué errores conviene evitar.
Qué implica reparar WordPress después de un hackeo
Reparar una instalación comprometida suele combinar respuesta a incidentes, análisis de integridad, limpieza técnica, restauración segura si procede y endurecimiento posterior. No hay una única receta porque depende del acceso disponible, del nivel de compromiso y de si existe una copia íntegra y limpia.
En WordPress, una intrusión no siempre se limita a un archivo sospechoso dentro de wp-content. También puede afectar a:
- Usuarios administradores ocultos o cuentas con privilegios elevados creadas sin autorización.
- Cambios maliciosos en .htaccess, wp-config.php o archivos core.
- Backdoors incrustados en temas, plugins o uploads para facilitar la reinfección.
- Tareas cron manipuladas para reinstalar malware o lanzar correo no deseado.
- Registros en base de datos con JavaScript inyectado, redirecciones o páginas spam.
- Credenciales comprometidas en hosting, FTP, panel, correo o base de datos.
Por eso, una simple sustitución visual del contenido o un cambio de contraseña rara vez basta. El objetivo real es cerrar el vector de entrada y verificar que no quedan persistencias.
Cómo confirmar si tu WordPress ha sido comprometido
Antes de tocar nada conviene confirmar síntomas y recoger indicios. Algunas señales son evidentes y otras pasan desapercibidas durante días o semanas. Estas son las más habituales:
- Redirecciones extrañas a dominios ajenos, sobre todo en móvil o desde tráfico orgánico.
- Avisos del hosting por malware, consumo inusual de recursos o envío masivo de correo.
- Caída repentina del rendimiento, errores 500, páginas que cargan código extraño o modificaciones no explicadas.
- Resultados de búsqueda con páginas spam indexadas que no existen en la navegación normal.
- Alertas del navegador, antivirus o sistemas de reputación que marcan la web como insegura.
- Problemas al iniciar sesión o aparición de usuarios administradores desconocidos.
Para confirmar el alcance, suele ser útil revisar la fecha de modificación de archivos, comparar el core de WordPress con una versión oficial limpia, inspeccionar plugins y temas fuera de repositorio y revisar tablas de base de datos en busca de inyecciones, opciones alteradas o contenido ofuscado.
Si la web es una tienda o una membresía, habrá que comprobar además si se ha afectado el acceso de clientes, el funcionamiento de pedidos, los correos transaccionales y cualquier integración con pasarelas, CRM o automatizaciones.
Qué hacer en las primeras horas para contener el incidente
Las primeras decisiones suelen marcar la diferencia entre una recuperación ordenada y una reinfección. Si necesitas una referencia rápida, este es el orden prioritario recomendado:
- Activa contención temporal. Si el riesgo es visible, conviene poner la web en mantenimiento o restringir acceso para evitar más daño, robo de sesiones o propagación.
- Haz una copia forense básica. Guarda archivos y base de datos tal como están antes de limpiar. Puede ayudar a investigar el origen y recuperar información válida.
- Cambia credenciales críticas. Prioriza hosting, panel, SFTP/SSH, base de datos, usuarios administradores y cuentas de correo relacionadas.
- Revisa accesos y usuarios. Elimina o bloquea cuentas sospechosas, tokens activos y accesos API no reconocidos.
- Confirma el alcance técnico. Comprueba archivos modificados, cron jobs, plugins, temas, uploads, base de datos y reglas de servidor.
- Decide si limpiar o restaurar. La elección depende de la calidad de la copia disponible y del nivel de manipulación detectado.
Un error frecuente es empezar borrando archivos a ciegas o actualizar todo sin más. Eso puede romper evidencias, ocultar la vía de entrada o mezclar archivos limpios con persistencias maliciosas. Tampoco conviene confiar solo en un escáner automático: puede ser útil como apoyo, pero no sustituye una revisión técnica completa ni una auditoría de seguridad WordPress y refuerzo.
Si el hosting ha suspendido la cuenta o detecta actividad maliciosa, lo razonable es coordinarse con su soporte para entender qué han visto en logs, qué archivos han marcado y si hay restricciones activas que afecten a la recuperación.
Cómo limpiar malware en WordPress sin dejar puertas abiertas
La limpieza malware WordPress debe hacerse con enfoque de integridad, no solo de apariencia. Que la portada vuelva a verse bien no significa que el sitio esté desinfectado. En muchos casos, la infección persiste en backdoors discretos, tareas programadas, snippets ofuscados o registros concretos de la base de datos.
1. Sustituir el core por archivos limpios
Siempre que sea viable, conviene reemplazar los archivos core de WordPress por una versión oficial equivalente o actualizada de forma controlada, manteniendo revisión manual de wp-config.php y otros ficheros personalizados. Esto reduce el riesgo de mantener código manipulado en rutas críticas.
2. Auditar temas y plugins
Los plugins y temas fuera de origen fiable merecen revisión especial. Los plugins nulled o descargados de sitios no oficiales son una causa recurrente de compromiso. Lo prudente suele ser eliminar lo innecesario, reinstalar desde fuentes legítimas y comparar cualquier personalización antes de volver a activarla.
3. Revisar uploads y archivos ejecutables
La carpeta de subidas puede alojar shells, scripts camuflados o archivos con extensiones inesperadas. Un sitio comprometido puede incluir PHP en uploads, nombres que imitan miniaturas de imagen o archivos comprimidos colocados para reactivar la intrusión.
4. Revisar base de datos y opciones persistentes
Desinfectar WordPress también implica buscar inyecciones en entradas, widgets, opciones de inicio, URLs alteradas, administradores ocultos y payloads ofuscados en tablas. La base de datos suele ser clave cuando aparecen páginas spam indexadas, redirecciones selectivas o scripts que solo ven algunos usuarios.
5. Revisar cron, reglas y persistencia
Conviene comprobar wp-cron, tareas del sistema si existen, reglas en .htaccess, cambios en permisos y cualquier archivo que permita relanzar el malware. Muchas reinfecciones ocurren porque se limpia lo visible pero no la persistencia.
Si tras la limpieza sigue habiendo comportamiento irregular, no des por hecho que el problema está resuelto. A veces la infección afecta al servidor, a otra instalación dentro de la misma cuenta o a credenciales que vuelven a dar acceso al atacante.
Cuándo conviene restaurar una copia y cuándo no basta
Restaurar una copia puede ser una vía eficaz para recuperar web WordPress, pero solo si la copia es íntegra y anterior al compromiso real. El problema es que muchas intrusiones pasan desapercibidas durante tiempo; por eso una copia aparentemente buena puede estar ya contaminada.
| Opción | Cuándo encaja | Ventajas | Riesgos |
|---|---|---|---|
| Limpieza manual | Cuando hay personalizaciones, datos recientes o no existe copia fiable | Permite preservar cambios y entender el alcance | Requiere experiencia y puede dejar persistencia si se hace a medias |
| Restaurar copia | Cuando existe backup limpio, verificable y anterior a la intrusión | Reduce tiempos de recuperación | Puede reintroducir malware o perder pedidos, formularios o contenido reciente |
| Soporte especializado | Cuando hay negocio en producción, datos sensibles o dudas sobre el alcance | Aporta criterio técnico, priorización y validación posterior | Supone coste y depende de accesos disponibles |
En una tienda WooCommerce, restaurar sin revisar la ventana temporal puede implicar pérdida de pedidos, estados de pago o cuentas de cliente. En una web de captación, puede perderse información de formularios, leads o correos no sincronizados. Por eso, restaurar no debería ser una decisión automática.
Lo prudente es validar la copia en un entorno aislado, revisar integridad y solo entonces decidir si vuelve a producción, idealmente junto con cambio de credenciales y medidas de endurecimiento.
Cómo reforzar la seguridad WordPress después de la limpieza
Una vez recuperado el sitio, empieza una fase igual de importante: evitar la recaída. La seguridad WordPress posterior no consiste en instalar muchos plugins, sino en reducir superficie de ataque y mejorar visibilidad sobre lo que ocurre.
- Actualizar WordPress, plugins, temas y componentes de servidor compatibles.
- Eliminar extensiones y temas inactivos que no sean necesarios.
- Rotar todas las credenciales relevantes y revisar permisos mínimos por usuario.
- Activar autenticación multifactor cuando el entorno lo permita.
- Verificar que no existan usuarios administradores ocultos ni claves antiguas activas.
- Revisar permisos de archivos, configuración PHP y acceso a áreas sensibles.
- Comprobar indexación SEO, sitemap, metaetiquetas extrañas y páginas spam residuales.
- Confirmar reputación del dominio si ha habido listas negras o alertas del navegador.
- Probar formularios, correo transaccional, carrito, checkout y automatizaciones.
- Establecer copias verificadas y un plan de mantenimiento WordPress.
Si buscas una referencia oficial, la documentación de WordPress sobre endurecimiento y prácticas de seguridad suele ser un buen punto de apoyo, junto con recomendaciones generales de organismos como INCIBE para la gestión prudente de incidentes.
Además, conviene implementar monitorización básica: cambios en archivos, avisos de disponibilidad, registros de acceso y alertas sobre errores críticos. Sin visibilidad, la detección vuelve a depender de que alguien note síntomas cuando el daño ya está hecho.
Cuándo pedir soporte WordPress especializado
Hay situaciones en las que intentar resolverlo solo puede salir más caro que pedir ayuda técnica desde el principio. Suele ser recomendable contar con soporte WordPress especializado cuando:
- No puedes determinar la vía de entrada ni el alcance de la intrusión.
- La web genera negocio directo y cada hora de caída tiene impacto económico.
- Hay integraciones críticas, pedidos, suscripciones o datos operativos recientes.
- El hosting ha detectado malware recurrente o comportamiento lateral en la cuenta.
- Se sospecha compromiso de servidor, correo o varias instalaciones simultáneas.
- Tras limpiar, reaparecen archivos, redirecciones o usuarios no autorizados.
Un buen servicio WordPress en este contexto no debería limitarse a “pasar un escáner”. Lo razonable es que combine revisión de accesos, integridad de archivos, base de datos, persistencias, validación de la restauración y recomendaciones de endurecimiento adaptadas al caso.
Si eres responsable de una pyme, la pregunta práctica no es solo cuánto cuesta limpiar, sino cuánto puede costar seguir operando con una infección parcial, una indexación dañada o un sistema de correos que ha perdido reputación.
Preguntas frecuentes
¿Basta con cambiar todas las contraseñas?
No necesariamente. Es una medida importante, pero si ya existen backdoors, usuarios ocultos o archivos alterados, el acceso no autorizado puede mantenerse.
¿Puedo volver a publicar la web en cuanto desaparezca la redirección?
Conviene ser prudente. Una redirección resuelta no garantiza que se haya limpiado la causa completa ni que la base de datos, el cron o los correos estén intactos.
¿Un backup antiguo siempre es la mejor solución?
Solo si es verificable y suficientemente anterior al compromiso. Si no, puede devolver la infección o provocar pérdida relevante de datos recientes.
Prioridades finales y siguiente paso razonable
Si tu sitio ha sufrido una intrusión, la prioridad es contener, conservar evidencia útil, revisar accesos, decidir con criterio entre limpieza o restauración y verificar que no quedan puertas abiertas. Después toca reforzar el entorno, revisar SEO, correo y funcionamiento del negocio para reducir el riesgo de recaída.
Reparar WordPress después de un hackeo puede ser un proceso relativamente acotado o una intervención más profunda, según el alcance real y la calidad de las copias disponibles. Lo importante es no simplificar el problema ni dar por buena una solución solo porque la web vuelve a abrir.
Si tienes dudas sobre el alcance, no localizas el origen o necesitas volver a producción con más seguridad, el siguiente paso razonable suele ser una auditoría técnica, una limpieza profesional validada y una revisión seria de copias y mantenimiento.
Fuentes oficiales consultadas
Documentación oficial de WordPress sobre seguridad y endurecimiento, utilizada como referencia general de buenas prácticas.
¿Necesitas orientación personalizada?
Te ayudamos a entender tus opciones y el siguiente paso.