CVE-2026-89538
Açıklama
Linux çekirdeğinde aşağıdaki güvenlik açığı giderilmiştir: SUNRPC: Aşırı boyutlu ec alanına sahip krb5 v2 sarmalama belirteçlerini reddet gss_krb5_unwrap_v2(), buf->len değerini, head[0].iov_len'den (tahsis edilen alma sayfası kapasitesi) çok daha küçük olabilen mantıksal bir uzunluğa ayarlar. Ardından, Kerberos v2 belirteç başlığındaki 16 bitlik "ek sayım" (ec) alanından türetilen bir kırpma uzunluğu ile xdr_buf_trim() fonksiyonunu çağırır. ec alanı, şifre çözme sonrası şifreli başlık kopyasına karşı yapılan memcmp() ile kimliği doğrulanır, bu nedenle rastgele değiştirilmiş bir değer reddedilir. Ancak, geçerli bir GSS bağlamına sahip olan herhangi bir eş, ec değeri düz metin uzunluğunu aşan bir belirteci yasal olarak şifreleyebilir. RFC 4121 uyarınca böyle bir belirteç yapısal olarak hatalıdır. xdr_buf_trim() artık işaretsiz alt taşmayı (unsigned underflow) önlemek için buf->len çıkarma işlemini sınırlasa da, ec aşırı boyutlu olduğunda tampon bellek hala anlamsal olarak geçersiz bir durumda (sıfır uzunluk, tutarsız iov uzunlukları) kalmaktadır. Çağıranlara tanımlı bir GSS_S_DEFECTIVE_TOKEN hatası vermek ve xdr_buf yapısını dahili olarak tutarlı tutmak için bu belirteçleri xdr_buf_trim() çağrılmadan önce reddedin. Sarmalanmış veri bloğu sıfırdan farklı bir ofsetle başlar -- her iki çağıran da len değerini ofset + opaque_len olarak iletir -- dolayısıyla buf->len hala bloktan önce gelen ofset baytlarını saymaya devam eder. Kırpma uzunluğunu tüm tampon bellek yerine kalan sarmalanmış segmente (buf->len - ofset) göre karşılaştırın; yalnızca buf->len ile karşılaştırmak, aşırı boyutlu bir ec değerinin testi geçmesine ve xdr_buf_trim()'in bloktan önceki baytları kesmesine neden olan ofset genişliğinde bir boşluk bırakır.
Nasıl düzeltilir
- Linux Linuxac9efc29346b6942e71f0e24a3178a9121330fab, b5746095b59f4d11f39f08751d36bbdfd1e5deac, 9fc6d6e6db49ab55208d5dd1c424c1d0d9aa7296, 4abb44a29bb515df6f49123848765c70fc9b5021, dfcd81ab45613d45996fbf483d4ef54b0ec90ab9, 1f9856af065b6158271687e9788407b9573fd16f, 880effc943ed82d6811f272ed3307c222b40f4d6, ad484748eec0a66eac0f13ab53b3fbedb7333c91 ya da sonraki bir sürüm
Etkilenen ürünler
| Ürün | Etkilenen sürümler | Düzeltildiği sürüm |
|---|---|---|
| Linux Linux | cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < ac9efc29346b6942e71f0e24a3178a9121330fab, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < b5746095b59f4d11f39f08751d36bbdfd1e5deac, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < 9fc6d6e6db49ab55208d5dd1c424c1d0d9aa7296, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < 4abb44a29bb515df6f49123848765c70fc9b5021, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < dfcd81ab45613d45996fbf483d4ef54b0ec90ab9, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < 1f9856af065b6158271687e9788407b9573fd16f, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < 880effc943ed82d6811f272ed3307c222b40f4d6, cf4c024b908353fcc48309374d39e3399d67dfd1 ≤ v < ad484748eec0a66eac0f13ab53b3fbedb7333c91, 3.13 | ac9efc29346b6942e71f0e24a3178a9121330fab, b5746095b59f4d11f39f08751d36bbdfd1e5deac, 9fc6d6e6db49ab55208d5dd1c424c1d0d9aa7296, 4abb44a29bb515df6f49123848765c70fc9b5021, dfcd81ab45613d45996fbf483d4ef54b0ec90ab9, 1f9856af065b6158271687e9788407b9573fd16f, 880effc943ed82d6811f272ed3307c222b40f4d6, ad484748eec0a66eac0f13ab53b3fbedb7333c91 |
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.