CVE-2026-89541

Kritik

Açıklama

Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: SUNRPC: gss_unwrap_resp_priv uzunluk kontrolleri sıkılaştırıldı gss_unwrap_resp_priv(), RPCSEC_GSS opak uzunluğunu şu şekilde doğrular: offset = (u8 *)(p) - (u8 *)head->iov_base; if (offset + opaque_len > rcv_buf->len) goto unwrap_failed; maj_stat = gss_unwrap(ctx->gc_gss_ctx, offset, offset + opaque_len, rcv_buf); Her iki operand da u32'dir ve toplam u32 olarak hesaplanır. 0xffffffff değerine yakın bir opaque_len içeren yanıt, offset + opaque_len işleminin rcv_buf->len değerinin altında küçük bir değere dönmesine (wrap) neden olur; böylece sınır kontrolü geçer ve gss_unwrap() fonksiyonu end < begin durumuyla çağrılır. Kontrol ayrıca alt sınırdan yoksundur, bu nedenle [0, GSS_KRB5_TOK_HDR_LEN) aralığındaki herhangi bir opaque_len kabul edilir ve ön şifre çözme başlığı ptr+4 ve ptr+6 konumlarını okuyan ardından belirtecin dışına çıkan gss_krb5_unwrap_v2()'ye iletilir. Özel olarak hazırlanmış bir RPCSEC_GSS yanıtı döndüren bir krb5p NFS sunucusu, istemciyi gss_krb5_unwrap_v2() ve onu takip eden rotate_left() döngüsünde sınır dışı okumalara (out-of-bounds reads) sürükleyebilir. Tekil birleşik kontrolün, u32 aritmetiğinde güvenli olan ve RFC 4121 minimum dış belirteç uzunluğunu zorunlu kılan üç koruma ile değiştirilmesiyle düzeltilmiştir: if (offset > rcv_buf->len) goto unwrap_failed; if (opaque_len > rcv_buf->len - offset) goto unwrap_failed; if (opaque_len < GSS_KRB5_TOK_HDR_LEN) goto unwrap_failed; İlk koruma, ikinci korumadaki çıkarma işlemini koşulsuz olarak güvenli hale getirir; offset, head kvec içindeki başarılı bir xdr_inline_decode() işleminden türetilmiştir, dolayısıyla pratikte zaten sınırı karşılamaktadır. Alt sınır ise 5b757c2e57a5 ("SUNRPC: svcauth_gss: enforce krb5 token minimum length") commit'inde eklenen sunucu tarafındaki kontrolle paraleldir.

ÖnemKritik
CVSS9.8
İstismar olasılığı—
ÜrünLinux
Yayın11 Eyl 2026
İlk görülme11 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • Linux Linux3691c4b3488d8ca046b9941e5be30c626dbbbb50, 85fa6b12e8f439739ac36ef2aad925f37c8b976a, 401f6a5b338d05bb1069ad814d9f77e3c367854f, 81fd7654a8429718adfcb2a7e03496077f547ed0, 89a15a50f84d32d4b99db86f957427fcbe20a99a, ebcbd2523a8524c3d24e111cdbed8e271d910269, d395c30d570ca6168f0297b191709927d1258273, 87831b92112c81db251d46756d65daa4f91af6a2 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 3691c4b3488d8ca046b9941e5be30c626dbbbb50, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 85fa6b12e8f439739ac36ef2aad925f37c8b976a, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 401f6a5b338d05bb1069ad814d9f77e3c367854f, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 81fd7654a8429718adfcb2a7e03496077f547ed0, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 89a15a50f84d32d4b99db86f957427fcbe20a99a, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < ebcbd2523a8524c3d24e111cdbed8e271d910269, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < d395c30d570ca6168f0297b191709927d1258273, 2d2da60c63b67174add32f06e8d54c3a0c5cd9cf ≤ v < 87831b92112c81db251d46756d65daa4f91af6a2, 2.6.153691c4b3488d8ca046b9941e5be30c626dbbbb50, 85fa6b12e8f439739ac36ef2aad925f37c8b976a, 401f6a5b338d05bb1069ad814d9f77e3c367854f, 81fd7654a8429718adfcb2a7e03496077f547ed0, 89a15a50f84d32d4b99db86f957427fcbe20a99a, ebcbd2523a8524c3d24e111cdbed8e271d910269, d395c30d570ca6168f0297b191709927d1258273, 87831b92112c81db251d46756d65daa4f91af6a2

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-2026-89541 · Linux · Dark Radar