CVE-2026-54159

PrestaShop ps_facetedsearch is a module that adds layered navigation filters. From 3.0.0 until 4.0.4, the ps_facetedsearch module rebuilds selected search filters from the request URL, and the value of a slider filter, price or weight, is taken from the URL without sufficient validation and stored in an internal filter-block cache where it is serialized and later read back with a raw native unserialize() in src/Filters/Block.php. By crafting that value, an unauthenticated attacker can smuggle a malicious serialized PHP object into the cache, and when it is deserialized, a gadget chain writes an arbitrary PHP file inside the modules/ps_facetedsearch/ directory, which is then used as a webshell to run commands on the server. This issue is fixed in version 4.0.4.
Configurations

No configuration.

History

24 Oct 2026, 20:10

Type Values Removed Values Added
Summary
  • (es) PrestaShop ps_facetedsearch es un módulo que añade filtros de navegación por capas. Desde la versión 3.0.0 hasta la 4.0.4, el módulo ps_facetedsearch reconstruye los filtros de búsqueda seleccionados a partir de la URL de la solicitud, y el valor de un filtro deslizante, precio o peso, se toma de la URL sin validación suficiente y se almacena en una caché interna de bloques de filtro donde se serializa y luego se vuelve a leer con una función unserialize() nativa en bruto en src/Filters/Block.php. Al manipular ese valor, un atacante no autenticado puede introducir un objeto PHP serializado malicioso en la caché, y cuando se deserializa, una cadena de gadgets escribe un archivo PHP arbitrario dentro del directorio modules/ps_facetedsearch/, que luego se utiliza como una webshell para ejecutar comandos en el servidor. Este problema se corrige en la versión 4.0.4.

Information

Published : 2026-07-17 21:17

Updated : 2026-10-24 20:10


NVD link : CVE-2026-54159

Mitre link : CVE-2026-54159

CVE.ORG link : CVE-2026-54159


JSON object : View

Products Affected

No product.

CWE
CWE-74

Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')