CVE-2022-36063CWE-121CWE-191

USBX Host CDC ECM integer underflow with buffer overflow

High · published October 10, 2022

CVSS v3.1
7.6
EPSS
2%
Percentile
81.9
In the wild
Unconfirmed
What it is

Azure RTOS USBx is a USB host, device, and on-the-go (OTG) embedded stack, fully integrated with Azure RTOS ThreadX and available for all Azure RTOS ThreadX–supported processors. Azure RTOS USBX implementation of host support for USB CDC ECM includes an integer underflow and a buffer overflow in the `_ux_host_class_cdc_ecm_mac_address_get` function which may be potentially exploited to achieve remote code execution or denial of service. Setting mac address string descriptor length to a `0` or `1` allows an attacker to introduce an integer underflow followed (string_length) by a buffer overflow of the `cdc_ecm -> ux_host_class_cdc_ecm_node_id` array. This may allow one to redirect the code execution flow or introduce a denial of service. The fix has been included in USBX release [6.1.12](https://github.com/azure-rtos/usbx/releases/tag/v6.1.12_rel). Improved mac address string descriptor length validation to check for unexpectedly small values may be used as a workaround.

The record
Technical detail
CVSS v3.1
7.6 · HIGH
Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:H
CVSS v4.0
Not supplied
EPSS
0.02136 · 81.9th percentile
Weaknesses
CWE-121 · Stack-based Buffer Overflow; CWE-191 · Integer Underflow (Wrap or Wraparound)
Published
2022-10-10T00:00Z
EPSS history
Timeline
  • 10 OCT 00:00Z
    USBX Host CDC ECM integer underflow with buffer overflow
    cvelistv5