Mga kahinaan sa Git na humahantong sa pagtagas ng data at pag-overwrit

Ang mga corrective release ng distributed source control system na Git 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7 at 2.30.8 ay nai-publish, na nag-aayos dalawang kahinaan , na nakakaapekto sa mga pag-optimize para sa lokal na pag-clone at ang "git apply" na utos. Maaari mong subaybayan ang paglabas ng mga update sa package sa mga pamamahagi sa mga pahina ng Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD. Kung hindi posible na i-install ang update, ito ay inirerekomenda bilang isang workaround upang maiwasan ang pagsasagawa ng "git clone" na operasyon gamit ang "--recurse-submodules" na opsyon sa mga hindi pinagkakatiwalaang repository, at upang maiwasan ang paggamit ng "git apply" at " git am" na mga utos sa mga hindi pinagkakatiwalaang repositoryo. code.

  • Ang kahinaan ng CVE-2023-22490 ay nagbibigay-daan sa isang umaatake na kumokontrol sa mga nilalaman ng isang naka-clone na repository na makakuha ng access sa sensitibong data sa system ng user. Dalawang kapintasan ang nag-aambag sa paglitaw ng kahinaan:

    Ang unang kapintasan ay nagbibigay-daan, kapag nagtatrabaho sa isang espesyal na idinisenyong imbakan, na makamit ang paggamit ng mga lokal na pag-optimize ng cloning kahit na gumagamit ng transportasyon na nakikipag-ugnayan sa mga panlabas na sistema.

    Ang pangalawang depekto ay nagbibigay-daan sa paglalagay ng simbolikong link sa halip na ang $GIT_DIR/objects na direktoryo, katulad ng vulnerability CVE-2022-39253, ang pag-aayos kung saan hinarangan ang paglalagay ng mga simbolikong link sa $GIT_DIR/objects na direktoryo, ngunit hindi suriin ang katotohanan na ang direktoryo ng $GIT_DIR/objects mismo ay maaaring isang simbolikong link.

    Sa lokal na cloning mode, inililipat ng git ang $GIT_DIR/objects sa target na direktoryo sa pamamagitan ng pagdereference sa mga symlink, na nagiging sanhi ng pagkopya ng mga direktang isinangguni na file sa target na direktoryo. Ang paglipat upang gumamit ng mga lokal na pag-optimize ng cloning para sa hindi lokal na transportasyon ay nagbibigay-daan sa pagsasamantala ng mga kahinaan kapag nagtatrabaho sa mga panlabas na repositoryo (halimbawa, recursively kasama ang mga submodules na may command na "git clone β€”recurse-submodules" ay maaaring humantong sa pag-clone ng isang malisyosong repository na naka-package bilang isang submodule sa ibang repositoryo).

  • Ang Vulnerability CVE-2023-23946 ay nagbibigay-daan sa mga nilalaman ng mga file sa labas ng gumaganang direktoryo na ma-overwrit sa pamamagitan ng pagpasa ng espesyal na ginawang input sa command na "git apply". Halimbawa, ang isang pag-atake ay maaaring isagawa sa panahon ng pagproseso ng mga patch na inihanda ng isang umaatake sa "git apply". Upang harangan ang mga patch sa paglikha ng mga file sa labas ng gumaganang kopya, hinaharangan ng "git apply" ang pagproseso ng mga patch na sumusubok na magsulat ng isang file gamit ang mga symlink. Ngunit lumalabas na ang proteksyon na ito ay maaaring ma-bypass sa pamamagitan ng paglikha ng isang simbolikong link sa unang lugar.

Pinagmulan: opennet.ru

Magdagdag ng komento