Saltar al contenido
🔐 ¿Tu wordpress fue hackeado? Plan de recuperación paso a paso

🔐 ¿Tu wordpress fue hackeado? Plan de recuperación paso a paso

El sitio dejó de abrir, el navegador grita que hay un virus y Google eliminó las páginas de los resultados de búsqueda. Primer pensamiento: pánico. Segundo: «¿qué hago ahora mismo?».

Cada día se hackean miles de sitios WordPress. Los hackers no quieren su sitio en concreto; los bots escanean internet en busca de vulnerabilidades conocidas y atacan todo lo que encuentran. Un plugin desactualizado, una contraseña débil o un agujero en el tema, y el sitio ya está sirviendo código malicioso a los visitantes.

A continuación, un plan de recuperación paso a paso: desde la primera reacción hasta la limpieza completa y la protección contra reinfecciones. Todas las herramientas son gratuitas y las instrucciones están probadas en combate.

💡 Resumen rápido:

  • Haga una copia de seguridad y saque el sitio de línea
  • Analice su computadora con un antivirus y un escáner de arranque
  • Cambie todas las contraseñas: WordPress, FTP, base de datos, panel de hosting
  • Configure SFTP en lugar de FTP para transferir datos cifrados
  • Restaure WordPress desde una copia de seguridad limpia o vuelva a subir el núcleo manualmente
  • Analice el sitio con el plugin Wordfence
  • Revise los archivos manualmente por SFTP en busca de base64 y eval
  • Vuelva a subir wp-admin, wp-includes y los archivos raíz
  • Revise el tema en busca de código extraño y configure un firewall y 2FA

Por qué se hackean los sitios WordPress

persona con camisa negra de manga larga usando macbook pro

Los hackers y los script kiddies no eligen objetivos manualmente. Los escáneres automatizados funcionan las 24 horas buscando sitios con vulnerabilidades sin parchear: un plugin desactualizado, un tema sin actualizaciones, una versión de WordPress con un agujero conocido.

En cuanto encuentran uno, suben una shell, inyectan código malicioso en index.php o header.php y usan el sitio como plataforma para spam, phishing o para servir troyanos a los visitantes. Google detecta la infección en cuestión de horas y expulsa el sitio de las búsquedas.

Puede comprobar si un sitio está hackeado usando Sucuri SiteCheck, un escáner gratuito en línea que muestra malware, listas negras y redirecciones sospechosas. Funciona al instante y no requiere acceso de administrador.

Primeras acciones: copia de seguridad, análisis del PC y cambio de contraseñas

1. Copia de seguridad y puesta fuera de línea del sitio

Primero, descargue el estado actual del sitio mediante el gestor de archivos del hosting o FTP. Sí, el sitio está infectado, pero la copia de seguridad será útil para el análisis y como seguro en caso de que algo salga mal durante la limpieza. Al mismo tiempo, ponga el sitio en modo mantenimiento o ciérrelo temporalmente mediante.htaccess para que los visitantes no reciban malware mientras usted trabaja.

2. Análisis de su computadora

El origen de la filtración de contraseñas podría ser su propio PC. Un troyano que intercepta contraseñas FTP es un clásico.

  • Analice su computadora con un antivirus (Avast, AVG o el Windows Defender integrado).
  • Descargue c't Notfall Windows y analice el sistema desde una unidad USB de arranque; un escáner de arranque ve lo que un sistema operativo en ejecución oculta.
  • Si tiene conocimientos técnicos, instale Sandboxie y ejecute su navegador en un entorno aislado hasta que el sistema esté completamente limpio.

3. Cambio de todas las contraseñas

candado rojo sobre teclado de computadora negro

Si no sabe qué contraseñas se vieron comprometidas, cámbielas todas:

  • Contraseñas de todos los usuarios de WordPress.
  • Credenciales FTP.
  • Contraseñas de la base de datos MySQL.
  • La contraseña maestra del panel de hosting.

Genere contraseñas largas y aleatorias y guárdelas en un gestor de contraseñas. Hasta que no se cambien las contraseñas, el atacante conserva el acceso y cualquier limpieza es inútil.

Limpieza del sitio: análisis y restauración de archivos

4. Configuración de SFTP

