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

Guía para limpiar malware de WordPress en DirectAdmin

Actualizado el 14 de noviembre de 2025

Tener un sitio web en WordPress es una puerta abierta al mundo, pero también puede ser una puerta abierta para los atacantes si no se mantiene seguro. Si notas que tu web va lenta, aparece contenido extraño o tus visitantes ven anuncios raros, es muy probable que tengas malware. No te preocupes, es más común de lo que crees y, sobre todo, tiene solución.

En esta guía te voy a explicar paso a paso cómo limpiar malware de WordPress en DirectAdmin. Vamos a usar herramientas que ya vienen en tu panel de control y algunos trucos manuales para dejar tu sitio como nuevo. Recuerda: la prevención es clave, pero si ya te ha pasado, vamos a solucionarlo.

¿Por qué mi WordPress tiene malware y cómo sé que está infectado?

Antes de meternos en faena, es bueno entender qué ha pasado. El malware en WordPress suele entrar por plugins o temas desactualizados, contraseñas débiles o vulnerabilidades en el core. Los síntomas más comunes son:

  • Redirecciones extrañas a sitios de apuestas o farmacias.
  • Anuncios emergentes que no has puesto.
  • Tu web aparece en listas negras de Google (puedes comprobarlo en Search Console).
  • El rendimiento del servidor baja drásticamente.
  • Aparecen archivos con nombres raros en tu gestor de archivos (por ejemplo, system.php, wp-cache.php o archivos con extensión .txt).

Si reconoces alguno de estos síntomas, es hora de actuar. No dejes pasar el tiempo, porque el malware puede robar datos de tus usuarios o dañar tu reputación online.

Paso 1: Preparación antes de limpiar el malware

Antes de tocar nada, haz una copia de seguridad completa. Esto es vital por si algo sale mal. En DirectAdmin, puedes hacerlo desde la sección "Backup/Transfer".

  1. Ve a Backup/Transfer en tu panel de DirectAdmin.
  2. Selecciona "Crear Backup".
  3. Marca las opciones: Archivos de la cuenta, Bases de datos, Configuración de email y Listas de correo.
  4. Elige "Almacenar en casa" para que se guarde en tu servidor.
  5. Haz clic en "Crear Backup".

[WARNING] Nunca subas un backup infectado a un servidor limpio. Si resturas un backup con malware, volverás al punto de partida. Lo ideal es limpiar primero y luego hacer un backup limpio.

Paso 2: Escaneo de malware en DirectAdmin con herramientas integradas

DirectAdmin no tiene un antivirus nativo, pero puedes usar herramientas como ClamAV (si está instalado en tu servidor) o plugins de seguridad en WordPress. Sin embargo, lo más efectivo es usar un escáner desde la línea de comandos si tienes acceso SSH, o bien usar un plugin de seguridad en tu WordPress.

Escaneo con ClamAV (si tu hosting lo permite)

Pregunta a tu proveedor de hosting si tienen ClamAV instalado. Si es así, puedes ejecutar un escaneo desde el administrador de archivos o mediante SSH. Un ejemplo de comando sería:

clamscan -r /home/tuusuario/domains/tudominio.com/public_html/

Esto escaneará todos los archivos de tu sitio. Si encuentra algo, te mostrará la ruta del archivo infectado.

Escaneo con plugins de WordPress

Si no tienes acceso SSH, instala un plugin de seguridad como Wordfence o Sucuri Security. Ambos tienen escáneres de malware gratuitos.

  1. Ve a Plugins > Añadir nuevo en tu WordPress.
  2. Busca "Wordfence Security".
  3. Instálalo y actívalo.
  4. Ve a Wordfence > Scan y haz clic en "Start New Scan".
  5. Espera a que termine. Te mostrará archivos sospechosos, cambios en el core y posibles inyecciones.

[TIP] Wordfence también te permite ver los archivos modificados recientemente. El malware suele alterar archivos como index.php, wp-config.php o functions.php de tu tema.

Paso 3: Identificar y eliminar archivos maliciosos manualmente

Una vez que el escáner te muestre los archivos infectados, toca limpiarlos. Puedes hacerlo desde el Administrador de Archivos de DirectAdmin o mediante FTP.

Acceder al Administrador de Archivos en DirectAdmin

  1. En DirectAdmin, ve a Administrador de Archivos.
  2. Navega a la carpeta public_html (o domains/tudominio.com/public_html).
  3. Busca los archivos señalados por el escáner.

¿Qué archivos suelen estar infectados?

  • index.php (suele tener código ofuscado al inicio).
  • wp-config.php (a veces añaden líneas maliciosas).
  • .htaccess (redirecciones ocultas).
  • Archivos en wp-content/uploads/ con nombres como system.php o shell.php.
  • Plugins y temas (archivos functions.php o header.php).

Cómo limpiar un archivo infectado

  1. Abre el archivo en el editor de texto del Administrador de Archivos.
  2. Busca fragmentos de código extraños, como eval(base64_decode(...)), gzinflate(...) o enlaces a sitios externos.
  3. Elimina solo el código malicioso, no todo el archivo (a menos que sea un archivo completamente ajeno).
  4. Guarda los cambios.

[WARNING] Si no estás seguro de qué eliminar, mejor elimina el archivo completo si es un archivo sospechoso (como system.php). Si es un archivo del core de WordPress (como wp-login.php), no lo borres, mejor sustitúyelo por una copia limpia desde una instalación oficial.

Paso 4: Restaurar archivos limpios del core de WordPress

