🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo proteger tu tienda PrestaShop de vulnerabilidades comunes

Actualizado el 1 de febrero de 2026

¿Por qué PrestaShop es un objetivo para los ciberdelincuentes?

PrestaShop es una de las plataformas de comercio electrónico más populares del mundo, con más de 300.000 tiendas activas. Esa popularidad tiene un lado negativo: los atacantes saben que hay muchísimas tiendas con configuraciones débiles, módulos desactualizados o contraseñas fáciles de adivinar. Y como una tienda online maneja datos de clientes, tarjetas de crédito y direcciones, el botín es muy jugoso.

La buena noticia es que proteger PrestaShop no requiere ser un experto en ciberseguridad. La mayoría de las vulnerabilidades se aprovechan por descuidos básicos: no actualizar el sistema, usar módulos piratas o tener credenciales débiles. En esta guía te voy a explicar, paso a paso y sin tecnicismos, cómo blindar tu tienda contra los ataques más comunes.

Vamos a empezar por lo fundamental: entender qué es lo que más atacan los ciberdelincuentes. Si sabes dónde están los puntos débiles, podrás reforzarlos antes de que alguien los explote.


Las vulnerabilidades más comunes en PrestaShop (y cómo te afectan)

Antes de pasar a las soluciones, es importante que reconozcas las amenazas típicas. Estas son las cinco vulnerabilidades que más vemos en tiendas comprometidas:

1. Inyección SQL (SQL Injection)

Un atacante introduce código malicioso en los campos de búsqueda, formularios o URLs de tu tienda para acceder a tu base de datos. Si lo consigue, puede robar datos de clientes, modificar precios o incluso borrar toda tu tienda.

2. Cross-Site Scripting (XSS)

Aquí el atacante inyecta scripts maliciosos en las páginas que ven tus clientes. Esos scripts pueden robar cookies de sesión, redirigir a páginas falsas o capturar datos de tarjetas de crédito cuando el cliente introduce sus datos en un formulario que parece legítimo.

3. Ataques de fuerza bruta al panel de administración

Tu panel de administración (el /admin de tu tienda) es la puerta principal. Si usas una contraseña débil como "admin123" o "123456", un bot puede probar miles de combinaciones por minuto hasta adivinar la tuya. Una vez dentro, el atacante tiene control total.

4. Módulos y temas piratas o desactualizados

Los módulos son el corazón de PrestaShop, pero también son su talón de Aquiles. Los módulos pirateados suelen tener código malicioso escondido. Y los módulos legítimos que no actualizas pueden tener fallos de seguridad conocidos que los atacantes explotan fácilmente.

5. Falta de protección en el archivo de configuración

El archivo config/settings.inc.php (o app/config/parameters.php en versiones modernas) contiene las credenciales de tu base de datos. Si está expuesto por un error de configuración del servidor, cualquiera puede descargarlo y obtener acceso directo a tu información más sensible.


Paso 1: Actualiza PrestaShop y todos tus módulos (es lo más importante)

Si solo haces una cosa después de leer este artículo, que sea esta: actualizar PrestaShop. La mayoría de los ataques exitosos que vemos en soporte técnico son contra tiendas que llevan años sin actualizar. Los desarrolladores de PrestaShop lanzan parches de seguridad constantemente, y si no los instalas, estás dejando la puerta abierta.

¿Cómo actualizar PrestaShop de forma segura?

  1. Haz una copia de seguridad completa de tu tienda (archivos y base de datos). Esto es obligatorio antes de cualquier actualización.
  2. Consulta la compatibilidad: revisa que tus módulos y tu tema sean compatibles con la nueva versión.
  3. Actualiza primero los módulos y el tema, luego el núcleo de PrestaShop.
  4. Usa el asistente de actualización 1-Click que viene en el panel de administración. Es lo más sencillo.
  5. Desactiva el modo mantenimiento durante la actualización para que tus clientes no vean errores.
  6. Prueba todo después: carrito, pagos, envíos, registro de usuarios.

[WARNING] No actualices nunca desde un hosting compartido muy limitado si tu tienda es grande. Si tienes muchos productos o mucho tráfico, la actualización puede agotar la memoria del servidor y corromper la instalación. En ese caso, contacta con tu proveedor de hosting para que te ayude.

¿Con qué frecuencia debo actualizar?

Lo ideal es revisar actualizaciones al menos una vez al mes. PrestaShop lanza parches menores de seguridad con bastante frecuencia, y los módulos oficiales también. Activa las notificaciones automáticas en tu panel para que te avise cuando haya novedades.


Paso 2: Usa contraseñas robustas y protección de doble factor (2FA)

Las contraseñas débiles son la causa de más del 60% de los accesos no autorizados a tiendas PrestaShop. Y no me refiero solo a la contraseña del administrador: también las de los empleados, las de la base de datos y las de acceso FTP.

Reglas básicas para contraseñas seguras:

  • Mínimo 12 caracteres, combinando mayúsculas, minúsculas, números y símbolos.
  • No uses palabras del diccionario, fechas de nacimiento ni nombres de mascotas.
  • No reutilices la misma contraseña para el panel de administración y para tu correo personal.
  • Cambia las contraseñas cada 3-6 meses y siempre que un empleado deje de trabajar contigo.

