Guía para eliminar malware en PrestaShop desde Plesk
Esta guía está diseñada para ayudarte a eliminar malware PrestaShop desde el panel de control Plesk. Si tu tienda online se ha vuelto lenta, muestra anuncios extraños o redirige a sitios sospechosos, es muy probable que haya sido infectada. No te preocupes, con las herramientas que ofrece Plesk y siguiendo estos pasos, podrás limpiar PrestaShop de forma segura y restaurar la seguridad PrestaShop Plesk.
Aquí aprenderás a identificar la infección, hacer una copia de seguridad, escanear archivos, eliminar el código malicioso y proteger tu tienda para el futuro. Vamos a ello.
¿Por qué es importante actuar rápido contra el malware en PrestaShop?
Un sitio infectado no solo daña tu reputación, sino que también puede ser bloqueado por Google, penalizado en los resultados de búsqueda o, peor aún, robar datos de tus clientes. Al usar Plesk, tienes ventajas como el acceso directo al sistema de archivos, la base de datos y herramientas de seguridad integradas. Actuar con rapidez minimiza el daño y facilita la eliminación malware Plesk.
Preparación: Lo que necesitas saber antes de empezar
Antes de ponerte manos a la obra, ten en cuenta estos puntos:
- Acceso a Plesk: Necesitas las credenciales de administrador de tu panel Plesk.
- Copia de seguridad: Es el paso más importante. Si algo sale mal, podrás restaurar tu tienda.
- Paciencia: La limpieza puede llevar tiempo, especialmente si el malware es complejo.
- Herramientas: Usaremos el administrador de archivos de Plesk, phpMyAdmin y, opcionalmente, un cliente FTP.
Paso 1: Realiza una copia de seguridad completa desde Plesk
Este es el paso más crítico. Una copia de seguridad te permite restaurar tu tienda si el proceso de limpieza daña archivos importantes.
### Cómo hacer la copia de seguridad en Plesk
- Inicia sesión en Plesk.
- Ve a Sitios web y dominios.
- Busca tu dominio de PrestaShop y haz clic en Copia de seguridad (normalmente es un icono de disco o un enlace en el menú).
- Selecciona Crear una copia de seguridad.
- Elige Completa (incluye archivos y bases de datos).
- Dale un nombre descriptivo, por ejemplo:
prestashop_antes_limpieza. - Haz clic en Aceptar. Espera a que termine (puede tardar varios minutos).
[TIP] Guarda esta copia en tu ordenador o en un almacenamiento externo. No la dejes solo en el servidor por si el malware la corrompe.
Paso 2: Identifica los síntomas del malware en PrestaShop
Antes de eliminar nada, confirma que realmente hay una infección. Los síntomas típicos incluyen:
- Redirecciones: Al hacer clic en un producto, te lleva a una web de apuestas o farmacias.
- Anuncios emergentes: Aparecen ventanas con publicidad incluso cuando no deberían.
- Rendimiento lento: La tienda carga muy lento sin razón aparente.
- Archivos sospechosos: Encuentras archivos con nombres extraños (como
system.php,wp-admin,eval.php) en la carpeta raíz o en/modules. - Código inyectado: Aparecen scripts en línea en archivos PHP, especialmente en
index.php,config/defines.inc.phpo en archivos de plantillas (.tpl).
[WARNING] Algunos malware se esconden en la base de datos o en archivos de configuración. No te fíes solo de los síntomas visuales.
Paso 3: Escanea tu PrestaShop en busca de malware desde Plesk
Plesk no tiene un antivirus integrado para PrestaShop, pero puedes usar herramientas gratuitas. Aquí te explico dos métodos.
### Método 1: Usar el escáner de seguridad de Plesk (si está disponible)
Algunas versiones de Plesk incluyen Plesk Security Scanner o ImunifyAV. Si lo tienes:
- Ve a Herramientas y configuraciones.
- Busca Seguridad y luego Escáner de seguridad.
- Selecciona tu dominio y haz clic en Escanear.
- Revisa los resultados. Si encuentra archivos maliciosos, te dará la opción de Cuarentena o Eliminar.
### Método 2: Escaneo manual con archivos de PrestaShop
Puedes descargar una herramienta como PrestaShop Malware Scanner (busca en GitHub) o usar el script scan.php de PrestaShop (si existe en tu versión). También puedes revisar manualmente:
- Ve a Sitios web y dominios > Administrador de archivos.
- Navega a la raíz de tu PrestaShop (por ejemplo,
httpdocsopublic_html). - Revisa archivos con fechas de modificación recientes (si no has hecho cambios).
- Busca archivos con extensiones inusuales como
.php7,.phtml,.suspected.
[INFO] Si no te sientes cómodo revisando manualmente, usa un servicio externo como Sucuri SiteCheck (gratuito) para escanear tu URL.
Paso 4: Elimina el malware de los archivos de PrestaShop
Una vez identificados los archivos maliciosos, es hora de eliminar malware Plesk del sistema de archivos.
### Acción directa desde el Administrador de archivos de Plesk
- En Administrador de archivos, localiza los archivos sospechosos.
- Selecciona el archivo y haz clic en Eliminar.
- Si el archivo es importante (por ejemplo, un módulo legítimo infectado), mejor renómbralo a
.bakpara desactivarlo temporalmente.
### Reemplazar archivos del núcleo de PrestaShop
El malware suele modificar archivos del núcleo como index.php, config/defines.inc.php o classes/. Para limpiarlos:
- Descarga una copia limpia de PrestaShop de la misma versión que usas (desde prestashop.com).
- Extrae los archivos originales.
- Sube los archivos limpios a través de Administrador de archivos o FTP.
- No subas la carpeta
/installni sobreescribasconfig/settings.inc.php(contiene tu configuración). - Reemplaza solo los archivos del núcleo:
index.php,config/defines.inc.php,classes/,controllers/,override/.
[WARNING] Sobrescribir archivos de configuración puede romper tu tienda. Hazlo solo si estás seguro.
### Limpiar archivos de temas y módulos
El malware también se esconde en temas (carpeta /themes) y módulos (carpeta /modules). Para temas:
- Ve a
/themes/tu_tema/. - Revisa archivos
.tpl,.phpy.js. Busca código ofuscado (comoeval(gzinflate(...))). - Si encuentras algo sospechoso, elimina el tema y sustitúyelo por uno limpio.
Para módulos:
- Ve a
/modules/. - Busca módulos desconocidos o con nombres extraños (ejemplo:
module_xyz). - Desactívalos desde el panel de administración de PrestaShop y luego elimínalos desde Plesk.
Paso 5: Limpia la base de datos de PrestaShop
El malware también puede inyectar código en la base de datos, especialmente en tablas como ps_configuration, ps_links o ps_hook. Para limpiarla:
### Accede a phpMyAdmin desde Plesk
- En Plesk, ve a Sitios web y dominios.
- Busca tu dominio y haz clic en phpMyAdmin (o Bases de datos > phpMyAdmin).
- Selecciona la base de datos de tu PrestaShop (normalmente se llama
prestashop_xxxx).
### Busca y elimina código malicioso
- Haz clic en la pestaña SQL.
- Ejecuta esta consulta para buscar enlaces sospechosos en la tabla
ps_configuration:SELECT * FROM ps_configuration WHERE value LIKE '%http%' AND name NOT IN ('PS_SHOP_DOMAIN', 'PS_SHOP_DOMAIN_SSL', 'PS_MAIL_DOMAIN'); - Si ves URLs extrañas (como
http://malware-site.com), elimínalas. - También revisa la tabla
ps_linksyps_meta. Ejecuta:SELECT * FROM ps_links WHERE url LIKE '%http%'; - Si encuentras enlaces maliciosos, elimínalos con:
DELETE FROM ps_links WHERE url = 'http://malware-site.com';
[TIP] Si no sabes qué eliminar, busca ayuda profesional. Una base de datos corrupta puede dejar tu tienda inservible.
Paso 6: Refuerza la seguridad de tu PrestaShop en Plesk
Una vez limpio, es vital evitar futuras infecciones. Sigue estos pasos para mejorar la seguridad PrestaShop Plesk.
### Actualiza todo
- PrestaShop: Ve a tu panel de administración y actualiza a la última versión.
- Módulos y temas: Mantén todo actualizado. Los módulos antiguos son la puerta de entrada más común.
- PHP: En Plesk, ve a Sitios web y dominios > Configuración de PHP y usa la versión más reciente compatible (PHP 8.0 o superior).
### Configura permisos de archivos correctos
El malware suele escribir archivos porque los permisos son demasiado permisivos. En Plesk:
- Ve a Administrador de archivos.
- Selecciona todos los archivos de la raíz.
- Haz clic en Permisos.
- Establece:
- Archivos:
644(lectura/escritura para el propietario, solo lectura para grupo y otros). - Carpetas:
755(lectura/ejecución para todos, escritura solo para el propietario).
- Archivos:
- Aplica cambios.
### Instala un firewall de aplicación web (WAF)
Plesk ofrece ModSecurity (un WAF). Actívalo:
- Ve a Herramientas y configuraciones > Seguridad > ModSecurity.
- Activa el firewall para tu dominio.
- Elige un conjunto de reglas (OWASP es recomendable).
### Cambia contraseñas
- Admin de PrestaShop: Usa una contraseña larga y única.
- Base de datos: Cámbiala desde Plesk (Bases de datos > tu BD > Cambiar contraseña).
- FTP/SSH: Si usas acceso FTP, cámbialo también.
### Desactiva módulos innecesarios
Revisa tus módulos en el panel de administración de PrestaShop. Elimina los que no uses o los que sean de dudosa procedencia.
Paso 7: Verifica que el malware ha sido eliminado
Después de la limpieza, comprueba que todo funciona.
- Escanea de nuevo: Usa el escáner de Plesk o Sucuri para asegurarte de que no quedan rastros.
- Prueba la tienda: Navega por productos, carrito y proceso de pago. Busca redirecciones o anuncios.
- Revisa los logs: En Plesk, ve a Sitios web y dominios > Logs y busca errores extraños.
- Monitorea el rendimiento: Si la tienda sigue lenta, puede haber malware oculto en la base de datos.
[INFO] Si después de todo sigues viendo problemas, considera restaurar la copia de seguridad y repetir el proceso con más cuidado.
Preguntas frecuentes (FAQ)
¿Puedo usar un plugin de seguridad en PrestaShop para eliminar malware?
Sí, existen módulos como PrestaShield o Security Scanner. Sin embargo, muchos malware desactivan estos plugins. Es mejor hacer la limpieza manual desde Plesk primero.
¿Qué hago si el malware vuelve a aparecer?
Revisa tus módulos y temas. El malware suele reincidir si no se elimina la fuente. Cambia todas las contraseñas y actualiza todo.
¿Es seguro usar herramientas de terceros para escanear desde Plesk?
Sí, pero solo descargues scripts de fuentes confiables (como GitHub oficial de PrestaShop). No subas archivos desconocidos.
¿Cómo sé si mi base de datos está infectada?
Busca enlaces extraños en tablas como ps_configuration, ps_links o ps_hook. También revisa campos value que contengan eval() o base64_decode().
¿Puedo restaurar una copia de seguridad anterior si la limpieza falla?
Sí, pero asegúrate de que la copia sea anterior a la infección. Si no, el malware volverá. Siempre ten dos copias: una antes y una después de la limpieza.
Conclusión
Eliminar malware PrestaShop desde Plesk es un proceso metódico que requiere paciencia, pero es totalmente factible. Siguiendo esta guía, has aprendido a hacer una copia de seguridad, identificar la infección, limpiar archivos y base de datos, y reforzar la seguridad. Recuerda que la prevención es clave: mantén todo actualizado, usa contraseñas seguras y desactiva lo que no necesites.
Si en algún momento te sientes abrumado, no dudes en contactar a un profesional. La seguridad de tu tienda y de tus clientes lo vale.
[WARNING] Esta guía es solo para fines educativos. Si no te sientes seguro realizando estos pasos, contrata a un experto en seguridad web.
