Saltar al contenido

ps_facetedsearch (CVE-2026-54159): cómo saber si tu PrestaShop está afectado

En resumen

Tu tienda está afectada si tiene el módulo oficial ps_facetedsearch (la búsqueda por facetas, los filtros del catálogo por precio, marca o atributos) en una versión de la 3.0.0 a la 4.0.3. El fallo, CVE-2026-54159, se publicó el 3 de junio de 2026 y es crítico (CVSS 10): permite ejecutar código en el servidor sin usuario ni contraseña. Se corrige actualizando el módulo a la 4.0.4 o posterior. Si no puedes, el aviso oficial propone quitar los filtros deslizantes de precio y peso, vaciar la caché de filtros y revisar si hay archivos PHP nuevos en la carpeta del módulo.

Casi todas las tiendas PrestaShop 1.7, 8 y 9 tienen instalado ps_facetedsearch: es el módulo oficial que pone los filtros en las categorías del catálogo. Por eso este aviso importa más que el de un módulo de terceros cualquiera. Aquí explico qué versiones están afectadas, cómo comprobar la tuya y qué hacer si tu tienda es antigua y no puede instalar la versión corregida. No explico cómo se aprovecha el fallo: para protegerte no hace falta.

Por Jose SorianoÚltima actualización: 5 min de lectura

Qué ha pasado

El 3 de junio de 2026, el equipo de PrestaShop publicó en GitHub el aviso GHSA-m5f5-28qr-9g9r: un fallo de inyección de objetos PHP en la caché de filtros de ps_facetedsearch que permite ejecutar código en el servidor sin estar registrado. Tiene el identificador CVE-2026-54159 y la gravedad máxima, 10 sobre 10 (CVSS 3.1). El NVD lo registró el 17 de julio de 2026 y el INCIBE-CERT lo recoge en su lista de vulnerabilidades.

Ejecutar código en el servidor es lo peor que le puede pasar a una tienda: quien lo consigue puede dejar una puerta trasera, leer la base de datos con los clientes y los pedidos o meter un script que copie las tarjetas en el pago.

Versiones afectadas y corregidas

Versión de ps_facetedsearchEstadoQué hacer
Anterior a 3.0.0No incluida en el avisoEs una versión muy antigua: revisa el resto de avisos y planifica la actualización de la tienda
3.0.0 a 4.0.3AfectadaActualizar a 4.0.4 o posterior; si no se puede, medidas temporales
4.0.4Corregida (3 de junio de 2026)Nada urgente por este fallo
5.0.0 y posterioresCorregidasRama para PrestaShop 8.2 y posteriores

Fuente: aviso GHSA-m5f5-28qr-9g9r y página de versiones del módulo en GitHub, consultados el 23 de octubre de 2026. Algunas bases, como la del INCIBE, escriben el rango como «hasta la 4.0.4»: la 4.0.4 es la que lo corrige.

Cómo ver qué versión tienes

En el back-office, Módulos → Gestor de módulos y busca «facet» o «Búsqueda por facetas»: verás la versión instalada. Desde la base de datos (cambia ps_ por tu prefijo):

SELECT name, version, active FROM ps_module WHERE name = 'ps_facetedsearch';

Si alguien actualizó el módulo subiendo archivos por FTP, la versión real está en modules/ps_facetedsearch/ps_facetedsearch.php, en la línea $this->version. Si el módulo no aparece en ninguno de los dos sitios, no lo tienes instalado y este aviso no te afecta.

Cómo corregirlo

Si tu tienda puede instalar la 4.0.4 o posterior

Haz una copia de seguridad de archivos y base de datos y actualiza el módulo desde el gestor de módulos o subiendo el ZIP oficial de la página de versiones del módulo. Después, vacía la caché de PrestaShop y prueba los filtros de una categoría y una compra completa. En PrestaShop 8.2 y 9, instala la rama 5.x, que es la actual.

Si tu tienda sigue en 1.7 y no puede actualizar el módulo

