Correctieve releases van het gedistribueerde systeem voor het beheer van broncode, Git 2.38.1, 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3 en 2.37.4 zijn gepubliceerd, waarin twee kwetsbaarheden zijn verholpen die zich manifesteren bij het gebruik van de opdracht 'git clone' in de '—recurse-submodules' modus met onbetrouwbare repositories en bij het gebruik van de interactieve werkwijze 'git shell'. De updates van de pakketten in de distributies kunnen worden gevolgd op de pagina's van Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.
- CVE-2022-39253 — de kwetsbaarheid stelt een aanvaller die de inhoud van de te klonen repository controleert in staat om toegang te krijgen tot vertrouwelijke gegevens op het systeem van de gebruiker, door symbolische links naar relevante bestanden te plaatsen in de map $GIT_DIR/objects van de te klonen repository. Het probleem doet zich alleen voor bij lokale kloning (in de '—local' modus, die wordt gebruikt wanneer de doel- en bronbestanden van de kloning zich op dezelfde schijf bevinden) of bij het klonen van een kwaadaardige repository die verpakt is als een submodule in een andere repository (bijvoorbeeld bij het recursief insluiten van submodules met de opdracht 'git clone —recurse-submodules').
De kwetsbaarheid wordt veroorzaakt doordat Git in de '—local' kloningsmodus de inhoud van $GIT_DIR/objects naar de doelmap verplaatst (harde links of kopieën van bestanden maakt), en symbolische links afhandelt (dat wil zeggen, uiteindelijk worden er geen symbolische links naar de doelmap gekopieerd, maar de bestanden waar de links naar verwijzen). Om de manifestatie van de kwetsbaarheid in nieuwe Git-releases te blokkeren, is klonen van repositories in de '—local' modus met symbolische links in de map $GIT_DIR/objects niet toegestaan. Bovendien is de standaardwaarde van de parameter protocol.file.allow gewijzigd naar 'user', waardoor kloningsoperaties met het file:// protocol als onveilig worden geclassificeerd.
- CVE-2022-39260 — een integer overflow in de functie split_cmdline(), die wordt gebruikt in de opdracht 'git shell'. Het probleem kan worden gebruikt om aanvallen uit te voeren op gebruikers die 'git shell' als shell gebruiken bij het inloggen en waarbij de interactieve werkwijze is ingeschakeld (een bestand $HOME/git-shell-commands is aangemaakt). Misbruik van deze kwetsbaarheid kan leiden tot de uitvoering van willekeurige code op het systeem wanneer een speciaal opgemaakte opdracht met een grootte van meer dan 2 GB wordt verzonden.
Bron: opennet.ru
