Les mainteneurs de Guzzle, le client HTTP populaire pour les applications PHP, ont corrigé une vulnérabilité de gravité élevée entraînant une fuite de cookies entre domaines.
Drupal, le système de gestion de contenu (CMS) open source, fait partie des applications qui utilisent la bibliothèque tierce et a publié des mises à jour logicielles pour résoudre le problème.
La faille réside dans le middleware de cookies de Guzzle, qui est désactivé par défaut, « afin que la plupart des consommateurs de bibliothèques ne soient pas affectés par ce problème », lit un Avis de sécurité GitHub publié par un responsable de Guzzle le mercredi 25 mai.
Les cookies s’effritent
Suivi en tant que CVE-2022-29248, le bogue se concentre sur un échec de vérification si le domaine du cookie est égal au domaine du serveur qui définit le cookie via l’en-tête Set-Cookie. Cela permettrait « à un serveur malveillant de placer des cookies pour des domaines non liés », poursuit l’avis.
« Par exemple, un attaquant sur www.example.com peut définir un cookie de session pour api.example.net, connecter le client Guzzle à son compte et récupérer les demandes d’API privées à partir du journal de sécurité de son compte. »
Bouffer est utilisé pour envoyer des requêtes HTTP à partir de programmes PHP pour divers cas d’utilisation.
La bibliothèque compatible PSR-7, qui approche les 22 000 étoiles sur GitHub, est également utilisée par la plate-forme de commerce électronique d’Adobe, Magento, entre autres applications, ainsi que par Laravel, le populaire framework d’applications Web PHP.
Cependant, seuls les utilisateurs qui « ajoutent manuellement le middleware cookie à la pile de gestionnaires ou construisent le client avec [‘cookies’ => true] sont concernés », explique l’avis. Ils doivent également utiliser le même client Guzzle pour appeler plusieurs domaines et activer le transfert de redirection pour être vulnérables.
Les responsables de Guzzle ont corrigé la faille dans les versions 6.5.6, 7.4.3 et 7.5.0, et ont conseillé aux utilisateurs de s’assurer que le middleware cookie est désactivé à moins que la prise en charge des cookies ne soit requise.
Mises à jour Drupal
Dans un conseil en sécurité publié le même jour que son homologue Guzzle, Drupal a déclaré que la vulnérabilité Guzzle « n’affecte pas le cœur de Drupal, mais peut affecter certains projets contribués ou du code personnalisé sur les sites Drupal ».
Le problème a été corrigé dans les versions 9.3.14 et 9.2.20 de Drupal, les versions précédentes de Drupal 9 n’étant plus prises en charge. Drupal 7 n’est pas concerné par la faille.
Drupal a classé le bogue comme « modérément critique » sur sa propre échelle de gravité, attribuant une note de 13 sur 25.