CVE-2024-51501

Kritik

Açıklama

Refit; .NET Core, Xamarin ve .NET için otomatik, tip güvenli bir REST kütüphanesidir. Çeşitli başlıkla ilgili Refit öznitelikleri (Header, HeaderCollection ve Authorize), CRLF enjeksiyonuna karşı savunmasızdır. HTTP başlıklarının bir isteğe eklenme yöntemi `HttpHeaders.TryAddWithoutValidation` metodu aracılığıyladır. Bu metod, başlık değerindeki CRLF karakterlerini kontrol etmez. Bu durum, bir Refit isteğine eklenen tüm başlıkların CRLF enjeksiyonuna açık olduğu anlamına gelir. Genel olarak, bir HTTP başlığına yapılan CRLF enjeksiyonu (HTTP/1.1 kullanıldığında), ek HTTP başlıkları enjekte edilebileceği veya bütün HTTP isteklerinin kaçırılabileceği (request smuggling) anlamına gelir. Refit kütüphanesini kullanan bir uygulama, kullanıcı tarafından kontrol edilebilen bir değeri bir başlığa aktarıyorsa, söz konusu uygulama CRLF enjeksiyonuna karşı savunmasız hale gelir. Bu durum, yukarıdaki gibi bir komut satırı uygulaması için mutlaka bir güvenlik sorunu teşkil etmeyebilir ancak bu tür bir kod bir web uygulamasında mevcutsa, uygulama istek bölme (PoC'de gösterildiği gibi) ve dolayısıyla Server Side Request Forgery riskine açık hale gelir. Teknik olarak bu, Refit'in kendisinden ziyade Refit kullanan uygulamalardaki potansiyel bir zafiyettir. Bu sorun 7.2.22 ve 8.0.0 sürüm yayınlarında giderilmiştir ve tüm kullanıcıların yükseltme yapmaları önerilir. Bu zafiyet için bilinen bir geçici çözüm yoktur.

ÖnemKritik
CVSS10.0
İstismar olasılığı—
ÜrünRefit
Yayın4 Kas 2024
İlk görülme4 Kas 2024
Zayıflık türüCWE-93CWE-93

Nasıl düzeltilir

Güncelleyin
  • Refit7.2.22 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
RefitNuGetv < 7.2.227.2.22

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.

Intelligence 360 paketinde

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.