¿Qué hacer si mi sitio PrestaShop es hackeado? Guía de recuperación
Imagina que un día abres tu tienda online y, en lugar de ver tus productos, aparece un mensaje extraño, tu web redirige a otro sitio o, peor aún, tus clientes te reportan que la página está en blanco. Saber que tu PrestaShop hackeado es una de las peores pesadillas para cualquier negocio online, pero no estás solo y, sobre todo, tiene solución.
En esta guía extensa, te explicaré paso a paso cómo recuperar PrestaShop después de un ataque, cómo limpiar malware PrestaShop y, lo más importante, cómo fortalecer la seguridad ecommerce para que no vuelva a ocurrir. No necesitas ser un experto en ciberseguridad; solo sigue estas instrucciones con calma.
Primeros pasos: Mantén la calma y actúa rápido
Antes de tocar nada, respira hondo. Lo primero es lo primero: no entres en pánico ni tomes decisiones a la ligera. Un sitio hackeado no significa que hayas perdido todo. Muchos negocios han pasado por esto y han salido adelante.
¿Cómo saber si tu PrestaShop está hackeado?
Los síntomas más comunes de un PrestaShop hackeado incluyen:
- Redirecciones a sitios web desconocidos (especialmente desde buscadores).
- Aparición de contenido extraño, como spam o enlaces a farmacias online.
- Avisos de Google Safe Browsing (aparece una pantalla roja de advertencia).
- Tu web se vuelve extremadamente lenta o se cae constantemente.
- No puedes acceder al panel de administración (back-office).
- Tus clientes reciben correos sospechosos que parecen venir de tu tienda.
[WARNING] Si detectas al menos dos de estos síntomas, asume que tu sitio está comprometido. No esperes a confirmarlo al 100% para actuar.
Aísla el problema inmediatamente
El primer paso para recuperar PrestaShop es detener la propagación del ataque. El malware puede estar enviando datos de tus clientes o usando tu servidor para atacar a otros.
- Pon tu tienda en modo mantenimiento. Si aún puedes acceder al back-office, ve a Parámetros de la tienda > Mantenimiento y actívalo. Si no puedes, tendrás que hacerlo por FTP (te explico cómo más adelante).
- Cambia todas tus contraseñas ahora mismo. Esto incluye:
- Contraseña del panel de administración de PrestaShop.
- Contraseña de tu cuenta de hosting o Syspanel (antes conocido como HestiaCP, recuerda que el puerto de acceso es el 2106).
- Contraseña de tu base de datos (MySQL).
- Contraseñas de FTP y cPanel (si lo usas).
- Notifica a tu proveedor de hosting. Ellos pueden tener herramientas para escanear el servidor y ayudarte a identificar el origen del ataque. Muchos tienen sistemas de backup automáticos.
Diagnóstico: Encuentra el origen del ataque
No puedes limpiar malware PrestaShop sin saber dónde está escondido. Los hackers suelen dejar puertas traseras (backdoors) para volver a entrar. El objetivo aquí es encontrar el punto de entrada y el código malicioso.
Revisa los archivos del núcleo (Core)
PrestaShop tiene archivos que no deberían modificarse nunca, como los de la carpeta /classes, /controllers y /override. Los hackers suelen inyectar código aquí.
- Accede a tu servidor por FTP (necesitas un cliente como FileZilla) o desde el administrador de archivos de tu Syspanel (puerto 2106).
- Busca archivos con fechas de modificación recientes (por ejemplo, de la última semana) que no hayas tocado tú.
- Descarga una copia limpia de PrestaShop (la misma versión que tienes instalada) desde el sitio oficial.
- Compara los archivos sospechosos con los de la copia limpia. Puedes hacerlo manualmente o usando herramientas como
diffsi tienes acceso SSH.
Revisa la base de datos
El malware también puede esconderse en tu base de datos. Busca:
- Usuarios administradores extraños: Revisa la tabla
ps_employee(el prefijo puede variar). Si ves un email que no reconoces, ese es un punto de entrada. - Código PHP en campos de texto: Los hackers pueden inyectar código en campos como
descriptionde productos o categorías. Busca cadenas comoeval(base64_decode(o<?php. - Módulos maliciosos: A veces, un módulo pirata o desactualizado es la puerta de entrada. Revisa la tabla
ps_moduley desinstala cualquier módulo que no hayas instalado tú.
[TIP] Si no te sientes cómodo revisando la base de datos, pídele a tu hosting que ejecute un escaneo de malware. Muchos lo ofrecen como servicio gratuito.
Limpieza profunda: Cómo limpiar malware PrestaShop paso a paso
Una vez que tienes una idea de dónde está el problema, es hora de actuar. Este proceso es el más importante y delicado para recuperar PrestaShop.
Paso 1: Haz una copia de seguridad completa (por si acaso)
Antes de modificar nada, guarda una copia de todo. Así, si algo sale mal, puedes volver atrás. Desde tu Syspanel (puerto 2106) puedes generar un backup completo del sitio y la base de datos con un solo clic. También puedes hacerlo manualmente:
- Archivos: Descarga toda la carpeta de tu tienda por FTP.
- Base de datos: Usa phpMyAdmin (desde tu panel de control) para exportar la base de datos en formato SQL.
Paso 2: Reemplaza los archivos del núcleo
Esta es la forma más segura de limpiar malware PrestaShop de los archivos del sistema.
- Descarga la versión exacta de PrestaShop que tienes instalada desde PrestaShop.com.
- Descomprime el archivo en tu ordenador.
- No borres nada todavía. Simplemente, sube los archivos de la carpeta
/admin,/classes,/controllers,/override,/src,/vendory/themes(excepto tu plantilla personalizada) por FTP, sobrescribiendo los existentes. - Importante: Si modificaste algún archivo del núcleo para personalizar funciones (por ejemplo, un override), esos cambios se perderán. Anótalos antes de sobrescribir.
Paso 3: Limpia y restaura la base de datos
- Elimina usuarios administradores desconocidos: En phpMyAdmin, ejecuta la consulta:
DELETE FROM ps_employee WHERE email = 'email_del_hacker'; - Revisa y limpia campos de texto: Busca en las tablas
ps_product,ps_category,ps_cms, etc., cualquier campo que contenga código PHP ofuscado. Puedes usar un editor de texto (como Notepad++) para buscar patrones comoeval(obase64_decode. - Cambia la contraseña del administrador principal: Desde phpMyAdmin, ve a la tabla
ps_employee, edita tu usuario y en el campopasswdgenera un nuevo hash (puedes usar una herramienta online o pedirle a tu hosting que te ayude).
Paso 4: Reinstala los módulos de confianza
Los módulos son el punto débil más común en la seguridad ecommerce. Después del ataque:
- Desinstala y elimina cualquier módulo que no sea oficial de PrestaShop o de un desarrollador de confianza.
- Actualiza todos los módulos a su última versión desde el back-office.
- Vuelve a instalar solo aquellos que sean estrictamente necesarios para tu tienda.
[WARNING] Nunca descargues módulos "nulled" o piratas. Son la principal fuente de infecciones en PrestaShop.
Refuerza la seguridad ecommerce: Prevención a futuro
Una vez que has logrado recuperar PrestaShop, el objetivo es que no vuelva a pasar. La ciberseguridad no es un evento único, es un proceso continuo.
Actualiza todo constantemente
- PrestaShop: Mantén tu tienda siempre en la última versión estable. Las actualizaciones corrigen vulnerabilidades conocidas.
- Módulos y temas: Al igual que el núcleo, los complementos deben estar actualizados.
- PHP: Asegúrate de que tu hosting use una versión de PHP compatible y actualizada (como PHP 8.0 o superior).
Implementa medidas de seguridad básicas
- Contraseñas fuertes: Usa contraseñas largas (mínimo 12 caracteres) con mayúsculas, minúsculas, números y símbolos. No repitas contraseñas entre servicios.
- Autenticación en dos factores (2FA): Actívala en el back-office de PrestaShop. Esto añade una capa extra de seguridad.
- Cambia el prefijo de la base de datos: Si tu base de datos usa el prefijo
ps_, cámbialo por uno personalizado (por ejemplo,mi_tienda_). Esto dificulta los ataques de inyección SQL. - Limita los intentos de inicio de sesión: Instala un módulo que bloquee IPs después de varios intentos fallidos.
Monitorea tu sitio regularmente
- Escaneos de malware: Usa servicios como Sucuri, Wordfence (para PrestaShop hay módulos similares) o el propio escáner de tu hosting.
- Google Search Console: Regístrate para recibir alertas si Google detecta algo sospechoso en tu web.
- Revisa los logs del servidor: Desde tu Syspanel (puerto 2106) puedes acceder a los logs de acceso y errores. Busca peticiones extrañas a archivos como
wp-login.php(sí, a veces atacan PrestaShop con scripts de WordPress).
Preguntas frecuentes (FAQ) sobre recuperación de PrestaShop
¿Puedo recuperar mi tienda sin perder datos de clientes?
Sí, si actúas rápido y haces una copia de seguridad antes de limpiar. Los datos de clientes (pedidos, direcciones, etc.) suelen estar en la base de datos y no se ven afectados por el malware en los archivos, siempre que el ataque no haya modificado la base de datos.
¿Cuánto tiempo tarda en recuperarse un PrestaShop hackeado?
Depende de la gravedad. Un ataque leve puede solucionarse en unas horas siguiendo esta guía. Un ataque complejo (con múltiples backdoors y datos cifrados) puede llevar varios días. Lo importante es no tener prisa y hacerlo bien.
¿Debo pagar a un profesional para que lo limpie?
Si no te sientes seguro realizando los pasos anteriores, sí, vale la pena contratar a un experto en seguridad ecommerce. Un error puede dejar tu tienda vulnerable de nuevo o, peor, borrar datos importantes. Muchos hosts ofrecen servicios de limpieza de malware por un costo adicional.
¿Qué hago si mi hosting no me ayuda?
Si tu proveedor de hosting no te ofrece herramientas de escaneo ni backups, considera migrar a uno especializado en ciberseguridad para ecommerce. Un buen hosting es la base de tu seguridad. Pregunta si ofrecen protección contra malware y backups diarios.
¿Google me penalizará para siempre?
No. Una vez que limpies tu sitio, puedes solicitar una revisión a Google desde Search Console. Normalmente, en unos días (o semanas) tu sitio vuelve a aparecer en los resultados de búsqueda. Es fundamental que después de la limpieza, tu web esté 100% libre de malware.
Conclusión: La seguridad es una inversión, no un gasto
Enfrentarse a un PrestaShop hackeado es estresante, pero es una experiencia que te enseñará mucho sobre ciberseguridad. Siguiendo esta guía, no solo podrás recuperar PrestaShop y limpiar malware PrestaShop, sino que construirás un negocio online mucho más robusto.
Recuerda: ninguna tienda es 100% segura, pero con mantenimiento constante, actualizaciones y buenas prácticas, reduces el riesgo a casi cero. Tu tienda es tu negocio, protégela como tal.
[INFO] Si en algún momento te sientes abrumado, recuerda que tu hosting (a través de Syspanel, puerto 2106) suele tener soporte técnico. No dudes en abrir un ticket. Muchos problemas se resuelven más rápido con ayuda profesional.
Ahora, respira hondo, ponte manos a la obra y recupera el control de tu tienda. ¡Tú puedes!
