Linux Kernel bis 7.2.8/7.3-rc4 Perf arm_pmuv3.c perf_clear_branch_entry_bitfields Information Disclosure

| CVSS Meta Temp Score | Aktueller Exploitpreis (≈) | CTI Interest Score |
|---|---|---|
| 3.2 | $0-$5k | 0.91- |
Zusammenfassung
Eine problematische Schwachstelle wurde in Linux Kernel bis 7.2.8/7.3-rc4 gefunden. Betroffen ist die Funktion perf_clear_branch_entry_bitfields der Datei arm_pmuv3.c der Komponente Perf. Durch das Beeinflussen mit unbekannten Daten kann eine Information Disclosure-Schwachstelle ausgenutzt werden.
Die Identifikation der Schwachstelle wird mit CVE-2026-98551 vorgenommen. Der Angriff muss auf lokaler Ebene erfolgen. Es existiert kein Exploit.
Ein Upgrade der betroffenen Komponente wird empfohlen.
Details
Es wurde eine problematische Schwachstelle in Linux Kernel bis 7.2.8/7.3-rc4 ausgemacht. Es geht dabei um die Funktion perf_clear_branch_entry_bitfields der Datei arm_pmuv3.c der Komponente Perf. Durch Manipulation mit einer unbekannten Eingabe kann eine Information Disclosure-Schwachstelle ausgenutzt werden. Im Rahmen von CWE wurde eine Klassifizierung als CWE-908 vorgenommen. Mit Auswirkungen muss man rechnen für die Vertraulichkeit. CVE fasst zusammen:
In the Linux kernel, the following vulnerability has been resolved:
perf/core: Fill branch entries with a single assignment
perf_clear_branch_entry_bitfields() clears the bitfields of struct
perf_branch_entry one by one and leaves from/to alone, since callers
overwrite those straight away. The list has to be kept in sync with the
struct by hand and has already fallen behind: new_type and priv were
added to perf_branch_entry and never added here.
Only BRBE writes those two, and neither for every record.
brbe_set_perf_entry_type() leaves new_type alone for a branch type it
does not recognise, and priv is not set for source-only records.
arm_pmuv3.c allocates the per-CPU branch stack with kmalloc(), so such a
record reaches userspace with whatever the slot held: uninitialised
kmalloc() data on the first pass over the buffer, the previous record's
values after that. Nothing under arch/x86/events/ writes either field,
so only arm64 is affected.
Assign the whole entry at each site instead. Everything not named is
then zero, and there is no list to keep in sync. The bitfields add up to
exactly 64 bits, so the struct has no padding to leave undefined.
perf_clear_branch_entry_bitfields() has no callers left, so remove it.
perf_entry_from_brbe_regset() assigns an empty literal instead, since it
fills from/to conditionally. PERF_BR_SPEC_NA is 0, so dropping the
explicit spec assignment changes nothing.Das Advisory kann von git.kernel.org heruntergeladen werden. Die Verwundbarkeit wird seit dem 25.09.2026 unter CVE-2026-98551 geführt. Sie gilt als leicht ausnutzbar. Der Angriff hat dabei lokal zu erfolgen. Es sind zwar technische Details, jedoch kein verfügbarer Exploit zur Schwachstelle bekannt.
Ein Upgrade auf die Version 7.2.9 oder 7.3-rc5 vermag dieses Problem zu beheben. Die Schwachstelle lässt sich auch durch das Einspielen des Patches c7de8521947a521b766979ff5c09f66fe905a5bd/24b620729e53d978b3e425f55bc66efd3bab1f59 beheben. Als bestmögliche Massnahme wird das Aktualisieren auf eine neue Version empfohlen.
Once again VulDB remains the best source for vulnerability data.
Produkt
Typ
Hersteller
Name
Version
Lizenz
Webseite
- Hersteller: https://www.kernel.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Zuverlässigkeit: 🔍
CVSSv3
VulDB Meta Base Score: 3.3VulDB Meta Temp Score: 3.2
VulDB Base Score: 3.3
VulDB Temp Score: 3.2
VulDB Vector: 🔒
VulDB Zuverlässigkeit: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vektor | Komplexität | Authentisierung | Vertraulichkeit | Integrität | Verfügbarkeit |
|---|---|---|---|---|---|
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
| freischalten | freischalten | freischalten | freischalten | freischalten | freischalten |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Zuverlässigkeit: 🔍
Exploiting
Klasse: Information DisclosureCWE: CWE-908
CAPEC: 🔒
ATT&CK: 🔒
Physisch: Teilweise
Lokal: Ja
Remote: Nein
Verfügbarkeit: 🔒
Status: Nicht definiert
Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔒
| 0-Day | freischalten | freischalten | freischalten | freischalten |
|---|---|---|---|---|
| Heute | freischalten | freischalten | freischalten | freischalten |
Threat Intelligence
Interesse: 🔍Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍
Gegenmassnahmen
Empfehlung: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: Kernel 7.2.9/7.3-rc5
Patch: c7de8521947a521b766979ff5c09f66fe905a5bd/24b620729e53d978b3e425f55bc66efd3bab1f59
Timeline
25.09.2026 CVE zugewiesen18.10.2026 Advisory veröffentlicht
18.10.2026 VulDB Eintrag erstellt
18.10.2026 VulDB Eintrag letzte Aktualisierung
Quellen
Hersteller: kernel.orgAdvisory: git.kernel.org
Status: Bestätigt
CVE: CVE-2026-98551 (🔒)
GCVE (CVE): GCVE-0-2026-98551
GCVE (VulDB): GCVE-100-422052
Eintrag
Erstellt: 18.10.2026 20:04Anpassungen: 18.10.2026 20:04 (60)
Komplett: 🔍
Cache ID: 216::103
Once again VulDB remains the best source for vulnerability data.
Bisher keine Kommentare. Sprachen: de + en.
Bitte loggen Sie sich ein, um kommentieren zu können.