Introducción
PrestaShop es una plataforma robusta para ecommerce, pero como cualquier software web, si no se configura y protege adecuadamente, puede quedar expuesta a ataques comunes como inyecciones, accesos no autorizados, subida de archivos maliciosos o explotación de módulos vulnerables.
En esta guía te mostramos cómo blindar tu PrestaShop contra ataques frecuentes, con prácticas probadas en seguridad web, configuración de servidor, limpieza de módulos, permisos, y más.
Índice
- 1. Proteger el acceso al backoffice
- 2. Controlar permisos de archivos y carpetas
- 3. Desactivar funciones PHP inseguras
- 4. Revisar y limpiar módulos innecesarios
- 5. Evitar exposición de archivos sensibles
- 6. Bloquear ejecución en carpetas de subida
- 7. Activar reglas de seguridad en el servidor
- 8. Conclusión y checklist
1. Proteger el acceso al backoffice
- 🔐 Cambia la ruta de acceso desde `/admin123/` a algo personalizado
- 💂♂️ Aplica protección por IP o contraseña adicional (htpasswd)
- 🔑 Usa doble autenticación (2FA)
2. Permisos recomendados de archivos
Carpeta / archivo | Permiso recomendado |
---|---|
/config, /upload, /download | 750 |
Archivos .php | 644 |
.htaccess | 444 |
✔️ Usa chmod
y chown
desde consola para aplicarlos correctamente.
3. Desactivar funciones PHP peligrosas
Desde php.ini
o panel de hosting:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
🔒 Estas funciones no son necesarias en PrestaShop y suelen ser objetivo de exploits.
4. Limpieza de módulos
- 🧹 Elimina módulos inactivos desde el backoffice o por SQL
- 💣 Revisa módulos de terceros sin mantenimiento
- 🧠 Desinstala los que no uses, no solo los desactives
DELETE FROM ps_module WHERE active = 0;
5. Evitar exposición de archivos sensibles
Bloquea el acceso directo a rutas como:
/config/, /var/, /vendor/, /classes/
✔️ Usa reglas en `.htaccess` o configuración del servidor:
RewriteRule ^(config|var|vendor|classes) - [F,L]
6. Bloquear ejecución de PHP en carpetas inseguras
Ejemplo para `/upload`:
<FilesMatch "\.php$"> Deny from all </FilesMatch>
💡 Crea un `.htaccess` con esta regla en cada carpeta de subida.
7. Seguridad desde el servidor
- Activa firewall o WAF si usas NGINX/Apache
- Usa CDN con protección como Cloudflare
- Revisa logs de errores o accesos sospechosos
- Configura alertas de integridad de archivos
8. Conclusión y checklist final
✅ Checklist rápida:
- Backoffice oculto o protegido
- Permisos seguros en carpetas clave
- Funciones PHP peligrosas desactivadas
- Módulos limpios y actualizados
- Archivos sensibles protegidos
- Firewall activo + logs revisados
📩 ¿Quieres que revisemos tu PrestaShop o lo reforcemos con reglas personalizadas? Escríbenos.