CVE-2026-98151

Orta

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: bpf: spekülatif işaretçi aritmetiğinde REG INVARIANTS VIOLATION hatası düzeltildi Örnek olarak şu ayrıcalıksız programa bakınız: r0 = bpf_map_lookup_elem(...) /* PTR_TO_MAP_VALUE, offset 0 */ ... 14: r0 += r1 /* r1 sınırlı bir skalerdir */ 15: r9 = r0 Bu programın yüklenmesi, reg_bounds_sanity_check() fonksiyonundan gelen bir verifier uyarısını tetikler: verifier bug: REG INVARIANTS VIOLATION (alu): const subreg tnum out of sync with range bounds r64={.base=0x0, .size=0x0} r32={.base=0x0, .size=0xffffffff} var_off=(0x0, 0x0) Olanlar şöyledir: 1. adjust_ptr_min_max_vals() içinde 14 numaralı komut (r0 += r1) işlenirken, yeni offset dst_reg'in var_off ve 32/64-bit aralıklarına hesaplanır. 2. İşaretçi yazmaçları 32-bit alt yazmaç sınırlarını takip etmediği için, __mark_reg32_unbounded() önce r32'yi tam aralığa ayarlar; r32, fonksiyonun sonunda reg_bounds_sync() tarafından offsetten yeniden türetilir. 3. Ayrıcalıksız yolda, sanitize_ptr_alu() çağrılır ve sanitize_speculative_path() -> push_stack() aracılığıyla mevcut yazmaç durumu anlık görüntüsü (snapshot) alınır ve bir sonraki komutun (komut 15) doğrudan spekülatif bir yol olarak doğrulanması planlanır. 4. Bu anlık görüntü, adım 2 ile final reg_bounds_sync() arasında alınır: bu noktada dst_reg'in var_off değeri hala (sabit) orijinal offseti tutarken, r32 henüz tam aralığa sıfırlanmıştır, yani ikisi senkronize değildir. Spekülatif yol daha sonra 15 numaralı komutu (r9 = r0) doğruladığında, tutarsız durum reg_bounds_sanity_check() fonksiyonuna ulaşır ve uyarıyı tetikler. var_off ve 32-bit aralığı her zaman tutarlı olmalıdır. Anlık görüntüyü tutarlı tutmanın iki yolu vardır: 1. Anlık görüntüden önce var_off ve r32'yi eşleşecek şekilde senkronize etmek veya 2. r32'yi orijinal (zaten tutarlı olan) değerinde bırakmak ve yalnızca anlık görüntüden sonra sıfırlamak. sanitize_ptr_alu()'nun temel amacı, erişimi spekülasyon altında sınırlar içinde tutan zararsız bir maskeleme dizisi eklemektir, dolayısıyla aldığı anlık görüntü bunu sadık bir şekilde temsil etmelidir. 2. yaklaşım uygulanmıştır: __mark_reg32_unbounded() fonksiyonu sanitize_ptr_alu()'dan sonraya taşınmış, böylece spekülatif anlık görüntü işaretçinin orijinal ve tutarlı r32 değerini korumuştur. Spekülatif olmayan yol değişmemiştir: r32 hala offset uygulanmadan önce sıfırlanmakta ve reg_bounds_sync() tarafından yeniden türetilmektedir.

ÖnemOrta
CVSS5.5
İstismar olasılığı—
ÜrünLinux Kernel
Yayın25 Eyl 2026
İlk görülme25 Eyl 2026

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel6.12.111, 6.18.53, 7.2.7 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel6.8 ≤ v < 6.12.111, 6.13 ≤ v < 6.18.53, 6.19 ≤ v < 7.2.7, 7.36.12.111, 6.18.53, 7.2.7

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-98151 · Linux Kernel · Dark Radar