{"dataType":"CVE_RECORD","dataVersion":"5.2","cveMetadata":{"cveId":"CVE-2022-50865","assignerOrgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","state":"PUBLISHED","assignerShortName":"Linux","dateReserved":"2025-12-30T12:06:07.136Z","datePublished":"2025-12-30T12:15:37.150Z","dateUpdated":"2026-08-05T08:59:52.038Z"},"containers":{"cna":{"providerMetadata":{"orgId":"416baaa9-dc9f-4396-8d5f-8c081fb06d67","shortName":"Linux","dateUpdated":"2026-08-05T08:59:52.038Z"},"descriptions":[{"lang":"en","value":"In the Linux kernel, the following vulnerability has been resolved:\n\ntcp: fix a signed-integer-overflow bug in tcp_add_backlog()\n\nThe type of sk_rcvbuf and sk_sndbuf in struct sock is int, and\nin tcp_add_backlog(), the variable limit is caculated by adding\nsk_rcvbuf, sk_sndbuf and 64 * 1024, it may exceed the max value\nof int and overflow. This patch reduces the limit budget by\nhalving the sndbuf to solve this issue since ACK packets are much\nsmaller than the payload."}],"metrics":[{"cvssV3_1":{"version":"3.1","vectorString":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H","baseScore":7.5,"baseSeverity":"HIGH"},"scenarios":[{"lang":"en","value":"AV:N - tcp_add_backlog() runs on the TCP receive path from tcp_v4_rcv/tcp_v6_rcv when processing inbound segments for an established socket owned by userspace, so a remote peer reaches it via ordinary network packets.\nAC:L - In a realistic high-throughput deployment with rmem_max/wmem_max raised near INT_MAX and the application setting large SO_RCVBUF/SO_SNDBUF, a peer can reliably drive the overflowed tiny backlog limit by sending data while the socket is locked; no attacker-uncontrollable race or rare config is required.\nPR:N - Triggering the buggy limit check needs only the ability to send TCP segments to an existing connection; no authentication or local privileges are required of the remote attacker.\nUI:N - Exploitation does not require any victim user action beyond the already-running TCP service accepting and processing network traffic.\nS:U - Impact stays within the host kernel networking authority; there is no VM escape, sandbox escape, or other cross-boundary scope change.\nC:N - The overflow only miscomputes the backlog admission limit; it does not corrupt memory or disclose kernel/user data.\nI:N - There is no write primitive, type confusion, or other integrity violation—only an incorrect (too-small) backlog threshold causing packet drops.\nA:H - When sk_rcvbuf and sk_sndbuf are both near INT_MAX, signed overflow collapses the u32 limit to ~64KB, so sk_add_backlog() prematurely drops inbound segments (TCPBACKLOGDROP), enabling denial of service on affected connections."}]}],"affected":[{"product":"Linux","vendor":"Linux","defaultStatus":"unaffected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/ipv4/tcp_ipv4.c"],"versions":[{"version":"c9c3321257e1b95be9b375f811fb250162af8d39","lessThan":"9d04b4d0feee12bce6bfe37f30d8e953d3c30368","status":"affected","versionType":"git"},{"version":"c9c3321257e1b95be9b375f811fb250162af8d39","lessThan":"4f23cb2be530785db284a685d1b1c30224d8a538","status":"affected","versionType":"git"},{"version":"c9c3321257e1b95be9b375f811fb250162af8d39","lessThan":"a85d39f14aa8a71e29cfb5eb5de02878a8779898","status":"affected","versionType":"git"},{"version":"c9c3321257e1b95be9b375f811fb250162af8d39","lessThan":"28addf029417d53b1df062b4c87feb7bc033cb5f","status":"affected","versionType":"git"},{"version":"c9c3321257e1b95be9b375f811fb250162af8d39","lessThan":"ec791d8149ff60c40ad2074af3b92a39c916a03f","status":"affected","versionType":"git"}]},{"product":"Linux","vendor":"Linux","defaultStatus":"affected","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","programFiles":["net/ipv4/tcp_ipv4.c"],"versions":[{"version":"4.9","status":"affected"},{"version":"0","lessThan":"4.9","status":"unaffected","versionType":"semver"},{"version":"5.4.278","lessThanOrEqual":"5.4.*","status":"unaffected","versionType":"semver"},{"version":"5.10.153","lessThanOrEqual":"5.10.*","status":"unaffected","versionType":"semver"},{"version":"5.15.77","lessThanOrEqual":"5.15.*","status":"unaffected","versionType":"semver"},{"version":"6.0.7","lessThanOrEqual":"6.0.*","status":"unaffected","versionType":"semver"},{"version":"6.1","lessThanOrEqual":"*","status":"unaffected","versionType":"original_commit_for_fix"}]}],"cpeApplicability":[{"nodes":[{"operator":"OR","negate":false,"cpeMatch":[{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.9","versionEndExcluding":"5.4.278"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.9","versionEndExcluding":"5.10.153"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.9","versionEndExcluding":"5.15.77"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.9","versionEndExcluding":"6.0.7"},{"vulnerable":true,"criteria":"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*","versionStartIncluding":"4.9","versionEndExcluding":"6.1"}]}]}],"references":[{"url":"https://git.kernel.org/stable/c/9d04b4d0feee12bce6bfe37f30d8e953d3c30368"},{"url":"https://git.kernel.org/stable/c/4f23cb2be530785db284a685d1b1c30224d8a538"},{"url":"https://git.kernel.org/stable/c/a85d39f14aa8a71e29cfb5eb5de02878a8779898"},{"url":"https://git.kernel.org/stable/c/28addf029417d53b1df062b4c87feb7bc033cb5f"},{"url":"https://git.kernel.org/stable/c/ec791d8149ff60c40ad2074af3b92a39c916a03f"}],"title":"tcp: fix a signed-integer-overflow bug in tcp_add_backlog()","x_generator":{"engine":"bippy-1.2.0"}},"adp":[{"metrics":[{"other":{"type":"ssvc","content":{"timestamp":"2026-06-16T15:51:41.874254Z","id":"CVE-2022-50865","options":[{"Exploitation":"none"},{"Automatable":"no"},{"Technical Impact":"partial"}],"role":"CISA Coordinator","version":"2.0.3"}}}],"title":"CISA ADP Vulnrichment","providerMetadata":{"orgId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","shortName":"CISA-ADP","dateUpdated":"2026-06-16T15:51:51.892Z"}}]}}