Activa la autenticación de doble factor (2FA)

PrestaShop 1.7 y versiones posteriores incluyen 2FA nativo para el panel de administración. Actívalo en Parámetros avanzados > Administración > Seguridad. Con esto, aunque alguien robe tu contraseña, necesitará también el código de tu teléfono para entrar.

[TIP] Si tu versión de PrestaShop no tiene 2FA nativo, instala un módulo de doble factor verificado. No lo descargues de sitios piratas: usa siempre el marketplace oficial o el sitio del desarrollador.


Paso 3: Protege el acceso al panel de administración

Tu panel de administración es la pieza más valiosa. Además de la contraseña y el 2FA, puedes tomar medidas extra para que sea casi imposible de atacar.

Cambia la URL del administrador

Por defecto, el panel está en /admin o /administrator. Los bots de ataque ya conocen esas rutas y las escanean constantemente. Cambia la carpeta del administrador durante la instalación o usa un módulo de renombrado. Verás que los intentos de acceso caen drásticamente.

Limita el acceso por IP

Si trabajas siempre desde la misma conexión, puedes restringir el acceso al panel solo a tu IP. Esto se hace desde el archivo .htaccess de tu servidor o desde el panel de control del hosting (Syspanel, que se accede por el puerto 2106). Añade estas líneas:

<Files admin>
Order Deny,Allow
Deny from all
Allow from TU_IP_PUBLICA
</Files>

[INFO] Si no sabes tu IP pública, búscala en Google escribiendo "cuál es mi IP". Ten en cuenta que si tu IP es dinámica, tendrás que actualizar esta configuración periódicamente.

Añade protección extra con el archivo .htaccess

Dentro de tu carpeta de administración, crea o modifica un archivo .htaccess con estas líneas para bloquear intentos de fuerza bruta:

<Limit GET POST PUT DELETE>
Order Allow,Deny
Allow from all
</Limit>

# Bloquear intentos de fuerza bruta
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{REQUEST_METHOD} POST
RewriteCond %{HTTP_REFERER} !^https://tudominio.com/ [NC]
RewriteRule .* - [F]
</IfModule>

Paso 4: Instala solo módulos seguros y de fuentes confiables

Los módulos son la forma más rápida de ampliar las funciones de tu tienda, pero también son el vector de ataque número uno. Un módulo mal codificado puede abrir agujeros de seguridad enormes.

¿Cómo saber si un módulo es seguro?

  1. Cómpralo en el marketplace oficial de PrestaShop o del desarrollador original. Evita sitios de descargas gratuitas o foros piratas.
  2. Comprueba las reseñas y la reputación del desarrollador. Si tiene pocas descargas y valoraciones negativas, desconfía.
  3. Mira la fecha de la última actualización: si un módulo lleva más de 2 años sin actualizarse, es una señal de alarma.
  4. Revisa los permisos que pide: si un módulo de envíos te pide acceso a tu base de datos de clientes, algo huele mal. Los módulos legítimos solo piden los permisos imprescindibles.

Desinstala los módulos que no uses

Cada módulo instalado es una superficie de ataque adicional. Si tienes módulos que no utilizas, desinstálalos y elimina sus archivos. No basta con desactivarlos: hay que borrarlos del servidor.

[WARNING] Nunca instales módulos "nulled" (piratas). Suelen contener backdoors que permiten al atacante acceder a tu tienda cuando quiera. No vale la pena el riesgo por ahorrarte unos euros.


Paso 5: Protege la base de datos y los archivos de configuración

La base de datos contiene toda la información sensible de tu tienda. Si un atacante accede a ella, es game over. Aquí tienes las medidas clave:

1. Cambia el prefijo de las tablas

Durante la instalación, PrestaShop usa por defecto ps_ como prefijo de las tablas. Cámbialo a algo aleatorio como myx9q_. Esto dificulta los ataques de inyección SQL porque el atacante no conoce los nombres de las tablas.

2. Protege el archivo de configuración

En versiones modernas, el archivo app/config/parameters.php contiene las credenciales de la base de datos. Asegúrate de que el servidor no pueda servirlo directamente. Añade esto a tu .htaccess raíz:

<Files "parameters.php">
Order Allow,Deny
Deny from all
</Files>

3. Usa una base de datos separada para tu tienda

Si tienes varios proyectos en el mismo servidor, no compartas la base de datos. Cada tienda debe tener su propia base de datos con su propio usuario y contraseña. Esto limita el daño si una de tus aplicaciones se ve comprometida.


Paso 6: Mantén tu servidor y hosting actualizados

La seguridad de tu tienda no depende solo de PrestaShop: también depende del servidor donde está alojada. Un servidor desactualizado es como una tienda con las cerraduras rotas.

