CVE-2024-36115
Açıklama
Reposilite, JVM ekosistemindeki Maven tabanlı artefaktlar için açık kaynaklı, hafif ve kullanımı kolay bir depo yöneticisidir. Bir Maven depo yöneticisi olarak Reposilite, artefakt içeriğinin tarayıcıda görüntülenmesinin yanı sıra API aracılığıyla yönetimsel görevlerin gerçekleştirilmesi imkanını sağlar. Sorun, artefakt içeriğinin Admin UI ile aynı köken (protokol/ana bilgisayar/port) üzerinden sunulmasından kaynaklanmaktadır. Eğer artefakt içerisinde JavaScript içeren HTML içeriği varsa, bu JavaScript aynı köken içinde çalıştırılır. Bu nedenle, kimliği doğrulanmış bir kullanıcı artefakt içeriğini görüntülüyorsa, içerideki JavaScript kullanıcının şifresinin ('token-secret') saklandığı tarayıcının yerel depolama alanına erişebilir. Bu durum, özellikle Reposilite'ın Maven Central Repository gibi üçüncü taraf depoları aynalamak üzere yapılandırıldığı senaryolarda tehlikelidir. Herkes kendi adına Maven Central'a bir artefakt yayınlayabildiği için, bu tür kötü amaçlı paketler Reposilite örneğine saldırmak için kullanılabilir. Bu sorun, tüm Reposilite örneğinin tamamen ele geçirilmesine yol açabilir. Saldırı yönetici kullanıcıya karşı gerçekleştirilirse, ayarları ve artefaktları değiştirmek için yönetici API'sinin kullanılması mümkündür. En kötü senaryoda, bir saldırgan Reposilite'dan artefakt kullanan tüm sistemlerde uzaktan kod çalıştırma yetkisi elde edebilir. Saldırganın kurban olan kullanıcıyı kötü amaçlı bir artefakt kullanmaya ikna etmesine gerek olmadığı, sadece tarayıcıda bir bağlantıyı açmasının yeterli olduğu unutulmamalıdır. Bu bağlantı diğer HTML içerikleri arasında sessizce yüklenebilir ve bu da saldırıyı fark edilemez hale getirir. Reposilite örneği VPN arkasında veya yerel ağda olduğu gibi izole bir ortamda bulunsa bile, saldırı yönetici tarayıcısı üzerinden gerçekleştirilebileceği için hala mümkündür. Reposilite bu sorunu 3.5.12 sürümünde gidermiştir. Kullanıcıların yükseltme yapmaları önerilir. Bu güvenlik açığı için bilinen bir geçici çözüm yoktur. Bu sorun GitHub Security lab tarafından keşfedilmiş ve raporlanmıştır; ayrıca GHSL-2024-072 olarak takip edilmektedir.
Nasıl düzeltilir
- com.reposilite:reposilite-backend3.5.12 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| com.reposilite:reposilite-backendMaven | 3.3.0 ≤ v < 3.5.12 | 3.5.12 |
Sürümünüzü kontrol edin
Ürünü seçin ve kullandığınız sürümü yazın; sürümün etkilenen aralıkta olup olmadığını görün.
Attack Surface Management
Alan adlarınıza bağlı varlıkları, bu varlıklarda çalışan teknolojileri ve bilinen zafiyetleri tek listede görün.