A Git verziókezelő rendszer korrekciós kiadásai: 2.26.1, 2.25.3, 2.24.2, 2.23.2, 2.22.3, 2.21.2, 2.20.3, 2.19.4, 2.18.3 és 2.17.4, amelyek javítják () a „«, amely a hitelesítési adatok helytelen hostra történő elküldéséhez vezet, amikor a git kliens a repóhoz egy különlegesen formázott URL-en keresztül kapcsolódik, amely tartalmazza az új sor karaktert. A sebezhetőség kihasználható arra, hogy a támadó irányítása alatt álló szerverre küldje el másik host hitelesítési adatait.
Ha az URL formája „https://evil.com?host=github.com/”, a hitelesítő segédprogram evil.com hoszthoz való csatlakozásakor az github.com-hoz megadott hitelesítési paramétereket továbbítja. A probléma olyan műveletek végrehajtásakor jelentkezik, mint a „git clone”, beleértve az URL-ek feldolgozását a szubmodulok esetében (például a „git submodule update” végrehajtásakor automatikusan feldolgozásra kerülnek a .gitmodules fájlban a repóból megadott URL-ek). A sebezhetőség a legnagyobb veszélyt olyan helyzetekben jelenti, amikor a fejlesztő nem látja az URL-t a repó klónozása során, például szubmodulok használatakor, vagy olyan rendszerekben, amelyek automatikus műveleteket végeznek, például csomagépítő szkriptekben.
A sebezhetőség blokkolásához új verziókban megelőzni az új sor karakterének átadását a hitelesítési adatokat kezelő protokollon keresztül. A disztribúciós csomagok frissítései figyelhetők nyomon az alábbi oldalakon , , , , , , .
A probléma megkerülésére kerülje a credential.helper használatát nyilvános repókkal való kapcsolódáskor, és ne használja a „git clone” parancsot „--recurse-submodules” módban megbízhatatlan repókkal. A credential.helper teljes letiltásához, amely végrehajtja tárolását és visszanyerését a , amely védett vagy jelszófájl, használja az alábbi parancsokat:
git config —unset credential.helper
git config —global —unset credential.helper
git config —system —unset credential.helper
Forrás: opennet.ru
