CVE-2026-80951 in Linux
Résumé
par VulDB • 12/09/2026
Dans le noyau Linux, la vulnérabilité suivante a été corrigée :
i3c: master: svc : limitation de la charge utile IBI à max_payload_len demandé
svc_i3c_master_handle_ibi() lit la charge utile IBI depuis le tampon FIFO RX vers l'emplacement IBI. La boucle est limitée par la taille matérielle du tampon FIFO (SVC_I3C_FIFO_SIZE), et non par la taille de l’emplacement.
slot->data pointe vers le pool IBI, dont la taille est définie à max_payload_len par emplacement via i3c_generic_ibi_alloc_pool(). svc_i3c_master_request_ibi() rejette uniquement une valeur de max_payload_len supérieure à SVC_I3C_FIFO_SIZE ; un pilote peut donc en demander une plus petite. mctp-i3c demande 1. Chaque appel à readsb() copie ensuite les octets RXCOUNT du contrôleur (jusqu’à 31) sans aucune vérification par rapport à la taille de l’emplacement. Un périphérique qui transmet plus d’octets que ce que contient l’emplacement effectue une écriture hors limites dans slot->data, c’est-à-dire une écriture hors des bornes du pool IBI.
Limitez la boucle en utilisant dev->ibi->max_payload_len et ajustez chaque lecture à l’espace restant dans l’emplacement, de la même manière que le fait dw-i3c. Un périphérique peut toujours envoyer plus d’octets que la charge utile demandée. Videz les octets excédentaires du tampon FIFO RX afin qu’ils ne fuient pas vers le transfert suivant.
If you want to get best quality of vulnerability data, you may have to visit VulDB.