Es el caso difícil. Antes de nada, comprueba en el archivo config.xml del ZIP de la 4.0.4 con qué versiones de PrestaShop dice ser compatible, y pruébalo en una copia de la tienda. Si no funciona con tu versión, el propio aviso describe medidas para mientras tanto:

  1. Quita los filtros deslizantes de precio y de peso de las plantillas de filtros del módulo (en su configuración, edita cada plantilla y desactiva esos dos filtros). El fallo entra por ellos.
  2. Vacía la caché de filtros del módulo y la caché general de PrestaShop.
  3. Aplica la corrección manual que describe el aviso en el archivo src/Filters/Block.php del módulo, si existe en tu versión. Es un cambio de una línea, pero debe hacerlo un desarrollador y hay que repetirlo si reinstalas el módulo.
  4. Filtra en el cortafuegos (el de tu hosting o tu CDN) las peticiones de búsqueda con datos serializados de PHP, como propone el aviso. Ayuda, pero no sustituye a lo anterior.

Si no usas los filtros del catálogo, lo más seguro es desinstalar el módulo y borrar su carpeta. Y en cualquier caso, esto es un parche sobre una tienda que ya no recibe correcciones: PrestaShop 1.7 dejó de tenerlas con la salida de la 9.0. Lo explico en ¿es seguro seguir con PrestaShop 1.7? y el salto, en actualizar PrestaShop.

Comprueba si ya lo han usado

Actualizar cierra la puerta, pero no echa a quien ya haya entrado. Si tu tienda tuvo una versión afectada desde junio, revisa al menos esto. Los comandos solo leen:

# PHP en la carpeta del módulo modificados en los últimos 150 días
find modules/ps_facetedsearch -name "*.php" -mtime -150 -printf "%TY-%Tm-%Td  %p\n" | sort -r

# Peticiones con objetos PHP serializados en la URL (O: codificado como O%3A)
grep -E "O%3A[0-9]+%3A" access.log | head

La forma fiable es comparar cada archivo de modules/ps_facetedsearch/ con el ZIP oficial de tu misma versión: cualquier archivo .php que sobre o que no coincida es una mala señal. Las fechas se pueden falsear, así que no te fíes solo del primer comando. Si encuentras algo, trata la tienda como hackeada: empieza por el pago, como explico en qué hacer si hackean tu PrestaShop.

Si prefieres que lo haga yo

Fuentes

Preguntas frecuentes

¿Qué es ps_facetedsearch?

Es el módulo oficial de PrestaShop que añade los filtros del catálogo (por precio, marca, atributos o características) en las páginas de categoría. Viene con la instalación estándar de PrestaShop 1.7, 8 y 9, así que lo tienen casi todas las tiendas.

¿Me afecta CVE-2026-54159?

Si tienes ps_facetedsearch en una versión de la 3.0.0 a la 4.0.3, sí. Mira la versión en Módulos → Gestor de módulos. Con la 4.0.4 o posterior, o sin el módulo instalado, no te afecta.

Mi tienda está en PrestaShop 1.7, ¿puedo instalar la versión corregida?

Depende de tu versión exacta: comprueba en el config.xml del ZIP de la 4.0.4 con qué versiones de PrestaShop es compatible y pruébalo en una copia. Si no funciona, aplica las medidas temporales del aviso (quitar los filtros de precio y peso, vaciar la caché y la corrección manual) y planifica la actualización de la tienda.

¿Basta con desactivar el módulo?

Si no usas los filtros, lo seguro es desinstalarlo y borrar su carpeta. Un módulo desactivado sigue con sus archivos en el servidor.

Tenía una versión afectada, ¿me han hackeado?

No necesariamente, pero hay que comprobarlo: busca archivos PHP nuevos o modificados en modules/ps_facetedsearch/ comparándolos con el original y revisa los registros de acceso. Si aparece algo, trata la tienda como hackeada y empieza por revisar el pago.

¿Está intacta tu web? Compruébalo ahora.

Análisis externo gratuito. Sin registro y sin instalar nada.

Recibir el resultado en PDF y avisos 30 días (opcional)

Protección de datos. Responsable: Jose Soriano Castro. Finalidad: enviarte el PDF del diagnóstico, avisarte por email durante 30 días si se publica un fallo de seguridad que afecte a tu web (con un análisis de repaso el día 30) y responder por escrito a tu consulta; las ofertas, solo si marcas esa casilla. Legitimación: tu consentimiento. Destinatarios: nadie, salvo obligación legal. Puedes darte de baja cuando quieras con el enlace de cada correo o escribiéndome. Derechos: acceso, rectificación, supresión, oposición, limitación y portabilidad. Política de privacidad.

  • Sin acceso FTP
  • Solo lectura
  • Sin datos de clientes

Preferencias de cookies