Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-98551— perf/core: Fill branch entries with a single assignment

Quick assessment

Affected
Linux Linux
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

在 Linux 内核中,以下漏洞已得到修复: perf/core:通过单次赋值填充分支记录条目 perf_clear_branch_entry_bitfields() 函数原本逐个清除 struct perf_branch_entry 中的位字段,而保留 from 和 to 字段不变,因为调用者会立即覆盖这两个字段。然而,该函数中的字段列表需要手动与结构体保持同步,目前已出现滞后:new_type 和 priv 字段已被添加到 perf_branch_entry 中,却未在该函数中处理。 只有 BRBE(Branc

AI Predicted 5.5 Difficulty: Moderate EPSS 0.19% · P8

Possible ATT&CK Techniques 1 AI

T1069 · Permission Groups Discovery

Affected Version Matrix 6

VendorProduct Version RangeStatus
Linux Linux b190bc4ac9e6d9763b61654c5a0c085ff77d7a09< c7de8521947a521b766979ff5c09f66fe905a5bd affected
b190bc4ac9e6d9763b61654c5a0c085ff77d7a09< 24b620729e53d978b3e425f55bc66efd3bab1f59 affected
6.1 affected
< 6.1 unaffected
7.2.9≤ 7.2.* unaffected
7.3-rc5≤ * unaffected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-98551

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
perf/core: Fill branch entries with a single assignment
Source: CVE Program / CVE List V5
Vulnerability Description
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.
Source: CVE Program / CVE List V5
CVSS Information
N/A
Source: CVE Program / CVE List V5
Vulnerability Type
N/A
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
Linux Linux b190bc4ac9e6d9763b61654c5a0c085ff77d7a09 ~ c7de8521947a521b766979ff5c09f66fe905a5bd -
Linux Linux 6.1 -

II. Public POCs for CVE-2026-98551

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-98551

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-98551 (2)

Same Patch Batch · Linux · 2026-10-18 · 435 CVEs total

CVE-2026-98720 KVM: nVMX: Force MSR bitmap refresh if runtime eVMCS controls are modified
CVE-2026-98733 Bluetooth: hci_core: Serialize fragmented ISO packet queueing
CVE-2026-98732 Bluetooth: btintel: fix buffer over-read in btintel_hw_error()
CVE-2026-98731 Bluetooth: btintel_pcie: fix plen overflow in btintel_pcie_recv_frame()
CVE-2026-98730 Bluetooth: btintel_pcie: reject oversized TX packets in send_frame()
CVE-2026-98729 x86/mm: Don't apply va_align to hugetlb mappings on AMD F15h
CVE-2026-98728 tpm: fix off-by-four bounds check in tpm2_get_random()
CVE-2026-98727 nvme-multipath: set BLK_FEAT_ZONED only after the zone info is known
CVE-2026-98726 nvme-multipath: fix underflow in ANA log bounds checks
CVE-2026-98725 nvmet-auth: fix out-of-bounds write in nvmet_auth_challenge()
CVE-2026-98724 nvmet: pci-epf: reject too-short SGL segments
CVE-2026-98723 nvmet: copy the hostid into the ctrl before creating PR pc_refs
CVE-2026-98722 mtd: block2mtd: Fix divide error when erase_size is zero
CVE-2026-98721 mtd: rawnand: cadence: Initialize IRQ state before requesting IRQ
CVE-2026-98709 wifi: mac80211: count only matching reservations in reserved switch
CVE-2026-98712 KVM: arm64: vgic: Take a refcount on IRQs referenced by last_lr_irq
CVE-2026-98711 wifi: cw1200: fix TX padding OOB read leaking heap data to device
CVE-2026-98710 wifi: iwlegacy: 3945: free EEPROM data on remove
CVE-2026-98713 KVM: arm64: Apply the fine-grained UNDEFs without FEAT_FGT
CVE-2026-98707 wifi: mac80211: shut down RX BA session timer on teardown

Showing top 20 of 435 CVEs. View all on vendor page &rarr; →

IV. Related Vulnerabilities

V. Comments for CVE-2026-98551

No comments yet


Leave a comment