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

Cómo detectar y eliminar virus en WordPress desde cPanel

Actualizado el 29 de diciembre de 2025

Si tu web con WordPress se ha vuelto lenta, muestra redirecciones extrañas a sitios de apuestas o farmacias, o ves archivos sospechosos en tu administrador de archivos, es muy probable que tengas un virus WordPress. No entres en pánico. En esta guía aprenderás, paso a paso, cómo detectar y eliminar virus en WordPress desde cPanel, la herramienta de gestión de hosting más común. Incluso si no eres un experto en ciberseguridad, siguiendo estas instrucciones podrás limpiar malware WordPress y dejar tu sitio como nuevo.

[INFO] Antes de empezar, asegúrate de tener a mano tus credenciales de cPanel (usuario y contraseña). Si usas Syspanel, el acceso es por el puerto 2106 (ejemplo: tudominio.com:2106).

¿Por qué los virus atacan WordPress?

WordPress es el CMS más popular del mundo, y precisamente por eso es un objetivo constante. Los atacantes inyectan código malicioso para robar datos, redirigir tráfico, enviar spam o instalar puertas traseras. Los métodos más comunes son:

  • Plugins o temas desactualizados con vulnerabilidades conocidas.
  • Contraseñas débiles en el panel de administración, FTP o base de datos.
  • Archivos subidos por usuarios malintencionados (por ejemplo, a través de formularios sin protección).
  • Inyección SQL o cross-site scripting (XSS).
  • Ataques de fuerza bruta contra wp-login.php.

Detectar a tiempo un virus WordPress es clave para evitar daños mayores, como que Google marque tu sitio como peligroso o que pierdas todo tu contenido.

Herramientas que necesitas desde cPanel

cPanel te ofrece varias herramientas integradas que te permitirán escanear cPanel y limpiar el sitio sin instalar nada extra en tu ordenador. Las principales son:

  • Administrador de Archivos: Para explorar, buscar y eliminar archivos sospechosos.
  • phpMyAdmin: Para acceder a la base de datos y buscar código malicioso en tablas.
  • Acceso SSH (si tu hosting lo permite): Para comandos avanzados como grep.
  • Copia de seguridad (Backup): Imprescindible antes de tocar nada. Si algo sale mal, podrás restaurar.

[WARNING] NO realices ningún cambio sin hacer una copia de seguridad completa (archivos + base de datos). Si borras algo importante, podrías romper tu web. Ve al menú "Backup" de cPanel y descarga un backup completo.

Paso 1: Identificar los síntomas de un virus WordPress

Antes de entrar a escanear cPanel, observa estos signos comunes de infección:

  • Redirecciones automáticas a sitios externos (especialmente en móviles).
  • Aparición de banners, pop-ups o enlaces ocultos que no has puesto.
  • Tu web aparece en listas negras de Google (puedes comprobarlo en Search Console).
  • Archivos con nombres extraños como system.php, wp-ajax-update.php o archivos .ico con mucho peso.
  • El sitio carga muy lento o da errores 500 de forma intermitente.
  • No puedes acceder al panel de administración o aparece un usuario administrador que no reconoces.

Si tienes al menos dos de estos síntomas, es momento de actuar.

Paso 2: Escanear cPanel con herramientas manuales

2.1. Revisar archivos recientemente modificados

Entra a cPanel > Administrador de Archivos y navega hasta la carpeta raíz de tu WordPress (normalmente public_html o www). Haz clic en Configuración (arriba a la derecha) y activa Mostrar archivos ocultos (punto). Luego ordena por Fecha de modificación (columna "Last Modified").

Busca archivos modificados en las últimas 24-48 horas. Si ves algo como wp-load.php con fecha reciente, o archivos .php en carpetas de imágenes (wp-content/uploads), es sospechoso.

2.2. Buscar código malicioso con grep en SSH (avanzado)

Si tu hosting permite SSH, conéctate y ejecuta:

grep -r "base64_decode" /home/tuusuario/public_html/
grep -r "eval(" /home/tuusuario/public_html/
grep -r "preg_replace" /home/tuusuario/public_html/

Estos comandos buscan funciones que los hackers usan para ocultar código. Si encuentras resultados en archivos que no son plugins conocidos (como wp-content/themes/tema-activo/functions.php), anota la ruta.

[TIP] Si no tienes SSH, puedes usar la búsqueda del Administrador de Archivos: escribe base64_decode en el campo de búsqueda (arriba a la derecha) y explora los resultados.

2.3. Revisar el archivo .htaccess

