Vulnérabilité PolyShell découverte dans l'API REST de Magento
Les chercheurs en sécurité de Sansec ont découvert une vulnérabilité critique dans l'API REST de Magento qui permet à des attaquants non authentifiés de télécharger des fichiers exécutables arbitraires et d'obtenir l'exécution de code à distance sur les boutiques en ligne. La faille, désignée PolyShell par Sansec, exploite des faiblesses dans la manière dont l'API de Magento traite les téléchargements de fichiers, permettant spécifiquement au code malveillant d'être déguisé en fichiers image légitimes.
La vulnérabilité a été identifiée lors de recherches de sécurité de routine menées par l'équipe de renseignement sur les menaces de Sansec en mars 2026. Le vecteur d'attaque exploite les points de terminaison de l'API REST de Magento qui gèrent les téléchargements de médias, contournant les mécanismes de validation de fichiers standard qui empêchent généralement les téléchargements exécutables. Les attaquants peuvent créer des fichiers spécialement formatés qui apparaissent comme des images valides pour le système de validation de téléchargement tout en contenant du code exécutable intégré qui est traité par le serveur.
Selon l'analyse de sécurité de BleepingComputer, la vulnérabilité provient d'une validation d'entrée insuffisante dans les composants de gestion des médias de Magento. L'API REST ne parvient pas à correctement assainir les fichiers téléchargés, permettant aux attaquants d'intégrer du code PHP ou d'autres scripts côté serveur dans les en-têtes d'image ou les sections de métadonnées. Lorsque ces fichiers sont traités par le serveur, le code intégré s'exécute avec les mêmes privilèges que l'application web.
La technique d'attaque représente une forme sophistiquée d'exploitation de fichiers polyglottes, où un seul fichier sert à plusieurs fins selon la manière dont il est interprété. Dans ce cas, le fichier malveillant fonctionne à la fois comme un format d'image valide et comme un script exécutable. Cette double nature lui permet de passer les contrôles de sécurité initiaux tout en conservant sa charge utile malveillante pour une exécution ultérieure. La vulnérabilité affecte la fonctionnalité principale de l'API REST sur laquelle de nombreuses installations de Magento comptent pour la gestion de contenu et les intégrations tierces.
Installations Magento vulnérables aux attaques PolyShell
La vulnérabilité PolyShell affecte les installations de Magento Commerce et Magento Open Source qui exposent des points de terminaison de l'API REST pour les téléchargements de médias. Cela inclut à la fois les instances Magento Commerce hébergées dans le cloud et les déploiements Magento Open Source auto-hébergés exécutant des configurations par défaut. Les boutiques en ligne utilisant les fonctionnalités de gestion des médias standard de Magento sont particulièrement à risque, car ces systèmes permettent généralement le téléchargement de fichiers via divers points de terminaison de l'API.
Les installations de Magento avec des configurations d'API personnalisées ou des extensions tierces qui interagissent avec l'API REST peuvent faire face à des niveaux de risque accrus. La vulnérabilité impacte les boutiques indépendamment de leur environnement d'hébergement, affectant à la fois les plateformes d'hébergement partagé et les déploiements de serveurs dédiés. Les petites et moyennes entreprises de commerce électronique utilisant Magento sans équipes de sécurité dédiées sont particulièrement vulnérables, car elles peuvent manquer de ressources pour mettre en œuvre une surveillance complète de la sécurité de l'API.
L'impact potentiel s'étend au-delà des compromissions de boutiques individuelles. Une exploitation réussie pourrait conduire à une prise de contrôle complète du serveur, permettant aux attaquants d'accéder aux bases de données clients, aux informations de paiement et aux identifiants administratifs. Dans les environnements d'hébergement multi-locataires, une installation Magento compromise pourrait servir de point de pivot pour un mouvement latéral vers d'autres applications hébergées. La vulnérabilité pose également des risques pour la sécurité de la chaîne d'approvisionnement, car les plateformes de commerce électronique compromises pourraient être utilisées pour distribuer des logiciels malveillants aux clients ou injecter des scripts malveillants dans des transactions légitimes.
Étapes de mitigation pour la vulnérabilité PolyShell
Les organisations utilisant des installations Magento devraient immédiatement mettre en œuvre plusieurs mesures défensives pour se protéger contre les attaques PolyShell. Tout d'abord, les administrateurs devraient revoir et restreindre les autorisations d'accès à l'API REST, en s'assurant que seuls les utilisateurs authentifiés avec les privilèges appropriés peuvent accéder aux points de terminaison de téléchargement de médias. Cela implique de configurer des jetons d'authentification API et de mettre en œuvre des contrôles d'accès appropriés via le panneau d'administration de Magento ou les fichiers de configuration.
Les protections au niveau du réseau devraient inclure la mise en œuvre de règles de pare-feu d'application web (WAF) qui inspectent les fichiers téléchargés pour détecter des modèles de contenu suspects. Les équipes de sécurité devraient configurer leur WAF pour bloquer les fichiers contenant des scripts intégrés ou des structures de métadonnées inhabituelles. De plus, les répertoires de téléchargement de fichiers devraient être configurés avec des permissions d'exécution strictes, empêchant tout contenu téléchargé d'être exécuté directement par le serveur web. Cela peut être réalisé grâce à des règles .htaccess sur les serveurs Apache ou des configurations équivalentes sur les déploiements Nginx.
Pour une protection immédiate, les administrateurs devraient envisager de désactiver temporairement les points de terminaison de l'API REST non essentiels jusqu'à ce que des correctifs officiels soient disponibles. Cela peut être fait via les paramètres de configuration de l'API de Magento ou en mettant en œuvre des règles de proxy inverse qui bloquent des routes API spécifiques. Les organisations devraient également activer une journalisation complète pour toutes les requêtes API, en particulier celles impliquant des téléchargements de fichiers, pour détecter les tentatives d'exploitation potentielles. Des audits de sécurité réguliers des fichiers téléchargés et une surveillance des contenus exécutables inattendus dans les répertoires de médias sont des mesures de protection essentielles en cours.
Les améliorations de sécurité à long terme devraient inclure la mise en œuvre de politiques de sécurité de contenu qui restreignent l'exécution de scripts à partir des zones de contenu téléchargé et l'établissement de procédures régulières de balayage des vulnérabilités pour les installations Magento. Les organisations devraient également envisager de mettre en œuvre des couches supplémentaires de validation de fichiers qui effectuent une inspection approfondie du contenu au-delà de la vérification standard du type MIME, en s'assurant que les fichiers téléchargés correspondent à leurs formats déclarés dans toute leur structure.




