8.1
HIGH CVSS 3.1
CVE-2026-63925
macsec: fix replay protection at XPN lower-PN wrap
Description

In the Linux kernel, the following vulnerability has been resolved: macsec: fix replay protection at XPN lower-PN wrap In macsec_post_decrypt(), when pn is U32_MAX, pn + 1 overflows u32 to 0 and the first branch never fires. If next_pn_halves.lower is also in the upper half, pn_same_half(pn, lower) is true and the XPN else-if does not fire either, leaving next_pn_halves unchanged. An attacker that captures the legitimate frame carrying pn == 0xFFFFFFFF on an XPN association can then replay it indefinitely, since lowest_pn never rises above the captured pn and macsec_decrypt() reconstructs the same IV. Extend the XPN else-if to also fire when pn + 1 wraps to 0, so receipt of pn == U32_MAX advances next_pn_halves to (upper + 1, 0).

INFO

Published Date :

July 19, 2026, 4:17 p.m.

Last Modified :

July 27, 2026, 5:44 p.m.

Remotely Exploit :

No

Source :

416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Products

The following products are affected by CVE-2026-63925 vulnerability. Even if cvefeed.io is aware of the exact versions of the products that are affected, the information is not represented in the table below.

ID Vendor Product Action
1 Linux linux_kernel
CVSS Scores
The Common Vulnerability Scoring System is a standardized framework for assessing the severity of vulnerabilities in software and systems. We collect and displays CVSS scores from various sources for each CVE.
Score Version Severity Vector Exploitability Score Impact Score Source
CVSS 3.1 HIGH 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Solution
Fix replay protection by handling packet number wrap-around in macsec_post_decrypt.
  • Update the Linux kernel to include the macsec fix.
  • Verify replay protection handles packet number wrap-around correctly.
  • Ensure next_pn_halves is updated on packet number overflow.
CWE - Common Weakness Enumeration

While CVE identifies specific instances of vulnerabilities, CWE categorizes the common flaws or weaknesses that can lead to vulnerabilities. CVE-2026-63925 is associated with the following CWEs:

Common Attack Pattern Enumeration and Classification (CAPEC)

Common Attack Pattern Enumeration and Classification (CAPEC) stores attack patterns, which are descriptions of the common attributes and approaches employed by adversaries to exploit the CVE-2026-63925 weaknesses.

We scan GitHub repositories to detect new proof-of-concept exploits. Following list is a collection of public exploits and proof-of-concepts, which have been published on GitHub (sorted by the most recently updated).

Results are limited to the first 15 repositories due to potential performance issues.

The following list is the news that have been mention CVE-2026-63925 vulnerability anywhere in the article.

The following table lists the changes that have been made to the CVE-2026-63925 vulnerability over time.

Vulnerability history details can be useful for understanding the evolution of a vulnerability, and for identifying the most recent changes that may impact the vulnerability's severity, exploitability, or other characteristics.

  • CVE Modified by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Jul. 20, 2026

    Action Type Old Value New Value
    Added CVSS V3.1 AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
  • New CVE Received by 416baaa9-dc9f-4396-8d5f-8c081fb06d67

    Jul. 19, 2026

    Action Type Old Value New Value
    Added Affected [{'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': 'dd7306779c6ce1238f4cdc34f3c1f2246b854457', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': 'd15130461df388136b62a7b0ce9f66e7e2fa9ff1', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': '23c0e230eab397d7f68be2538790ac41d3bb91fd', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': '679e13a65e68a67c8b3c0467c02ee89157ec6f0f', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': '79495a1b0944fe31ffd54b54b00211b493590d62', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': '6d00f5c7e5ff7ec4795b7f5f8ed88bd346641652', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': 'd55acbe577db892b60547b6ef1c020b359331a6d', 'versionType': 'git'}, {'status': 'affected', 'version': 'a21ecf0e033807b976967286e6c392f48ee2049f', 'lessThan': 'e68842b3356471ba56c882209f324613dac47f64', 'versionType': 'git'}], 'programFiles': ['drivers/net/macsec.c'], 'defaultStatus': 'unaffected'}, {'repo': 'https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git', 'vendor': 'Linux', 'product': 'Linux', 'versions': [{'status': 'affected', 'version': '5.7'}, {'status': 'unaffected', 'version': '0', 'lessThan': '5.7', 'versionType': 'semver'}, {'status': 'unaffected', 'version': '5.10.259', 'versionType': 'semver', 'lessThanOrEqual': '5.10.*'}, {'status': 'unaffected', 'version': '5.15.210', 'versionType': 'semver', 'lessThanOrEqual': '5.15.*'}, {'status': 'unaffected', 'version': '6.1.176', 'versionType': 'semver', 'lessThanOrEqual': '6.1.*'}, {'status': 'unaffected', 'version': '6.6.143', 'versionType': 'semver', 'lessThanOrEqual': '6.6.*'}, {'status': 'unaffected', 'version': '6.12.93', 'versionType': 'semver', 'lessThanOrEqual': '6.12.*'}, {'status': 'unaffected', 'version': '6.18.35', 'versionType': 'semver', 'lessThanOrEqual': '6.18.*'}, {'status': 'unaffected', 'version': '7.0.12', 'versionType': 'semver', 'lessThanOrEqual': '7.0.*'}, {'status': 'unaffected', 'version': '7.1', 'versionType': 'original_commit_for_fix', 'lessThanOrEqual': '*'}], 'programFiles': ['drivers/net/macsec.c'], 'defaultStatus': 'affected'}]
    Added Description In the Linux kernel, the following vulnerability has been resolved: macsec: fix replay protection at XPN lower-PN wrap In macsec_post_decrypt(), when pn is U32_MAX, pn + 1 overflows u32 to 0 and the first branch never fires. If next_pn_halves.lower is also in the upper half, pn_same_half(pn, lower) is true and the XPN else-if does not fire either, leaving next_pn_halves unchanged. An attacker that captures the legitimate frame carrying pn == 0xFFFFFFFF on an XPN association can then replay it indefinitely, since lowest_pn never rises above the captured pn and macsec_decrypt() reconstructs the same IV. Extend the XPN else-if to also fire when pn + 1 wraps to 0, so receipt of pn == U32_MAX advances next_pn_halves to (upper + 1, 0).
    Added Reference https://git.kernel.org/stable/c/23c0e230eab397d7f68be2538790ac41d3bb91fd
    Added Reference https://git.kernel.org/stable/c/679e13a65e68a67c8b3c0467c02ee89157ec6f0f
    Added Reference https://git.kernel.org/stable/c/6d00f5c7e5ff7ec4795b7f5f8ed88bd346641652
    Added Reference https://git.kernel.org/stable/c/79495a1b0944fe31ffd54b54b00211b493590d62
    Added Reference https://git.kernel.org/stable/c/d15130461df388136b62a7b0ce9f66e7e2fa9ff1
    Added Reference https://git.kernel.org/stable/c/d55acbe577db892b60547b6ef1c020b359331a6d
    Added Reference https://git.kernel.org/stable/c/dd7306779c6ce1238f4cdc34f3c1f2246b854457
    Added Reference https://git.kernel.org/stable/c/e68842b3356471ba56c882209f324613dac47f64
EPSS is a daily estimate of the probability of exploitation activity being observed over the next 30 days. Following chart shows the EPSS score history of the vulnerability.