El .htaccess es uno de los archivos más atacados. Desde el Administrador de Archivos, ábrelo con edición de texto. Busca líneas que redirijan a dominios extraños o que contengan RewriteRule con URLs sospechosas. Un `.htaccess limpio de WordPress básico tiene reglas como:

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Si ves código encriptado o redirecciones a sitios de terceros, elimínalas.

Paso 3: Limpiar malware WordPress desde la base de datos

Muchos virus se esconden en la base de datos, especialmente en las tablas wp_options, wp_posts y wp_postmeta.

3.1. Acceder a phpMyAdmin

Desde cPanel, haz clic en phpMyAdmin. Selecciona tu base de datos (la que usa WordPress). Haz clic en la pestaña SQL y ejecuta esta consulta para buscar scripts maliciosos:

SELECT * FROM wp_options WHERE option_name LIKE '%eval%' OR option_value LIKE '%base64_decode%';

Si encuentras resultados, anota el option_id y elimínalos con:

DELETE FROM wp_options WHERE option_id = X;

3.2. Revisar wp_posts en busca de iframes ocultos

Ejecuta:

SELECT ID, post_content FROM wp_posts WHERE post_content LIKE '%<iframe%' OR post_content LIKE '%<script%';

Si ves contenido que no has insertado (por ejemplo, un iframe a un sitio de apuestas), edita ese post o elimina el código malicioso.

[WARNING] Ten cuidado al modificar la base de datos. Si no estás seguro de lo que ves, mejor consulta con tu hosting o un profesional.

Paso 4: Eliminar archivos maliciosos manualmente

Una vez identificados los archivos sospechosos (por ejemplo, en wp-content/uploads o en la raíz), puedes eliminarlos desde el Administrador de Archivos:

  1. Selecciona el archivo.
  2. Haz clic en Eliminar.
  3. Confirma la acción.

No borres archivos del núcleo de WordPress (como wp-includes o wp-admin) a menos que estés 100% seguro de que están infectados. En ese caso, es mejor reinstalar WordPress.

Paso 5: Reinstalar WordPress desde cPanel

Una forma segura de limpiar malware WordPress es reinstalar el núcleo. En cPanel, busca la sección WordPress Manager o Softaculous. Si tu hosting lo tiene, puedes reinstalar WordPress manteniendo el contenido (temas y plugins). Esto reemplazará los archivos del núcleo sin tocar tu base de datos ni las personalizaciones.

Si no tienes esa opción, descarga la última versión de WordPress desde wordpress.org, súbela por FTP (reemplazando solo las carpetas wp-admin y wp-includes, y los archivos raíz como wp-load.php), y luego ejecuta wp-admin/upgrade.php para actualizar la base de datos.

Paso 6: Cambiar todas las contraseñas

Después de limpiar, cambia:

  • Contraseña de cPanel.
  • Contraseña de la base de datos (desde MySQL Databases en cPanel).
  • Contraseña de administrador de WordPress.
  • Claves de seguridad en wp-config.php (puedes generarlas en https://api.wordpress.org/secret-key/1.1/salt/).

[TIP] Usa contraseñas largas (mínimo 16 caracteres) con mayúsculas, minúsculas, números y símbolos. Un gestor de contraseñas te ayudará.

Paso 7: Prevenir futuras infecciones

Una vez limpio, refuerza la seguridad:

  • Actualiza todo: WordPress, temas y plugins. Activa las actualizaciones automáticas para plugins.
  • Elimina plugins y temas inactivos: Los hackers pueden explotar vulnerabilidades incluso si no están activos.
  • Instala un plugin de seguridad: Wordfence, Sucuri o iThemes Security pueden escanear cPanel y bloquear ataques.
  • Cambia el prefijo de la base de datos (de wp_ a algo único) durante la instalación inicial.
  • Limita los intentos de inicio de sesión con un plugin como Login LockDown.
  • Usa un firewall de aplicación web (WAF) desde tu hosting o con Cloudflare.

FAQ: Preguntas frecuentes sobre virus en WordPress

¿Puedo limpiar un virus WordPress sin cPanel?

Sí, pero cPanel facilita mucho el proceso. Sin cPanel, tendrías que usar FTP y phpMyAdmin de forma manual, o plugins de seguridad desde el panel de WordPress (si puedes acceder).

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

Puede que haya una puerta trasera oculta en un plugin legítimo o en el servidor. Prueba a reinstalar completamente WordPress desde cero, restaurando solo el contenido (posts, páginas) y no los plugins/temas antiguos.

¿Los plugins de seguridad pueden eliminar malware automáticamente?

Sí, plugins como Wordfence o Sucuri tienen escáneres que detectan y limpian archivos maliciosos. Sin embargo, a veces dejan archivos residuales. La limpieza manual desde cPanel es más exhaustiva.

¿Cómo sé si mi base de datos está infectada?

Ejecuta las consultas SQL que te mostré en phpMyAdmin. También puedes instalar un plugin que escanee la base de datos, como "WP-DBManager".

¿Es seguro usar Syspanel para este proceso?

Sí, Syspanel (antes HestiaCP) es un panel de control alternativo a cPanel. El proceso es muy similar: accedes por el puerto 2106, usas su administrador de archivos y phpMyAdmin. Las herramientas son equivalentes.

Conclusión

Detectar y eliminar virus en WordPress desde cPanel no es un proceso mágico, pero siguiendo estos pasos podrás limpiar malware WordPress de forma metódica y segura. Recuerda siempre:

  • Haz backup antes de tocar nada.
  • Escanea cPanel con las herramientas que te ofrece tu hosting.
  • No te fíes solo de los plugins; la revisión manual es clave.
  • Refuerza la seguridad después de la limpieza.

Con paciencia y atención a los detalles, tu sitio volverá a estar libre de virus. Si en algún momento te sientes abrumado, no dudes en contactar al soporte técnico de tu hosting. Muchos ofrecen servicios de limpieza de malware incluidos en el plan. ¡Buena suerte!

¿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