CVE-2026-98952pfcp: make sure the SEID is linear before reading it
- 7.3HighCVSS base score
- 0.38%Exploitation in 30 daysEPSS · top 68% of all CVEs
- NoKnown exploitednot in CISA's KEV catalog
- NonePublic exploitsnone known yet
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.
Timeline
ID reserved
By Linux
- 28 days later
· 28 days later
Published
- 1 day later
· 1 day later
Record updated
Changes after publication (a new score, a public exploit, EPSS crossing 1, 10 or 50 %, leaving KEV) are kept since November 2026; earlier ones are not known.
Scores
| Scored by | CVSS | Score | Vector |
|---|---|---|---|
| LinuxCNA (assigner) | 3.1 | High7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L |
| NVDNVD · Received | 3.1 | High7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L |
- EPSS (exploitation in 30 days)
- 0.38% · top 68% of all CVEs (14 Nov 2026)
The list uses the assigner's score when there is one, then CISA's, then NVD's: High 7.3.
Affected products
- affected 6dd514f48110ebb4bf36875b9e7e02d07b589caa – < 3192a5e398c64d48aad64a09e29643e327369bc4
- affected 6dd514f48110ebb4bf36875b9e7e02d07b589caa – < b18a6496495495e2dc27e525aa3315a0c59b9513
- affected 6dd514f48110ebb4bf36875b9e7e02d07b589caa – < 2fb6d05f706d79bbdc88835be2f4f45ab56dd819
- affected 6dd514f48110ebb4bf36875b9e7e02d07b589caa – < 23609bce9e1de525d1d0e73fc68c6e7971d0b49e
- affected 6.10
- unaffected < 6.10
- unaffected 6.12.113 – ≤ 6.12.*
- unaffected 6.18.57 – ≤ 6.18.*
- unaffected 7.2.11 – ≤ 7.2.*
- unaffected 7.3 – ≤ *
References
References4
- https://git.kernel.org/stable/c/3192a5e398c64d48aad64a09e29643e327369bc4 (opens in a new tab)
- https://git.kernel.org/stable/c/b18a6496495495e2dc27e525aa3315a0c59b9513 (opens in a new tab)
- https://git.kernel.org/stable/c/2fb6d05f706d79bbdc88835be2f4f45ab56dd819 (opens in a new tab)
- https://git.kernel.org/stable/c/23609bce9e1de525d1d0e73fc68c6e7971d0b49e (opens in a new tab)
Sources
The same CVE in the primary databases and aggregators, to check against.
- CVE.org record (opens in a new tab)
- CVE List JSON (GitHub) (opens in a new tab)
- NVD (opens in a new tab)
- FIRST EPSS (opens in a new tab)
- EUVD EUVD-2026-108926 (opens in a new tab)
- OSV.dev (opens in a new tab)
- GitHub Advisories (opens in a new tab)
- CIRCL Vulnerability-Lookup (opens in a new tab)
Badge for a README or a ticket
[](https://cveledger.app/cve/CVE-2026-98952)Record last updated .