Débordement d'entier
Qu'est-ce que Débordement d'entier ?
Débordement d'entierBug où une opération arithmétique produit une valeur hors de la plage représentable du type entier, avec un wraparound ou une troncature aux conséquences critiques.
Les débordements d'entier surviennent lorsqu'un calcul dépasse la valeur maximale (ou minimale) que le type peut contenir, provoquant un wraparound, un changement de signe ou une troncature. Cela devient un problème de sécurité quand la valeur erronée est ensuite utilisée comme taille de tampon, compteur de boucle, index de tableau ou contrôle d'autorisation, produisant souvent débordements de tampon, boucles infinies ou contournements de limites. Les défenses incluent l'arithmétique vérifiée (checked_add Rust, ckd_* C23, -ftrapv côté compilateur), des motifs élargir-puis-réduire avec vérifications explicites, le choix de types adaptés et le fuzzing intensif. De nombreuses CVE majeures dans les codecs image, parseurs de polices et noyaux découlent de chaînes de débordement d'entier.
● Exemples
- 01
CVE-2002-0639 (OpenSSH challenge-response) : débordement d'entier conduisant à une corruption de tas.
- 02
CVE-2018-9568 (Android Wi-Fi) : débordement d'entier dans le traitement des trames 802.11.
● Questions fréquentes
Qu'est-ce que Débordement d'entier ?
Bug où une opération arithmétique produit une valeur hors de la plage représentable du type entier, avec un wraparound ou une troncature aux conséquences critiques. Cette notion relève de la catégorie Vulnérabilités en cybersécurité.
Que signifie Débordement d'entier ?
Bug où une opération arithmétique produit une valeur hors de la plage représentable du type entier, avec un wraparound ou une troncature aux conséquences critiques.
Comment se défendre contre Débordement d'entier ?
Les défenses contre Débordement d'entier combinent habituellement des contrôles techniques et des pratiques opérationnelles, comme détaillé dans la définition ci-dessus.
Quels sont les autres noms de Débordement d'entier ?
Noms alternatifs courants : Wraparound d'entier.