Skip to main content

Qu'est-ce qu'un débordement de tampon de pile?

Un débordement de tampon de pile est ce qui se passe lorsqu'un programme fait une entrée dans une mémoire d'ordinateurs plus longue que l'espace alloué.Dans certaines circonstances, cela peut corrompre d'autres données en mémoire, causant des problèmes dans l'exécution de l'ordinateur.Dans d'autres cas, un débordement de tampon de pile peut être exploité par une application malveillante pour prendre le contrôle d'autres parties de l'ordinateur.

Le nom d'un débordement de tampon de pile dérive d'abord de la pile, qui est effectivement une liste active dans laquelle les données sont organisées: Le terme vient de l'analogie de l'empilement des objets physiques.Une version de cela, la pile d'appels , est la liste qu'un programme informatique utilise pour garder une trace des différentes parties du programme, les sous-programmes, qui fonctionnent à un moment particulier.est la nécessité d'organiser la façon dont la mémoire est allouée, y compris les piles d'appels.Cela se fait efficacement en attribuant des tampons, un espace dans la mémoire conçu pour être suffisamment grand pour faire face à l'espace maximal requis par un tampon particulier.Dans la plupart des cas, une partie de l'espace ne sera pas utilisée, elle agit donc comme un tampon entre les données de différentes applications, laissant la place pour faire face si l'on a soudainement besoin d'espace supplémentaire.Une façon de le visualiser serait de penser à une bibliothèque qui a alloué une certaine quantité d'espace à chaque domaine, en s'assurant de laisser une place supplémentaire pour faire face si, par exemple, tous les livres sur un seul sujet étaient dans la bibliothèque de laEn même temps, plutôt que l'un d'eux en étant vérifié.

Un débordement de tampon de pile se produit lorsqu'un programme écrit des données d'appel à la pile d'appels dans le tampon d'une manière qui dépasse l'espace alloué.Cela peut se produire par erreur, généralement via un bug dans un programme.Par exemple, si une application est conçue pour permettre à l'utilisateur de saisir un numéro de téléphone, mais n'a aucune limite au nombre de caractères qui peuvent être entrés, un pirate peut être en mesure d'utiliser le champ illimité pour provoquer intentionnellement un débordement de tampon de pile.Selon le fonctionnement du système d'exploitation, cela pourrait permettre au pirate d'accéder indirectement une autre application ou le système d'exploitation lui-même.

Il existe plusieurs approches pour atténuer les effets d'un débordement de tampon de pile.L'un est connu sous le nom de randomisation de mise en page d'espace d'adressage.Cela organise les domaines les plus importants de données sur l'ordinateur de manière aléatoire.L'idée est que même si un pirate provoque ou exploite un débordement de tampon de pile, il ne pourra pas exploiter la violation de manière fiable.