What’s Vulnerable › Vulnerabilities
CVE-2022-29223: Buffer overflow on HUB descriptor in Azure RTOS USBX
- Severity: critical (CVSS 9.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 1.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2022-05-24 · updated 2026-06-17
- Weakness: CWE-120
Description
Azure RTOS USBX is a USB host, device, and on-the-go (OTG) embedded stack. In versions prior to 6.1.10, an attacker can cause a buffer overflow by providing the Azure RTOS USBX host stack a HUB descriptor with `bNbPorts` set to a value greater than `UX_MAX_TT` which defaults to 8. For a `bNbPorts` value of 255, the implementation of `ux_host_class_hub_descriptor_get` function will modify the contents of `hub` -> `ux_host_class_hub_device` -> `ux_device_hub_tt` array violating the end boundary by 255 - `UX_MAX_TT` items. The USB host stack needs to validate the number of ports reported by the hub, and if the value is larger than UX_MAX_TT, USB stack needs to reject the request. This fix has been included in USBX release 6.1.10.
Affected products
- azure-rtos usbx: before 6.1.10 — fixed in 6.1.10
How to fix
Upgrade to a fixed version: azure-rtos usbx 6.1.10. Check the vendor advisory for mitigations.
References
- https://github.com/azure-rtos/usbx/releases/tag/v6.1.10_rel
- https://github.com/azure-rtos/usbx/security/advisories/GHSA-2qc5-385m-x862
- https://github.com/azure-rtos/usbx/releases/tag/v6.1.10_rel
- https://github.com/azure-rtos/usbx/security/advisories/GHSA-2qc5-385m-x862
Get alerted when CVE-2022-29223 or the next vulnerability affects your stack