// For flags

CVE-2024-38659

enic: Validate length of nl attributes in enic_set_vf_port

Severity Score

"-"
*CVSS v-

Exploit Likelihood

*EPSS

Affected Versions

*CPE

Public Exploits

0
*Multiple Sources

Exploited in Wild

-
*KEV

Decision

Track
*SSVC
Descriptions

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.

En el kernel de Linux se ha resuelto la siguiente vulnerabilidad: enic: Validar la longitud de los atributos nl en enic_set_vf_port enic_set_vf_port supone que el atributo nl IFLA_PORT_PROFILE tiene una longitud PORT_PROFILE_MAX y que los atributos nl IFLA_PORT_INSTANCE_UUID, IFLA_PORT_HOST_UUID tienen una longitud PORT_UUID_MAX. Estos atributos se validan (en la función do_setlink en rtnetlink.c) usando nla_policy ifla_port_policy. La política define IFLA_PORT_PROFILE como NLA_STRING, IFLA_PORT_INSTANCE_UUID como NLA_BINARY e IFLA_PORT_HOST_UUID como NLA_STRING. Eso significa que la validación de longitud que utiliza la política es para el tamaño máximo de los atributos y no para el tamaño exacto, por lo que la longitud de estos atributos puede ser menor que los tamaños que espera enic_set_vf_port. Esto podría causar un acceso de lectura fuera de banda en los memcpys de los datos de estos atributos en enic_set_vf_port.

*Credits: N/A
CVSS Scores
Attack Vector
-
Attack Complexity
-
Privileges Required
-
User Interaction
-
Scope
-
Confidentiality
-
Integrity
-
Availability
-
* Common Vulnerability Scoring System
SSVC
  • Decision:Track
Exploitation
None
Automatable
No
Tech. Impact
Partial
* Organization's Worst-case Scenario
Timeline
  • 2024-06-21 CVE Reserved
  • 2024-06-21 CVE Published
  • 2024-06-22 EPSS Updated
  • 2024-08-02 CVE Updated
  • ---------- Exploited in Wild
  • ---------- KEV Due Date
  • ---------- First Exploit
CWE
CAPEC
Affected Vendors, Products, and Versions
Vendor Product Version Other Status
Vendor Product Version Other Status <-- --> Vendor Product Version Other Status
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 4.19.316
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 4.19.316"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 5.4.278
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 5.4.278"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 5.10.219
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 5.10.219"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 5.15.161
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 5.15.161"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 6.1.93
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 6.1.93"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 6.6.33
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 6.6.33"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 6.9.4
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 6.9.4"
en
Affected
Linux
Search vendor "Linux"
Linux Kernel
Search vendor "Linux" for product "Linux Kernel"
>= 2.6.35 < 6.10
Search vendor "Linux" for product "Linux Kernel" and version " >= 2.6.35 < 6.10"
en
Affected