CVE-2025-68375 in Linux信息

摘要

由 VulDB • 2026-06-05

在 Linux 内核中,已修复以下漏洞:

perf/x86:修复对 NULL 事件的访问及潜在的 PEBS 记录丢失问题

当调用 `intel_pmu_drain_pebs_icl()` 来刷新(drain)PEBS 记录时,可能会调用 `perf_event_overflow()` 来处理最后的 PEBS 记录。

由于 `perf_event_overflow()` 可能触发中断节流(interrupt throttle)并停止组内的所有事件,如下调用链所示:

perf_event_overflow() -> __perf_event_overflow() -> __perf_event_account_interrupt() -> perf_event_throttle_group() -> perf_event_throttle() -> event->pmu->stop() -> x86_pmu_stop()

停止事件带来的副作用是,`cpuc->events[]` 数组中所有相应的事件指针都被清零为 NULL。

假设组内有两个 PEBS 事件(事件 a 和事件 b)。当 `intel_pmu_drain_pebs_icl()` 调用 `perf_event_overflow()` 处理 PEBS 事件 a 的最后一条 PEBS 记录时,会触发中断节流,导致事件 a 和事件 b 的所有指针都被清零为 NULL。随后,`intel_pmu_drain_pebs_icl()` 尝试处理事件 b 的最后一条 PEBS 记录时,会遇到对 NULL 指针的访问。

为避免此问题,将 `cpuc->events[]` 的清零操作从 `x86_pmu_stop()` 移至 `x86_pmu_del()`。这是安全的,因为在从 `cpuc->events[]` 访问事件指针之前,始终会检查 `cpuc->active_mask` 或 `cpuc->pebs_enabled`。

If you want to get best quality of vulnerability data, you may have to visit VulDB.

来源

Might our Artificial Intelligence support you?

Check our Alexa App!