p PatchFirst

CVE-2026-40488

CVE-2026-40488 · OpenMage LTS has Customer File Upload Extension Blocklist Bypass that Leads to Remote Code Execution

This page contains facts from public vulnerability sources. Check the original advisory before updating.

Magento Long Term Support (LTS) is an unofficial, community-driven project provides an alternative to the Magento Community Edition e-commerce platform with a high level of backward compatibility. Prior to version 20.17.0, the product custom option file upload in OpenMage LTS uses an incomplete blocklist (`forbidden_extensions = php,exe`) to prevent dangerous file uploads. This blocklist can be trivially bypassed by using alternative PHP-executable extensions such as `.phtml`, `.phar`, `.php3`, `.php4`, `.php5`, `.php7`, and `.pht`. Files are stored in the publicly accessible `media/custom_options/quote/` directory, which lacks server-side execution restrictions for some configurations, enabling Remote Code Execution if this directory is not explicitly denied script execution. Version 20.17.0 patches the issue.

CVSS 8.7 · High · EPSS 0.7% · Fix available

Published
Updated

Stack: php

Affected products and versions

  • magento-lts

    Versions
    • < 20.17.0: Affected

    No fix published

  • openmage/magento-lts Packagist

    Versions
    • 1.9.1.1
    • 1.9.2.0
    • 1.9.2.1
    • 1.9.2.2
    • 1.9.2.3
    • 1.9.2.4
    • 1.9.3.0
    • 1.9.3.1
    • v19.4.0
    • v19.4.1
    • v19.4.10
    • v19.4.11
    • v19.4.12
    • v19.4.13
    • v19.4.14
    • v19.4.15
    • v19.4.16
    • v19.4.17
    • v19.4.18
    • v19.4.19
    • v19.4.2
    • v19.4.20
    • v19.4.21
    • v19.4.22
    • v19.4.23
    • v19.4.3
    • v19.4.4
    • v19.4.5
    • v19.4.6
    • v19.4.7
    • v19.4.8
    • v19.4.9
    • v19.5.0
    • v19.5.0-rc1
    • v19.5.0-rc2
    • v19.5.0-rc3
    • v19.5.0-rc4
    • v19.5.0-rc5
    • v19.5.1
    • v19.5.2
    • v19.5.3
    • v20.0.0
    • v20.0.1
    • v20.0.10
    • v20.0.11
    • v20.0.12
    • v20.0.13
    • v20.0.14
    • v20.0.15
    • v20.0.16
    • v20.0.17
    • v20.0.18
    • v20.0.19
    • v20.0.2
    • v20.0.20
    • v20.0.3
    • v20.0.4
    • v20.0.5
    • v20.0.6
    • v20.0.7
    • v20.0.8
    • v20.1.0
    • v20.1.0-rc1
    • v20.1.0-rc2
    • v20.1.0-rc3
    • v20.1.0-rc4
    • v20.1.0-rc5
    • v20.1.0-rc6
    • v20.1.0-rc7
    • v20.1.1
    • v20.10.0
    • v20.10.1
    • v20.10.2
    • v20.11.0
    • v20.12.0
    • v20.12.1
    • v20.12.2
    • v20.12.3
    • v20.13.0
    • v20.14.0
    • v20.15.0
    • v20.16.0
    • v20.2.0
    • v20.3.0
    • v20.4.0
    • v20.5.0
    • v20.6.0
    • v20.7.0
    • v20.8.0
    • v20.9.0
    Affected ranges
    • ECOSYSTEM: < 20.17.0

    Update to 20.17.0

Original sources

Check your server →