CVE-2024-34343

Orta

Açıklama

Nuxt, Vue.js ile tam yığınlı (full-stack) web uygulamaları ve web siteleri oluşturmak için kullanılan ücretsiz ve açık kaynaklı bir çerçevedir. `navigateTo` fonksiyonu `javascript:` protokolünü engellemeye çalışır ancak `unjs/ufo` tarafından sağlanan API'leri doğru şekilde kullanmaz. Bu kütüphane ayrıca ayrıştırma tutarsızlıkları içermektedir. Fonksiyon önce belirtilen URL'nin bir protokole sahip olup olmadığını test eder; bu işlem URL ayrıştırması için unjs/ufo paketini kullanır. Bu fonksiyon etkili bir şekilde çalışır ve `javascript:` protokolü için true değerini döndürür. Bundan sonra URL, `parseURL` fonksiyonu kullanılarak ayrıştırılır. Bu fonksiyon, kötü biçimlendirilmiş URL'lerin ayrıştırılmasını reddeder. `javascript:alert(1)` ifadesinin ayrıştırılması tüm değerler için null/"" döndürür. Ardından, URL'nin protokolü `isScriptProtocol` fonksiyonu kullanılarak kontrol edilir. Bu fonksiyon girdiyi yalnızca bir protokol listesine karşı kontrol eder ve herhangi bir ayrıştırma işlemi gerçekleştirmez. Kötü biçimlendirilmiş URL'lerin ayrıştırılmasının reddedilmesi ve ek ayrıştırma yapılmaması, hiçbir protokol bulunamadığı için betik kontrollerinin başarısız olması anlamına gelir. Bir protokol tanımlanmış olsa bile, `parseURL` uygulamasında boşluklar temizlenmediğinden `isScriptProtocol` kontrolleri atlatılır. Belirli özel protokoller `parseURL`'in başında tanımlanmıştır. Bu diziye yeni bir satır veya sekme karakteri eklemek, özel protokol kontrolünü engelleyecek ve sonraki kontrolleri atlatacaktır. Bu durum YALNIZCA SSR gerçekleştikten sonra etkilidir; konum başlığı (location header) içindeki `javascript:` protokolü XSS tetiklemez. Bu sorun 3.12.4 sürümünde giderilmiştir ve tüm kullanıcıların yükseltme yapmaları önerilir. Bu güvenlik açığı için bilinen bir geçici çözüm yoktur.

ÖnemOrta
CVSS6.3
İstismar olasılığı—
ÜrünNuxt
Yayın5 Ağu 2024
İlk görülme5 Ağu 2024

Nasıl düzeltilir

Güncelleyin
  • nuxt nuxt3.12.4 ya da sonraki bir sürüm
  • nuxt3.12.4 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
nuxt nuxtv < 3.12.43.12.4
nuxtnpmv < 3.12.43.12.4

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.

CVE-2024-34343 · Nuxt · Dark Radar