¿Qué debe tener un hosting seguro para PrestaShop?

  • PHP actualizado (idealmente PHP 8.1 o superior). Las versiones antiguas de PHP tienen vulnerabilidades conocidas.
  • Conexión HTTPS con certificado SSL válido. Esto cifra los datos entre tu tienda y tus clientes.
  • Firewall de aplicación web (WAF) que bloquee ataques comunes.
  • Copias de seguridad automáticas diarias que puedas restaurar con un clic.

[TIP] Si usas un panel de control como Syspanel (el antiguo HestiaCP), puedes acceder a todas estas funciones desde el puerto 2106. Allí encontrarás opciones para actualizar PHP, gestionar certificados SSL y configurar copias de seguridad. No necesitas ser un experto en servidores: el panel te guía paso a paso.


Paso 7: Activa los registros de actividad y monitoriza tu tienda

No puedes proteger lo que no ves. PrestaShop registra los intentos de acceso y las acciones de los usuarios en el panel de administración. Revisa estos registros periódicamente para detectar comportamientos sospechosos.

Qué revisar en los registros:

  • Intentos de acceso fallidos al panel: si ves decenas de intentos fallidos, alguien está intentando entrar.
  • Cambios en la configuración que no has hecho tú.
  • Nuevos administradores creados sin tu conocimiento.
  • Módulos instalados o desinstalados recientemente.

Herramientas de monitorización externa:

Puedes usar servicios gratuitos como Google Search Console para detectar si tu tienda ha sido hackeada (te avisará si aparecen páginas de spam en tu dominio). También puedes configurar alertas de Google para tu dominio y ver si aparece contenido extraño.


Paso 8: Haz copias de seguridad frecuentes (y pruébalas)

Las copias de seguridad son tu red de seguridad. Si todo lo demás falla y tu tienda es hackeada, una copia reciente te permite restaurar la tienda en minutos en lugar de perder semanas de trabajo.

Reglas de oro para las copias de seguridad:

  • Haz una copia completa (archivos + base de datos) al menos una vez por semana.
  • Guarda las copias en un lugar distinto a tu servidor principal (Google Drive, Dropbox, otro servidor).
  • Prueba la restauración al menos una vez al mes. Una copia que no se puede restaurar no sirve de nada.

[INFO] En Syspanel (puerto 2106) puedes configurar copias de seguridad automáticas programadas. Elige la frecuencia según el volumen de pedidos de tu tienda: si haces muchas ventas, haz copias diarias.


Paso 9: Educa a tu equipo y a tus empleados

La seguridad no es solo técnica: también es humana. Un empleado con malas prácticas puede abrir la puerta a un ataque sin darse cuenta.

Normas básicas para tu equipo:

  • No abrir correos sospechosos ni hacer clic en enlaces desconocidos (phishing).
  • Usar contraseñas diferentes para cada servicio.
  • No compartir credenciales por chat o correo.
  • Cerrar sesión en el panel de administración cuando terminen de trabajar.
  • No conectar dispositivos USB personales a los ordenadores de trabajo.

Crea roles de usuario con permisos limitados

PrestaShop te permite crear empleados con permisos específicos. Si un empleado solo necesita gestionar pedidos, no le des acceso a la configuración ni a los módulos. Así, si su cuenta es comprometida, el atacante tendrá un acceso limitado.


Preguntas frecuentes (FAQ) sobre seguridad en PrestaShop

¿Mi tienda PrestaShop puede ser hackeada si uso hosting compartido?

Sí, es posible, pero no es lo más común. El riesgo principal en hosting compartido es que otro sitio del mismo servidor sea hackeado y el atacante intente escalar a otros sitios. Para minimizar el riesgo, elige un hosting que aísle las cuentas (como los que usan contenedores o máquinas virtuales).

¿Qué hago si mi tienda ya ha sido hackeada?

  1. Pon tu tienda en modo mantenimiento para que los clientes no vean el problema.
  2. Cambia todas las contraseñas (administrador, base de datos, FTP, correo).
  3. Restaura la copia de seguridad más reciente que tengas.
  4. Actualiza PrestaShop y todos los módulos a las últimas versiones.
  5. Escanéa tu servidor en busca de archivos maliciosos (puedes usar herramientas como Maldet o ClamAV).
  6. Contacta con tu proveedor de hosting para que te ayuden a limpiar el servidor.

¿Los módulos gratuitos son menos seguros que los de pago?

No necesariamente. Hay módulos gratuitos excelentes y muy seguros. La clave no es el precio, sino la reputación del desarrollador y la frecuencia de actualizaciones. Un módulo gratuito que se actualiza cada mes es más seguro que uno de pago abandonado hace dos años.

¿Es necesario usar un CDN o firewall para PrestaShop?

No es obligatorio, pero es muy recomendable. Un CDN como Cloudflare añade una capa de protección contra ataques DDoS, filtra tráfico malicioso y mejora la velocidad de carga. La versión gratuita ya ofrece protección básica suficiente para la mayoría de tiendas.

¿Cada cuánto tiempo debo hacer una copia de seguridad?

Depende del volumen de pedidos. Para una tienda pequeña con pocos pedidos diarios, una copia semanal es suficiente. Para ti

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel