Dosyaların üzerine yazmanıza veya kendi kodunuzu yürütmenize izin veren Git'teki güvenlik açıkları

Dağıtılmış kaynak kontrol sistemi 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 ve 2.30.9'un düzeltici sürümleri Beş güvenlik açığının ortadan kaldırıldığı .XNUMX yayınlandı. Paket güncellemelerinin dağıtımlardaki yayınlarını Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD sayfalarından takip edebilirsiniz. Güvenlik açıklarına karşı koruma sağlamak için geçici çözüm olarak, test edilmemiş harici yamalarla çalışırken "git application --reject" komutunu çalıştırmaktan kaçınmanız ve "git submodule deinit", "git" komutlarını çalıştırmadan önce $GIT_DIR/config içeriğini kontrol etmeniz önerilir. Güvenilmeyen depolarla çalışırken config --rename-section" ve " git config --remove-section".

CVE-2023-29007 güvenlik açığı, core.pager, core.editor ve core.sshCommand yönergelerindeki yürütülebilir dosyalara giden yolları belirterek sistemde kod yürütmek için kullanılabilen $GIT_DIR/config yapılandırma dosyasındaki ayarların değiştirilmesine izin verir. . Güvenlik açığı, bir yapılandırma dosyasındaki bir bölümde yeniden adlandırma veya silme işlemleri gerçekleştirilirken, çok uzun yapılandırma değerlerinin yeni bir bölümün başlangıcı olarak değerlendirilmesine neden olabilecek bir mantık hatasından kaynaklanmaktadır. Uygulamada, güvenlik açığından yararlanan değerlerin değiştirilmesi, başlatma sırasında $GIT_DIR/config dosyasına kaydedilen çok uzun alt modül URL'leri belirtilerek gerçekleştirilebilir. Bu URL'ler "git submodule deinit" yoluyla kaldırılmaya çalışıldığında yeni ayarlar olarak yorumlanabilir.

Güvenlik açığı CVE-2023-25652, "git application –reject" komutuyla özel olarak tasarlanmış yamalar işlenirken çalışma ağacının dışındaki dosyaların içeriğinin üzerine yazılmasına olanak tanır. "git application" komutuyla, sembolik bir bağlantı aracılığıyla bir dosyaya yazmaya çalışan kötü amaçlı bir yama çalıştırmaya çalışırsanız, işlem reddedilecektir. Git 2.39.1'de sembolik bağlantı manipülasyonuna karşı koruma, sembolik bağlantılar oluşturan ve bunlar aracılığıyla yazmaya çalışan yamaları engelleyecek şekilde genişletildi. Söz konusu zafiyetin özü Git'in, kullanıcının "git application –reject" komutunu çalıştırarak yamanın reddedilen kısımlarını ".rej" uzantılı dosyalar olarak yazabileceğini ve saldırganın bunu kullanabileceğini hesaba katmamış olmasıdır. Mevcut erişim hakları izin verdiği sürece içerikleri isteğe bağlı bir dizine yazma olanağı.

Ayrıca, yalnızca Windows platformunda görünen üç güvenlik açığı düzeltildi: CVE-2023-29012 ("Git CMD" komutunu çalıştırırken deponun çalışma dizininde yürütülebilir doskey.exe dosyasını arayın; kodunuzun kullanıcının sisteminde yürütülmesi), CVE-2023 -25815 (gettext'te özel olarak biçimlendirilmiş yerelleştirme dosyalarını işlerken arabellek taşması) ve CVE-2023-29011 (SOCKS5 aracılığıyla çalışırken connect.exe dosyasını yanıltma olasılığı).

Kaynak: opennet.ru

Yorum ekle