Loading...
Skip to main content

CVE-2026-54159 — Vulnerability in prestashop/ps_facetedsearch —...

CRITICAL

prestashop/ps_facetedsearch: PHP Object Injection in faceted search cache allows unauthenticated RCE

Published July 10, 2026Updated July 10, 2026Source: osv

Summary

### Impact A PHP Object Injection vulnerability affects the PrestaShop module `ps_facetedsearch`. The module rebuilds the selected search filters from the request URL. The value of a slider filter (**price** or **weight**) is taken from the URL without sufficient validation, then stored in an internal filter-block cache where it is serialized and later read back with a raw native `unserialize()`. By crafting that value, an attacker can smuggle a malicious serialized PHP object into the cache. When it is deserialized, a gadget chain writes an arbitrary PHP file inside the module directory, which is then used as a webshell to run commands on the server. ### Who is impacted Any shop using a vulnerable version of `ps_facetedsearch` that displays a filter template containing a slider filter (price or weight). Exploitation is remote and **unauthenticated**, a single crafted front-office request is enough, and leads to remote code execution and full compromise of the shop and its server. **Affected versions:** `3.0.0` through `4.0.3` (all versions since 3.0.0, including the latest release). ### Patches Upgrade the `ps_facetedsearch` module to the patched version. Upgrading the module is the best action that removes the vulnerability. Otherwise, you can apply the fix manually in the file `src/Filters/Block.php`: In the `getFromCache()` method, replace the native `unserialize()` call: ```php // Before if (!empty($row)) { return unserialize(current($row)); } // After if (!empty($row)) { return \Tools::unSerialize(current($row)); } ``` ### Until the module is upgraded: - Remove price and weight slider filters from the filter templates that are exposed on the front office. - Clear the faceted-search filter cache, and audit the `modules/ps_facetedsearch/` directory for unexpected PHP files. - Monitor search requests for PHP serialization patterns (`O:`, `;i:`, references to classes such as `Monolog\…`) and block them at the WAF level. ### Resources - Thank you to Frédéric Moreau (Antadis) and Gilles Caudal (Datalinx) for reporting this vulnerability.

Advisory Timeline

  • First published July 10, 2026 (94 days ago).
  • Last revised July 10, 2026 — 0 days after initial publication.

Remediation

Upgrade to the fixed version using your package manager.

Composer
Update prestashop/ps_facetedsearch to 4.0.4 or later
composer require "prestashop/ps_facetedsearch:^4.0.4"

After upgrading, run your dependency scanner again to confirm the vulnerability is resolved.

Affected Packages (1)

Affects 1 ecosystem: packagist (1).

PackageEcosystemAffectedFixed In
prestashop/ps_facetedsearch
packagist
v3.0.0, v3.0.1, v3.0.2, v3.0.3 (+34 more)4.0.4

Vulnerability Classification

Common Weakness Enumeration (CWE) identifiers for this vulnerability type.

CVSS Score Breakdown

What the CVSS (Common Vulnerability Scoring System) 10.0 score means for each attack dimension.

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
High
Integrity
High
Availability
High

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H

Frequently Asked Questions

What is CVE-2026-54159?
prestashop/ps_facetedsearch: PHP Object Injection in faceted search cache allows unauthenticated RCE This vulnerability has been assigned a severity rating of CRITICAL (CVSS score: 10.0/10).
How do I check if my project is affected by CVE-2026-54159?
CVE-2026-54159 affects prestashop/ps_facetedsearch. Use GeekWala's free vulnerability scanner to check your dependencies against CVE-2026-54159 and 200,000+ other known vulnerabilities.

Severity & Exploitability

CVSS Score
10.0

Exploitation is straightforward and causes maximum impact. Patch immediately.

Also Known As

GHSA-m5f5-28qr-9g9r

Related CVEs

Check if you're affected

Scan your dependencies to see if this vulnerability affects your projects.

Scan Your Dependencies