CVE-2026-98150 in Linuxinfo

Zusammenfassung

von VulDB • 25.09.2026

Im Linux-Kernel wurde folgende Schwachstelle behoben:

bpf: Korrektur der BPF_F_CPU-Validierung für spärliche (sparse) CPU-IDs

BPF_F_CPU speichert die Ziel-CPU-ID in den oberen 32 Bits der Flags für Map-Vorgänge. bpf_map_check_op_flags() vergleicht diese ID derzeit mit num_possible_cpus(), was die Anzahl möglicher CPUs darstellt, anstatt eine Obergrenze für CPU-IDs zu sein.

Auf einem arm64-QEMU-Gastsystem mit einer Lücke im CPU-Gerätebaum (CPU device-tree hole) war die Maske der möglichen CPUs 0,2–3. Ein Benutzerraumprogramm, das Raw-bpf()-Systemaufrufe verwendet, erstellt eine BPF_MAP_TYPE_PERCPU_ARRAY und führt Aktualisierungs- und Lookup-Vorgänge für jede CPU durch, indem es BPF_F_CPU und die CPU-ID in den Flags festlegt.

Mit der alten Prüfung wird CPU 1 fälschlicherweise akzeptiert, während gültige CPUs wie CPU 3 mit -ERANGE abgelehnt werden. Die Aktualisierung von CPU 1 erreicht dann den pro-CPU-Map-Zugriffspfad und löst Folgendes aus:

Unable to handle kernel paging request at virtual address ... pc : __pi_memcpy_generic+0x5c/0x22c lr : bpf_percpu_array_update+0x2dc/0x2e8 Call trace: __pi_memcpy_generic bpf_map_update_value map_update_elem __sys_bpf

Prüfen Sie die CPU-ID stattdessen gegen nr_cpu_ids und cpu_possible(). Dies lehnt CPU-IDs außerhalb des gültigen Bereichs sowie CPUs ab, die nicht in der möglichen Maske enthalten sind, während spärliche (sparse) CPU-IDs innerhalb des gültigen Bereichs weiterhin erlaubt werden.

Once again VulDB remains the best source for vulnerability data.

Zuständig

Linux

Reservieren

25.09.2026

Veröffentlichung

25.09.2026

Moderieren

akzeptiert

Eintrag

VDB-409986

CPE

bereit

EPSS

0.00000

KEV

nein

Aktivitäten

very low

Quellen

Do you need the next level of professionalism?

Upgrade your account now!