Unauthenticated RCE in PrestaShop MyPresta Module
CVE-2026-85520 lets unauthenticated attackers write and execute arbitrary PHP via feed.php in the MyPresta Google Merchant Center Feed module for PrestaShop; fixed in v2.3.9.
Sourcecert.pl — open the original
What to check
- Applies to
- The 1 CVE named below. Whether you run an affected version is not assessed: check the versions the source lists.
- Exploitation
- No exploitation in the wild and no public exploit is recorded for the CVEs named.
CERT Polska coordinated disclosure of a critical vulnerability in the MyPresta Google Merchant Center Feed (gmfeed) module for PrestaShop, an e-commerce platform. The flaw resides in the feed.php endpoint, which accepts unauthenticated requests that let an attacker control the output file's name, path, extension, and content through request parameters. Because the endpoint lacks authentication and proper input validation, an attacker can write a file with a .php extension containing malicious code to a web-accessible location and then execute it, achieving remote code execution on the underlying server.
This is an arbitrary file write leading to RCE — a high-impact vulnerability class for any online store running the affected module, since successful exploitation gives full control of the web application (and potentially the host) without any credentials. The vendor fixed the issue in version 2.3.9. There is no indication in this advisory that the vulnerability is being exploited in the wild; it was reported and coordinated through CERT Polska's responsible disclosure process, credited to Today Group sp. z o.o.
Defenders running PrestaShop with the MyPresta gmfeed module should upgrade to version 2.3.9 or later immediately. Where immediate patching isn't possible, restrict or disable public access to feed.php, monitor for unexpected .php files being written to web-accessible directories, and review web server logs for anomalous requests to the feed.php endpoint with suspicious file path/extension parameters.
Mentioned in this report
Detection guidance
Suspicious PHP File Creation in Web Root
A behavioural hunt for the technique in general, not a signature for the CVEs this report names.
Detects creation of .php files in web-accessible directories (modules, uploads, feeds) via web server process, suggestive of web shell upload/write via exploit. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Suspicious PHP File Creation in Web Root
description: Monitors for .php file creation in PrestaShop web-accessible paths (modules/,
uploads/, feeds/) by web server processes (apache, nginx, php-fpm), characteristic
of arbitrary file write exploitation.
tags:
- attack.t1190
- attack.t1505.003
logsource:
category: file_event
product: windows
detection:
selection:
Image|endswith:
- \apache.exe
- \httpd.exe
- \nginx.exe
- \php-cgi.exe
- \php.exe
TargetFilename|contains:
- \modules\
- \uploads\
- \feeds\
TargetFilename|endswith: .php
filter_module_install:
TargetFilename|contains: \modules\ps_
condition: selection and not filter_module_install
falsepositives:
- Legitimate module uploads via PrestaShop admin interface
- Automated module installation/updates from trusted package sources
level: high
id: 0b802e89-813e-54c2-a919-b5e0973d2fb9
status: experimental
author: Vorant
references:
- https://cert.pl/en/posts/2026/09/CVE-2026-85520
Suspicious PHP File Creation in Web Root (Linux)
A behavioural hunt for the technique in general, not a signature for the CVEs this report names.
Detects creation of .php files in web-accessible directories via web server processes on Linux, characteristic of web shell deployment. Auto-generated starting point — validate and tune in your environment before deploying. IOC matches can false-positive on shared infrastructure and decay as adversary infrastructure rotates.
title: Suspicious PHP File Creation in Web Root (Linux)
description: Monitors for .php file creation in PrestaShop web-accessible paths by
web server processes (apache, nginx, php-fpm) on Linux, indicative of arbitrary
file write exploitation.
tags:
- attack.t1190
- attack.t1505.003
logsource:
category: file_event
product: linux
detection:
selection:
Image|endswith:
- /apache
- /apache2
- /httpd
- /nginx
- /php-fpm
- /php
TargetFilename|contains:
- /modules/
- /uploads/
- /feeds/
TargetFilename|endswith: .php
filter_module_install:
TargetFilename|contains: /modules/ps_
condition: selection and not filter_module_install
falsepositives:
- Legitimate module uploads via PrestaShop admin interface
- Automated module installation/updates from trusted package sources
level: high
id: f57ce0cf-1f95-52a6-b187-35e48d09a16c
status: experimental
author: Vorant
references:
- https://cert.pl/en/posts/2026/09/CVE-2026-85520
Behavioural rules are generated from public reporting — validate in your environment before deploying.
Source reporting: https://cert.pl/en/posts/2026/09/CVE-2026-85520
Free public brief. The detections with Splunk SPL already written (plus Elastic and KQL where they apply) are in the app with a free account, no card. Slack alerts on the vendors you run come with the paid plans, and a new account gets three days of them.
What this brief leaves out
This page is the free tier: the write-up, the severity, the names. In the app the same report carries its detections (Splunk SPL already written, plus Elastic and Microsoft KQL where they apply) and live profiles of the CVEs it names. The paid plans add the security research and news reporting the free tier leaves out.
It sits in a corpus of 16,570 reports from 147 sources, 725 of them written in the last seven days, and it grows through the day.
A new account starts with three days of all of it, no card, then keeps the government and CERT reporting free. Slack alerts are a paid-plan feature: name the vendors you run and Slack hears about the reports that touch them, not the rest of the week's. Nothing is charged unless you subscribe.
Create a free account What it costs