Kerentanan di Git saat mengkloning submodul dan menggunakan git shell

Rilis korektif dari sistem kontrol sumber terdistribusi Git 2.38.1, 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3 dan 2.37.4 telah diterbitkan, yang memperbaiki dua kerentanan , yang muncul saat menggunakan perintah “git clone” dalam mode “—recurse-submodules” dengan repositori yang tidak dicentang dan saat menggunakan mode interaktif “git Shell”. Anda dapat melacak rilis pembaruan paket dalam distribusi di halaman Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.

  • CVE-2022-39253 - Kerentanan memungkinkan penyerang yang mengontrol konten repositori yang dikloning untuk mendapatkan akses ke data rahasia di sistem pengguna dengan menempatkan tautan simbolis ke file yang diinginkan di direktori $GIT_DIR/objects dari repositori yang dikloning. Masalah hanya muncul ketika mengkloning secara lokal (dalam mode "--local", digunakan ketika data target dan sumber klon berada di partisi yang sama) atau ketika mengkloning repositori berbahaya yang dikemas sebagai submodul di repositori lain (misalnya, ketika memasukkan submodul secara rekursif dengan perintah "git clone" --recurse-submodules").

    Kerentanan ini disebabkan oleh fakta bahwa dalam mode kloning “--local”, git mentransfer konten $GIT_DIR/objects ke direktori target (membuat tautan keras atau salinan file), melakukan dereferensi tautan simbolik (yaitu, sebagai akibatnya, tautan non-simbolis disalin ke direktori target, tetapi langsung ke file yang ditunjuk oleh tautan tersebut). Untuk memblokir kerentanan, rilis baru git melarang kloning repositori dalam mode “--local” yang berisi tautan simbolik di direktori $GIT_DIR/objects. Selain itu, nilai default parameter protokol.file.allow telah diubah menjadi "pengguna", yang membuat operasi kloning menggunakan protokol file:// menjadi tidak aman.

  • CVE-2022-39260 - Overflow bilangan bulat pada fungsi split_cmdline() yang digunakan dalam perintah "git shell". Masalah ini dapat digunakan untuk menyerang pengguna yang memiliki “git shell” sebagai shell loginnya dan mengaktifkan mode interaktif (file $HOME/git-shell-commands telah dibuat). Eksploitasi kerentanan dapat menyebabkan eksekusi kode arbitrer pada sistem saat mengirimkan perintah yang dirancang khusus berukuran lebih dari 2 GB.

Sumber: opennet.ru

Tambah komentar