CVE-2026-23088

Orta

Açıklama

Linux kernel içerisinde aşağıdaki güvenlik açığı giderilmiştir: tracing: sentetik stacktrace alanı kullanımı sırasındaki çökmeye yönelik düzeltme Bir stacktrace alanına sahip mevcut bir sentetik olay temel alınarak yeni bir sentetik olay oluşturulduğunda ve bu yeni sentetik olay söz konusu alanı kullandığında çekirdek çökmesi meydana geliyordu: ~# cd /sys/kernel/tracing ~# echo 's:stack unsigned long stack[];' > dynamic_events ~# echo 'hist:keys=prev_pid:s0=common_stacktrace if prev_state & 3' >> events/sched/sched_switch/trigger ~# echo 'hist:keys=next_pid:s1=$s0:onmatch(sched.sched_switch).trace(stack,$s1)' >> events/sched/sched_switch/trigger Yukarıdaki işlemler, bir görev çalışmayan durumda zamanlamadan çıktığında bir stacktrace alan ve bu görevi tekrar zamanlandığında bu stacktrace bilgisini sched_switch olayına aktaran sentetik bir olay oluşturur. Bu işlem, alanı stacktrace olan "stack" adlı sentetik olayı tetikler. ~# echo 's:syscall_stack s64 id; unsigned long stack[];' >> dynamic_events ~# echo 'hist:keys=common_pid:s2=stack' >> events/synthetic/stack/trigger ~# echo 'hist:keys=common_pid:s3=$s2,i0=id:onmatch(synthetic.stack).trace(syscall_stack,$i0,$s3)' >> events/raw_syscalls/sys_exit/trigger Yukarıdakiler ise ilk sentetik olayı (stack), sys_exit izleme olayına bağlayan ve çıkış yapan sistem çağrısının kimliği ile birlikte stack olayından gelen stacktrace bilgisini kaydeden "syscall_stack" adında başka bir sentetik olay oluşturur. Bu olay etkinleştirildiğinde (veya bir histogramda kullanıldığında): ~# echo 1 > events/synthetic/syscall_stack/enable Çekirdek çökmesine neden olur! BUG: unable to handle page fault for address: 0000000000400010 #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 0 P4D 0 Oops: Oops: 0000 [#1] SMP PTI CPU: 6 UID: 0 PID: 1257 Comm: bash Not tainted 6.16.3+deb14-amd64 #1 PREEMPT(lazy) Debian 6.16.3-1 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.17.0-debian-1.17.0-1 04/01/2014 RIP: 0010:trace_event_raw_event_synth+0x90/0x380 Code: c5 00 00 00 00 85 d2 0f 84 e1 00 00 00 31 db eb 34 0f 1f 00 66 66 2e 0f 1f 84 00 00 00 00 00 66 66 2e 0f 1f 84 00 00 00 00 00 <49> 8b 04 24 48 83 c3 01 8d 0c c5 08 00 00 00 01 cd 41 3b 5d 40 0f RSP: 0018:ffffd2670388f958 EFLAGS: 00010202 RAX: ffff8ba1065cc100 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 0000000000000001 RSI: fffff266ffda7b90 RDI: ffffd2670388f9b0 RBP: 0000000000000010 R08: ffff8ba104e76000 R09: ffffd2670388fa50 R10: ffff8ba102dd42e0 R11: ffffffff9a908970 R12: 0000000000400010 R13: ffff8ba10a246400 R14: ffff8ba10a710220 R15: fffff266ffda7b90 FS: 00007fa3bc63f740(0000) GS:ffff8ba2e0f48000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 0000000000400010 CR3: 0000000107f9e003 CR4: 0000000000172ef0 Call Trace: <TASK> ? __tracing_map_insert+0x208/0x3a0 action_trace+0x67/0x70 event_hist_trigger+0x633/0x6d0 event_triggers_call+0x82/0x130 trace_event_buffer_commit+0x19d/0x250 trace_event_raw_event_sys_exit+0x62/0xb0 syscall_exit_work+0x9d/0x140 do_syscall_64+0x20a/0x2f0 ? trace_event_raw_event_sched_switch+0x12b/0x170 ? save_fpregs_to_fpstate+0x3e/0x90 ? _raw_spin_unlock+0xe/0x30 ? finish_task_switch.isra.0+0x97/0x2c0 ? __rseq_handle_notify_resume+0xad/0x4c0 ? __schedule+0x4b8/0xd00 ? restore_fpregs_from_fpstate+0x3c/0x90 ? switch_fpu_return+0x5b/0xe0 ? do_syscall_64+0x1ef/0x2f0 ? do_fault+0x2e9/0x540 ? __handle_mm_fault+0x7d1/0xf70 ? count_memcg_events+0x167/0x1d0 ? handle_mm_fault+0x1d7/0x2e0 ? do_user_addr_fault+0x2c3/0x7f0 entry_SYSCALL_64_after_hwframe+0x76/0x7e Bunun nedeni, stacktrace alanının bu şekilde etiketlenmemiş olmasıdır; dolayısıyla gerçekte olduğu gibi dinamik bir olay olarak değil, normal bir alan olarak değerlendirilmektedir. trace_event_raw_event_synth() fonksiyonunda olay alanı hala dinamik bir dizi olarak ele alınmakta ancak verilerin geri getirilmesi işlemi normal bir alanmış gibi düşünülmekte ve referans sadece meta veri üzerinden verilmektedir: // Dinamik bir dizi yerine meta veri geri getirilir ---truncated---

ÖnemOrta
CVSS5.5
İstismar olasılığı—
ÜrünLinux Kernel
Yayın4 Şub 2026
İlk görülme4 Şub 2026

Nasıl düzeltilir

Güncelleyin
  • linux linux_kernel5.11, 5.16, 6.2, 6.6.122, 6.12.68, 6.18.8 ya da sonraki bir sürüm

Etkilenen ürünler

ÜrünEtkilenen sürümlerDüzeltildiği sürüm
linux linux_kernel5.10.237 ≤ v < 5.11, 5.15.124 ≤ v < 5.16, 6.1.43 ≤ v < 6.2, 6.3 ≤ v < 6.6.122, 6.7 ≤ v < 6.12.68, 6.13 ≤ v < 6.18.8, 6.195.11, 5.16, 6.2, 6.6.122, 6.12.68, 6.18.8

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.