Der er udgivet korrigerende opdateringer til den distribuerede kildecodesystem Git 2.40.1, 2.39.3, 2.38.5, 2.37.7, 2.36.6, 2.35.8, 2.34.8, 2.33.8, 2.32.7, 2.31.8 og 2.30.9, der retter fem sårbarheder. Man kan holde øje med pakkeopdateringer i distributioner på siderne for Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch og FreeBSD. Som en omgåelse for at beskytte sig mod sårbarheder anbefales det at undgå at udføre kommandoen «git apply —reject» ved arbejde med ikke-verificerede eksterne patch. Desuden bør man kontrollere indholdet af $GIT_DIR/config før man udfører kommandoerne «git submodule deinit», «git config —rename-section» og «git config —remove-section» ved arbejde med usikre lagre.
Sårbarheden CVE-2023-29007 gør det muligt at indsætte indstillinger i konfigurationsfilen $GIT_DIR/config, som kan bruges til at udføre kode på systemet ved at angive stier til eksekverbare filer i direktiverne core.pager, core.editor og core.sshCommand. Sårbarheden skyldes en logisk fejl, som gør, at meget lange konfigurationsværdier kan blive behandlet som starten på en ny sektion, når man udfører operationer til omdøbning eller sletning af sektioner fra konfigurationsfilen. I praksis kan et eksploaterende værdier opnås ved at angive meget lange URL'er for submoduler, som gemmes i filen $GIT_DIR/config under initialiseringen. Disse URL'er kan blive fortolket som nye indstillinger, når man forsøger at slette dem via «git submodule deinit».
Sårbarheden CVE-2023-25652 giver mulighed for at overskrive indholdet af filer uden for arbejdsområdet ved behandling af specielt udformede patches med kommandoen «git apply —reject». Når der forsøges at udføre kommandoen «git apply» med en skadelig patch, der forsøger at skrive til en fil via et symbolsk link, vil operationen blive afvist. I Git 2.39.1 blev beskyttelsen mod manipulation via symbolske links suppleret med en blokering af patches, der skaber symbolske links og forsøger at udføre skrivninger gennem dem. Kerneproblemet med den nævnte sårbarhed er, at Git ikke tog højde for, at brugeren kan udføre kommandoen «git apply —reject» for at skrive de afviste dele af patchen som filer med filtypen «.rej», og en angriber kan udnytte denne mulighed til at skrive indhold i en vilkårlig katalog, så langt det nuværende adgangsniveau tillader det.
Endvidere er tre sårbarheder blevet rettet, som kun optræder på Windows-platformen: CVE-2023-29012 (søgning af det eksekverbare doskey.exe i arbejdsbiblioteket under udførelsen af kommandoen "Git CMD", hvilket muliggør udførelse af egen kode på brugerens system), CVE-2023-25815 (buffer overflow ved behandling af specielt udformede lokaliseringsfiler i gettext) og CVE-2023-29011 (mulighed for at erstatte connect.exe-filen ved brug af SOCKS5).
Kilde: opennet.ru
