CVE-2026-64346 in Linuxinformation

Résumé

par VulDB • 25/07/2026

Dans le noyau Linux, la vulnérabilité suivante a été corrigée :

usb: gadget: udc : Correction d'un Use-After-Free dans gadget_match_driver

La structure udc agit comme la structure de gestion du périphérique (gadget), mais leurs cycles de vie sont découplés. Une condition de concurrence (race condition) existe où usb_del_gadget() libère la mémoire udc (par exemple, via le travail mode-switch) tandis que gadget_match_driver() accède simultanément à la mémoire ucd déjà libérée (par exemple, via configfs), provoquant un Use-After-Free (UAF) qui déclenche une déréférencement de pointeur NULL lorsque la mémoire libérée est réinitialisée à zéro :

[39430.908615][ T1171] Impossible de gérer le déréférencement de pointeur NULL du noyau à l'adresse virtuelle 0000000000000000
[39430.911397][ T1171] pc : __pi_strcmp+0x20/0x140
[39430.911441][ T1171] lr : gadget_match_driver+0x34/0x60
... [39430.911890][ T1171] usb_gadget_register_driver_owner+0x50/0xf8
[39430.911910][ T1171] gadget_dev_desc_UDC_store+0xf4/0x140
[39430.931308][ T1171] configfs_write_iter+0xec/0x134

[39430.957058][ T1171] Workqueue: events_freezable __dwc3_set_mode
[39430.957287][ T1171] dwc3_gadget_exit+0x34/0x8c
[39430.957304][ T1171] __dwc3_set_mode+0xc0/0x664

Cette correction est apportée en s'assurant que la structure udc reste allouée jusqu'à ce que le gadget soit libéré. Pour y parvenir, une nouvelle routine usb_gadget_release() a été introduite dans le noyau central (core). Lorsque le gadget est ajouté, usb_add_gadget() stocke la routine de libération du gadget dans la structure udc et prend une référence sur la structure udc. Lorsque le gadget est libéré, usb_gadget_release() supprime la référence vers la structure udc puis appelle la routine de libération du gadget.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Responsable

Linux

Réserver

19/07/2026

Divulgation

25/07/2026

Modérer

accepté

Entrée

VDB-383144

CPE

prêt

EPSS

0.00206

KEV

non

Activités

très faible

Sources

Do you need the next level of professionalism?

Upgrade your account now!