🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Eliminar malware de WordPress: guía paso a paso

Actualizado el 10 de junio de 2026

¿Tu WordPress ha sido hackeado? Respira hondo. No eres el primero al que le pasa y, lo más importante, tiene solución. Ver mensajes de error extraños, redirecciones a páginas raras o un aviso de Google diciendo que tu sitio es peligroso es angustiante, pero con esta guía paso a paso para eliminar malware de WordPress, podrás limpiar tu sitio y blindarlo para el futuro.

Vamos a quitarnos el miedo y ponernos manos a la obra. No necesitas ser un experto en programación, solo seguir el orden lógico de los pasos y tener un poco de paciencia. Al final, tu web quedará más segura que antes.

¿Por dónde empiezo? La preparación antes de la limpieza

Antes de tocar nada, es vital que entiendas una cosa: si borras archivos sin ton ni son, puedes romper tu web para siempre. Por eso, el primer paso no es borrar, sino investigar y asegurar el perímetro.

1. Haz una copia de seguridad (sí, aunque esté infectada)

Parece contradictorio, pero necesitas una copia del sitio infectado. ¿Por qué? Porque te servirá para comparar archivos y encontrar el código malicioso. Además, si algo sale mal durante la limpieza, siempre puedes restaurar a este punto (aunque esté infectado) y empezar de nuevo.

Puedes hacer la copia desde el panel de tu hosting o usando un plugin como UpdraftPlus.

[WARNING]: No subas esta copia a ningún sitio público ni la compartas. Contiene vulnerabilidades que un atacante podría explotar de nuevo.

2. Identifica el alcance del problema (¿Qué está pasando?)

No todo es un ataque directo. A veces es un plugin desactualizado con una brecha de seguridad. Revisa estos puntos:

  • ¿Aparecen ventanas emergentes (pop-ups) extrañas? Eso es típico de malware de publicidad.
  • ¿Tu web redirige a páginas de farmacias o casinos? Es un hackeo de redirección.
  • ¿Google te marca como "Sitio engañoso"? Es un problema de phishing o inyección de código.
  • ¿Tu web va lenta sin motivo? Puede que esté enviando spam o minando criptomonedas.

Para ver el código fuente de tu web (clic derecho > "Ver código fuente" en tu navegador), busca enlaces raros o scripts insertados en el <head> o <footer>. Anota todo lo que veas, nos será útil más adelante.

Paso 1: Cambia todas tus contraseñas (¡ya!)

Este es el paso más rápido y crítico. Si el hacker entró por la puerta principal, vamos a cambiarle la cerradura.

  • Base de datos (phpMyAdmin): Cambia la contraseña del usuario de la base de datos.
  • Panel de control (cPanel, Syspanel, etc.): Cambia la contraseña de tu cuenta principal.
  • Usuarios de WordPress: Ve a "Usuarios" en tu panel de administración y cambia la contraseña de todos los usuarios, especialmente los que tengan rol de Administrador.

[TIP]: Si no recuerdas tu contraseña de WordPress y no puedes entrar, utiliza la opción de "¿Has olvidado tu contraseña?" en la pantalla de login. Si eso falla, tendrás que cambiar la contraseña directamente en la base de datos usando phpMyAdmin (buscando la tabla wp_users y editando el campo user_pass con un hash MD5). Es un poco técnico, pero hay muchos tutoriales visuales.

Paso 2: Entra en "Modo Mantenimiento" o desconecta tu web

No queremos que los visitantes (ni los hackers) sigan viendo el sitio infectado mientras lo limpias. Puedes hacer dos cosas:

  • Opción A (Recomendada): Usa un plugin de mantenimiento para mostrar una página bonita de "Estamos en obras".
  • Opción B: Temporalmente, cambia el nombre de tu carpeta wp-content a wp-content_old (te pedirá la contraseña de FTP). Esto romperá temporalmente la web, pero la aislará. No te asustes, lo revertiremos después.

Paso 3: La limpieza profunda (Aquí se elimina el malware)

