Linux Kernel bis 7.0.9 KVM kvm_reset_dirty_gfn offset Information Disclosure

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
3.4$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 24.06.2026).

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.

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: 3.5
VulDB Meta Temp Score: 3.4

VulDB Base Score: 3.5
VulDB Temp Score: 3.4
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: Information Disclosure
CWE: CWE-125 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒

Physisch: Nein
Lokal: Nein
Remote: Teilweise

Verfügbarkeit: 🔒
Status: Nicht definiert

EPSS Score: 🔒
EPSS Percentile: 🔒

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.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
24.06.2026 +0 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

Eintraginfo

Erstellt: 24.06.2026 20:15
Anpassungen: 24.06.2026 20:15 (60)
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 need the next level of professionalism?

Upgrade your account now!