GitLab, herhangi bir kullanıcı etkileşimi olmaksızın hesap ele geçirme imkanı tanıyan iki kritik güvenlik açığına karşı Topluluk ve Kurumsal Sürüm için güvenlik güncellemeleri yayımladı.
GitLab’ın düzelttiği en kritik güvenlik açığı kritiklik puanı 10 üzerinden 10’a sahip ve CVE-2023-7028 olarak izleniyor. Başarılı bir sömürü için herhangi bir etkileşim gerekmiyor.
Bu zafiyet, şifre sıfırlama taleplerinin denetlenmeyen e-posta adreslerine gönderilmesine izin veren bir kimlik doğrulama zafiyeti ve hesapları ele geçirmeye olanak tanıyor. İki faktörlü kimlik doğrulama (2FA) etkinse, şifre sıfırlanabilir ancak başarılı giriş için ikinci kimlik doğrulama gerekecek.
Bir GitLab hesabının ele geçirilmesi, platformun genellikle özel kodları, API anahtarlarını ve diğer hassas verileri barındırması nedeniyle organizasyon üzerinde ciddi bir risk oluşturuyor.
Başka bir risk, GitLab’ın CI/CD (Sürekli Entegrasyon/Sürekli Dağıtım) için kullanıldığında saldırganların canlı ortamlara kötü amaçlı kod ekleyerek tüm dağıtım zincirini ele geçirilmesine neden olması.
Zafiyet içeren sürümler aşağıdaki gibi:
- 16.1 prior to 16.1.5
- 16.2 prior to 16.2.8
- 16.3 prior to 16.3.6
- 16.4 prior to 16.4.4
- 16.5 prior to 16.5.6
- 16.6 prior to 16.6.4
- 16.7 prior to 16.7.
Bu sorun, GitLab sürümleri 16.7.2, 16.5.6 ve 16.6.4’te çözüldü, düzeltme aynı zamanda 16.1.6, 16.2.9 ve 16.3.7’ye backported edildi.
Şu an için sömürüye dair herhangi bir kanıt olmasada aşağıdaki kontrolleri sağlayabilirsini.
Check gitlab-rails/production_json.log for HTTP requests to the /users/password path with params.value.email consisting of a JSON array with multiple email addresses.
Check gitlab-rails/audit_json.log for entries with meta.caller.id of PasswordsController#create and target_details consisting of a JSON array with multiple email addresses.