Cómo verificar y eliminar malware en WordPress desde cPanel
¿Por qué es importante revisar WordPress desde cPanel?
WordPress es el gestor de contenidos más usado del mundo, y precisamente por eso es uno de los objetivos favoritos de los atacantes. Si tu web va lenta, muestra anuncios raros, te redirige a otras páginas o simplemente no carga, es muy probable que esté infectada.
La buena noticia es que, si tu hosting usa cPanel, tienes todas las herramientas necesarias para eliminar malware WordPress sin necesidad de ser un experto en programación. En esta guía te explico paso a paso, con un lenguaje sencillo, cómo detectar, limpiar y blindar tu sitio desde el panel de control.
Señales claras de que tu WordPress está infectado
Antes de ponernos manos a la obra, conviene saber qué síntomas delatan la presencia de malware. Estos son los más comunes:
- Velocidad de carga muy lenta sin motivo aparente.
- Aparición de ventanas emergentes o banners que tú no has creado.
- Redirecciones a webs de farmacia, casinos o páginas de spam.
- Errores 500 o pantallas blancas intermitentes.
- Código extraño en el pie de página, cabecera o en archivos como
functions.php. - Usuarios administradores que no reconoces en tu panel de WordPress.
- Alertas de Google Safe Browsing o de tu antivirus local al visitar tu web.
Si has detectado alguna de estas señales, sigue leyendo. Vamos a limpiar tu sitio desde la raíz.
Paso 1: Haz una copia de seguridad completa antes de tocar nada
Este paso es obligatorio. Si te equivocas al borrar un archivo, podrías romper tu web. Desde cPanel puedes hacer una copia de seguridad en menos de 10 minutos.
### Cómo hacer una copia de seguridad en cPanel
- Accede a tu cPanel (normalmente en
tudominio.com/cpanel). - Busca la sección Archivos y haz clic en Copias de seguridad o Backup.
- Haz clic en Descargar una copia de seguridad completa.
- Elige la opción Home Directory y descarga el archivo
.tar.gza tu ordenador. - También exporta tu base de datos desde phpMyAdmin (dentro de Bases de datos). Selecciona tu base, ve a la pestaña Exportar y descarga el archivo
.sql.
[WARNING] Guarda estas copias en un lugar seguro fuera de tu servidor (Google Drive, Dropbox, disco duro externo). Si algo sale mal, podrás restaurar tu web en minutos.
Paso 2: Identifica los archivos infectados con el Administrador de Archivos
cPanel incluye un Administrador de Archivos que te permite explorar todo tu hosting sin necesidad de FTP. Es ahí donde vamos a buscar el malware.
### Dónde mirar primero
public_html/.htaccesspublic_html/wp-config.phppublic_html/wp-content/(sobre todo enthemesyplugins)public_html/index.phpypublic_html/wp-settings.php
### Cómo detectar código malicioso
- Entra en Administrador de Archivos desde cPanel.
- Navega hasta
public_html. - Selecciona el archivo
.htaccess, haz clic derecho y elige Editar. - Busca líneas extrañas como
RewriteRuleapuntando a dominios rusos, chinos o de farmacias. - Revisa también
wp-config.phpy busca líneas que definanDB_HOSToDB_NAMEcon valores que no reconoces.
[TIP] Si no sabes qué es “código normal”, compara el contenido con una instalación limpia de WordPress. Si ves algo que no entiendes, es sospechoso.
Paso 3: Elimina el malware de los archivos principales
Una vez localizados los archivos infectados, vamos a limpiarlos. No hace falta borrarlos todos, solo eliminar las líneas maliciosas.
### Cómo limpiar .htaccess
- Abre
.htaccessen el editor. - Borra cualquier línea que contenga
base64_decode,eval(,gzinflate,str_rot13o dominios extraños. - Guarda los cambios y prueba tu web.
[WARNING] Si no tienes claro qué líneas son legítimas, borra todo el contenido y pega el código estándar de WordPress:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
### Cómo limpiar archivos PHP infectados
- Ve a
public_html/wp-content/themes/y abre la carpeta de tu tema activo. - Edita
functions.php. Buscaeval(obase64_decode(. Si encuentras algo así, borra esa línea completa. - Haz lo mismo en
header.phpyfooter.php.
[INFO] El malware suele esconderse al final del archivo, después de la etiqueta
?>, o camuflado en una línea muy larga sin espacios.
Paso 4: Limpia la base de datos desde phpMyAdmin
Muchos ataques inyectan código malicioso en la base de datos, sobre todo en las tablas wp_options y wp_posts. Para limpiar virus cPanel también necesitas revisar esto.
### Pasos para limpiar la base de datos
- Entra en phpMyAdmin desde cPanel.
- Selecciona tu base de datos WordPress.
- Haz clic en la tabla
wp_options. - Busca la opción
siteurlyhome. Asegúrate de que apuntan a tu dominio real. - Busca también la fila
templateystylesheeten la tablawp_options. Deben coincidir con el nombre de tu tema. - Revisa la tabla
wp_postsy busca contenido con<script>oiframeen el editor SQL:
SELECT * FROM wp_posts WHERE post_content LIKE '%<script%' OR post_content LIKE '%iframe%';
Si aparece algo, puedes borrar esas entradas o limpiarlas manualmente.
[TIP] Si no te sientes cómodo con SQL, usa un plugin como WP-Optimize para limpiar contenido basura, pero ojo: no elimina malware avanzado. Para eso, mejor el método manual.
Paso 5: Cambia todas tus contraseñas
El malware suele entrar por contraseñas débiles o reutilizadas. Después de limpiar, es imprescindible cambiar:
- La contraseña de cPanel.
- La contraseña de la base de datos (desde Bases de datos MySQL en cPanel).
- Las contraseñas de todos los usuarios de WordPress (desde el panel de administración).
[WARNING] Si el atacante entró por FTP, también cambia la contraseña de tu cuenta FTP y la del correo asociado al dominio.
Paso 6: Actualiza WordPress, plugins y temas
Un WordPress desactualizado es una puerta abierta. Las vulnerabilidades conocidas se explotan en minutos. Después de limpiar, actualiza todo:
- Ve a Escritorio → Actualizaciones en WordPress.
- Actualiza el núcleo, los plugins y los temas.
- Si algún plugin o tema está sin actualizar desde hace meses y no lo usas, elimínalo por completo.
[INFO] Si tu versión de WordPress es muy antigua, descarga la última versión desde wordpress.org y reemplaza los archivos del núcleo (excepto
wp-contentywp-config.php).
Paso 7: Refuerza la seguridad de WordPress desde cPanel
Una vez limpio, toca blindar. Puedes hacerlo directamente desde cPanel sin instalar mil plugins.
### Protege wp-config.php
- Ve al Administrador de Archivos.
- Localiza
wp-config.php. - Añade estas líneas al final:
// Desactivar edición de archivos desde el panel
define('DISALLOW_FILE_EDIT', true);
// Limitar revisiones de entradas
define('WP_POST_REVISIONS', 5);
// Forzar SSL en el administrador
define('FORCE_SSL_ADMIN', true);
### Activa la autenticación de dos factores
Desde cPanel no puedes activarla directamente, pero puedes instalar un plugin como Wordfence o iThemes Security. Son gratuitos y muy eficaces.
[TIP] Configura Wordfence para que te avise por correo de cualquier cambio en archivos importantes.
Paso 8: Escanea tu web con herramientas gratuitas
Después de limpiar, es recomendable hacer un escaneo externo para comprobar que todo está bien.
- Google Safe Browsing: Entra en
transparencyreport.google.com/safe-browsing/searche introduce tu dominio. - Sucuri SiteCheck: Escanea tu web en busca de malware y listas negras.
- VirusTotal: Puedes analizar la URL de tu web.
Si todo sale limpio, genial. Si aún aparece algo, repite el proceso o contacta con tu proveedor de hosting.
Paso 9: Previene futuras infecciones
La mejor medicina es la prevención. Toma nota de estas buenas prácticas:
- Usa contraseñas largas y únicas para todo (cPanel, FTP, base de datos, WordPress).
- No instales plugins o temas pirata de sitios de dudosa procedencia.
- Elimina usuarios que no uses y revisa los permisos de los que queden.
- Haz copias de seguridad semanales desde cPanel.
- Mantén actualizado todo el sistema.
- Limita los intentos de acceso con un plugin de seguridad.
[WARNING] Evita usar el usuario "admin" en WordPress. Crea un usuario con un nombre difícil de adivinar y dale permisos de administrador.
Preguntas frecuentes sobre limpieza de malware en WordPress
### ¿Puedo eliminar malware WordPress sin acceso a cPanel?
No es recomendable. Sin acceso al panel de control no podrás revisar archivos ni base de datos. Si no tienes cPanel, contacta con tu hosting para que te faciliten acceso o te ayuden.
### ¿Qué hago si mi web sigue infectada después de limpiar?
Es posible que el malware esté en archivos que no has revisado, como wp-cron.php, xmlrpc.php o en la carpeta uploads. También puede estar en el núcleo de WordPress. En ese caso, descarga una copia limpia de WordPress y reemplaza todos los archivos excepto wp-content y wp-config.php.
### ¿Cuánto tarda en desaparecer la lista negra de Google?
Google suele revisar tu web cada 24-48 horas. Una vez limpia, puedes solicitar una revisión en Google Search Console. El proceso puede tardar entre 1 y 5 días.
### ¿Es seguro usar plugins para limpiar virus cPanel?
Pueden servir como apoyo, pero no son infalibles. El malware avanzado se esconde en archivos que los plugins no escanean. La limpieza manual es siempre más fiable.
### ¿Qué es Syspanel y en qué se diferencia de cPanel?
Syspanel es un panel de control alternativo a cPanel, muy usado en algunos hostings. Si tu hosting usa Syspanel, el acceso se hace por el puerto 2106 (tudominio.com:2106). Las opciones son muy similares a cPanel: administrador de archivos, bases de datos, copias de seguridad, etc. La mayoría de los pasos de esta guía son aplicables también en Syspanel, aunque los nombres de las secciones pueden variar ligeramente.
Resumen final
Limpiar un WordPress infectado desde cPanel es un proceso metódico pero totalmente asequible. Con una copia de seguridad, revisión de archivos, limpieza de base de datos y cambio de contraseñas, podrás eliminar malware WordPress y recuperar el control de tu web.
Recuerda que la seguridad es un hábito, no un evento puntual. Dedica 15 minutos al mes a revisar tu sitio, actualizar todo y hacer copias de seguridad. Así evitarás dolores de cabeza y protegerás la reputación de tu dominio.
Si tu web sigue dando problemas después de todo esto, no dudes en contactar con tu proveedor de hosting. Ellos tienen herramientas más avanzadas y pueden ayudarte a limpiar virus cPanel de forma profesional.
[INFO] Guarda esta guía en tus favoritos. La próxima vez que sospeches de una infección, ya sabrás exactamente qué hacer.