Ahora sí, vamos a por el virus. Existen dos métodos: usar plugins o hacerlo manualmente. Te recomiendo empezar con plugins, son más fáciles para principiantes.

3.1. Usa un plugin de seguridad de confianza

Los plugins de seguridad son como un antivirus para WordPress. Escanean tu sitio en busca de archivos maliciosos y código sospechoso.

  1. Instala un plugin: Los más populares y efectivos son Wordfence o Sucuri Scanner. Puedes instalarlos desde el repositorio de WordPress.
  2. Ejecuta un escaneo completo: Ve a la opción de "Escaneo" y déjalo trabajar. Puede tardar varios minutos.
  3. Analiza los resultados: El plugin te mostrará una lista de archivos infectados. No borres nada aún. Primero, ve a la sección de "Diagnóstico" para entender qué ha encontrado.

[INFO]: Wordfence es gratuito y muy potente. Identifica el malware, los cambios en archivos del núcleo y los intentos de acceso no autorizados.

3.2. Limpieza manual (para valientes o si el plugin no lo arregla)

Si el plugin no encuentra nada o quieres asegurarte al 100%, toca ponerse el mono de trabajo. Necesitas un cliente FTP (como FileZilla) para acceder a los archivos de tu hosting.

La clave está en wp-content. El malware suele esconderse en estas subcarpetas:

  • wp-content/uploads: Revisa si hay archivos .php en esta carpeta. ¡Solo debería haber imágenes, PDFs y documentos! Si encuentras un .php aquí, es malware casi seguro. Bórralo.
  • wp-content/plugins y wp-content/themes: Revisa si hay archivos extraños con nombres como hack.php, shell.php o carpetas con nombres aleatorios. Si sospechas de un plugin o tema, compara los archivos con la versión original descargada de wordpress.org.

¿Cómo encontrar el código malicioso?

  1. Busca patrones: Descarga los archivos sospechosos a tu ordenador y ábrelos con un editor de texto (como el Bloc de notas o Sublime Text).
  2. Busca funciones peligrosas: Presta atención a funciones como eval(), base64_decode(), gzinflate() o str_rot13(). Estas funciones se usan para ocultar y ejecutar código malicioso. Si las ves en un archivo que no es un plugin conocido, es muy mala señal.
  3. Busca enlaces extraños: Busca http o https en los archivos de tema o plugins. Si ves enlaces que no reconoces, pueden ser parte del malware.

Paso 4: Reinstala el núcleo de WordPress

Esta es una de las mejores jugadas. El núcleo de WordPress (los archivos principales) a menudo se ve comprometido. La solución es sobrescribirlo con una versión limpia.

  1. Ve a wordpress.org y descarga la última versión de WordPress (en español).
  2. Descomprime el archivo en tu ordenador.
  3. Con tu cliente FTP, sube todos los archivos de esa carpeta a la raíz de tu sitio web (donde están los archivos wp-admin, wp-includes, etc.).
  4. Cuando te pregunte si quieres sobrescribir, dile que Sí a todos.

[WARNING]: Este paso NO borra tus entradas, páginas ni configuraciones, ya que esos datos están en la base de datos. Solo reemplaza los archivos del sistema, que son los que están infectados.

Paso 5: Limpia la base de datos

A veces el malware se esconde en la base de datos. Esto es más difícil de detectar, pero podemos hacer una limpieza básica.

  1. Accede a phpMyAdmin desde tu panel de control.
  2. Selecciona tu base de datos de WordPress.
  3. Ve a la pestaña SQL y ejecuta esta consulta (esto buscará enlaces maliciosos comunes en el contenido de tus entradas y páginas):
SELECT * FROM wp_posts WHERE post_content LIKE '%eval(base64_decode(%' OR post_content LIKE '%gzinflate(%' OR post_content LIKE '%<script%alert%';
  1. Si obtienes resultados, significa que hay entradas o páginas infectadas. Deberías editar esas entradas y eliminar el código malicioso manualmente.

