Siber Güvenlik

Gitea'da Kritik RCE Açığı: Depo Yazma Yetkisi Olanlar Git Hook ile Shell Komutları Çalıştırabiliyor

Gitea'da Kritik RCE Açığı: Depo Yazma Yetkisi Olanlar Git Hook ile Shell Komutları Çalıştırabiliyor
Malta'da Hem Öğren Hem Çalış

Kendi sunucunuzda barındırabileceğiniz Git platformu Gitea, kritik bir uzaktan kod çalıştırma (RCE) güvenlik açığını kapattı. Normal depo yazma yetkisine sahip bir kullanıcı, saldırgan tarafından kontrol edilen yama içeriğini canlı bir Git hook'una dönüştürüp Gitea servis hesabı üzerinden shell komutları çalıştırabiliyor.

CVE-2026-60004 koduyla izlenen ve CVSS puanı 9.8 olan bu güvenlik açığı, Gitea'nın 1.17 ve sonrası ile 1.27.1 öncesi sürümlerini etkiliyor. Açık, 1.27.1 sürümüyle giderilmiş durumda. Güvenlik açığı bulunan API çağrısı, kimlik doğrulama ve depo yazma izni gerektiriyor. Ancak Gitea varsayılan olarak kayıt işlemini açık bıraktığı için, dışarıdan bir ziyaretçi güncellenmemiş bir kurulumda normal bir hesap ve depo oluşturup, önceden herhangi bir kimlik bilgisine sahip olmadan bu açıktan yararlanabiliyor.

Çözüm için 1.27.1 sürümüne güncelleme yapılması gerekiyor. Gitea, 27 Temmuz'da yaptığı açıklamada, Gitea Cloud örneklerinin otomatik olarak güncelleneceğini duyurdu. 28 Temmuz tarihli güvenlik bülteninde bu açıktan aktif olarak yararlanıldığına dair bir bilgi yer almazken, bültende kamuya açık proof-of-concept (PoC) koduna yer verildi.

Güncelleme yaygınlaştırılana kadar açık kaydı devre dışı bırakmak, herkese açık hesap oluşturma yolunu kapatabilir. Ancak bu, güvenlik açığını gidermez ve depo yazma yetkisine sahip mevcut kullanıcılara karşı bir koruma sağlamaz.

Güvenlik açığı, NightRang3r takma adıyla bilinen güvenlik araştırmacısı Shai Rod tarafından bildirildi. Gitea, yayınladığı güvenlik bülteninde NightRang3r'ı açığı bildiren kişi olarak belirtti.

Gitea'daki etkilenen API rotası, oturum açmamış kullanıcıların isteklerini reddeden reqToken() fonksiyonunu çağırıyor. Önceden kimlik bilgisi gerektirmeyen bu saldırı yolu, projenin varsayılan yapılandırmasından kaynaklanıyor. Bu varsayılan ayarlar; kaydı açık bırakıyor, e-posta veya manuel onay gerektirmiyor, yeni kullanıcıları kısıtlı olarak işaretlemiyor ve herhangi bir varsayılan depo oluşturma sınırı koymuyor.

Hata, POST /api/v1/repos/{owner}/{repo}/diffpatch uç noktasında bulunuyor. Gitea'nın güvenlik bültenine göre, bu uç nokta sağlanan bir yamayı paylaşılan geçici bir bare (çıplak) klonun içinde uyguluyor. Güvenlik açığı bulunan yapılar, sunucuda Git 2.32 veya daha üst bir sürüm çalışıyorsa -3 (three-way fallback) seçeneğini de ekleyerek git apply komutunu --index, --recount, --cached ve --binary parametreleriyle çağırıyor.

Deniz, kum, güneş ve İngilizce — Malta'da bir dil tatili! Programı gör →

Kaynak: The Hacker News