ps_facetedsearch CVE-2026-54159
CRITICALSeverity by source
AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Unauthenticated single-request injection (AV:N/AC:L/PR:N/UI:N) yields a webshell executing OS commands beyond the app, so scope changes (S:C) with full C/I/A loss.
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
Lifecycle Timeline
2DescriptionGitHub Advisory
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:
// 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.
Articles & Coverage 1
AnalysisAI
Unauthenticated remote code execution in the PrestaShop ps_facetedsearch (layered navigation) module versions 3.0.0 through 4.0.3 allows a single crafted front-office request to fully compromise the shop and its underlying server. The module rebuilds price/weight slider filter values from the request URL and later reads them back through a native unserialize(), enabling PHP object injection whose gadget chain writes a PHP webshell into the module directory. …
Unlock full vulnerability intelligence
- Risk assessment & exploitation conditions
- Attack chain visualization
- Remediation with exact patch versions
- Threat intelligence from 22 sources
- Personal watchlist & email alerts
Free forever · No credit card required
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata
Vulnerability AssessmentAI
| Exploitation | The shop must display a filter template on the front office that contains a price or weight slider filter - that slider is the injectable input whose URL value flows into the vulnerable unserialize() call. … Additional conditions and limiting factors are described in the full assessment. |
| Risk Assessment | All available signals point to a genuine top-priority issue rather than an inflated high-CVSS score. … Full risk analysis with EPSS, KEV, and SSVC signal comparison available after sign-in. |
| Exploit Scenario | An attacker browses a shop's category page that offers a price or weight slider filter, then submits a single crafted front-office request in which the slider value carries a malicious serialized PHP object. When the module caches and later deserializes that value via native unserialize(), the gadget chain writes a PHP webshell into modules/ps_facetedsearch/, which the attacker requests to run arbitrary OS commands. … |
| Remediation | Upgrade ps_facetedsearch to the patched version referenced in the vendor advisory GHSA-m5f5-28qr-9g9r (https://github.com/PrestaShop/ps_facetedsearch/security/advisories/GHSA-m5f5-28qr-9g9r); the exact fixed version is not stated in the provided data, so confirm it from that advisory before deploying. … Detailed patch versions, workarounds, and compensating controls in full report. |
Recommended ActionAI
Within 24 hours: Audit PrestaShop installations to identify whether ps_facetedsearch (any version 3.0.0-4.0.3) is installed and active; if present, treat as critical and stand up incident response readiness. …
Sign in for detailed remediation steps and compensating controls.
Threat intelligence, references, and detailed analysis are available after sign-in.
sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not
(1) boardData102.php, (2) boardData103.php, (3) boardDataJP.php, (4) boardDataNA.php, and (5) boardDataWW.php in Netgear
ProjectSend versions prior to r1720 are affected by an improper authentication vulnerability. Rated critical severity (C
Roundcube Webmail contains a critical PHP object deserialization vulnerability (CVE-2025-49113, CVSS 9.9) that allows au
Util/PHP/eval-stdin.php in PHPUnit before 4.8.28 and 5.x before 5.6.3 allows remote attackers to execute arbitrary PHP c
Palo Alto Networks PAN-OS management web interface contains an authentication bypass allowing unauthenticated attackers
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
Nagios XI version xi-5.7.5 is affected by OS command injection. Rated high severity (CVSS 8.8), this vulnerability is re
The get_referers function in /opt/ws/bin/sblistpack in Sophos Web Appliance before 3.7.9.1 and 3.8 before 3.8.1.1 allows
The Backup Migration plugin for WordPress is vulnerable to Remote Code Execution in all versions up to, and including, 1
NetAlertX (formerly PiAlert) versions 23.01.14 through 24.x before 24.10.12 allow unauthenticated command injection thro
The GiveWP - Donation Plugin and Fundraising Platform plugin for WordPress is vulnerable to PHP Object Injection in all
Same technique Deserialization
View allShare
External POC / Exploit Code
Leaving vuln.today
GHSA-m5f5-28qr-9g9r