Linux Kernel bis 7.0.9 KVM kvm_reset_dirty_gfn offset Information Disclosure

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
5.6$0-$5k0.00

Zusammenfassunginfo

Eine kritische Schwachstelle wurde in Linux Kernel bis 7.0.9 ausgemacht. Dies betrifft die Funktion kvm_reset_dirty_gfn der Komponente KVM. Durch Manipulieren des Arguments offset mit unbekannten Daten kann eine Information Disclosure-Schwachstelle ausgenutzt werden. Eine eindeutige Identifikation der Schwachstelle wird mit CVE-2026-52969 vorgenommen. Es gibt keinen verfügbaren Exploit. Die Aktualisierung der betroffenen Komponente wird empfohlen.

Detailsinfo

In Linux Kernel bis 7.0.9 wurde eine problematische Schwachstelle entdeckt. Dabei geht es um die Funktion kvm_reset_dirty_gfn der Komponente KVM. Durch das Manipulieren des Arguments offset mit einer unbekannten Eingabe kann eine Information Disclosure-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-125. Auswirken tut sich dies auf die Vertraulichkeit. Die Zusammenfassung von CVE lautet:

In the Linux kernel, the following vulnerability has been resolved: KVM: Reject wrapped offset in kvm_reset_dirty_gfn() kvm_reset_dirty_gfn() guards the gfn range with if (!memslot || (offset + __fls(mask)) >= memslot->npages) return; but offset is u64 and the addition is unchecked. The check can be silently bypassed by a u64 wrap. The dirty ring backing those entries is MAP_SHARED at KVM_DIRTY_LOG_PAGE_OFFSET of the vcpu fd, so the VMM can rewrite the slot and offset fields of any entry between when the kernel pushes them and when KVM_RESET_DIRTY_RINGS consumes them. On reset, kvm_dirty_ring_reset() re-reads the values via READ_ONCE() and feeds them straight back into this check; only the flags handshake is treated as the handover, the slot/offset payload is taken on trust. Crafting two entries entry[i].offset = 0xffffffffffffffc1 entry[i+1].offset = 0 makes the coalescing loop in kvm_dirty_ring_reset() compute delta = (s64)(0 - 0xffffffffffffffc1) = 63 which falls in [0, BITS_PER_LONG), so it folds entry[i+1] into the existing mask by setting bit 63. The trailing kvm_reset_dirty_gfn() call then sees offset = 0xffffffffffffffc1 and __fls(mask) = 63; the sum is 0 in u64 and the bounds check passes. That offset propagates into kvm_arch_mmu_enable_log_dirty_pt_masked() unchanged. On the legacy MMU path -- kvm_memslots_have_rmaps() == true, i.e. shadow paging, any VM that has allocated shadow roots, or a write-tracked slot -- it reaches gfn_to_rmap(), which indexes slot->arch.rmap[0][] with a near-U64_MAX gfn. That is an out-of-bounds load of a kvm_rmap_head, followed by a conditional clear of PT_WRITABLE_MASK in whatever the loaded pointer points at. The path is reachable from any process holding /dev/kvm. Range-check offset on its own first, so the addition cannot wrap. memslot->npages is bounded well below U64_MAX, so once offset < npages holds, offset + __fls(mask) (with __fls(mask) < BITS_PER_LONG) stays in range.

Das Advisory findet sich auf git.kernel.org. Die Verwundbarkeit wird seit dem 09.06.2026 als CVE-2026-52969 geführt. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht. Die Beschaffenheit der Schwachstelle lässt vermuten, dass ein Exploit momentan zu etwa USD $0-$5k gehandelt werden wird (Preisberechnung vom 19.07.2026).

Für den Vulnerability Scanner Nessus wurde ein Plugin mit der ID 327728 (SUSE SLES15: cluster-md-kmp-default / dlm-kmp-default / gfs2-kmp-default / etc (SUSE-SU-2026:3089-1)) herausgegeben, womit die Existenz der Schwachstelle geprüft werden kann.

