/

CVE-2026-53599

Severity:

HIGH RISK

(7.5)

Dangerous File Upload (CWE-434) in REDAXO Mediapool

CVE-2026-53599

Deferred

Vulnerability type

Category:

Unrestricted File Upload

CWE:

CWE-434

Impact:

Remote Code Execution via Malicious File Upload

Severity:

HIGH RISK

(7.5)

CVSS version:

3.1

Catch this CVE while code is being written

Detect vulnerable code directly in pull requests, so CVEs are fixed before merge.

Summary

REDAXO's mediapool component allows authenticated backend users with upload permissions to store JPEG/PHP polyglot files that bypass extension checks.

On servers configured with multi-extension PHP handlers, these uploaded files can be executed as PHP scripts, enabling code execution under the web server account.

Affected context

This vulnerability occurs in REDAXO installations where:

  • The mediapool addon is used to manage uploaded media files
  • Backend accounts are granted media[upload] permissions
  • The web server is configured with multi-extension PHP handlers (e.g., treating files like *.php.any.jpg as PHP-executable)

Under these conditions, extension validation in rex_mediapool::isAllowedExtension can be bypassed using polyglot filenames that appear as images but contain PHP code.

Exploit preconditions

  • Attack surface: REDAXO administrative web interface (backend mediapool upload feature)
  • Required access: Authenticated backend user with media[upload] permission
  • Trigger point: Uploading a crafted JPEG/PHP polyglot file named with multiple extensions (e.g., shell.php.any.jpg) through the mediapool
  • Why exploitation is possible: The extension checking logic focuses on the last extension segment and does not account for multi-extension PHP handler configurations, allowing a file that the server treats as PHP to be stored in a web-accessible location

Why this happens

The underlying bug is an inadequate file type and extension validation routine in rex_mediapool::isAllowedExtension, mapped to CWE-434: Unrestricted File Upload.

The mediapool logic assumes that examining the final extension segment is sufficient to ensure safety, implicitly trusting server behavior and ignoring multi-extension execution rules.

This insecure pattern allows attackers to upload files that appear to be benign images while embedding executable PHP code, which servers may interpret as scripts due to handler configuration.

Potential impact

  • Remote execution of arbitrary PHP code as the web server user
  • Creation of persistent web shells within the application's media directories
  • Unauthorized access to application data and configuration files
  • Lateral movement to other services reachable from the compromised server
  • Defacement or manipulation of site content and stored media

General mitigation guidance

Effective mitigation focuses on strict file upload controls and defensive server configuration rather than version-specific changes.

Common patterns include:

  • Validating uploads using a whitelist of trusted file types and single extensions, independent of server handler behavior
  • Inspecting file content (MIME type, image headers) rather than relying solely on filename extensions
  • Storing uploaded media outside executable web roots or under configurations that prohibit script execution
  • Applying least-privilege principles to backend roles, limiting who can upload files and where they are stored
  • Configuring web servers to avoid multi-extension execution patterns that treat media as scripts

How teams detect issues like this

Organizations can detect unrestricted file upload risks by:

  • Reviewing backend upload endpoints for reliance on extension-only checks and absence of content validation
  • Using static analysis to flag upload routines that do not enforce strict whitelists or non-executable storage locations
  • Conducting code reviews focusing on file handling logic, especially around user-controlled filenames and media libraries
  • Applying security policies that regularly scan uploaded directories for unexpected executable content
  • Employing web application firewalls or upload filters that block known polyglot patterns and multi-extension filenames

Sources

SourceLink
github.comgithub.com/redaxo/core/commit/462e36896bb65d292ba22d711044c23c9cfb0340
github.comgithub.com/redaxo/core/pull/6538
github.comgithub.com/redaxo/core/releases/tag/5.21.1
github.comgithub.com/redaxo/core/security/advisories/GHSA-98pp-vccm-qm25

Frequently asked

questions

Yes, if the REDAXO backend is accessible over the network and an attacker can obtain or abuse an account with media upload rights. Publicly exposed admin interfaces increase the risk.

The attacker must be an authenticated backend user with media[upload] permission, or compromise such an account. Anonymous users cannot directly exploit the vulnerable upload path.

Implement strict file upload controls: enforce single-extension whitelists, validate file content and MIME type, store uploads in non-executable locations, and avoid relying solely on filename checks that ignore server handler behavior.

Adopt a defense-in-depth strategy for file handling: design upload features with non-executable storage by default, codify secure file validation rules, regularly test upload endpoints, and include file handling checks in code review and security testing processes.

Find out what's already
exploitable in your codebase.