Composer - CVE-2026-40261
Date de publication :
Il s'agit d'une vulnérabilité dans le pilote VCS Perforce de Composer, au niveau de la méthode Perforce::syncCodeBase().
Composer est le gestionnaire de dépendances de référence pour PHP, utilisé pour installer, mettre à jour et résoudre les dépendances de projets PHP via Packagist et d'autres dépôts.
Cette méthode ajoute le paramètre $sourceReference à une commande shell sans échappement adéquat. Un attaquant peut fournir une référence source malveillante contenant des métacaractères shell (|, ;, $(), etc.) via les métadonnées d'un dépôt Composer compromis ou malveillant. Composer tente d'exécuter la commande construite même si Perforce n'est pas installé sur le système. L'exploitation se déclenche lors d'une opération composer install ou composer update avec --prefer-source, qui est le comportement par défaut pour les versions préfixées dev-.
Elle permet l'exécution de commandes arbitraires dans le contexte de l'utilisateur, avec une atteinte totale à la confidentialité, à l'intégrité et à la disponibilité, y compris dans les pipelines CI/CD.
Informations
La faille est activement exploitée : Non
Un correctif existe : Oui
Une mesure de contournement existe : Oui
Exécution de code arbitraire (à distance)
Exploitation
CWE-78 : Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')
Détails sur l'exploitation
• Vecteur d'attaque : Réseau
• Complexité de l'attaque : Faible
• Privilèges nécessaires pour réaliser l'attaque : Aucun
• Interaction d'un utilisateur ayant accès au produit est-elle nécessaire : Oui
• L'exploitation de la faille permet d'obtenir des droits privilégiés : Non
Preuve de concept
Actuellement, aucune preuve de concept n'est disponible en sources ouvertes.
Systèmes ou composants affectés
• Composer versions 2.3.0 jusqu'à 2.9.5
• Composer versions 2.0.0 jusqu'à 2.2.26 (branche LTS)
Contournement provisoire
• N'utiliser que des dépôts Composer de confiance, pour toutes les branches affectées.
Solutions ou recommandations
• Composer branche LTS 2.2 : version 2.2.27 et supérieures