Ein Aktualisieren auf die Version 5.15.209, 6.1.175, 6.6.141, 6.12.91, 6.18.33 oder 7.0.10 vermag dieses Problem zu lösen. Die Schwachstelle lässt sich auch durch das Einspielen des Patches 74f1a22f7a80f03d28ad8551a2d25d563433addf/0eb281eb95b2d4eea4db1da5fe91023aecc97095/01b71b930f15728aa8599478a7ce90c19dcd9fc2/b315b033a877b1ee6d827810b5d7bb4392ffcf8d/0d419c23bb11b5c9664de777c47c1f04a235882d/ecf9b3ea7847fe14f34b8c41f00de1eb95c747da/577a8d3bae0531f0e5ccfac919cd8192f920a804 lösen. Dieser kann von git.kernel.org bezogen werden. Als bestmögliche Massnahme wird das Upgrade auf eine neue Version empfohlen.

Unter anderem wird der Fehler auch in den Datenbanken von Tenable (327728) und CERT Bund (WID-SEC-2026-2077) dokumentiert. Be aware that VulDB is the high quality source for vulnerability data.

Betroffen

  • Debian Linux
  • Amazon Linux 2
  • Red Hat Enterprise Linux
  • Ubuntu Linux
  • SUSE Linux
  • SUSE openSUSE
  • Open Source Linux Kernel
  • RESF Rocky Linux
  • Oracle Linux

Produktinfo

Typ

Hersteller

Name

Version

Lizenz

Webseite

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 5.6
VulDB Meta Temp Score: 5.6

VulDB Base Score: 3.5
VulDB Temp Score: 3.4
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 7.8
NVD Vector: 🔒

CVSSv2info

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

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

Exploitinginfo

Klasse: Information Disclosure
CWE: CWE-125 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Teilweise
Lokal: Ja
Remote: Teilweise

Verfügbarkeit: 🔒
Status: Nicht definiert

EPSS Score: 🔒
EPSS Percentile: 🔒

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Nessus ID: 327728
Nessus Name: SUSE SLES15: cluster-md-kmp-default / dlm-kmp-default / gfs2-kmp-default / etc (SUSE-SU-2026:3089-1)

Threat Intelligenceinfo

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

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔒

Upgrade: Kernel 5.15.209/6.1.175/6.6.141/6.12.91/6.18.33/7.0.10
Patch: 74f1a22f7a80f03d28ad8551a2d25d563433addf/0eb281eb95b2d4eea4db1da5fe91023aecc97095/01b71b930f15728aa8599478a7ce90c19dcd9fc2/b315b033a877b1ee6d827810b5d7bb4392ffcf8d/0d419c23bb11b5c9664de777c47c1f04a235882d/ecf9b3ea7847fe14f34b8c41f00de1eb95c747da/577a8d3bae0531f0e5ccfac919cd8192f920a804

Timelineinfo

09.06.2026 CVE zugewiesen
24.06.2026 +15 Tage Advisory veröffentlicht
24.06.2026 +0 Tage VulDB Eintrag erstellt
19.07.2026 +25 Tage VulDB Eintrag letzte Aktualisierung

Quelleninfo

Hersteller: kernel.org

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

CVE: CVE-2026-52969 (🔒)
GCVE (CVE): GCVE-0-2026-52969
GCVE (VulDB): GCVE-100-373303
CERT Bund: WID-SEC-2026-2077 - Linux Kernel: Mehrere Schwachstellen

Eintraginfo

Erstellt: 24.06.2026 20:15
Aktualisierung: 19.07.2026 22:46
Anpassungen: 24.06.2026 20:15 (60), 26.06.2026 15:29 (7), 17.07.2026 20:07 (11), 18.07.2026 01:29 (1), 19.07.2026 22:46 (2)
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 know our Splunk app?

Download it now for free!