Aperçu
3.0.5. passport-wsfed-saml2 est un fournisseur d’authentification pour le protocole WS-Federation et les jetons SAML2 de Passport.js.
Cette vulnérabilité permet à un attaquant d’usurper l’identité d’un autre utilisateur et, potentiellement, d’élever ses privilèges si le ne signe pas la réponse SAML complète, mais signe seulement l’assertion qu’elle contient.
Un attaquant qui exploite cette vulnérabilité avec succès pourrait utiliser cette réponse pour fabriquer une requête contenant un NameIdentifier différent afin d’ouvrir une session en tant qu’un autre utilisateur. Un acteur malveillant pourrait aussi mener une attaque d’élévation de privilèges en s’authentifiant comme un utilisateur précis disposant de privilèges administratifs. L’attaquant doit déjà avoir un compte ou être en mesure d’intercepter le trafic chiffré et de modifier la réponse SAML à la volée.
Cette mise à jour corrige la vulnérabilité en empêchant les attaques d’encapsulation visant les éléments Assertion et Response, tout en apportant certaines modifications défensives aux expressions XPath. Une mise à jour a également été apportée pour améliorer la consignation des informations relatives à la signature de la réponse SAML.
Pour corriger cette vulnérabilité, vous devez mettre à niveau la bibliothèque.
Suis-je touché ?
- signait la réponse SAML ainsi que l’assertion
- ne signait pas la réponse SAML, mais signait l’assertion
Comment corriger ce problème ?
3.0.5.
Les packages mis à jour sont disponibles sur npm. Pour recevoir les correctifs supplémentaires à venir, assurez-vous que votre fichier package.json est configuré pour accepter les mises à jour correctives et mineures de nos bibliothèques.