CVE-2026-89581

Yüksek

Açıklama

Linux kernel'de aşağıdaki güvenlik açığı giderilmiştir: bpf, x86: Genişletilmiş bir yazmaca yapılan per-CPU adres çözümlemesinin düzeltilmesi per-CPU adres MOV işleminin hedefi ModRM.reg içinde kodlanmıştır ve bu REX.R ile genişletilir; ancak REX ön eki, REX.B'yi ayarlayan add_1mod() ile oluşturulur. REX.B, ModRM.rm ve SIB.base'i genişletir ve bu komut belleğe tabansız disp32 olarak eriştiği için ilgili bitin hiçbir etkisi olmaz ve yüksek yazmaç biti basitçe kaybolur. Bu nedenle her is_ereg() hedefi, düşük üç biti paylaşan herhangi bir yazmacı seçerek yanlış yazmaca çözümlenir: R5 -> RAX R7 -> RBP R8 -> RSI R9 -> RDI reg2hex değeri 0 olan BPF_REG_5 ile üretilen 65 49 03 04 25 <off> add %gs:<off>,%rax komutu, per-CPU ofsetini R8 yerine RAX'a ekler. Hedef, ayarlanmamış adresi korur ve RAX bozulur; böylece program, hiçbir zaman per-CPU yapılmamış bir işaretçiyi dereferans etmeye devam eder: BUG: unable to handle page fault for address: 0000607e386a8894 RIP: bpf_prog_707837aafd2aa9ae_update_percpu_data+0x93/0xc9 Call Trace: __bpf_prog_test_run_raw_tp+0x2dc/0x7d0 __flush_smp_call_function_queue+0x1e9/0xc80 Kernel panic - not syncing: Fatal exception in interrupt R5, geçici bir yazmacı ile çakıştığı ve depolama sırasında hata verdiği için dördü arasında en hafifidir. R7, RBP ile çakışır ve çerçeve işaretçisini (frame pointer) bozar; R8 ve R9 ise argüman yazmaçları ile çakışır. Yazmacın REX.R üzerinden geçmesini sağlamak için add_2mod() kullanılmıştır; bu durum, add_2reg()'in yazmacı ModRM.reg'ye yerleştirme şekliyle ve emit_priv_frame_ptr()'nin aynı komutla R9 için 0x4c değerini sabit olarak kodlamasıyla uyumludur. Genişletilmemiş yazmaçlar için kodlamalar değişmemiştir. Sorun, BPF_GCC CI (BPF_GCC ile derlenen selftests) yeniden canlandırılmaya çalışıldığında ortaya çıkmıştır. Clang, her per-CPU erişiminden önce adresi R1'e yeniden yüklediği ve dolayısıyla hedef asla genişletilmiş bir yazmaç olmadığı için bu durum fark edilmeden kalmıştır. GCC, aynı anda birkaç per-CPU adresini canlı tutar ve test_progs-bpf_gcc, bir .percpu değişkeninin adresinin R5'te sonlandığı global_percpu_data/init kısmında çekirdeğin paniğe (kernel panic) girmesine neden olur.

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

Nasıl düzeltilir

Güncelleyin
  • Linux Linux638bc3aada8ecdece184d5c15b100d489c9cccd7, 6886642414f59f928728802dc2c972a9859e6310, 6a19b18d458881bf3269a357cc6dc6db5eef4369, 5bbbce02e500d47d8e259a45be5a7be9741d0533 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
Linux Linux7bdbf7446305cb65c510c16d57cde82bc76b234a ≤ v < 638bc3aada8ecdece184d5c15b100d489c9cccd7, 7bdbf7446305cb65c510c16d57cde82bc76b234a ≤ v < 6886642414f59f928728802dc2c972a9859e6310, 7bdbf7446305cb65c510c16d57cde82bc76b234a ≤ v < 6a19b18d458881bf3269a357cc6dc6db5eef4369, 7bdbf7446305cb65c510c16d57cde82bc76b234a ≤ v < 5bbbce02e500d47d8e259a45be5a7be9741d0533, 6.10638bc3aada8ecdece184d5c15b100d489c9cccd7, 6886642414f59f928728802dc2c972a9859e6310, 6a19b18d458881bf3269a357cc6dc6db5eef4369, 5bbbce02e500d47d8e259a45be5a7be9741d0533

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