CVE-2023-40547 - prévention des erreurs de confiance envers les en-têtes HTTP
shim tente d’allouer un tampon pour stocker les données reçues lors de la récupération de fichiers via HTTP ou un protocole apparenté.
- La taille du tampon est déterminée à partir d’un en-tête HTTP, mais cet en-tête peut être manipulé et indiquer une taille inférieure aux données réelles.
- L’allocation est donc basée sur l’en-tête, tandis que la copie depuis le tampon
rx utilise les métadonnées du protocole, ce qui provoque un dépassement de tampon.
- Ce correctif ajoute une vérification supplémentaire pour s’assurer que le tampon
rx n’est pas plus grand que la taille allouée.
Examen des fichiers modifiés
- Le fichier modifié est
httpboot.c, avec 7 ajouts et 1 suppression.
- Le principal changement consiste à faire en sorte que, dans la fonction
receive_http_response, une erreur soit renvoyée si buf_size est inférieur à rx_message.BodyLength.
L’avis de GN⁺
- Ce correctif résout la vulnérabilité de sécurité CVE-2023-40547 et constitue une mise à jour importante qui renforce la sécurité du bootloader
shim.
- Un dépassement de tampon via des en-têtes HTTP peut entraîner de graves menaces de sécurité, et prévenir ce type de vulnérabilité est un élément essentiel de la sécurité logicielle.
- Cet article fournit aux développeurs logiciels des informations utiles en rappelant l’importance des correctifs de sécurité et la nécessité d’une gestion appropriée des tampons.
Aucun commentaire pour le moment.