‘Clone2Leak’ olarak adlandırılan üç farklı ancak birbiriyle ilişkili saldırı dizisi, Git ve kimlik bilgisi yardımcılarının kimlik doğrulama isteklerini işleme biçiminden yararlanarak kimlik bilgilerini sızdırabilir.
Saldırı, GitHub Desktop, Git LFS, GitHub CLI/Codespaces ve Git Credential Manager’daki şifreleri tehlikeye atabilir ve belirteçlere erişebilir.
‘Clone2Leak’i mümkün kılan kusurlar, GMO Flatt Security’den Japon araştırmacı RyotaK tarafından keşfedildi ve bunları etkilenen projelere sorumlu bir şekilde bildirdi.
Tüm kusurları ele alan güvenlik güncellemeleri kullanıma sunuldu ve etkilenen kullanıcılardan, sırlarının sızdırılması riskini azaltmak için güvenli bir sürüm yayınladıklarından emin olmaları isteniyor.
Clone2Leak saldırıları
RyotaK tarafından keşfedilen kusurların her biri, kimlik bilgisi yardımcılarına yapılan kimlik doğrulama isteklerinin uygunsuz şekilde ayrıştırılması etrafında dönüyor ve bir saldırganın Git’i kandırarak saklanan kimlik bilgilerini kötü amaçlı bir sunucuya sızdırmasına olanak tanıyor.
Kimlik bilgisi yardımcıları, Git’in uzak depolarla etkileşime girmesi için kimlik doğrulama bilgilerini saklayan ve alan araçlardır ve her Git işleminde kimlik bilgilerinin tekrar tekrar girilmesinin önlenmesine yardımcı olur.
Saldırganlar, bir kullanıcı kötü amaçlı bir depoyu klonladığında veya kötü amaçlı bir depoyla etkileşime girdiğinde Git’i kandırarak saklanan kimlik bilgilerini sızdırabilir.
Clone2Leak saldırısının çeşitli kusurlardan yararlanarak ortaya çıkabileceği üç yola genel bir bakış:
- Taşıma iadesi kaçakçılığı (CVE-2025-23040 ve CVE-2024-50338) – GitHub Desktop ve Git Credential Manager, URL’lerdeki satır başı (\r) karakterlerini yanlış yorumluyor. %0D içeren kötü amaçlı bir alt modül URL’si, kimlik bilgisi yardımcısını GitHub kimlik bilgilerini amaçlanan ana bilgisayar yerine saldırgan tarafından kontrol edilen bir sunucuya göndermesi için kandırır.
- Yeni hat enjeksiyonu (CVE-2024-53263) – Git LFS, Git’in güvenliğini atlayarak .lfsconfig dosyalarındaki yeni satır (\n) karakterlerine hatalı bir şekilde izin veriyor. Saldırganlar kimlik bilgisi isteklerini değiştirerek Git’in GitHub kimlik bilgilerini doğru sunucu yerine kötü amaçlı bir sunucuya göndermesini sağlayabilir.
- Kimlik bilgisi alımında mantık kusurları (CVE-2024-53858) – GitHub CLI ve GitHub Codespaces, istenmeyen ana bilgisayarlara kimlik doğrulama belirteçleri gönderen aşırı derecede izin veren kimlik bilgisi yardımcılarına sahipti. Saldırganlar, kullanıcının Codespaces içindeki kötü amaçlı bir depoyu klonlamasını sağlayarak GitHub erişim belirteçlerini çalabilir.
Yukarıda bahsedilen tüm güvenlik açıkları artık düzeltildi, ancak kullanıcılar araçlarının güncellendiğinden emin olmalı, kimlik bilgisi yapılandırmalarını denetlemeli ve depoları klonlarken dikkatli olmalıdır.
Yükseltilecek güvenli sürümler GitHub Desktop 3.4.12 veya daha yenisi, Git Credential Manager 2.6.1 veya daha yenisi, Git LFS 3.6.1 veya daha yenisi ve gh cli 2.63.0 veya daha yenisidir.
Ek olarak Git’in ‘credential.protectProtocol’unun, kimlik bilgisi kaçakçılığı saldırılarına karşı ekstra bir savunma katmanı olarak etkinleştirilmesi önerilir.
Flatt Security’nin raporunda vahşi ortamda aktif istismardan bahsedilmiyor, ancak ayrıntıların artık kamuoyuna açıklanmasıyla saldırı riski artıyor.