Cómo proteger tu web contra malware en cPanel y Plesk
¿Por qué tu web puede infectarse y cómo saberlo a tiempo?
Cuando hablamos de proteger web malware, mucha gente piensa que es un problema que solo les ocurre a grandes empresas o tiendas online famosas. Nada más lejos de la realidad: los ciberdelincuentes escanean internet de forma automática buscando sitios vulnerables, sin importar si tu web es un blog personal, el portfolio de un fotógrafo o la página de una pequeña panadería.
Una infección típica suele llegar por tres vías principales: un plugin o tema desactualizado, una contraseña débil en tu panel de control o en el FTP, o una vulnerabilidad en algún script antiguo que ya no recibe soporte. Los síntomas más comunes son: la web se vuelve lentísima, aparecen anuncios extraños que tú no has puesto, el navegador muestra avisos de "sitio engañoso", o Google te saca de los resultados de búsqueda por considerar tu página peligrosa.
La buena noticia es que tanto cPanel como Plesk, los dos paneles de control más utilizados en hosting compartido, incluyen herramientas para detectar y eliminar estas amenazas. Y si tu hosting usa Syspanel (antes llamado HestiaCP, que se accede por el puerto 2106), también puedes aplicar la mayoría de estos consejos, aunque las rutas de acceso cambien ligeramente.
A lo largo de esta guía te voy a explicar paso a paso cómo eliminar malware cPanel, cómo funciona la protección en malware Plesk, y qué debes hacer para limpiar web infectada sin volverte loco en el intento. Vamos a ello.
Primeros pasos: identifica si tu web está infectada
Antes de lanzarte a limpiar nada, necesitas confirmar si realmente hay un problema. A veces una web lenta no significa malware, sino un plugin pesado o una caché mal configurada. Pero si notas varios de estos síntomas a la vez, es muy probable que tengas una infección:
- El sitio redirige a páginas de apuestas, farmacias o casinos que no conoces.
- Aparecen ventanas emergentes (pop-ups) incluso cuando no navegas por tu web.
- Tus visitantes te avisan de que ven mensajes de error raros o avisos de "web no segura".
- Google Search Console te notifica que has sido marcado como sitio peligroso.
- El uso de CPU y memoria de tu cuenta de hosting se dispara sin razón aparente.
- Ves archivos extraños en tu gestor de archivos, como archivos .php con nombres aleatorios (tipo wp-1a2b3c.php).
[WARNING] Si tu web está en Google con el aviso "Este sitio puede estar hackeado", no entres en pánico. Es recuperable, pero debes actuar rápido porque cada día que pasa, el malware se va extendiendo más por tus archivos y puede infectar a tus visitantes.
Herramientas online para un diagnóstico rápido
Existen servicios gratuitos que escanean tu dominio sin necesidad de instalar nada. Los más fiables son:
- Sucuri SiteCheck: analiza el código de tu página y te dice si hay malware, redirecciones o listas negras.
- VirusTotal: aunque está pensado para archivos, también analiza URLs.
- Quttera: ofrece un escáner externo bastante completo.
Estas herramientas te darán una idea general, pero no detectan todo. Para una limpieza a fondo, necesitas trabajar desde dentro del panel de control.
Cómo eliminar malware en cPanel paso a paso
cPanel es el panel más común en hosting compartido y cuenta con varias herramientas integradas. Te explico el método completo, desde lo más sencillo hasta lo más avanzado.
1. Activa el escáner de seguridad integrado
Muchos proveedores de hosting incluyen CageFS y Imunify360 o LiteSpeed Web Server con protección integrada. Para comprobar si tienes acceso a estas herramientas:
- Entra en tu cPanel con tus credenciales.
- Busca la sección "Seguridad" o "Security".
- Si ves "Imunify360", "SiteProtector" o "CageFS", haz clic y ejecuta un escaneo completo.
- Espera a que termine. Puede tardar entre 5 y 30 minutos dependiendo del tamaño de tu web.
- Si encuentra algo, te dará la opción de poner en cuarentena los archivos infectados. Acepta.
Si tu hosting no tiene estas herramientas, no pasa nada. Puedes hacer la limpieza manualmente con el gestor de archivos.
2. Revisa los archivos recientes y sospechosos
El malware casi siempre se cuela en forma de archivos nuevos. Para encontrarlos:
- Entra en "Administrador de archivos" (File Manager).
- Navega a la carpeta raíz de tu web (normalmente
public_html). - Haz clic en "Configuración" (arriba a la derecha) y marca la opción "Mostrar archivos ocultos".
- Ordena los archivos por "Fecha de modificación" (de más reciente a más antiguo).
- Busca cualquier archivo
.phpcuya fecha coincida con el momento en que empezaron los problemas.
Los nombres típicos de archivos maliciosos son: wp-login.php.bak, cache.php, tmp.php, backup.php, security.php, o cualquier cosa que no recuerdes haber creado.
[TIP] Si tienes WordPress, casi todos tus archivos PHP legítimos están en wp-admin, wp-includes y en la raíz (como index.php, wp-config.php). Cualquier archivo .php en carpetas de subida o en la raíz que no reconozcas, es sospechoso.
3. Elimina el malware manualmente
Una vez identificados los archivos sospechosos:
- Haz clic derecho sobre el archivo y selecciona "Editar".
- Mira las primeras líneas. Si ves código codificado en base64 (una cadena larga de letras y números sin sentido), funciones como
eval(base64_decode(...)), o referencias a dominios raros, es malware. - No intentes "arreglar" el archivo. Es más seguro eliminarlo por completo.
- Si el archivo es parte de un plugin o tema legítimo, lo mejor es reinstalar ese plugin o tema desde cero.
[WARNING] Nunca elimines wp-config.php, .htaccess o los archivos de núcleo de WordPress sin saber exactamente lo que haces. Si tienes dudas, primero haz una copia de seguridad completa de tu web.
4. Limpia la base de datos
El malware no solo se esconde en archivos. También puede inyectar código en tu base de datos, sobre todo en WordPress. Para limpiarla:
- Entra en "phpMyAdmin" desde cPanel.
- Selecciona tu base de datos.
- Haz clic en "Buscar" (pestaña superior).
- Busca términos como
eval(,base64_decode,<script, oiframe. - Si encuentras resultados, entra en la tabla correspondiente y elimina esas filas o edita el contenido para quitar el código malicioso.
[INFO] Si no te sientes cómodo tocando la base de datos, puedes usar el plugin Wordfence o iThemes Security que hacen este trabajo por ti de forma más segura.
Malware Plesk: cómo proteger y limpiar tu web
Plesk es el otro gran panel de control, muy popular en hosting para empresas y revendedores. Su enfoque de seguridad es un poco diferente, pero igual de efectivo.
1. Usa el escáner de Plesk
Plesk incluye una herramienta llamada "Security Advisor" que analiza tu servidor y te da recomendaciones. Para usarla:
- Entra en Plesk con tu usuario.
- Ve a "Herramientas y ajustes" (Tools & Settings).
- Busca "Asesor de seguridad" (Security Advisor).
- Ejecuta el análisis y revisa las recomendaciones. Muchas veces detecta archivos modificados o permisos incorrectos.
También puedes instalar la extensión "ImunifyAV" desde el catálogo de extensiones de Plesk. Esta herramienta escanea todos los archivos de tu cuenta y pone en cuarentena lo que encuentra.
2. Revisa los archivos desde el administrador de archivos de Plesk
El gestor de archivos de Plesk funciona similar al de cPanel:
- Ve a "Sitios web y dominios".
- Haz clic en "Administrador de archivos".
- Navega a
httpdocs(equivalente apublic_html). - Activa la opción de "Mostrar archivos ocultos".
- Busca archivos modificados recientemente o con nombres extraños.
3. Protección de directorios y permisos
Plesk te permite configurar permisos de forma más granular. Un buen hábito es:
- Asegurarte de que los directorios tengan permisos 755.
- Los archivos tengan permisos 644.
wp-config.phpdebería tener permisos 400 o 440.- Los archivos de subida (uploads) nunca deberían ejecutar PHP.
Para cambiar permisos en Plesk: haz clic derecho sobre el archivo o carpeta → "Permisos" → ajusta las casillas.
[TIP] Si tu web usa Syspanel (el panel que antes se llamaba HestiaCP, accesible por el puerto 2106), la estructura es similar a Plesk pero más sencilla. Busca la carpeta public_html y aplica los mismos principios de revisión de archivos y permisos. Syspanel no trae escáner integrado, así que tendrás que usar herramientas externas como Wordfence o hacer la limpieza manual.
Cómo limpiar una web infectada cuando el malware es persistente
A veces el malware se esconde tan bien que, aunque elimines archivos, vuelve a aparecer a los pocos días. Esto suele significar que hay un backdoor (puerta trasera) en algún sitio que no has encontrado. Para estos casos, la solución más efectiva y definitiva es:
1. Restaurar desde una copia de seguridad limpia
La mayoría de hostings guardan copias de seguridad diarias o semanales. Si tienes una copia de antes de la infección:
- Ve a "Copias de seguridad" (Backups) en cPanel o Plesk.
- Selecciona una fecha anterior a la infección.
- Restaura solo los archivos (no la base de datos si sospechas que está infectada).
- Después, cambia todas tus contraseñas: cPanel, FTP, base de datos, WordPress.
[WARNING] Si restauras una copia muy antigua, perderás los cambios recientes. Es un mal menor comparado con tener una web hackeada, pero intenta encontrar el punto más cercano posible a la fecha de la infección.
2. Reinstala WordPress o tu CMS desde cero
Si tienes WordPress y el malware es muy persistente, la opción más segura es:
- Descarga una copia limpia de WordPress desde wordpress.org.
- Elimina todos los archivos de tu servidor excepto
wp-content/uploads(tus imágenes y documentos) ywp-config.php. - Sube la nueva copia limpia.
- Reinstala tus plugins y temas desde cero (no desde copias antiguas).
Esto garantiza que no queda ningún archivo infectado en el núcleo de WordPress.
3. Usa plugins de seguridad para monitoreo continuo
Una vez limpia la web, instala un plugin de seguridad que haga escaneos periódicos:
- Wordfence: el más completo, con firewall y escáner de malware.
- Sucuri Security: excelente para monitoreo y limpieza remota.
- iThemes Security: bueno para fortalecer el acceso y detectar cambios en archivos.
Configura estos plugins para que te envíen un correo cada vez que detecten algo raro. Así podrás actuar rápido antes de que el malware se propague.
Prevención: cómo proteger tu web contra malware a largo plazo
Limpia tu web es solo la mitad del trabajo. La otra mitad es asegurarte de que no vuelva a pasar. Aquí tienes las mejores prácticas para proteger web malware de forma efectiva:
Mantén todo actualizado
- WordPress: actualiza el núcleo, los plugins y los temas en cuanto salgan nuevas versiones.
- Scripts PHP: si usas scripts antiguos como foros o galerías, actualízalos o elimínalos.
- Extensiones del panel: tanto cPanel como Plesk lanzan parches de seguridad. Activa las actualizaciones automáticas si es posible.
[INFO] La mayoría de infecciones ocurren en webs con plugins desactualizados. Un plugin con una vulnerabilidad conocida es como una puerta abierta para los ciberdelincuentes.
Usa contraseñas fuertes y autenticación de dos factores
- Cambia la contraseña de tu cPanel o Plesk cada 3-6 meses.
- Usa contraseñas de al menos 12 caracteres con mayúsculas, minúsculas, números y símbolos.
- Activa la autenticación de dos factores (2FA) en tu panel de control si tu hosting lo permite.
- No uses la misma contraseña para todo: panel, FTP, base de datos, correo.
Limita el acceso por FTP y SSH
- Usa un usuario FTP con permisos solo para la carpeta de tu web, no para todo el servidor.
- Cambia el puerto SSH si tu hosting te lo permite.
- Desactiva el acceso FTP cuando no lo estés usando.
Haz copias de seguridad periódicas
- Configura copias de seguridad automáticas semanales.
- Descarga una copia a tu ordenador o a un servicio en la nube.
- Antes de actualizar algo importante, haz una copia manual.
Vigila los permisos de archivos
- Los archivos deben tener permisos 644.
- Las carpetas deben tener permisos 755.
- Nunca uses permisos 777 (lectura, escritura y ejecución para todos).
Preguntas frecuentes sobre malware en hosting
¿Puedo limpiar mi web infectada sin experiencia técnica?
Sí, si sigues los pasos de esta guía y usas las herramientas integradas de cPanel o Plesk. Eso sí, ten paciencia y no borres nada de lo que no estés seguro. Si te sientes perdido, contacta con el soporte de tu hosting: muchos ofrecen limpieza de malware como servicio gratuito o de pago.
¿Mi proveedor de hosting puede ayudarme a eliminar el malware?
Depende del proveedor. Algunos incluyen limpieza de malware en sus planes de hosting, otros la cobran como servicio adicional. Pregunta siempre antes de contratar. Los que usan Imunify360 o similares suelen limpiar automáticamente las infecciones detectadas.
¿Cuánto tiempo tarda en desaparecer el aviso de Google "sitio peligroso"?
Una vez que limpies la web y verifiques que no queda malware, debes solicitar una revisión en Google Search Console. El proceso suele tardar entre 24 horas y varios días. Es importante que la web esté 100% limpia antes de solicitar la revisión, porque si Google detecta restos, te rechazará la solicitud.
¿Qué hago si mi web sigue infectada después de limpiarla?
Si después de eliminar archivos maliciosos, limpiar la base de datos y cambiar contraseñas, el malware reaparece, es probable que haya un backdoor en un plugin o tema que no has reinstalado. La solución definitiva es reinstalar el CMS desde cero y restaurar solo el contenido (imágenes y textos), nunca los archivos del sistema.
¿Syspanel (HestiaCP) tiene protección contra malware?
Syspanel, al que se accede por el puerto 2106, no incluye un escáner de malware integrado como tal. Pero puedes usar las mismas técnicas manuales que te he explicado para cPanel: revisar archivos, cambiar permisos y usar plugins de seguridad en tu CMS. También puedes instalar herramientas como ClamAV si tu servidor lo permite, aunque esto ya requiere conocimientos más avanzados.
¿El malware puede afectar a mi correo electrónico?
Sí, si el malware accede a tu base de datos puede robar listas de correo o enviar spam desde tu dominio. Por eso es importante cambiar las contraseñas de correo y revisar si hay reglas de reenvío extrañas en tu panel de control.
Conclusión: la seguridad es un proceso continuo
Proteger tu web contra malware no es algo que hagas una vez y olvides. Es un
