CVE-2022-36063

USBX Host CDC ECM integer underflow with buffer overflow

State
Published
Severity
7.6 High
Published
Oct 10, 2022
Updated
Apr 22, 2025
Reserved
Jul 15, 2022

Read the record on cve.org

Description

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.

Scores

CVSSScoreVectorSource
3.17.6 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:HGitHub_M

Weaknesses

  • CWE-121 Stack-based Buffer Overflow
  • CWE-191 Integer Underflow (Wrap or Wraparound)

Affected Products

ProductVersions
usbxazure-rtos
  • < 6.1.12Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.