Mga kahinaan sa Git na nagbibigay-daan sa iyong i-overwrite ang mga file o i-execute ang sarili mong code

Mga corrective release ng distributed source control system Git 2.40.1, 2.39.3, 2.38.5, 2.37.7, 2.36.6, 2.35.8, 2.34.8, 2.33.8, 2.32.7, 2.31.8 at 2.30.9. nai-publish na .XNUMX, na nag-ayos ng limang mga kahinaan. Maaari mong sundin ang paglabas ng mga update sa package sa mga pamamahagi sa mga pahina ng Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Bilang isang solusyon upang maprotektahan laban sa mga kahinaan, inirerekumenda na iwasang patakbuhin ang utos na "git apply --reject" kapag nagtatrabaho sa mga hindi pa nasusubukang panlabas na patch, at suriin ang mga nilalaman ng $GIT_DIR/config bago patakbuhin ang "git submodule deinit", "git config --rename-section" at " git config --remove-section" kapag nakikitungo sa mga hindi pinagkakatiwalaang repository.

Ang Vulnerability CVE-2023-29007 ay nagbibigay-daan sa pagpapalit ng mga setting sa $GIT_DIR/config na configuration file, na maaaring magamit upang i-execute ang code sa system sa pamamagitan ng pagtukoy ng mga path sa mga executable na file sa core.pager, core.editor at core.sshCommand na mga direktiba. Ang kahinaan ay sanhi ng isang lohikal na error dahil sa kung saan ang napakahabang mga halaga ng pagsasaayos ay maaaring ituring bilang simula ng isang bagong seksyon kapag pinapalitan o tinatanggal ang isang seksyon mula sa isang file ng pagsasaayos. Sa pagsasagawa, ang pagpapalit ng mga nagsasamantalang halaga ay maaaring makamit sa pamamagitan ng pagtukoy ng napakahabang submodule na mga URL na nai-save sa $GIT_DIR/config file sa panahon ng pagsisimula. Ang mga URL na ito ay maaaring bigyang-kahulugan bilang mga bagong setting kapag sinusubukang tanggalin ang mga ito sa pamamagitan ng "git submodule deinit".

Ang Vulnerability CVE-2023-25652 ay nagbibigay-daan sa pag-overwrite sa mga nilalaman ng mga file sa labas ng working tree kapag ang mga espesyal na ginawang patch ay pinoproseso ng command na "git apply --reject". Kung susubukan mong magsagawa ng malisyosong patch gamit ang command na "git apply" na sumusubok na sumulat sa isang file sa pamamagitan ng simbolikong link, tatanggihan ang operasyon. Sa Git 2.39.1, ang proteksyon sa pagmamanipula ng symlink ay pinalawak upang harangan ang mga patch na lumilikha ng mga symlink at sumusubok na sumulat sa kanila. Ang kakanyahan ng kahinaan na isinasaalang-alang ay hindi isinasaalang-alang ng Git na maaaring isagawa ng user ang command na "git apply -reject" upang isulat ang mga tinanggihang bahagi ng patch bilang mga file na may extension na ".rej", at ang umaatake ay maaaring gamitin ang pagkakataong ito upang isulat ang mga nilalaman sa isang arbitrary na direktoryo, hangga't pinapayagan ito ng kasalukuyang mga pahintulot.

Bilang karagdagan, tatlong mga kahinaan na lumilitaw lamang sa Windows platform ay naayos na: CVE-2023-29012 (hanapin ang executable doskey.exe sa gumaganang direktoryo ng repositoryo kapag isinasagawa ang "Git CMD" na utos, na nagbibigay-daan sa iyo upang ayusin ang execution ng iyong code sa system ng user), CVE-2023 -25815 (buffer overflow habang pinoproseso ang custom localization files sa gettext) at CVE-2023-29011 (posibilidad na palitan ang connect.exe file kapag nagtatrabaho sa pamamagitan ng SOCKS5).

Pinagmulan: opennet.ru

Magdagdag ng komento