vignette|Le vol 501 d'Ariane 5 en 1996 s'est soldé par sa destruction en raison d'un dépassement d'entier. Un dépassement d'entier (integer overflow) est, en informatique, une condition qui se produit lorsqu'une opération mathématique produit une valeur numérique supérieure à celle représentable dans l'espace de stockage disponible. Par exemple, l'ajout d'une unité au plus grand nombre pouvant être représenté entraîne un dépassement d'entier. Le dépassement d'entier porte le numéro CWE-190 dans la nomenclature Common Weakness Enumeration. Le dépassement d'entier le plus célèbre de ces dernières années est très probablement celui qui causa la destruction de la fusée Ariane 5, lors de son vol inaugural, le . Le nombre de bits d'un espace de stockage détermine la valeur maximale qui peut y être représentée. Les nombres de bits des espaces de stockage les plus courants et les valeurs maximales associées sont : 8 bits : valeur maximum représentable = 28 - 1 = 255 ; 16 bits : valeur maximum représentable = 216 - 1 = ; 32 bits : la plus courante chez les ordinateurs personnels, la valeur maximum représentable = 232 - 1 = ; 64 bits : valeur maximum représentable = 264 - 1 = ; 128 bits : valeur maximum représentable = 2128 - 1 = Puisqu'une opération mathématique peut produire un résultat plus grand que la valeur maximale représentable, une impossibilité d'enregistrer le résultat de l'opération peut survenir. Cette condition d'erreur résulte en un message d'erreur ou en la troncature du résultat qui est alors erroné. Par exemple, le langage C comporte plusieurs types numériques qui permettent de choisir la taille de mémoire à allouer en fonction des plus grands nombres que l'on veut représenter. L'exemple suivant est tiré d'une vulnérabilité réelle touchant OpenSSH (versions 2.9.9 à 3.3) et ayant le numéro d'identifiant CVE suivant : CVE-2002-0639. L'extrait de code source ci-dessous, extrait d'OpenSSH, est en langage C, les commentaires ont été ajoutés par souci de clarté. // extrait un entier d'un paquet reçu par OpenSSH.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.