OpenMage - CVE-2026-25524

Date de publication :

Il s'agit d'une vulnérabilité de désérialisation de données non fiables dans les modules de validation d'images et de gestion des médias d'OpenMage LTS.

OpenMage LTS est un fork communautaire open source de Magento Community Edition, maintenu par la communauté en tant qu'alternative long terme à la plateforme officielle. Il est utilisé pour le déploiement de boutiques e-commerce PHP, notamment dans le secteur de la vente en ligne de produits pharmaceutiques et de matériel médical.

Les fonctions PHP getimagesize(), file_exists() et is_readable() traitent des chemins de fichiers contrôlables par un attaquant sans filtrage du protocole phar://. Le format PHAR embarque des métadonnées sérialisées désérialisées automatiquement à l'accès, ce qui permet de déclencher une chaîne de gadgets PHP via un fichier polyglotte JPEG/PHAR déposé par upload (images produit, médias CMS).

Elle permet une exécution de code arbitraire à distance sans authentification, aboutissant à une compromission complète du serveur.

Informations

La faille est activement exploitée : Non

Un correctif existe : Oui

Une mesure de contournement existe : Oui

Risques

Exécution de code arbitraire (à distance)

Exploitation

La vulnérabilité exploitée est du type
CWE-502 : Deserialization of Untrusted Data

Détails sur l'exploitation
•   Vecteur d'attaque : Réseau
•   Complexité de l'attaque : Élevée
•   Privilèges nécessaires pour réaliser l'attaque : Aucun
•   Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Non
•   L'exploitation de la faille permet d'obtenir des droits privilégiés : Oui

Preuve de concept
Une preuve de concept est disponible en sources ouvertes.

Systèmes ou composants affectés

OpenMage LTS (openmage/magento-lts) versions 20.16.0 et antérieures

Contournement provisoire

•   Désactiver le wrapper phar:// au niveau PHP (stream_wrapper_unregister('phar')) ou via php.ini
•   Isoler le stockage des fichiers uploadés hors de la racine web avec des noms aléatoires
•   Mettre en place des restrictions strictes sur les types de fichiers acceptés en upload

Solutions ou recommandations

•   OpenMage LTS version 20.16.1 et supérieures (blocage des chemins phar:// avant appel des fonctions vulnérables, détection de signature PHAR dans les fichiers ICO)
•   OpenMage LTS version 20.17.0 et supérieures (suppression du support ICO en upload, désactivation du wrapper phar:// au bootstrap, durcissement de toutes les appels unserialize()