Sécurité

Publication d'une nouvelle version de Git après la découverte de failles de sécurité

Le projet Git a publié hier de nouvelles versions pour son soft afin de contrer des vulnérabilités préoccupantes. Il est fortement recommandé de mettre à jour son installation locale de Git, plus particulièrement si celle-ci est utilisée sur un poste multi-utilisateurs ou tourne sous Windows.

Alors qu'une nouvelle version v2.35.2 a été spécifiquement publiée pour répondre à cette problématique, les versions antérieures de Git (2.34.2, 2.33.2, 2.32.1, 2.31.2 et 2.30.3) disposent également chacune d'une mise à jour visant à neutraliser deux failles de sécurité.



CVE-2022-24765

Cette faille concerne les utilisateurs qui travaillent sur le même poste, puisqu'elle permet la création d'un dossier .git dans un répertoire partagé. Sous Windows, il serait par exemple possible de créer un répertoire C:\.git\config qui forcerait tous les appels git à lire les valeurs de configuration.

Étant donné que certaines variables de configuration comme core.fsmonitor peuvent amener Git à exécuter des commandes, cela pourrait permettre l'exécution de commandes arbitraires sur un ordinateur partagé.

Il est important de noter que plusieurs solutions comme Git Bash, posh-git ou encore Visual Studio exécutent des commandes Git de manière "invisible" : il est donc recommandé d'éviter l'usage de ces outils en attendant d'être passé sur une version embarquant le correctif.

Si l'installation de la version corrective ou d'une mise à jour vous est impossible dans l'immédiat, le meilleur moyen de réduire les risques est de modifier la variable d'environnement GIT_CEILING_DIRECTORIES en renseignant le dossier parent de votre profil utilisateur (/home sur Linux, C:\Users pour Windows et /Users sous macOS).



CVE-2022-24767

Cette faille concerne le programme de désinstallation Windows de Git, qui s'exécute dans le dossier temporaire de l'utilisateur : puisque l'utilisateur SYSTEM hérite des permissions par défaut pour le dossier C:\Windows\Temp, n'importe quel utilisateur authentifié peut placer des fichiers DLL malveillants, chargés à l'exécution du programme de désinstallation.

Là encore, le meilleur moyen reste de passer à la version 2.35.2 de Git. En cas d'impossibilité d'upgrade, il est recommandé de ne pas exécuter le programme de désinstallation, mais également :

  • De modifier la variable d'environnement TMP de l'utilisateur SYSTEM par le chemin d'un dossier dans lequel seul l'utilisateur SYSTEM dispose des droits d'écriture
  • De supprimer tout fichier .dll suspect dans le répertoire C:\Windows\Temp avant d'exécuter le programme de désinstallation de Git
  • D'exécuter le programme de désinstallation avec un compte administrateur plutôt qu'avec l'utilisateur SYSTEM

La plateforme GitHub a de son côté tenu à rassurer ses utilisateurs en précisant qu'elle n'est impactée par aucune de ces failles.

Télécharger la version 2.35.2 de Git pour Windows

À lire aussi sur Les Joies du Code :

À propos de l'auteur
Nicolas Lecointre
Chief Happiness Officer des développeurs, ceinture noire de sudo. Pour rire, j'ai créé Les Joies du Code. J'utilise Vim depuis 10 ans parce que je sais pas comment le quitter.