¿Qué hacer si mi sitio en Plesk tiene malware?
¡Hola! Entendemos que encontrar malware en tu sitio web es una experiencia angustiante. Ver alertas de seguridad, notar un comportamiento extraño en tu página o que tu sitio aparezca en listas negras de Google puede ser frustrante. Pero no te preocupes, estás en el lugar correcto. Como técnico de soporte amigable, voy a guiarte paso a paso para que puedas limpiar tu sitio alojado en Plesk y, lo más importante, evitar que vuelva a suceder.
Este artículo está diseñado para ser tu guía de emergencia. Vamos a cubrir desde los primeros síntomas hasta la limpieza profunda y las medidas preventivas. Recuerda, la paciencia y el orden son tus mejores aliados.
Señales de que tu sitio web tiene malware
Antes de lanzarte a la acción, es importante confirmar que realmente tienes un problema. El malware no siempre es obvio. Aquí tienes las señales más comunes:
- Rendimiento lento: Tu sitio carga muy despacio o se cae constantemente sin razón aparente.
- Redirecciones extrañas: Al hacer clic en un enlace, terminas en una página de spam, apuestas o contenido adulto.
- Alertas del navegador: Google Chrome, Firefox o Safari te muestran un mensaje de "Sitio engañoso" o "Este sitio puede estar comprometido".
- Contenido inesperado: Aparecen banners, ventanas emergentes o texto en otros idiomas que tú no has añadido.
- Correos enviados desde tu dominio: Tú o tus contactos reciben correos spam que parecen venir de tu propio sitio.
- Archivos desconocidos: En tu panel de Plesk, ves archivos con nombres extraños (como
shell.php,wp-admin.zipo scripts con códigos encriptados). - Google Search Console te avisa: Recibes un mensaje de Google diciendo que tu sitio ha sido hackeado o tiene código malicioso.
[WARNING] Si ves cualquiera de estas señales, no entres en pánico. Actúa con calma y sigue los pasos. No intentes solucionarlo a ciegas, podrías empeorar la situación.
Primeros pasos: Contener el daño
Lo primero es actuar rápido para evitar que el malware se propague a otros sitios en tu mismo servidor o que los atacantes sigan teniendo acceso.
1. Cambia todas tus contraseñas inmediatamente
Este es el paso más crítico. El malware a menudo entra a través de contraseñas débiles o robadas. Cambia:
- Contraseña de Plesk: Ve a tu panel de Plesk, en "Mi Perfil" o "Cambiar Contraseña". Usa una contraseña larga, única y compleja (mínimo 12 caracteres, con mayúsculas, minúsculas, números y símbolos).
- Contraseña de FTP/SFTP: Si usas acceso por FTP, cámbiala desde Plesk en "Acceso FTP" para cada dominio.
- Contraseñas de bases de datos: En Plesk, ve a "Bases de Datos" y cambia la contraseña de cada una.
- Contraseñas de administradores CMS: Si usas WordPress, Joomla, Drupal, etc., cambia la contraseña de todos los usuarios administradores.
- Contraseñas de correo electrónico: Cambia las contraseñas de todas las cuentas de correo asociadas a tu dominio.
2. Pone tu sitio en modo mantenimiento
Esto evita que los visitantes vean el contenido malicioso y que Google lo indexe aún más. En Plesk, puedes hacerlo desde "Sitios Web y Dominios" > "Hosting y DNS" > "Modo Mantenimiento". Actívalo y pon un mensaje simple como "Estamos realizando tareas de mantenimiento. Vuelve pronto."
3. Haz una copia de seguridad completa (¡pero no la uses aún!)
Antes de tocar nada, haz una copia de seguridad de tu sitio y de la base de datos. Esto te servirá como referencia, pero no la uses para restaurar porque está infectada. Guárdala en tu ordenador local para analizarla después. En Plesk, ve a "Sitios Web y Dominios" > "Copias de Seguridad" y crea una copia completa.
Diagnóstico: Identificar el malware Plesk
Ahora que has contenido el daño, toca averiguar qué tipo de malware es y dónde se esconde.
1. Escanea tu sitio con herramientas online
Antes de meterte en los archivos, usa herramientas automáticas. Son rápidas y te dan una primera idea.
- Sucuri SiteCheck: Es gratuita y escanea en busca de malware, listas negras y scripts maliciosos.
- VirusTotal: Puedes subir la URL de tu sitio para que la analicen múltiples motores antivirus.
- Quttera: Otra herramienta online muy completa para escanear sitios web.
[INFO] Estas herramientas son un buen punto de partida, pero no detectan todo el malware. Un análisis manual es siempre necesario.
2. Revisa los archivos en Plesk
Accede al administrador de archivos de Plesk (en "Sitios Web y Dominios" > "Administrador de Archivos") o usa un cliente FTP como FileZilla. Busca archivos sospechosos:
- Archivos con fecha de modificación reciente: Ordena los archivos por fecha. Si ves archivos modificados hace minutos u horas, cuando tú no has hecho cambios, son sospechosos.
- Archivos con nombres extraños:
shell.php,wp-admin.zip,index.php.bak,cgi-bin,tmp,cachecon scripts raros. - Archivos con código ofuscado: Abre archivos PHP, HTML o JS. Si ves una línea enorme de código sin sentido (letras y números revueltos), es probable que sea malware. Busca funciones como
base64_decode,eval,gzinflate,str_rot13. Estas son comunes en inyecciones de código. - Carpetas inusuales: Revisa las carpetas
wp-content/uploads,wp-content/themes,wp-content/plugins(si usas WordPress). El malware a menudo se esconde ahí.
3. Revisa los archivos .htaccess
El archivo .htaccess es un archivo de configuración muy potente. El malware lo modifica para redirigir a sitios maliciosos o bloquear el acceso a ciertas áreas. Ábrelo y busca líneas que no reconozcas, especialmente reglas de redirección a dominios extraños o bloques de código PHP.
4. Revisa la base de datos
El malware también puede inyectarse en la base de datos. En Plesk, ve a "Bases de Datos", selecciona tu base de datos y usa phpMyAdmin. Busca en las tablas de contenido (como wp_posts, wp_options en WordPress) cadenas de texto sospechosas, enlaces ocultos o scripts inyectados en campos como post_content o option_value.
[WARNING] Si no te sientes cómodo editando la base de datos, no la modifiques directamente. Podrías romper tu sitio. En su lugar, usa un plugin de seguridad (más adelante te explico).
Limpieza profunda: Eliminar virus de tu sitio
Una vez identificado el problema, tienes varias opciones para limpiarlo. Te recomiendo hacerlo en este orden.
1. Usa un plugin de seguridad (para CMS como WordPress)
Si tu sitio usa WordPress, esta es la opción más fácil para usuarios no técnicos. Instala un plugin de seguridad potente como:
- Wordfence: Escanea archivos y la base de datos, elimina malware y bloquea accesos no autorizados.
- Sucuri Security: Ofrece escaneo, limpieza y un firewall para proteger tu sitio.
- MalCare: Especializado en detección y limpieza automática de malware.
Pasos generales:
- Desde el panel de administración de WordPress, ve a "Plugins" > "Añadir nuevo".
- Busca el plugin (por ejemplo, "Wordfence").
- Instálalo y actívalo.
- Sigue las instrucciones del plugin para ejecutar un escaneo completo.
- Si detecta malware, el plugin te dará la opción de "Eliminar" o "Reparar" los archivos infectados.
- Después de la limpieza, ejecuta otro escaneo para asegurarte de que no quedan rastros.
2. Limpieza manual de archivos
Si el plugin no resuelve todo o si no usas un CMS, tendrás que hacerlo manualmente.
- Descarga una copia limpia de tu CMS: Ve al sitio oficial (wordpress.org, joomla.org, etc.) y descarga la última versión de tu CMS.
- Compara archivos: Con un programa como WinMerge o Meld, compara los archivos de tu sitio infectado con los archivos originales. Los archivos que difieran y no sean tuyos (como temas o plugins personalizados) son candidatos a ser malware.
- Reemplaza archivos del núcleo: Los archivos del núcleo de tu CMS (carpetas
wp-admin,wp-includesen WordPress) deben ser reemplazados completamente por los originales. No borres las carpetas de contenido (wp-content), temas o plugins, pero sí revisa sus archivos. - Elimina archivos sospechosos: Borra todos los archivos que identificaste como malware. Si no estás seguro, mejor no los borres, renómbralos (por ejemplo,
shell.phpashell.php.bak) y luego verifica si el sitio sigue funcionando. - Limpia el .htaccess: Reemplaza el archivo
.htaccesspor uno limpio. Puedes generar uno desde el panel de administración de tu CMS (en WordPress, ve a Ajustes > Enlaces permanentes y haz clic en "Guardar cambios"). - Limpia la base de datos: Usa phpMyAdmin para buscar y eliminar cadenas maliciosas. Busca en tablas como
wp_postsywp_options(en WordPress) cualquier enlace extraño o código inyectado. También puedes usar la función "Buscar" en phpMyAdmin para localizar texto malicioso en toda la base de datos.
3. Reinstala completamente tu sitio (opción nuclear)
Si el malware es muy persistente o no logras limpiarlo, la opción más segura es reinstalar todo desde cero.
- Haz una copia de seguridad de tu contenido limpio: Guarda solo los archivos que estés seguro de que no están infectados (imágenes, textos, etc.). No guardes archivos de configuración, plugins o temas.
- Elimina todos los archivos del sitio: Desde Plesk, en "Sitios Web y Dominios", selecciona tu dominio y haz clic en "Eliminar" (esto no borra la suscripción, solo los archivos).
- Vuelve a instalar tu CMS: Usa el instalador automático de Plesk (en "Aplicaciones") o instálalo manualmente.
- Restaura solo tu contenido limpio: Sube las imágenes, textos y archivos que guardaste.
- Instala temas y plugins desde cero: No uses copias antiguas. Descarga las versiones más recientes desde fuentes oficiales.
- Configura la seguridad desde el principio: Activa un firewall, un plugin de seguridad y cambia todas las contraseñas.
Medidas preventivas: Cómo evitar futuros ataques
Una vez limpio, es crucial blindar tu sitio para que no vuelva a pasar. Aquí tienes las mejores prácticas.
1. Mantén todo actualizado
- CMS: Actualiza WordPress, Joomla, Drupal, etc. a la última versión.
- Plugins y temas: Actualiza todos los plugins y temas. Elimina los que no uses.
- Plesk: Asegúrate de que tu panel de Plesk esté actualizado. Plesk suele lanzar parches de seguridad.
2. Usa contraseñas seguras y autenticación de dos factores (2FA)
- Contraseñas: Usa un gestor de contraseñas (como LastPass, 1Password o Bitwarden) para generar y almacenar contraseñas únicas y complejas.
- 2FA: Activa la autenticación de dos factores en tu panel de Plesk y en el administrador de tu CMS. Esto añade una capa extra de seguridad.
3. Instala un firewall y un plugin de seguridad
- Firewall de aplicaciones web (WAF): Plesk incluye un firewall (ModSecurity). Actívalo desde "Herramientas y Ajustes" > "Seguridad" > "ModSecurity". También puedes usar servicios como Cloudflare para añadir un WAF.
- Plugin de seguridad: Mantén activo un plugin como Wordfence o Sucuri, incluso después de la limpieza. Configúralo para que escanee periódicamente.
4. Limita los permisos de archivos
Los archivos y carpetas de tu sitio deben tener permisos restrictivos.
- Carpetas: 755 (lectura y ejecución para todos, escritura solo para el propietario).
- Archivos: 644 (lectura para todos, escritura solo para el propietario).
- Archivos de configuración (wp-config.php): 600 o 640 (solo lectura para el propietario).
En Plesk, puedes cambiar permisos desde el Administrador de Archivos.
5. Desactiva la ejecución de PHP en carpetas de subida
Esto evita que alguien suba un archivo PHP malicioso a través de un formulario y lo ejecute. En Plesk, puedes hacerlo con reglas en el archivo .htaccess dentro de la carpeta wp-content/uploads (en WordPress). Añade estas líneas:
<Files *.php>
deny from all
</Files>
6. Realiza copias de seguridad periódicas
Configura copias de seguridad automáticas en Plesk. Ve a "Herramientas y Ajustes" > "Copias de Seguridad" y programa copias diarias o semanales. Guárdalas en un almacenamiento externo (como un servidor FTP o un servicio en la nube).
7. Monitorea tu sitio
Usa herramientas como Google Search Console para recibir alertas de seguridad. También puedes usar servicios de monitoreo de uptime y malware (como Sucuri o Site24x7).
8. Educa a tu equipo
Si trabajas con otras personas, asegúrate de que todos sigan buenas prácticas de seguridad: no usar contraseñas débiles, no hacer clic en enlaces sospechosos en correos, y mantener sus dispositivos seguros.
Preguntas Frecuentes (FAQ)
¿Cómo sé si mi sitio en Plesk tiene malware?
Las señales más comunes son: rendimiento lento, redirecciones a sitios extraños, alertas del navegador, contenido inesperado, archivos desconocidos en tu panel y notificaciones de Google Search Console.
¿Puedo limpiar el malware yo mismo o necesito un experto?
Depende de la gravedad. Si es un malware simple, puedes limpiarlo con un plugin de seguridad o siguiendo los pasos manuales de este artículo. Si es persistente o muy complejo, o si no te sientes seguro, contrata a un experto en seguridad web.
¿Qué hago si después de limpiar el malware, mi sitio sigue en listas negras de Google?
Solicita una revisión en Google Search Console. Una vez que hayas limpiado el sitio, ve a "Seguridad y acciones manuales" y solicita una revisión. Google tardará unos días en verificar que está limpio.
¿El malware puede afectar a otros sitios en el mismo servidor de Plesk?
Sí, especialmente si el malware tiene capacidades de propagación. Por eso es importante contenerlo rápidamente y cambiar todas las contraseñas.
¿Debo restaurar una copia de seguridad anterior para eliminar el malware?
No, a menos que estés seguro de que la copia es anterior a la infección. Si restauras una copia infectada, el malware volverá. Es mejor hacer una limpieza completa.
¿Qué es Syspanel y cómo accedo a él?
Syspanel es el nombre que le damos a HestiaCP. Para acceder a él, abre tu navegador y escribe https://tu-dominio.com:2106. Inicia sesión con tus credenciales de administrador.
**¿El malware puede robar mis datos personales o
