Aller au contenu
Développeur Full Stack
, ,

GitPython : exécution de commandes via un refspec non vérifié dans Remote.pull()

Dans cet article 4 rubriques
Veille sécuritéBackend & données
P3Élevée

GitPython `Remote.pull()` ne vérifie pas le `refspec` positionnel avec son garde-fou contre `–upload-pack`, ce qui peut permettre l’exécution de commandes si une application transmet une valeur contrôlée par un attaquant. Le scénario concerne les transports locaux ou SSH et les versions de GitPython `>= 3.1.30, < 3.2.0` ; mettre à jour vers `3.2.0`.

Python
IdentifiantAvis de sécurité
GravitéÉlevée
Exploitationnon connue / non déterminée
Correctif3.2.0

Source : GHSA-f9j4-qggq-h239 — GitPython

Analyse technique

La vérification des options porte sur les arguments nommés, mais pas sur le `refspec` transmis à `Remote.pull()`. L’exploitation dépend d’un appel applicatif avec un `refspec` influençable et d’un transport local ou SSH.

Impact, versions et correctif

Événement datéAvis GitHub publié le 2026-10-27T15:26:50Z, dans la période demandée.
ImpactExécution arbitraire de commandes avec les privilèges du processus appelant, sous les conditions de transport indiquées.
Versions affectées>= 3.1.30, < 3.2.0
Version corrigée3.2.0
Exploitation activenon connue / non déterminée
PoC publicinconnu
CVSS8.1
Publication2026-10-27T15:26:50Z
Mise à jour2026-10-27T15:28:29Z

Action recommandée

Mettre à jour GitPython vers 3.2.0 ; ne pas transmettre de `refspec` contrôlé par un utilisateur à `Remote.pull()`.

Sources

Priorisation DFS : P3 · 1 source(s).

Article précédent :
Article suivant :