El FTP normal transmite las contraseñas en texto plano. Active el acceso SFTP o SSH; los ajustes están en su panel de hosting. No guarde las contraseñas en el cliente FTP: si el PC sigue infectado, un troyano extraerá las credenciales guardadas.

5. Restauración de WordPress desde una copia de seguridad

Si tiene una copia de seguridad limpia anterior al hackeo, restaure el sitio a ese punto. Esto es más rápido que la limpieza manual. ¿Perdió algo de contenido entre la copia de seguridad y el ataque? Exporte las entradas necesarias de la base de datos infectada por separado. La mayoría de los ataques modifican archivos, no la base de datos, así que puede restaurar solo la parte de archivos.

6. Análisis con Wordfence

Wordfence es un plugin gratuito con firewall y escáner de malware. Instálelo y ejecute un análisis completo: compara los archivos del núcleo, plugins y temas con los originales del repositorio y muestra las líneas modificadas.

Wordfence encuentra: código base64 inyectado, construcciones eval, iframes ocultos y archivos PHP sospechosos. Marque los falsos positivos para que no vuelvan a aparecer en el siguiente análisis.

7. Revisión manual por SFTP

Un escáner no lo ve todo. Conéctese por SFTP y revise las carpetas con sus propios ojos:

  • index.php en la raíz, header.php y functions.php en el tema: objetivos de ataque favoritos.
  • Busque cadenas que contengan base64 y eval, construcciones como gzinflate y str_rot13; esto es ofuscación de código malicioso.
  • Preste atención a archivos con nombres inusuales y fechas de modificación en mitad de la noche.

8. Subida de nuevo del núcleo y los plugins

Descargue un WordPress nuevo de wordpress.org y vuelva a subir las carpetas wp-admin y wp-includes, así como todos los archivos raíz excepto wp-config.php y.htaccess (revise esos por separado). Reinstale todos los plugins y temas desde cero desde fuentes oficiales. No restaure los plugins desde la copia de seguridad; use versiones limpias.

Actualice todo a las últimas versiones. Un plugin que no se ha actualizado en un año es un futuro agujero, incluso si ahora mismo está limpio.

9. Revisión del tema en busca de código malicioso

Después de volver a subir el núcleo, es el turno del tema. Revise functions.php y header.php en busca de código extraño. Verifique las fechas de modificación de los archivos; la actividad fuera del horario laboral es sospechosa. Wordfence encontrará la mayoría de los problemas, pero una revisión manual no está de más.

Si tiene la más mínima duda, reinstale el tema desde cero desde la fuente oficial.

Pasos finales y contacto con el hosting

10. Medidas de seguridad tras la limpieza

Restablezca las Claves de Seguridad de WordPress (Salt) en wp-config.php; genere unas nuevas mediante el generador oficial. Esto finaliza forzosamente todas las sesiones activas, incluida la del atacante.

Configure la autenticación de dos factores para todos los usuarios administradores. Wordfence soporta 2FA de serie; actívela en los ajustes del plugin.

11. Contacte con su proveedor de hosting

Notifique a su proveedor de hosting sobre el hackeo. Un buen proveedor le ayudará con el análisis de registros, señalará el vector de ataque y sugerirá medidas de protección adicionales a nivel de servidor. Algunos proveedores ofrecen asistencia gratuita para la limpieza; pregunte.

12. Revise otros sitios en el hosting

¿Tiene varios sitios en el mismo espacio web? Revíselos todos. La infección salta entre sitios si el hosting no los aísla entre sí. Ejecute el mismo procedimiento en los sitios vecinos. Un hosting correctamente configurado usa open_basedir para el aislamiento; confírmelo con su proveedor.

Herramientas de protección: Wordfence y Sucuri

Para una protección autogestionada, basta con una combinación: Wordfence (firewall gratuito + escáner) y copias de seguridad regulares. Wordfence detecta ataques de fuerza bruta, analiza archivos y bloquea tráfico sospechoso a nivel de sitio.

Si el sitio es crítico para el negocio, considere Sucuri. Es un firewall en la nube que filtra los ataques antes de que lleguen al servidor. Sucuri también incluye monitorización, eliminación de malware y protección DDoS. Los planes comienzan en $199 al año. En la práctica, esto se justifica para proyectos comerciales: una hora de inactividad de la tienda cuesta más que una suscripción anual.

