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

pfcp: make sure the SEID is linear before reading it

pfcp_encap_recv() only makes sure that the UDP header and the 4 byte
PFCP header are in the linear area. When the S flag is set,
pfcp_session_recv() then reads the 8 byte SEID that follows, which is
not covered by the pskb_may_pull() check.

A short PFCP packet with the S flag set, or one whose session header
lies in a fragment, therefore makes pfcp_session_recv() read beyond the
end of the packet data, and whatever it finds there is stored in the
tunnel metadata that flower later classifies on.

Pull up to the end of the SEID before reading it, and drop packets
that are too short to contain it. Reload the header pointer afterwards
since pskb_may_pull() may reallocate the skb head.

Use offsetofend() rather than sizeof(struct pfcphdr_session): the
structure is not packed, so its size is 16 bytes because of the
alignment of the __be64 member, while the header on the wire is only 12
bytes, and valid session messages would be dropped.
Published: 2026-10-23
Score: 7.3 High
EPSS: < 1% Very Low
KEV: No
Impact: Out-of-Bounds Read
Action: Patch Kernel
AI Analysis

Impact

The Linux kernel’s PFCP packet handler contains a linearity check that verifies only the UDP header and the 4‑byte PFCP header reside in the linear area of the socket buffer. When a PFCP packet carries the S flag, the handler reads an additional 8‑byte SEID field that is not covered by this check, allowing the code to read kernel memory beyond the end of the actual packet data. This out‑of‑bounds read copies accidental or malicious data into tunnel metadata, which later influences traffic classification and could result in memory disclosure or a kernel crash.

Affected Systems

All Linux kernel builds that include the PFCP stack and have not applied the commit adding the SEID linearity guard are affected. Kernels lacking PFCP code or those that have already incorporated the fix are not impacted. The vulnerability applies broadly to systems running network function virtualization or mobile core network components that employ PFCP.

Risk and Exploitability

The flaw is reachable from the network; an attacker must craft a PFCP packet with the S flag or a fragmented session header that is smaller than the required 12‑byte header. The CVSS score of 7.3 indicates a high severity, but the EPSS score of less than 1% points to a low current exploitation probability. The flaw is not listed in the CISA KEV catalog. Nonetheless, the ability to read arbitrary kernel memory or trigger a crash remains a serious risk until remedied.

Generated by OpenCVE AI on October 29, 2026 at 21:58 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Apply the latest Linux kernel that includes the SEID linearity check and reboot the system to load the updated kernel.
  • If a kernel upgrade cannot be performed immediately, block or rate‑limit incoming PFCP traffic on the firewall to prevent crafted packets from reaching the stack.
  • Configure alerting on kernel logs for oops, page‑faults or other memory‑corruption events, and apply pressure to maintain an up‑to‑date kernel in all production environments.

Generated by OpenCVE AI on October 29, 2026 at 21:58 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Thu, 29 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-788

Thu, 29 Oct 2026 12:15:00 +0000


Sat, 24 Oct 2026 18:45:00 +0000

Type Values Removed Values Added
Weaknesses CWE-119
CWE-788

Sat, 24 Oct 2026 16:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-788

Sat, 24 Oct 2026 14:15:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L'}


Fri, 23 Oct 2026 18:15:00 +0000

Type Values Removed Values Added
First Time appeared Linux linux
Weaknesses CWE-788
Vendors & Products Linux linux

Fri, 23 Oct 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: pfcp: make sure the SEID is linear before reading it pfcp_encap_recv() only makes sure that the UDP header and the 4 byte PFCP header are in the linear area. When the S flag is set, pfcp_session_recv() then reads the 8 byte SEID that follows, which is not covered by the pskb_may_pull() check. A short PFCP packet with the S flag set, or one whose session header lies in a fragment, therefore makes pfcp_session_recv() read beyond the end of the packet data, and whatever it finds there is stored in the tunnel metadata that flower later classifies on. Pull up to the end of the SEID before reading it, and drop packets that are too short to contain it. Reload the header pointer afterwards since pskb_may_pull() may reallocate the skb head. Use offsetofend() rather than sizeof(struct pfcphdr_session): the structure is not packed, so its size is 16 bytes because of the alignment of the __be64 member, while the header on the wire is only 12 bytes, and valid session messages would be dropped.
Title pfcp: make sure the SEID is linear before reading it
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-10-24T14:09:37.815Z

Reserved: 2026-09-25T10:25:14.382Z

Link: CVE-2026-98952

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-23T13:17:16.370

Modified: 2026-10-24T14:16:49.163

Link: CVE-2026-98952

cve-icon Redhat

Severity : Important

Publid Date: 2026-10-23T00:00:00Z

Links: CVE-2026-98952 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-10-29T22:00:09Z

Weaknesses