Linux Kernel bis 7.3-rc4 BPF Hash Table Batch Operations __htab_map_lookup_and_delete_batch Denial of Service

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
4.7$0-$5k2.28-

Zusammenfassunginfo

Es wurde eine problematische Schwachstelle in Linux Kernel bis 7.3-rc4 entdeckt. Es betrifft die Funktion __htab_map_lookup_and_delete_batch der Komponente BPF Hash Table Batch Operations. Durch Manipulieren mit unbekannten Daten kann eine Denial of Service-Schwachstelle ausgenutzt werden. Diese Schwachstelle wird als CVE-2026-98644 gehandelt. Der Angriff kann remote ausgeführt werden. Es ist kein Exploit verfügbar. Es wird empfohlen, die betroffene Komponente zu aktualisieren.

Detailsinfo

Eine Schwachstelle wurde in Linux Kernel bis 7.3-rc4 ausgemacht. Sie wurde als problematisch eingestuft. Davon betroffen ist die Funktion __htab_map_lookup_and_delete_batch der Komponente BPF Hash Table Batch Operations. Durch Beeinflussen mit einer unbekannten Eingabe kann eine Denial of Service-Schwachstelle ausgenutzt werden. Klassifiziert wurde die Schwachstelle durch CWE als CWE-835. Auswirken tut sich dies auf die Verfügbarkeit. Die Zusammenfassung von CVE lautet:

In the Linux kernel, the following vulnerability has been resolved: bpf: Avoid soft lockup in __htab_map_lookup_and_delete_batch() __htab_map_lookup_and_delete_batch() has no rescheduling point. The batch count bounds how many entries are copied out, not how many buckets are visited, so one BPF_MAP_LOOKUP_BATCH call can walk the map end to end. The empty-bucket fast path is worse: it stays inside a single rcu_read_lock() / bpf_disable_instrumentation() section for any run of consecutive empty buckets. That holds up on small maps, but it falls apart at scale. On a 144-CPU arm64 host running a CONFIG_PREEMPT_NONE kernel, periodic BPF_MAP_LOOKUP_BATCH calls against an LRU hash map with 16,777,216 buckets held a CPU inside the batch op for 77+ seconds and triggered the soft lockup watchdog. Commit 75134f16e7dd ("bpf: Add schedule points in batch ops") fixed this same problem in the generic batch ops, but not in this htab-native path, which every htab-based hash map variant uses for its lookup[_and_delete] batch ops. Complete that fix here. Leave the critical section after 64 consecutive empty buckets, call cond_resched_tasks_rcu_qs(), and resume at the saved bucket cursor. No locks are held at that point, and resuming from the cursor is already the function's behavior for non-empty buckets. Add the same call to the per-bucket loop after copy_to_user(), where every lock has been dropped. cond_resched_rcu() is not enough here: sleeping with bpf_prog_active elevated makes tracing programs on that CPU silently skip their invocations. Plain cond_resched() is not enough either. It is a no-op under PREEMPT and PREEMPT_LAZY, the only models arm64 and x86 have offered since commit 7dadeaa6e851 ("sched: Further restrict the preemption modes"). It is also never a Tasks RCU quiescent state, in any model: the reschedule counts as a preemption. The walking task stays a holdout and stalls every synchronize_rcu_tasks() caller, ftrace and BPF trampoline teardown included, until the syscall returns [1]. cond_resched_tasks_rcu_qs() is the usual tool for that [2]. It reports the quiescent state at each yield and still reschedules as cond_resched() does on PREEMPT_NONE and PREEMPT_VOLUNTARY kernels.

Das Advisory findet sich auf git.kernel.org. Die Verwundbarkeit wird seit dem 25.09.2026 mit der eindeutigen Identifikation CVE-2026-98644 gehandelt. Sie gilt als leicht auszunutzen. Umgesetzt werden kann der Angriff über das Netzwerk. Das Ausnutzen erfordert eine erweiterte Authentisierung. Zur Schwachstelle sind technische Details bekannt, ein verfügbarer Exploit jedoch nicht. Diese Schwachstelle wird durch das MITRE ATT&CK als Angriffstechnik T1499 bezeichnet.

Ein Aktualisieren auf die Version 5.15.222, 6.1.189, 6.6.158, 6.12.112, 6.18.55, 7.2.9 oder 7.3-rc5 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 5c8b1869cb99a32a962388848cd19604fb41263e/ca5bd55fc508fbb5c08c62206d02237a5b6fc7e8/77a3b52b4455e6377e549539e757bc55eedefb51/f0c09de08ec077098b7e1563f2285f1c136cd816/44f9bcb5ab2b268bc763ed3ebec83308b4972936/4e48fe9b1c77966bede0a73feb3059d7595f642d/85136bf22404474a815fc0ed26ec0d1cbc1bc3f9 lösen. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen.

Be aware that VulDB is the high quality source for vulnerability data.

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 4.9
VulDB Meta Temp Score: 4.7

VulDB Base Score: 4.9
VulDB Temp Score: 4.7
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Denial of Service
CWE: CWE-835 / CWE-404
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 5.15.222/6.1.189/6.6.158/6.12.112/6.18.55/7.2.9/7.3-rc5
Patch: 5c8b1869cb99a32a962388848cd19604fb41263e/ca5bd55fc508fbb5c08c62206d02237a5b6fc7e8/77a3b52b4455e6377e549539e757bc55eedefb51/f0c09de08ec077098b7e1563f2285f1c136cd816/44f9bcb5ab2b268bc763ed3ebec83308b4972936/4e48fe9b1c77966bede0a73feb3059d7595f642d/85136bf22404474a815fc0ed26ec0d1cbc1bc3f9

Timelineinfo

25.09.2026 CVE zugewiesen
18.10.2026 +23 Tage Advisory veröffentlicht
18.10.2026 +0 Tage VulDB Eintrag erstellt
18.10.2026 +0 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

Advisory: git.kernel.org
Status: Bestätigt

CVE: CVE-2026-98644 (🔒)
GCVE (CVE): GCVE-0-2026-98644
GCVE (VulDB): GCVE-100-422135

Eintraginfo

Erstellt: 18.10.2026 20:36
Anpassungen: 18.10.2026 20:36 (59)
Komplett: 🔍
Cache ID: 216::103

Be aware that VulDB is the high quality source for vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you want to use VulDB in your project?

Use the official API to access entries easily!