Un tutorial en inglés sobre el ciclo de recuperación completo, con una demostración en tiempo real de cada paso:

Cómo prevenir la reinfección

Un sitio que ha sido hackeado una vez es un objetivo para ataques repetidos. Los hackers dejan puertas traseras, y si no cierra todos los agujeros, la infección volverá en una semana.

  • Actualizaciones automáticas: WordPress 6.7+ puede actualizar plugins y temas automáticamente. Actívelo en los ajustes.
  • Mínimo de plugins: Cada plugin adicional es un punto de entrada potencial. Elimine todo lo que no use.
  • 2FA: Autenticación de dos factores para todas las cuentas de administrador. Wordfence, Solid Security o Google Authenticator.
  • Copias de seguridad: Copias de seguridad automáticas diarias con al menos 30 días de retención. UpdraftPlus (gratuito) o Jetpack Backup.
  • Monitorización: Wordfence envía un correo electrónico cuando detecta archivos modificados. No los ignore.
  • Hosting:** Elija un proveedor con aislamiento de cuentas, un WAF a nivel de servidor y soporte para versiones actuales de PHP.

⁉️🤔 Preguntas frecuentes

¿Puedo restaurar un sitio sin una copia de seguridad?

Sí, pero es más difícil. Vuelva a subir un WordPress nuevo, reinstale plugins y temas de fuentes oficiales y exporte el contenido de la base de datos. Revise los archivos multimedia uno por uno; la carpeta uploads puede contener archivos PHP maliciosos disfrazados de imágenes.

¿Es suficiente la versión gratuita de Wordfence para la limpieza?

Para el análisis y la detección, sí. La versión gratuita compara archivos con los originales, encuentra malware y bloquea ataques de fuerza bruta. Los planes de pago añaden actualizaciones de firmas en tiempo real, lo cual es excesivo para una limpieza puntual.

¿Qué hago si el proveedor de hosting ha bloqueado el sitio?

Contacte con el soporte, explique la situación y solicite acceso temporal para la limpieza. Los proveedores suelen cooperar. Después de la limpieza, solicite un nuevo análisis; el sitio será desbloqueado.

¿Cuánto tiempo lleva limpiar un sitio hackeado?

Un caso típico: de 2 a 4 horas para el ciclo completo (copia de seguridad, análisis del PC, cambio de contraseñas, análisis, subida de archivos, configuración de protección). Los casos graves con múltiples puertas traseras pueden llevar hasta un día laborable. Si el sitio está en un hosting con autoinstalador de WordPress, volver a subir el núcleo lleva 10 minutos.

¿Necesito pagar por Sucuri o es suficiente con Wordfence?

Para un blog personal o un sitio pequeño, Wordfence cubre la mayoría de las amenazas típicas de forma gratuita. Sucuri tiene sentido para tiendas en línea, sitios que aceptan pagos y proyectos donde una hora de inactividad cuesta dinero. El firewall en la nube reduce la carga del servidor y detiene los ataques antes de que lleguen.

Qué hacer ahora mismo: la lista de verificación final

Recuperar un sitio WordPress hackeado se reduce a tres etapas: detener la infección, limpiar el código, cerrar los agujeros. Una copia de seguridad es su seguro. Wordfence es la herramienta principal de limpieza. El cambio de contraseñas y el 2FA son la protección contra el reingreso.

  • Si el sitio aún funciona y tiene acceso de administrador, empiece con Wordfence. Ejecute un análisis y actúe según los resultados.
  • Si el panel de administración no funciona, conéctese por SFTP, haga una copia de seguridad de los archivos y la base de datos, y vuelva a subir un núcleo de WordPress limpio.
  • Si el sitio está bloqueado por el proveedor de hosting, contacte primero con el soporte. El bloqueo no se puede levantar sin su intervención.

No lo demore. Cada hora que un sitio infectado pierde posiciones en los buscadores y los visitantes reciben código malicioso. Empiece con una comprobación gratuita en Sucuri; 30 segundos y la magnitud del problema queda clara.

¿Qué herramienta le ayudó después de un hackeo: Wordfence, Sucuri o la limpieza manual? Cuéntenos en los comentarios.