Error 500 en PrestaShop o pantalla en blanco: qué hacer ya
Tu tienda PrestaShop da error 500 o se queda en blanco: qué hacer ya sin empeorarlo, cómo ver el error real y cómo…
El 20 de octubre saltó un aviso que puso en vilo a medio internet: dos fallos graves en PHP, el lenguaje con el que funciona tu tienda PrestaShop, que permiten a un desconocido tomar el control del servidor sin usuario ni contraseña. Se les conoce como PHP2Shell. PHP publicó el arreglo el 21 de octubre, y lo que tienes que hacer depende de una sola cosa: la versión de PHP en la que corre tu tienda.
Te lo contamos sin tecnicismos: qué ha pasado, cómo saber si te afecta, qué hacer hoy y qué hacer si tu tienda está en una versión que no recibe el arreglo.
PHP es el motor que hay debajo de PrestaShop, WordPress, Magento y la mayoría de tiendas y webs del mundo. Los dos fallos, registrados como CVE-2026-109618 y CVE-2026-109619, tienen una nota de gravedad de 9,2 sobre 10. En la práctica, quien sepa aprovecharlos puede ejecutar lo que quiera en tu servidor: dejar una puerta trasera, robar los datos de tus clientes o meter en tu tienda un falso captcha como el de ClickFix.
Lo que lo hace distinto de otros avisos es que el ataque no pasa por PrestaShop ni por ningún módulo. Ocurre en PHP, antes de que tu tienda llegue a leer la visita. Da igual lo bien cuidada que esté: si el PHP del servidor es vulnerable, la tienda también.
Y la información se filtró antes de tiempo. La empresa de seguridad Sansec cuenta que junto al aviso apareció la captura de una herramienta de ataque ya preparada, y esperaba ataques masivos en cuanto se publicara el arreglo. Según la misma fuente, Cloudflare ya había visto los primeros intentos y puso reglas para frenarlos.
Lo más probable es que sí. En su aviso de seguridad, PHP considera en riesgo cualquier instalación que sirva páginas web, sea cual sea la forma en que el servidor la ejecuta, y el riesgo más alto en los servidores Apache con mod_php, donde ya hay un ataque demostrado que funciona sin usuario ni contraseña. Sansec habla de cualquier servidor con PHP 5.4 o posterior, que en la práctica es cualquier tienda PrestaShop en marcha hoy.
La pregunta que de verdad importa es otra: ¿te llega el arreglo? PHP lo ha corregido en las versiones 8.2.35, 8.3.36, 8.4.27 y 8.5.12. PHP 8.1 y las anteriores ya no reciben actualizaciones oficiales: para 7.4, 8.0 y 8.1 PHP ha dejado un arreglo mínimo que hay que compilar a mano, y algunos proveedores de soporte extendido lo incorporan a sus paquetes. Y cada versión de PrestaShop solo funciona con unas versiones concretas de PHP:
Dicho de otra forma: si tu tienda no es PrestaShop 9, no hay una actualización oficial que instalar, porque tu versión de PrestaShop no puede funcionar con un PHP que la tenga. Queda el arreglo mínimo, que es trabajo de técnico y que tampoco te cubrirá ante el próximo fallo.
Entra en el panel de tu tienda y abre Parámetros Avanzados → Información. Ahí verás la versión de PrestaShop y, un poco más abajo, la de PHP. Con esos dos números ya sabes en qué caso estás.
Poner la tienda en mantenimiento desde el panel no te protege esta vez: PHP lee la visita antes de que PrestaShop decida enseñar la página de mantenimiento.
PHP propone unos ajustes del servidor que cierran algunos caminos del ataque, y avisa de que no dejan la tienda segura: solo la actualización lo hace. Sansec añade otra medida de urgencia: bloquear en el servidor el tipo de envío con el que viajan los archivos que se suben a una web. Tiene un precio: mientras esté puesta, nadie puede subir archivos a tu tienda. Ni tú las fotos de un producto nuevo, ni tus clientes un adjunto en el formulario de contacto. La tienda sigue vendiendo con normalidad.
Sirve para ganar unos días, no para quedarse así. La próxima vez que salga un fallo en PHP —y saldrán—, tu tienda volverá a estar en la misma situación, porque PHP 8.1 y anteriores ya no reciben actualizaciones.
Es la pregunta que siempre se aplaza porque la tienda funciona. PHP2Shell es lo que pasa cuando se aplaza demasiado: el día que llega el problema no lo eliges tú, y el arreglo no está a tu alcance.
Pasar a PrestaShop 9 te deja en un PHP que recibe parches durante años. Se hace sin cerrar la tienda, te llevas productos, clientes, pedidos y posiciones en Google, y una tienda pequeña cuesta desde 690 €. Lo contamos entero en actualizar PrestaShop 1.7 o 1.6 a 9, y en nuestra página de migración de PrestaShop 1.6 y 1.7 a 9.
Y si lo que quieres es no tener que estar pendiente de estos avisos, es justo lo que cubre un plan de mantenimiento: alguien que actualiza PHP, PrestaShop y módulos por ti y te avisa antes de que el problema llegue a tu tienda.
Versiones corregidas: 8.2.35, 8.3.36, 8.4.27 y 8.5.12. Para 7.4, 8.0 y 8.1, PHP publica ramas con el arreglo mínimo en código fuente, enlazadas desde su aviso; no son versiones oficiales. Las medidas parciales que da PHP, en el php.ini, en el pool de PHP-FPM (php_admin_value) o en la configuración del servidor, nunca con ini_set() ni .user.ini, y reiniciando todos los procesos:
; CVE-2026-109618
memory_limit = -1
post_max_size = 32M ; 8M si no se suben archivos
; CVE-2026-109619
session.upload_progress.enabled = 0
; solo en PHP 8.5
fatal_error_backtraces = 0
PHP pide no sustituir memory_limit por límites del sistema (RLIMIT_AS, RLIMIT_DATA). La medida de Sansec, bloquear multipart/form-data (rompe todas las subidas de archivos, panel incluido), en Apache:
RewriteEngine On
RewriteCond %{HTTP:Content-Type} multipart/form-data [NC]
RewriteRule ^ - [F]
En Nginx:
if ($http_content_type ~* "multipart/form-data") {
return 403;
}
Con paquetes del repositorio de Remi (habitual en RHEL, AlmaLinux o Rocky), Sansec avisaba de que la actualización no llegaba el mismo día: comprobar la versión instalada con php -v. Con Cloudflare, limitar el puerto 443 del origen a sus rangos de IP; si no, el ataque llega directo a la IP del servidor.
Si no sabes en qué caso estás, si tu hosting no te contesta o si tu tienda es 1.6, 1.7 u 8 y quieres salir de ahí, cuéntanos tu versión de PrestaShop y la de PHP. Te decimos qué hacer hoy y, si hace falta, te damos precio cerrado para pasar a PrestaShop 9.
Tu tienda PrestaShop da error 500 o se queda en blanco: qué hacer ya sin empeorarlo, cómo ver el error real y cómo…
Qué incluye el mantenimiento de una tienda PrestaShop, cuántas horas necesitas y cuánto cuesta al año: tres planes de…
Actualizar PrestaShop 1.6 o 1.7 a la versión 9 sin cerrar la tienda: qué te llevas, qué pasa con tus módulos, Google y…
Un módulo, una app, un servidor que da guerra o algo urgente. Te respondemos en menos de 24 horas, con un presupuesto cerrado con precio y fecha.