CVE-2026-74580
vhost: Zurücksetzen des vring-Metadaten-Caches bei der vring-Neukonfiguration
- Veröffentlicht
- 21.08.2026
- Aktualisiert
- 16.10.2026
- CNA zuweisen
- Linux
- Beweise beobachtet
- 19.10.2026
Primäres CVSS
nvd · CVSS 3.1
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HNiedrig · nächste 30 Tage
- Perzentil
- 2,1 %
- Modelldatum
- 23.10.2026
EPSS ist eine statistische Schätzung, keine Gewissheit oder ein Maß für die Auswirkung. Kombinieren Sie es mit CVSS, KEV-Status, Belichtung und Ihrer Umgebung.
Zusammenfassung
Im Linux-Kernel wurde die folgende Schwachstelle behoben: vhost: Zurücksetzen des vring-Metadaten-Caches bei vring-Rekonfiguration vq->meta_iotlb[] cached die vhost_iotlb_map, die jede vring-Metadatenregion absichert, und iotlb_access_ok() kehrt bei einem Cache-Treffer vorzeitig zurück und nimmt den Treffer als Beweis dafür, dass die Region bereits validiert wurde: if (vhost_vq_meta_fetch(vq, addr, len, type)) return true; Der Cache wird bei VHOST_IOTLB_UPDATE und VHOST_IOTLB_INVALIDATE, bei (Re-)Initialisierung des Geräte-IOTLB und bei vq-Reset zurückgesetzt, jedoch nicht, wenn VHOST_SET_VRING_ADDR vq->desc, vq->avail und vq->used ersetzt, und auch nicht, wenn VHOST_SET_VRING_NUM die Regionsgrößen ändert. Mit einem angehängten Geräte-IOTLB werden beide ioctls akzeptiert, während die vq aktiv ist, und keines von beiden validiert die Adressen zum Zeitpunkt des ioctl: vq_access_ok() und vq_log_used_access_ok() kehren vorzeitig mit true zurück, weil die Adressen GIOVAs sind, und verschieben die Validierung auf den Prefetch-Zeitpunkt. Sobald der Cache befüllt wurde, läuft diese aufgeschobene Validierung nicht mehr – vq_meta_prefetch() trifft den veralteten Eintrag und gibt true zurück – und vhost_vq_meta_fetch() übersetzt weiterhin über die alte Zuordnung als map->addr + addr - map->start für eine Adresse, die die Zuordnung nicht mehr abdeckt. vhost_copy_to_user() und vhost_copy_from_user() verwenden das Ergebnis mit __copy_to_user() und __copy_from_user(), die es ebenfalls nicht prüfen, sodass ein nachfolgendes Used-Ring-Update oder ein Descriptor-Fetch auf Speicher außerhalb der Region zugreift, die der IOTLB tatsächlich abbildet. Setzen Sie den Metadaten-Cache zurück, wann immer der vring rekonfiguriert wird, damit die neuen Adressen erneut durch den langsamen Pfad von iotlb_access_ok() geleitet werden.
Quellen
Proof-of-Concept-C-Code und Writeups für offengelegte Linux-Kernel-Schwachstellen, einschließlich Exploit-Quellcode und technischer Analyse pro CVE.
Verantwortungsvoller Umgang
Verwenden Sie Schwachstelleninformationen nur auf Systemen, die Sie besitzen oder zu deren Testen Sie berechtigt sind. Kitploit verlinkt auf öffentliche Forschungsmetadaten und speichert keinen Exploit-Code oder bösartige Payloads.