Git a corrig deux vulnrabilits de scurit critiques qui pouvaient permettre des attaquants d’excuter du code arbitraire aprs avoir exploit avec succs des faiblesses de dpassement de tampon bases sur le tas. En outre, une troisime vulnrabilit spcifique Windows ayant un impact sur l’outil GUI de Git, cause par une faiblesse du chemin de recherche non fiable, permet aux acteurs de la menace non authentifis d’excuter des attaques peu complexes de code non fiable. Les utilisateurs sont encourags mettre jour vers la dernire version, en particulier s’ils utilisent « git archive » ou utilisent l’interface graphique de Git sous Windows.
Dans un billet de blogue publi mercredi, l’quipe Git note que les deux premires vulnrabilits affectent le mcanisme de formatage de commit de Git et l’analyseur .gitattributes, respectivement. La premire faille (CVE-2022-41903) peut tre exploite pour effectuer des critures arbitraires dans le tas, tandis que la seconde (CVE-2022-23521) peut galement tre exploite pour des lectures arbitraires. Les deux failles peuvent entraner une excution de code arbitraire, les utilisateurs doivent donc effectuer une mise jour immdiate. Ces deux problmes ont galement t dcouverts dans le cadre d’un audit de la base de code Git ralis par X41.
Le problme le plus grave dcouvert permet un attaquant de dclencher une corruption de la mmoire base sur le tas pendant les oprations de clonage ou de tirage, ce qui peut entraner l’excution de code. Une autre faille critique permet l’excution de code pendant une opration d’archivage, qui est couramment effectue par les forges Git , ont dclar les experts en scurit de X41. Cet audit a t sponsoris par l’OSTIF (Open Source Technology Improvement Fund). Les correctifs ont t rdigs par des ingnieurs de l’quipe de recherche en scurit de GitLab, des ingnieurs de GitHub et des membres de la liste de diffusion git-security.
Selon l’quipe Git, le problme spcifique Windows (CVE-2022-41953) implique une recherche de $PATH incluant le rpertoire de travail actuel, ce qui peut tre exploit pour excuter du code arbitraire lors du clonage de dpts avec l’interface graphique de Git. Voici ci-dessous plus d’informations sur les vulnrabilits et les correctifs.
CVE-2022-41903
La premire srie de mises jour concerne le mcanisme de formatage des commits de Git, utilis pour afficher des informations arbitraires sur les commits, comme dans git log –format. Lors du traitement de l’un des oprateurs de remplissage (par exemple, %<(, %>(, etc.) un dbordement d’entier peut se produire lorsqu’un grand dcalage est donn).Cette faille peut tre dclenche directement via git log –format.
Elle peut galement tre dclenche indirectement via le mcanisme export-subst de Git, qui applique les modificateurs de formatage aux fichiers slectionns lors de l’utilisation de git archive. Ce dpassement d’entier peut entraner des lectures et des critures arbitraires du tas, ce qui peut entraner l’excution de code distance.
CVE-2022-23521
Les attributs Git (.gitattributes) sont utiliss pour dfinir des attributs uniques correspondant des chemins dans votre dpt. Ces attributs sont dfinis par un ou plusieurs fichiers .gitattributes dans votre dpt. L’analyseur utilis pour lire ces fichiers prsente de multiples dbordements d’entiers, qui peuvent se produire lors de l’analyse d’un grand nombre de motifs, d’un grand nombre d’attributs ou d’attributs avec des noms trop longs. Ces dbordements peuvent tre dclenchs par un fichier .gitattributes malveillant.
Cependant, Git divise automatiquement les lignes 2KB lors de la lecture de .gitattributes partir d’un fichier, mais pas lors de son analyse partir de l’index. L’exploitation russie de cette vulnrabilit dpend de l’emplacement du fichier .gitattributes en question. Comme dans le cas prcdent, ce dpassement d’entier peut entraner des lectures et des critures arbitraires du tas, ce qui peut entraner l’excution de code distance.
CVE-2022-41953
Aprs avoir clon un dpt, Git GUI applique automatiquement certains post-traitements au checkout rsultant, y compris l’excution d’un correcteur orthographique, s’il est disponible. Une vulnrabilit spcifique Windows fait que Git GUI recherche le correcteur orthographique dans l’arbre de travail qui vient d’tre extrait, ce qui peut entraner l’excution de code non fiable.
Mise jour vers la dernire version de Git
Selon l’quipe, dans tous les cas, le moyen le plus efficace de se dfendre contre les attaques qui tentent d’exploiter ces vulnrabilits est de mettre jour vers la dernire version de Git (v2.39.1). Si vous ne pouvez pas mettre jour immdiatement, rduisez votre risque en prenant les mesures suivantes :
- vitez d’invoquer le mcanisme –format directement avec les oprateurs connus, et vitez d’excuter git archive dans des dpts non fiables ;
- si vous exposez git archive via le dmon git, pensez le dsactiver si vous travaillez avec des dpts non fiables en excutant git config –global daemon.uploadArch false ;
- vitez d’utiliser l’interface graphique de Git sous Windows lorsque vous clonez des dpts non fiables.
Source : GitHub
Et vous ?
Quel est votre avis sur le sujet ?
Voir aussi