Bulletin d'alerte Debian
DLA-3282-1 git -- Mise à jour de sécurité pour LTS
- Date du rapport :
- 26 janvier 2023
- Paquets concernés :
- git
- Vulnérabilité :
- Oui
- Références dans la base de données de sécurité :
- Dans le système de suivi des bogues Debian : Bogue 1029114.
Dans le dictionnaire CVE du Mitre : CVE-2022-23521, CVE-2022-41903. - Plus de précisions :
-
Deux vulnérabilités ont été découvertes dans Git, un système de gestion de versions distribué. Un attaquant pouvait déclencher l’exécution de code dans des situations particulières.
- CVE-2022-23521
gitattributes est le mécanisme qui permet de définir des attributs pour les chemins. Ces attributs peuvent être définis en ajoutant un fichier
.gitattributes
au dépôt qui contient un ensemble de modèles de fichier et les attributs qui devraient être définis pour les chemins correspondant à ces modèles. Lors de l’analyse de gitattributes, plusieurs dépassements d'entier pouvaient se produire s'il existait un grand nombre de modèles de chemin, un grand nombre d’attributs pour un seul modèle ou quand les noms d’attribut déclaré étaient très grands. Ces dépassements pouvaient être déclenchés à l'aide d'un fichier.gitattributes
contrefait faisant partie de l’historique des commits. Git coupait silencieusement les lignes supérieures à 2Ko lors de l’analyse de gitattributes à partir d’un fichier, mais pas lors de son analyse à partir de l’index. Par conséquent, le défaut dépendait de l'existence du fichier dans l’arbre de travail, dans l’index ou dans les deux. Ce dépassement d'entier pouvait aboutir à des lectures ou des écritures arbitraires de tas et conduire à une exécution de code à distance. - CVE-2022-41903
git log
peut afficher des commits dans un format arbitraire en utilisant ses spécificateurs--format
. Cette fonctionnalité est aussi exposée àgit archive
à l’aide du gitattributeexport-subst
. Lors du traitement des opérateurs de remplissage, un dépassement d'entier existait danspretty.c::format_and_pad_commit()
où unsize_t
était stocké incorrectement commeint
, puis ajouté comme décalage àmemcpy()
. Ce dépassement pouvait être déclenché directement par un utilisateur exécutant une commande invoquant le mécanisme de formatage de commit (par exemple,git log --format=...
). Il pouvait aussi l’être indirectement à travers git archive à l’aide du mécanisme export-subst qui développe les spécificateurs de format dans les fichiers du dépôt lors d’un git archive. Ce dépassement d'entier pouvait aboutir à des lectures arbitraires de tas et conduire à une exécution de code arbitraire.
Pour Debian 10
Buster
, ces problèmes ont été corrigés dans la version 1:2.20.1-2+deb10u7.Nous vous recommandons de mettre à jour vos paquets git.
Pour disposer d'un état détaillé sur la sécurité de git, veuillez consulter sa page de suivi de sécurité à l'adresse : https://security-tracker.debian.org/tracker/git.
Plus d’informations à propos des annonces de sécurité de Debian LTS, comment appliquer ces mises à jour dans votre système et les questions fréquemment posées peuvent être trouvées sur : https://wiki.debian.org/LTS.
- CVE-2022-23521