CVE-2026-98255
Full vulnerability record from the local CVENow database.
Description
In the Linux kernel, the following vulnerability has been resolved: tcp: exclude old ACKs from tcp fast path Exclude old ACKs before SND.UNA from the tcp fast path as well as ACKs after SND.NXT. Such ACKs will fall through to the slow path, where tcp_ack() performs the appropriate validation and challenge ACK handling according to RFC5961 and Commit 3d501dd326fb1c7 ("tcp: do not accept ACK of bytes we never sent"). This prevents old ACKs from being accepted or modifying connection state as part of the fast path before appropriate ACK validation is applied. In particular, this prevents payload carried by a segment with an excessively old ACK from advancing RCV.NXT before the ACK is rejected.
View original CVE JSON
{
"id": "CVE-2026-98255",
"sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"published": "2026-10-06T09:18:14.210",
"lastModified": "2026-10-19T10:18:26.500",
"vulnStatus": "Received",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "In the Linux kernel, the following vulnerability has been resolved:\n\ntcp: exclude old ACKs from tcp fast path\n\nExclude old ACKs before SND.UNA from the tcp fast path\nas well as ACKs after SND.NXT.\n\nSuch ACKs will fall through to the slow path, where tcp_ack()\nperforms the appropriate validation and challenge ACK handling\naccording to RFC5961 and Commit 3d501dd326fb1c7 (\"tcp: do not\naccept ACK of bytes we never sent\").\n\nThis prevents old ACKs from being accepted\nor modifying connection state as part of the fast path before\nappropriate ACK validation is applied.\nIn particular, this prevents payload carried by a segment with\nan excessively old ACK from advancing RCV.NXT before the ACK\nis rejected."
}
],
"affected": [
{
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
"affectedData": [
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "unaffected",
"programFiles": [
"net/ipv4/tcp_input.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "07cacab90290f795bad2e566790f4ba8e84cdf5f",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "6eb9b697f50b73b9684e466c1e97f4ca8e947a59",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "b86e1e5a4bbcbbccde8b7a3d3486604b581f6628",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "1c8448db5cf35a13d82b0c9004ffdb49358883e7",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "8309dc2cc360056aa9cd2acfbfc25930798c3b66",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "ff037920c688ae6ca1153fec01e90e6782712455",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "8205ac5ddb42a1843fa8d6a8c295b5c7f4f8c6ed",
"versionType": "git",
"status": "affected"
},
{
"version": "31770e34e43d6c8dee129bfee77e56c34e61f0e5",
"lessThan": "f81e6c3fb06327bc49cdd6e559845293ba06a704",
"versionType": "git",
"status": "affected"
}
]
},
{
"vendor": "Linux",
"product": "Linux",
"defaultStatus": "affected",
"programFiles": [
"net/ipv4/tcp_input.c"
],
"repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
"versions": [
{
"version": "4.14",
"status": "affected"
},
{
"version": "0",
"lessThan": "4.14",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.10.271",
"lessThanOrEqual": "5.10.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "5.15.222",
"lessThanOrEqual": "5.15.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.1.189",
"lessThanOrEqual": "6.1.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.6.158",
"lessThanOrEqual": "6.6.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.12.112",
"lessThanOrEqual": "6.12.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "6.18.54",
"lessThanOrEqual": "6.18.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.2.8",
"lessThanOrEqual": "7.2.*",
"versionType": "semver",
"status": "unaffected"
},
{
"version": "7.3",
"lessThanOrEqual": "*",
"versionType": "original_commit_for_fix",
"status": "unaffected"
}
]
}
]
}
],
"metrics": {},
"references": [
{
"url": "https://git.kernel.org/stable/c/07cacab90290f795bad2e566790f4ba8e84cdf5f",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/1c8448db5cf35a13d82b0c9004ffdb49358883e7",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/6eb9b697f50b73b9684e466c1e97f4ca8e947a59",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8205ac5ddb42a1843fa8d6a8c295b5c7f4f8c6ed",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/8309dc2cc360056aa9cd2acfbfc25930798c3b66",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/b86e1e5a4bbcbbccde8b7a3d3486604b581f6628",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/f81e6c3fb06327bc49cdd6e559845293ba06a704",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
},
{
"url": "https://git.kernel.org/stable/c/ff037920c688ae6ca1153fec01e90e6782712455",
"source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
}
]
}