Lors du clonage d’un dépôt contenant un sous-module malveillant, GitPython pouvait développer une variable d’environnement présente dans le nom du sous-module et exposer sa valeur. Cette divulgation pouvait se matérialiser dans le nom d’un répertoire persistant et, avec la journalisation DEBUG, dans les journaux ; le défaut est corrigé dans GitPython 3.2.0.
Source : GHSA-fx3j-rwgx-fr94 — GitPython
Analyse technique
La valeur attacker-controlled transmise comme separate_git_dir était traitée par Git.polish_url() sans désactiver l’expansion des variables. Un clone suivi de la mise à jour récursive des sous-modules pouvait ainsi développer une variable incluse dans un nom de sous-module.
Impact, versions et correctif
Action recommandée
Mettre à niveau GitPython vers la version 3.2.0.
Sources
Priorisation DFS : P4 · 1 source(s).