CVE-2024-38659

enic: Validate length of nl attributes in enic_set_vf_port

HIGH
7.1
CVSS Score
Published: June 21, 2024 at 10:28 AM UTC
Updated: October 15, 2026 at 01:18 AM UTC
7 products affected across 2 vendorsLinux KernelSIMATIC S7-1500 TM MFPRUGGEDCOM RST2428P Firmware

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
HIGH7.1
Exploit prediction
EPSS 0.2%
SSVC
No known exploit

Description

In the Linux kernel, the following vulnerability has been resolved: enic: Validate length of nl attributes in enic_set_vf_port enic_set_vf_port assumes that the nl attribute IFLA_PORT_PROFILE is of length PORT_PROFILE_MAX and that the nl attributes IFLA_PORT_INSTANCE_UUID, IFLA_PORT_HOST_UUID are of length PORT_UUID_MAX. These attributes are validated (in the function do_setlink in rtnetlink.c) using the nla_policy ifla_port_policy. The policy defines IFLA_PORT_PROFILE as NLA_STRING, IFLA_PORT_INSTANCE_UUID as NLA_BINARY and IFLA_PORT_HOST_UUID as NLA_STRING. That means that the length validation using the policy is for the max size of the attributes and not on exact size so the length of these attributes might be less than the sizes that enic_set_vf_port expects. This might cause an out of bands read access in the memcpys of the data of these attributes in enic_set_vf_port.

Affected

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

2.6.35 ≤ v < 4.19.3164.20 ≤ v < 5.4.2785.11 ≤ v < 5.15.1615.16 ≤ v < 6.1.935.5 ≤ v < 5.10.2196.2 ≤ v < 6.6.336.7 ≤ v < 6.9.46.106.10 rc1f8bd909183acffad68780b10c1cdf36161cfd5d1
Vendor states this is fixed in 25571a12fbc8a1283bd8380d461267956fd426f7 (fixed)
Vendor states this is fixed in 2b649d7e0cb42a660f0260ef25fd55fdc9c6c600 (fixed)
Vendor states this is fixed in 3c0d36972edbe56fcf98899622d9b90ac9965227 (fixed)
Vendor states this is fixed in 7077c22f84f41974a711604a42fd0e0684232ee5 (fixed)
Vendor states this is fixed in aee1955a1509a921c05c70dad5d6fc8563dfcb31 (fixed)
Vendor states this is fixed in ca63fb7af9d3e531aa25f7ae187bfc6c7166ec2d (fixed)
Vendor states this is fixed in e8021b94b0412c37bcc79027c2e382086b6ce449 (fixed)
Vendor states this is fixed in f6638e955ca00c489894789492776842e102af9c (fixed)
Vendor states this is fixed in 2.6.35 (unaffected)
Vendor states this is fixed in 4.19.316 (unaffected)
Vendor states this is fixed in 5.10.219 (unaffected)
Vendor states this is fixed in 5.15.161 (unaffected)
Vendor states this is fixed in 5.4.278 (unaffected)
Vendor states this is fixed in 6.1.93 (unaffected)
Vendor states this is fixed in 6.10 (unaffected)
Vendor states this is fixed in 6.6.33 (unaffected)
Vendor states this is fixed in 6.9.4 (unaffected)
v < V3.1
Affected range stops below V3.1, so it looks safe — our inference, not a vendor statement
v < V3.1
Affected range stops below V3.1, so it looks safe — our inference, not a vendor statement
v < V3.1
Affected range stops below V3.1, so it looks safe — our inference, not a vendor statement
v < V3.1
Affected range stops below V3.1, so it looks safe — our inference, not a vendor statement
v < V3.1
Affected range stops below V3.1, so it looks safe — our inference, not a vendor statement

References (11)

Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/25571a12fbc8a1283bd8380d461267956fd426f7
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/2b649d7e0cb42a660f0260ef25fd55fdc9c6c600
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/3c0d36972edbe56fcf98899622d9b90ac9965227
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/7077c22f84f41974a711604a42fd0e0684232ee5
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/aee1955a1509a921c05c70dad5d6fc8563dfcb31
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/ca63fb7af9d3e531aa25f7ae187bfc6c7166ec2d
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/e8021b94b0412c37bcc79027c2e382086b6ce449
Patch
Source: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
https://git.kernel.org/stable/c/f6638e955ca00c489894789492776842e102af9c

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
HIGH
Integrity
NONE
Availability
HIGH
Vector?

Quick Info

StatusMODIFIED
CWE
CWE-1284

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