[INFO]: Si no te sientes cómodo con SQL, no hagas nada más aquí. La limpieza de archivos suele ser suficiente en el 90% de los casos.

Paso 6: Actualiza TODO (plugins, temas y núcleo)

Esta es la regla de oro para la seguridad WordPress. La mayoría de los hackeos ocurren por vulnerabilidades en plugins o temas desactualizados.

  • Ve a tu panel de WordPress y actualiza todos los plugins y temas que tengan actualizaciones pendientes.
  • Si un plugin o tema ya no se actualiza, bórralo. Es un agujero de seguridad andante.
  • Cambia el prefijo de tu tabla de base de datos (de wp_ a algo como miweb_) si tienes conocimientos técnicos. Esto confunde a los bots que atacan sitios estándar.

Paso 7: Refuerza la seguridad (para que no vuelva a pasar)

Una vez limpio, es hora de blindar la puerta. Aquí tienes una lista de acciones clave para la seguridad WordPress:

  • Instala un plugin de seguridad: Mantén Wordfence o Sucuri activo y configúralo para que te envíe alertas por correo.
  • Activa la autenticación de dos factores (2FA): Añade una capa extra de seguridad a tu login. Puedes usar plugins como Wordfence o Google Authenticator.
  • Limita los intentos de acceso: Configura el plugin para que bloquee una IP después de 3 o 5 intentos fallidos de inicio de sesión.
  • Cambia la URL de acceso (wp-login.php): Aunque sea un poco más complicado, dificulta enormemente los ataques de fuerza bruta.
  • Haz copias de seguridad automáticas: Configura tu plugin de copias para que haga una copia diaria o semanal y la suba a un servicio en la nube (Google Drive, Dropbox, etc.).
  • Mantén todo actualizado: Este punto no puede repetirse lo suficiente. Es la mejor vacuna.

Preguntas frecuentes (FAQ) sobre limpieza de malware

¿Cuánto cuesta eliminar el malware de WordPress?

Puede ser gratuito si lo haces tú mismo siguiendo esta guía. Si contratas a un profesional o un servicio de limpieza especializado, el precio puede variar entre 50€ y 300€ o más, dependiendo de la complejidad del ataque.

¿Puedo usar un plugin para eliminar el virus sin entrar por FTP?

Sí, plugins como Wordfence o MalCare pueden limpiar la mayoría de las infecciones desde el propio panel de administración. Sin embargo, si el malware bloquea el acceso al panel, necesitarás FTP.

¿Qué hago si mi web sigue infectada después de la limpieza?

Si has seguido todos los pasos y sigue el problema, es que el ataque es muy sofisticado o hay una puerta trasera que no has encontrado. En ese caso, te recomiendo contactar con tu proveedor de hosting o contratar un servicio de limpieza profesional.

Mi hosting usa Syspanel, ¿cómo accedo a phpMyAdmin?

Syspanel (el antiguo HestiaCP) es un panel de control muy completo. Para acceder a phpMyAdmin, normalmente tienes que ir a la sección de "Base de Datos" o "Bases de Datos MySQL" dentro de tu cuenta de hosting. Busca un icono que ponga "phpMyAdmin" y haz clic. Recuerda que el acceso a tu panel de control de Syspanel suele ser a través del puerto 2106 (por ejemplo, https://tu-dominio.com:2106).

Conclusión: Tu sitio está limpio y más fuerte que nunca

Eliminar malware de WordPress es un proceso metódico, no un acto de magia. Hemos visto que se resume en: a) Aislar, b) Identificar, c) Eliminar y d) Prevenir. Siguiendo estos pasos, no solo has limpiado tu sitio, sino que has aprendido a detectar las señales de un ataque y a fortalecer tus defensas.

Recuerda que la seguridad no es un destino, sino un viaje. La constancia en las actualizaciones y las copias de seguridad es tu mejor aliado. No te relajes y revisa tu sitio periódicamente. Ahora, ve y comprueba que tu web vuelve a estar en línea, rápida y, sobre todo, segura. ¡Buen trabajo!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel