CVE-2026-63825
Last modified
CVE-2026-63825 is a critical-severity vulnerability rated 9.8/10 on the CVSS scale. In the Linux kernel, the following vulnerability has been resolved: gcov: use atomic counter updates to fix concurrent access crashes GCC's GCOV instrumentation can merge global branch counters with loop induction variables as an optimization. In inflate_fast(), the inner copy loops get transformed so that the GCOV counter value is loaded multiple times to compute the loop base address, start index, and end bound. EPSS estimates a 0.41% chance of exploitation in the next 30 days.
Description
In the Linux kernel, the following vulnerability has been resolved: gcov: use atomic counter updates to fix concurrent access crashes GCC's GCOV instrumentation can merge global branch counters with loop induction variables as an optimization. In inflate_fast(), the inner copy loops get transformed so that the GCOV counter value is loaded multiple times to compute the loop base address, start index, and end bound. Since GCOV counters are global (not per-CPU), concurrent execution on different CPUs causes the counter to change between loads, producing inconsistent values and out-of-bounds memory writes. The crash manifests during IPComp (IP Payload Compression) processing when inflate_fast() runs concurrently on multiple CPUs: BUG: unable to handle page fault for address: ffffd0a3c0902ffa RIP: inflate_fast+1431 Call Trace: zlib_inflate __deflate_decompress crypto_comp_decompress ipcomp_decompress [xfrm_ipcomp] ipcomp_input [xfrm_ipcomp] xfrm_input At the crash point, the compiler generated three loads from the same global GCOV counter (__gcov0.inflate_fast+216) to compute base, start, and end for an indexed loop. Another CPU modified the counter between loads, making the values inconsistent - the write went 3.4 MB past a 65 KB buffer. Add -fprofile-update=prefer-atomic to CFLAGS_GCOV at the global level in the top-level Makefile, guarded by a try-run compile test. The test compiles a minimal program with and without -fprofile-update=prefer-atomic using the full KBUILD_CFLAGS, then compares undefined symbols in the resulting object files. If prefer-atomic introduces new undefined references (such as __atomic_fetch_add_8 on i386 or __aarch64_ldadd8_relax on arm64 with outline-atomics), the flag is not added -- the kernel does not link against libatomic. On architectures where GCC inlines 64-bit atomic counter updates (x86_64, s390, ...) the test passes and the flag is enabled, preventing the compiler from merging counters with loop induction variables and fixing the observed concurrent-access crash. On architectures where the flag would introduce libatomic dependencies, it is silently omitted and behaviour is no worse than before this patch. Move the CFLAGS_GCOV block from its original position (before the arch Makefile include) to after the core KBUILD_CFLAGS assignments but before the scripts/Makefile.gcc-plugins include. This placement ensures the try-run test sees arch-specific flags (-m32, -march=, -mno-outline-atomics) while avoiding GCC plugin flags (-fplugin=) that would break the test on clean builds when plugin shared objects do not yet exist.
Metrics
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Affected Software
Source: CNA advisory (CVE.org). NVD analysis pending.
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | >= 2521f2c228ad750701ba4702484e31d876dbc386, < 49d893b9cbcfc5802a32e53a64c6c6956670d65b; >= 2521f2c228ad750701ba4702484e31d876dbc386, < 5b959c1dbb4522b9e3ac4e26ad638b8784869841; >= 2521f2c228ad750701ba4702484e31d876dbc386, < 56cb9b7d96b28a1173a510ab25354b6599ad3a33 |
| Linux | Linux | 2.6.31 |
References
Timeline
- Published
- Last Modified
- Status
- Awaiting Analysis
Frequently Asked Questions
What is CVE-2026-63825?
How severe is CVE-2026-63825?
How do I fix CVE-2026-63825?
How Strix Helps
- How Strix found a critical auth bypass in etcdStrix autonomously discovered a critical authentication bypass in etcd, later designated CVE-2026-33413.
- Autonomous PentestingAI agents that find and validate exploitable vulnerabilities like this one across your applications.
- PR ReviewsPentest every pull request so vulnerable code is caught before it ships to production.
- AI Penetration TestingHow AI-driven penetration testing continuously covers your attack surface.
Related CVEs from 2026
- CVE-2026-6382The FileOrganizer WordPress plugin before 1.1.9, Advanced F…9.1
- CVE-2026-63820In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63821In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63822In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63823In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63824In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63826In the Linux kernel, the following vulnerability has been re…
- CVE-2026-63827In the Linux kernel, the following vulnerability has been re…7.8
- CVE-2026-63828In the Linux kernel, the following vulnerability has been re…8.4
- CVE-2026-63829In the Linux kernel, the following vulnerability has been re…8.8
- CVE-2026-6383A flaw was found in KubeVirt's Role-Based Access Control (RB…5.4
- CVE-2026-63830In the Linux kernel, the following vulnerability has been re…9.4
Are you affected by CVE-2026-63825?
Run a free Strix scan to check your systems for this vulnerability.
Scan your code nowSource: NVD / NIST
