O vulnerabilitate în Git care duce la scurgerea datelor de autentificare

Publicate versiuni corective ale sistemului de gestionare distribuită a codului sursă 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 și 2.17.4, în care a fost remediată vulnerabilitatea (CVE-2020-5260) în handlerul „credential.helper„, care duce la trimiterea datelor de autentificare pe un host greșit atunci când clientul git accesează un repository printr-un URL special formatat, care conține un caracter de linie nouă. Această vulnerabilitate poate fi utilizată pentru a trimite date de autentificare de la un alt host pe un server controlat de atacator.

Atunci când se specifică un URL de tip „https://evil.com?host=github.com/”, procesorul de acreditive la conectarea la gazda evil.com va transmite parametrii de autentificare stabiliți pentru github.com. Problema apare în timpul unor operațiuni precum „git clone”, inclusiv în procesarea URL-urilor pentru submodule (de exemplu, când se execută „git submodule update”, URL-urile specificate în fișierul .gitmodules din depozit vor fi procesate automat). Vulnerabilitatea prezintă cel mai mare risc în situații în care dezvoltatorul clonează un depozit fără să vadă URL-ul, de exemplu, lucrând cu submodule sau în sistemele care execută acțiuni automate, cum ar fi scripturile de construire a pachetelor.

Pentru a bloca vulnerabilitatea în noile versiuni este interzisă transmiterea caracterului de linie nouă în orice valori transmise prin protocolul de schimb de date de autentificare. Pentru distribuții, actualizările pachetelor pot fi urmărite pe paginile Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

Ca o soluție alternativă pentru blocarea problemei se recomandă să nu utilizați credential.helper când accesați repository-uri publice și să nu aplicați „git clone” în modul „—recurse-submodules” cu repository-uri neverificate. Pentru a dezactiva complet handlerul credential.helper, care efectuează salvarea și extragerea parolelor din cache, protejat de un stocare sau un fișier cu parole, se pot utiliza comenzile:

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

Sursa: opennet.ro

Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS 🔥 Cumpără un hosting fiabil pentru site-uri cu protecție DDoS, servere VPS VDS | ProHoster