CVE-2021-28966: Path traversal dans Tempfile sur Windows

Il y a une vulnérabilité involontaire dans la création de répertoire dans la bibliothèque tmpdir inclue dans Ruby sur Windows. Il y a aussi une vulnérabilité involontaire dans la création de fichier dans la bibliothèque tempfile inclue dans Ruby sur Windows, car elle utilise tmpdir en interne. Cette vulnérabilité possède l’identifiant CVE CVE-2021-28966.

Détails

La méthode Dir.mktmpdir introduite dans la bibliothèque tmpdir accepte le préfixe et le suffixe du répertoire créé comme premier paramètre. Le préfixe peut contenir des spécificateurs de répertoires relatifs "..\\", donc cette méthode peut être utilisée pour atteindre n’importe quel répertoire. Par conséquent, si un script accepte une entrée externe comme préfixe et que le répertoire cible n’a pas les permissions appropriées ou que le processus ruby possède des privilèges inappropriés, l’attaquant peut créer un répertoire ou un fichier dans n’importe quel répertoire.

C’est le même problème que CVE-2018-6914, mais le correctif précédent était incomplet sur Windows.

Tous les utilisateurs qui possède une version concernée devraient faire la mise à jour immédiatement.

Versions concernées

  • Ruby 2.7.2 ou inférieure
  • Ruby 3.0.0

Crédits

Merci à Bugdiscloseguys pour la découverte de ce problème.

Historique

  • Paru initialement le 2021-04-05 12:00:00 (UTC)