Skip to content
Fencer Vulns
medium 5.5

CVE-2025-21777 json

ring-buffer: Validate the persistent meta data subbuf array

published 2025-02-27 20 mo ago modified 2026-06-17 4 mo ago also EUVD-2025-5143

cvss
5.5
version 3.1, NVD
cisa kev
Not listed
not in CISA's catalog
epss
0.2%
EPSS 0.2% chance of exploitation in 30 days, percentile 10%
public exploits
0
none known

Summary

In the Linux kernel, the following vulnerability has been resolved:

ring-buffer: Validate the persistent meta data subbuf array

The meta data for a mapped ring buffer contains an array of indexes of all the subbuffers. The first entry is the reader page, and the rest of the entries lay out the order of the subbuffers in how the ring buffer link list is to be created.

The validator currently makes sure that all the entries are within the range of 0 and nr_subbufs. But it does not check if there are any duplicates.

While working on the ring buffer, I corrupted this array, where I added duplicates. The validator did not catch it and created the ring buffer link list on top of it. Luckily, the corruption was only that the reader page was also in the writer path and only presented corrupted data but did not crash the kernel. But if there were duplicates in the writer side, then it could corrupt the ring buffer link list and cause a crash.

Create a bitmask array with the size of the number of subbuffers. Then clear it. When walking through the subbuf array checking to see if the entries are within the range, test if its bit is already set in the subbuf_mask. If it is, then there is duplicates and fail the validation. If not, set the corresponding bit and continue.

Patch / fix

  • Linux Linux 6.12.16, 6.13.4, 6.14
  • linux Debian 14, Debian 13 6.12.16-1

debian advisories DEBIAN-CVE-2025-21777

  • kernel RHEL 10.1 6.12.0-124.8.1.el10_1
  • rv RHEL 10.1 6.12.0-124.8.1.el10_1
  • perf RHEL 10.1 6.12.0-124.8.1.el10_1
  • rtla RHEL 10.1 6.12.0-124.8.1.el10_1
  • libperf RHEL 10.1 6.12.0-124.8.1.el10_1
  • kernel-rt RHEL 10.1 6.12.0-124.8.1.el10_1
  • kernel-64k RHEL 10.1 6.12.0-124.8.1.el10_1
  • kernel-core RHEL 10.1 6.12.0-124.8.1.el10_1

red hat advisories RHSA-2025:20095

  • kernel AlmaLinux 10 6.12.0-124.8.1.el10_1
  • rv AlmaLinux 10 6.12.0-124.8.1.el10_1
  • perf AlmaLinux 10 6.12.0-124.8.1.el10_1
  • rtla AlmaLinux 10 6.12.0-124.8.1.el10_1
  • libperf AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-rt AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-64k AlmaLinux 10 6.12.0-124.8.1.el10_1
  • kernel-core AlmaLinux 10 6.12.0-124.8.1.el10_1

almalinux advisories ALSA-2025:20095

  • kernel Rocky Linux 10 6.12.0-124.8.1.el10_1

rocky linux advisories RLSA-2025:20095

Vendor advisories

What the vendors themselves say about their products: affected, fixed or not affected, and what to do.

red hat product security vex CVE-2025-21777 updated cvss 4.4

kernel: ring-buffer: Validate the persistent meta data subbuf array

  • Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more
    affected: no fix planned “Out of support scope”
  • Red Hat Enterprise Linux AppStream (v. 10) rv 6.12.0-124.8.1.el10_1, perf 6.12.0-124.8.1.el10_1, rtla 6.12.0-124.8.1.el10_1, python3-perf 6.12.0-124.8.1.el10_1, kernel-devel-matched 6.12.0-124.8.1.el10_1, kernel-64k-devel-matched 6.12.0-124.8.1.el10_1, +7 more Red Hat Enterprise Linux BaseOS (v. 10) kernel 6.12.0-124.8.1.el10_1, kernel-64k 6.12.0-124.8.1.el10_1, kernel-core 6.12.0-124.8.1.el10_1, kernel-tools 6.12.0-124.8.1.el10_1, kernel-modules 6.12.0-124.8.1.el10_1, kernel-64k-core 6.12.0-124.8.1.el10_1, +28 more Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) libperf 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-s390x 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-x86_64 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-aarch64 6.12.0-124.8.1.el10_1, kernel-debuginfo-common-ppc64le 6.12.0-124.8.1.el10_1 Red Hat Enterprise Linux Real Time (v. 10) kernel-rt 6.12.0-124.8.1.el10_1, kernel-rt-64k 6.12.0-124.8.1.el10_1, kernel-rt-core 6.12.0-124.8.1.el10_1, kernel-rt-modules 6.12.0-124.8.1.el10_1, kernel-rt-64k-core 6.12.0-124.8.1.el10_1, kernel-rt-debug-core 6.12.0-124.8.1.el10_1, +14 more Red Hat Enterprise Linux Real Time for NFV (v. 10) kernel-rt 6.12.0-124.8.1.el10_1, kernel-rt-core 6.12.0-124.8.1.el10_1, kernel-rt-modules 6.12.0-124.8.1.el10_1, kernel-rt-debug-core 6.12.0-124.8.1.el10_1, kernel-rt-modules-core 6.12.0-124.8.1.el10_1, kernel-rt-debug-modules 6.12.0-124.8.1.el10_1, +4 more
    fixed: vendor fix RHSA-2025:20095
  • Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more
    not affected: vulnerable code not present

Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf

Exploit prediction

0.20% chance of exploitation in the next 30 days, higher than 10% of all scored CVEs (FIRST EPSS, 2026-11-08).

CVSS scores

assigned by version score vector
NVD 3.1 5.5 CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

Affected products

  • Linux Linux

Classification

Technology feeds

References

Sources

Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.