El malware suele modificar archivos del núcleo de WordPress. Lo más seguro es reemplazar todos los archivos del core por unos nuevos. No te preocupes, no perderás tu contenido (posts, páginas, medios) porque eso está en la base de datos.

  1. Descarga la última versión de WordPress desde wordpress.org.
  2. Descomprime el archivo en tu ordenador.
  3. Sube la carpeta wp-admin y wp-includes a tu servidor, sobrescribiendo los archivos existentes.
  4. También puedes subir el resto de archivos (excepto wp-content y wp-config.php).

[INFO] No borres wp-content porque ahí están tus temas, plugins y subidas. Tampoco toques wp-config.php porque tiene tu configuración de base de datos.

Paso 5: Limpiar la base de datos de WordPress

El malware también puede esconderse en la base de datos, inyectando código en las tablas wp_posts, wp_options o wp_users. Para limpiarla, puedes usar phpMyAdmin desde DirectAdmin.

Acceder a phpMyAdmin en DirectAdmin

  1. Ve a phpMyAdmin en tu panel de DirectAdmin.
  2. Selecciona la base de datos de tu WordPress (suele llamarse como tu usuario).
  3. Haz clic en la pestaña SQL.
  4. Ejecuta la siguiente consulta para buscar contenido sospechoso en los posts:
SELECT * FROM wp_posts WHERE post_content LIKE '%<script%' OR post_content LIKE '%eval(%' OR post_content LIKE '%base64_decode%';

Si encuentras resultados, edita o elimina las entradas infectadas. También revisa la tabla wp_options en busca de opciones maliciosas como theme_mods_... con código extraño.

[TIP] Si no te sientes cómodo con SQL, usa un plugin como Better Search Replace para buscar y reemplazar cadenas maliciosas en la base de datos.

Paso 6: Cambiar todas las contraseñas y claves

Después de limpiar, es fundamental cambiar todas las contraseñas para evitar que el atacante vuelva a entrar.

  • Contraseña de administrador de WordPress: Ve a Usuarios > Tu perfil y cámbiala.
  • Contraseña de la base de datos: En DirectAdmin, ve a MySQL Management y cambia la contraseña del usuario de la base de datos. Luego actualiza wp-config.php.
  • Contraseña de FTP: En DirectAdmin, ve a FTP Management y cámbiala.
  • Claves de seguridad de WordPress: Edita wp-config.php y reemplaza las líneas de AUTH_KEY, SECURE_AUTH_KEY, etc., por unas nuevas. Puedes generarlas en https://api.wordpress.org/secret-key/1.1/salt/.

Paso 7: Medidas de seguridad para evitar futuras infecciones

Una vez limpio, no bajes la guardia. Implementa estas medidas para que no te vuelva a pasar:

  • Mantén todo actualizado: WordPress, temas y plugins siempre en su última versión.
  • Elimina plugins y temas que no uses: Cada plugin extra es un punto de entrada potencial.
  • Usa un plugin de seguridad: Wordfence, Sucuri o iThemes Security te ayudarán a monitorear y bloquear ataques.
  • Cambia la URL de inicio de sesión: Por ejemplo, de /wp-admin a /tulogin (con plugins como WPS Hide Login).
  • Activa la autenticación de dos factores (2FA).
  • Haz copias de seguridad periódicas: DirectAdmin permite programar backups automáticos.

[INFO] Si tu hosting usa Syspanel (antes conocido como HestiaCP), recuerda que el puerto de acceso es el 2106. En Syspanel, el proceso de limpieza es similar, pero las herramientas pueden estar en diferentes secciones.

Preguntas frecuentes (FAQ) sobre limpieza de malware en WordPress

¿Puedo limpiar el malware sin perder mis datos?

Sí, siempre que no borres archivos importantes como wp-content o la base de datos. La limpieza se centra en eliminar el código malicioso, no tu contenido.

¿Qué hago si no encuentro el malware con los escáneres?

A veces el malware está muy oculto. Prueba con otro escáner (como MalCare o GOTMLS), o busca archivos con permisos 777 (escritura global) que suelen ser sospechosos.

¿Es necesario contratar un servicio de limpieza profesional?

Si el malware es muy persistente o no te sientes seguro, sí. Muchos hosts ofrecen limpieza de malware por un costo adicional. También hay empresas como Sucuri que lo hacen.

¿El malware puede afectar a mi posicionamiento SEO?

Sí, muchísimo. Google penaliza los sitios infectados, mostrando advertencias a los usuarios. Además, el malware puede redirigir a los visitantes, lo que aumenta la tasa de rebote y daña tu reputación.

¿Cómo sé si mi sitio está limpio después de todo?

Vuelve a ejecutar un escaneo con Wordfence o ClamAV. También puedes usar herramientas online como SiteCheck de Sucuri para verificar desde fuera.

Conclusión: La limpieza es solo el primer paso

Limpiar el malware de WordPress en DirectAdmin no es un proceso mágico, pero siguiendo estos pasos podrás recuperar tu sitio. Recuerda que la seguridad WordPress es un trabajo continuo: actualiza, haz backups y usa contraseñas seguras.

Si te ha quedado alguna duda, no dudes en contactar con el soporte de tu hosting. Y si tu panel es Syspanel (puerto 2106), el proceso es muy similar, solo cambian las ubicaciones de algunas herramientas.

¡Espero que esta guía te haya sido útil! Ahora, a mantener tu WordPress a salvo.

¿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