Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessObtain backend account with media[upload] permission
-
DeliveryCraft JPEG/PHP polyglot named shell.php.any.jpg
-
ExploitUpload via media pool - isAllowedExtension str_ends_with checks pass
-
ExecutionFile stored in public media/ directory
-
PersistSend HTTP GET to /media/shell.php.any.jpg
-
ImpactApache multi-extension handler executes embedded PHP as web-server user
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK
2 techniques across 2 tactics: Command and Control, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Three conditions must simultaneously be true for exploitation to succeed. First, the attacker must hold an authenticated REDAXO backend account with the media[upload] permission explicitly granted - this is not a default public-facing exposure. Second, the web server must be configured with a multi-extension PHP execution handler: specifically Apache mod_mime AddHandler application/x-httpd-php .php (which treats any file containing .php as a segment as executable PHP), or an Apache FilesMatch directive whose regex does not end with a dollar-sign anchor; standard PHP-FPM deployments on nginx or Apache using try_files / proxy_fcgi with exact-path matching are NOT vulnerable. Third, the REDAXO public media/ directory must be reachable over HTTP, which is the default deployment layout. Exploitation is blocked whenever: the attacker lacks a backend account with media[upload] permission; the server runs PHP-FPM with standard try_files routing; the server uses nginx with location ~ \.php$ (end-anchored); the Apache FilesMatch directive is correctly anchored (e.g., <FilesMatch "\.php$">); or direct HTTP access to the media/ directory is restricted or PHP execution is disabled there. |
| Impact | The vendor-assigned CVSS 7.5 vector AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H is independently defensible. AC:H is appropriate because exploitation is contingent on a non-default Apache server configuration (multi-extension PHP handler); PHP-FPM with standard routing, nginx with location ~ \.php$, or correctly anchored Apache FilesMatch directives are not vulnerable. PR:L reflects the mandatory requirement for a backend account with media[upload] permission, which is not a trivially obtained credential. The full C/I/A:H triad is justified because successful exploitation yields arbitrary PHP code execution as the web-server user. No CISA KEV listing and no independent public exploit repository have been identified, placing real-world exploitation probability in the low-to-moderate range despite the detailed technical disclosure in GHSA-98pp-vccm-qm25, which lowers the research bar for anyone already holding backend access. The primary limiting factor is the intersection of two conditions: holding a privileged backend account AND running a susceptible Apache handler configuration. Defenders on PHP-FPM or nginx deployments face negligible practical risk regardless of patch status. |
| Exploit ScenarioDerived | An attacker holding a REDAXO backend account with media[upload] permission crafts a JPEG/PHP polyglot - a valid JPEG file with embedded PHP code - and names it shell.php.any.jpg, then uploads it through the media pool UI; the isAllowedExtension check passes because the terminal extension is jpg and neither str_ends_with check matches the three-segment pattern. On an Apache server configured with AddHandler application/x-httpd-php .php, the attacker then sends an HTTP GET request to the public URL /media/shell.php.any.jpg, which Apache routes to the PHP interpreter due to the intermediate .php segment, executing the embedded PHP payload as the web-server user. The GHSA advisory provides the exact code path, payload name pattern, and root-cause explanation, materially reducing the effort required to exploit this by any attacker already holding backend credentials. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 31, 2026
Remote code execution in REDAXO CMS versions 5.18.2 through 5.21.0 is reachable by authenticated backend users with media upload permissions via a multi-segment filename bypass (e.g., shell.php.any.jpg) that defeats the extension blocklist in rex_mediapool::isAllowedExtension. The flaw is a confirmed regression introduced in PR #6213 (February 2025), which replaced a historically correct str_contains guard with weaker str_ends_with logic, reintroducing a double-extension attack class that the codebase had explicitly defended against since 2018. Exploitation additionally requires the target server to run a multi-extension PHP handler (Apache mod_mime AddHandler or unanchored FilesMatch); no public exploit or CISA KEV listing has been identified at time of analysis, and the vendor-released fix is available in version 5.21.1.
RemediationAI
Upgrade REDAXO Core to version 5.21.1, available at https://github.com/redaxo/core/releases/tag/5.21.1; the fix commit is 462e36896bb65d292ba22d711044c23c9cfb0340 (https://github.com/redaxo/core/commit/462e36896bb65d292ba22d711044c23c9cfb0340). If immediate upgrade is not possible, the most effective server-side compensating control for Apache deployments is to replace any AddHandler application/x-httpd-php .php directive with a FilesMatch block using an end anchor - e.g., <FilesMatch "\.php$"> - so that only files whose final extension is exactly .php are executed as PHP, breaking the multi-extension execution path regardless of what REDAXO permits for upload. The trade-off is that this change affects all PHP execution on the vhost and must be tested against other applications. A second compensating control is to restrict the media[upload] backend permission exclusively to fully trusted administrator accounts and audit current role assignments; this reduces the pool of potential attackers but does not eliminate the vulnerability for those accounts. Blocking PHP execution in the media/ directory via a dedicated .htaccess (php_flag engine off or equivalent) is a targeted alternative with minimal side effects on legitimate media serving.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
REDAXO Core (cpe:2.3:a:redaxo:core) is a PHP-based CMS whose media upload addon validates uploaded filenames through the static method rex_mediapool::isAllowedExtension in redaxo/src/addons/mediapool/lib/mediapool.php. The root cause is CWE-434 (Unrestricted Upload of File with Dangerous Type): the regression in commit 9d008697d extracted only the terminal extension via rex_file::extension (returning 'jpg' for 'shell.php.any.jpg'), applied a str_starts_with guard against 'php', then ran two str_ends_with checks against the blocked-extension list - catching *.php and *.php.jpg but not the three-segment pattern *.php.any.jpg. On Apache servers where AddHandler application/x-httpd-php .php matches any dot-separated segment (mod_mime behaviour) or a FilesMatch regex lacks a $ end anchor, the uploaded file placed in the public media/ directory is executed as PHP when requested over HTTP. The fix in PR #6538 replaces the str_ends_with loop with iteration over all dot-separated filename segments, blocking any file where any segment appears in the blocked-extensions list.
Know when Redaxo gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
AC:H because exploitation requires non-default Apache multi-extension PHP handler; PR:L because a backend account with media[upload] permission is mandatory; full C/I/A:H because successful exploitation yields arbitrary PHP code execution.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
REDAXO is a PHP-based content management system. From 5.18.2 until 5.21.1, rex_mediapool::isAllowedExtension in redaxo/src/addons/mediapool/lib/mediapool.php lets an authenticated backend user with media[upload] permission upload a JPEG/PHP polyglot named shell.php.any.jpg, which web servers with multi-extension PHP handlers can execute as the web-server user. This issue is fixed in version 5.21.1.
Executive ViewAI
REDAXO CMS versions 5.18.2-5.21.0 contain an authenticated remote code execution vulnerability in the file upload feature, exploitable by backend users with media permissions. The flaw allows disguised filename extensions to bypass security controls and execute arbitrary PHP code, creating a significant insider risk for organizations running these versions. Patched version 5.21.1 is immediately available and should be deployed to all affected systems.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
In REDAXO before 5.6.3, a critical SQL injection vulnerability has been discovered in the rex_list class because of the
Redaxo CMS Mediapool Addon 5.5.1 and older contains an arbitrary file upload vulnerability that allows authenticated use
A Remote Code Execution (RCE) vulnerability in the template management component in REDAXO CMS 5.20.0 allows remote auth
REDAXO CMS v2.11.0 was discovered to contain a remote code execution (RCE) vulnerability. Rated high severity (CVSS 7.2)
An issue was discovered in REDAXO version 5.15.1, allows attackers to execute arbitrary code and obtain sensitive inform
Redaxo v5.15.1 was discovered to contain a remote code execution (RCE) vulnerability via the component /pages/templates.
Remote code execution in the modules component in Yakamara Media Redaxo CMS version 5.12.1 allows an authenticated CMS u
Redaxo CMS 5.2 contains a cross-site request forgery vulnerability that allows unauthenticated attackers to create admin
Arbitrary file disclosure in REDAXO's Backup addon allows authenticated users with backup permissions to read any file w
Triggering an error page of the import process in Yakamara Media Redaxo CMS version 5.12.1 allows an authenticated CMS u
REDAXO is a PHP-based CMS. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authenticati
REDAXO is a PHP-based CMS. Rated medium severity (CVSS 6.1), this vulnerability is remotely exploitable, no authenticati
EUVD-2026-51626
GHSA-98pp-vccm-qm25
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB