CVE-2024-35827

io_uring/net: fix overflow check in io_recvmsg_mshot_prep()

MEDIUM
5.5
CVSS Score
Published: May 17, 2024 at 01:41 PM UTC
Updated: August 5, 2026 at 12:04 PM UTC
1 product affected across 1 vendorLinux Kernel

Using Linux by Linux?

Get instant alerts when new vulnerabilities affect Linux - before attackers find them.

Real-time alertsTrack your software stackFree plan available
Severity
MEDIUM5.5
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: io_uring/net: fix overflow check in io_recvmsg_mshot_prep() The "controllen" variable is type size_t (unsigned long). Casting it to int could lead to an integer underflow. The check_add_overflow() function considers the type of the destination which is type int. If we add two positive values and the result cannot fit in an integer then that's counted as an overflow. However, if we cast "controllen" to an int and it turns negative, then negative values *can* fit into an int type so there is no overflow. Good: 100 + (unsigned long)-4 = 96 <-- overflow Bad: 100 + (int)-4 = 96 <-- no overflow I deleted the cast of the sizeof() as well. That's not a bug but the cast is unnecessary.

Affected

Our own answer: ranges merged, affected separated from platform-only, with confidence and review flags.

6.0 ≤ v < 6.1.836.0 ≤ v < 6.6.236.0 ≤ v < 6.7.116.0 ≤ v < 6.8.26.0 ≤ v < 6.96.2 ≤ v < 6.6.236.7 ≤ v < 6.7.116.8 ≤ v < 6.8.26.09b0fc3c054ff2eb13753104884f1045b5bb3a627
Vendor states this is fixed in 0c8c74bb59e7d77554016efc34c2d10376985e5e (fixed)
Vendor states this is fixed in 59a534690ecc3af72c6ab121aeac1237a4adae66 (fixed)
Vendor states this is fixed in 868ec868616438df487b9e2baa5a99f8662cc47c (fixed)
Vendor states this is fixed in 8ede3db5061bb1fe28e2c9683329aafa89d2b1b4 (fixed)
Vendor states this is fixed in b6563ad0d599110bd5cf8f56c47d279c3ed796fe (fixed)
Vendor states this is fixed in 6.0 (unaffected)
Vendor states this is fixed in 6.1.83 (unaffected)
Vendor states this is fixed in 6.6.23 (unaffected)
Vendor states this is fixed in 6.7.11 (unaffected)
Vendor states this is fixed in 6.8.2 (unaffected)
Vendor states this is fixed in 6.9 (unaffected)

References (5)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/0c8c74bb59e7d77554016efc34c2d10376985e5e
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/59a534690ecc3af72c6ab121aeac1237a4adae66
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/868ec868616438df487b9e2baa5a99f8662cc47c
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/8ede3db5061bb1fe28e2c9683329aafa89d2b1b4
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/b6563ad0d599110bd5cf8f56c47d279c3ed796fe

SSVC — Action Prioritization

SSVCNo known exploitNot automatablePartial impact

SSVC signals action urgency (what to patch first), separate from CVSS which measures severity.

CVSS

Attack Vector
LOCAL
Complexity
LOW
Privileges
LOW
User Interaction
NONE
Scope
UNCHANGED
Confidentiality
NONE
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-190

Get alerted

Stop reading CVE feeds looking for your own stack

Track the products you run and VulnTracker tells you when a new CVE affects them — with what is known about fixing it, and nothing about the rest.

Free plan, no card