rxrpc: Fix missing validation of ticket length in non-XDR key preparsing
In the Linux kernel, the following vulnerability has been resolved: rxrpc: Fix missing validation of ticket length in non-XDR key preparsing In rxrpc_preparse(), there are two paths for parsing key payloads: the XDR path (for large payloads) and the non-XDR path (for payloads <= 28 bytes). While the XDR path (rxrpc_preparse_xdr_rxkad()) correctly validates the ticket length against AFSTOKEN_RK_TIX_MAX, the non-XDR path fails to do so. This allows an unprivileged user to provide a very large ticket length. When this key is later read via rxrpc_read(), the total token size (toksize) calculation results in a value that exceeds AFSTOKEN_LENGTH_MAX, triggering a WARN_ON(). [ 2001.302904] WARNING: CPU: 2 PID: 2108 at net/rxrpc/key.c:778 rxrpc_read+0x109/0x5c0 [rxrpc] Fix this by adding a check in the non-XDR parsing path of rxrpc_preparse() to ensure the ticket length does not exceed AFSTOKEN_RK_TIX_MAX, bringing it into parity with the XDR parsing logic.
CVE-2026-31696
Primary source · Revision 1
Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.
Security context
Source reference: cve:CVE-2026-31696
Linux
Source reference: /containers/cna/affected/0/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Linux
Source reference: /containers/cna/affected/1/product
- Affected versions
- Not stated in this record
- Fixed versions
- Not stated in this record
- Prerequisites
- Not stated in this record
Structured affected-version data
Original package identities and version rules from this source.
[
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "44714dfda386884919ba366411880b6fb3c3efd3",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "41a117dd80371343babc52198d1114e83eb37627",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "9a397aa9b5e53ca63d4d6aefb542832eca389618",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "1fa36cf495b0023e8475d038535c05e4063211e1",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "4458757c020592a3094366e0fb20457383b42f92",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "ce383ba615339f8eaec646a166d2c2b015bb5ca0",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "a1be1c9ece26cea69654f28b255ff9a7906b897b",
"versionType": "git"
},
{
"status": "affected",
"version": "8a7a3eb4ddbe7c7e639170a64adede7cbd5a9247",
"lessThan": "ac33733b10b484d666f97688561670afd5861383",
"versionType": "git"
}
],
"programFiles": [
"net/rxrpc/key.c"
],
"defaultStatus": "unaffected"
},
{
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"vendor": "Linux",
"product": "Linux",
"versions": [
{
"status": "affected",
"version": "3.17"
},
{
"status": "unaffected",
"version": "0",
"lessThan": "3.17",
"versionType": "semver"
},
{
"status": "unaffected",
"version": "5.10.258",
"versionType": "semver",
"lessThanOrEqual": "5.10.*"
},
{
"status": "unaffected",
"version": "5.15.209",
"versionType": "semver",
"lessThanOrEqual": "5.15.*"
},
{
"status": "unaffected",
"version": "6.1.175",
"versionType": "semver",
"lessThanOrEqual": "6.1.*"
},
{
"status": "unaffected",
"version": "6.6.136",
"versionType": "semver",
"lessThanOrEqual": "6.6.*"
},
{
"status": "unaffected",
"version": "6.12.84",
"versionType": "semver",
"lessThanOrEqual": "6.12.*"
},
{
"status": "unaffected",
"version": "6.18.25",
"versionType": "semver",
"lessThanOrEqual": "6.18.*"
},
{
"status": "unaffected",
"version": "7.0.2",
"versionType": "semver",
"lessThanOrEqual": "7.0.*"
},
{
"status": "unaffected",
"version": "7.1",
"versionType": "original_commit_for_fix",
"lessThanOrEqual": "*"
}
],
"programFiles": [
"net/rxrpc/key.c"
],
"defaultStatus": "affected"
}
]- Related CVEs
- CVE-2026-31696
Source reference:
/cveMetadata/cveId
Publisher severity
No explicit severity was provided.
- Event
- #28314 · Revision 1
- Added to Heist Feed
- Publisher date