Azure RTOS USBX 6.1.12 ux_host_class_pima_read.c _ux_host_class_pima_read Pufferüberlauf

CVSS Meta Temp ScoreAktueller Exploitpreis (≈)CTI Interest Score
8.5$0-$5k0.00

Zusammenfassunginfo

Eine Schwachstelle wurde in Azure RTOS USBX 6.1.12 gefunden. Sie wurde als kritisch eingestuft. Dies betrifft die Funktion _ux_host_class_pima_read der Datei ux_host_class_pima_read.c. Mittels Manipulieren mit unbekannten Daten kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. Diese Verwundbarkeit ist als CVE-2022-39293 gelistet. Der Angriff kann über das Netzwerk erfolgen. Es existiert kein Exploit. Ein Upgrade der betroffenen Komponente wird empfohlen.

Detailsinfo

In Azure RTOS USBX 6.1.12 wurde eine kritische Schwachstelle entdeckt. Betroffen ist die Funktion _ux_host_class_pima_read der Datei ux_host_class_pima_read.c. Mit der Manipulation mit einer unbekannten Eingabe kann eine Pufferüberlauf-Schwachstelle ausgenutzt werden. CWE definiert das Problem als CWE-120. Es ist nicht bekannt, inwiefern sich eine durchgesetzte Attacke genau auswirken wird. Die Zusammenfassung von CVE lautet:

Azure RTOS USBX is a high-performance USB host, device, and on-the-go (OTG) embedded stack, that is fully integrated with Azure RTOS ThreadX. The case is, in [_ux_host_class_pima_read](https://github.com/azure-rtos/usbx/blob/master/common/usbx_host_classes/src/ux_host_class_pima_read.c), there is data length from device response, returned in the very first packet, and read by [L165 code](https://github.com/azure-rtos/usbx/blob/082fd9db09a3669eca3358f10b8837a5c1635c0b/common/usbx_host_classes/src/ux_host_class_pima_read.c#L165), as header_length. Then in [L178 code](https://github.com/azure-rtos/usbx/blob/082fd9db09a3669eca3358f10b8837a5c1635c0b/common/usbx_host_classes/src/ux_host_class_pima_read.c#L178), there is a “if” branch, which check the expression of “(header_length - UX_HOST_CLASS_PIMA_DATA_HEADER_SIZE) > data_length” where if header_length is smaller than UX_HOST_CLASS_PIMA_DATA_HEADER_SIZE, calculation could overflow and then [L182 code](https://github.com/azure-rtos/usbx/blob/082fd9db09a3669eca3358f10b8837a5c1635c0b/common/usbx_host_classes/src/ux_host_class_pima_read.c#L182) the calculation of data_length is also overflow, this way the later [while loop start from L192](https://github.com/azure-rtos/usbx/blob/082fd9db09a3669eca3358f10b8837a5c1635c0b/common/usbx_host_classes/src/ux_host_class_pima_read.c#L192) can move data_pointer to unexpected address and cause write buffer overflow. The fix has been included in USBX release [6.1.12](https://github.com/azure-rtos/usbx/releases/tag/v6.1.12_rel). The following can be used as a workaround: Add check of `header_length`: 1. It must be greater than `UX_HOST_CLASS_PIMA_DATA_HEADER_SIZE`. 1. It should be greater or equal to the current returned data length (`transfer_request -> ux_transfer_request_actual_length`).

Die Schwachstelle wurde am 14.10.2022 als GHSA-gg76-h537-xq48 öffentlich gemacht. Bereitgestellt wird das Advisory unter github.com. Die Verwundbarkeit wird seit dem 02.09.2022 als CVE-2022-39293 geführt. Technische Details sind bekannt, ein verfügbarer Exploit hingegen nicht.

Ein Aktualisieren auf die Version 6.1.12 vermag dieses Problem zu lösen. Eine neue Version kann von github.com bezogen werden.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Produktinfo

Hersteller

Name

Version

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

CVSSv3info

VulDB Meta Base Score: 8.6
VulDB Meta Temp Score: 8.5

VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Zuverlässigkeit: 🔍

NVD Base Score: 9.8
NVD Vector: 🔍

CNA Base Score: 8.6
CNA Vector (GitHub, Inc.): 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VektorKomplexitätAuthentisierungVertraulichkeitIntegritätVerfügbarkeit
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten
freischaltenfreischaltenfreischaltenfreischaltenfreischaltenfreischalten

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Zuverlässigkeit: 🔍

Exploitinginfo

Klasse: Pufferüberlauf
CWE: CWE-120 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍

Physisch: Nein
Lokal: Nein
Remote: Ja

Verfügbarkeit: 🔍
Status: Nicht definiert

EPSS Score: 🔍
EPSS Percentile: 🔍

Preisentwicklung: 🔍
Aktuelle Preisschätzung: 🔍

0-Dayfreischaltenfreischaltenfreischaltenfreischalten
Heutefreischaltenfreischaltenfreischaltenfreischalten

Threat Intelligenceinfo

Interesse: 🔍
Aktive Akteure: 🔍
Aktive APT Gruppen: 🔍

Gegenmassnahmeninfo

Empfehlung: Upgrade
Status: 🔍

0-Day Time: 🔍

Upgrade: USBX 6.1.12

Timelineinfo

02.09.2022 🔍
14.10.2022 +42 Tage 🔍
14.10.2022 +0 Tage 🔍
27.10.2025 +1109 Tage 🔍

Quelleninfo

Advisory: GHSA-gg76-h537-xq48
Status: Bestätigt

CVE: CVE-2022-39293 (🔍)
GCVE (CVE): GCVE-0-2022-39293
GCVE (VulDB): GCVE-100-210817

Eintraginfo

Erstellt: 14.10.2022 08:56
Aktualisierung: 27.10.2025 15:31
Anpassungen: 14.10.2022 08:56 (43), 08.11.2022 07:37 (21), 27.10.2025 15:31 (15)
Komplett: 🔍
Cache ID: 216::103

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Diskussion

Bisher keine Kommentare. Sprachen: de + en.

Bitte loggen Sie sich ein, um kommentieren zu können.

Do you need the next level of professionalism?

Upgrade your account now!