Arrêt de débordements de tampon aide à prévenir les accidents et les pirates programme de libérer le code malveillant qui peut compromettre un système informatique. Un débordement de tampon , c'est quand un programme est en train d'écrire des données dans une mémoire tampon , couramment une chaîne ou un tableau , et dépasse la longueur de la mémoire tampon, l'écriture de code dans la mémoire adjacente. La prévention des dépassements de tampon est réalisé en utilisant des bibliothèques de programmation prenant en charge la protection de la mémoire tampon et ayant une protection d' espace exécutable et en choisissant des langages de programmation et ayant des bornes de contrôle . Instructions
1
Choisissez un langage de programmation qui a intégré dans les contrôles pour empêcher l'écriture de données en dehors des limites d'un tampon . Langages tels que C et C + + manque intégré dans le contrôle de la frontière . L' . NET Framework et Java vigueur environnements vérification des limites . Langages interprétés ont une protection contre les dépassements de tampon .
2
Sélectionnez les bibliothèques et les fonctions qui ont la gestion de la mémoire tampon et la vérification des limites . Les fonctions fréquemment utilisées C " strcpy », « scanf » et « obtient » sont particulièrement vulnérables aux débordements de tampon . Des alternatives plus sûres sont les " strncpy " et les fonctions " strncat " , qui jetez données dépassant la longueur spécifiée. Des précautions doivent encore être prises pour spécifier la taille de la mémoire tampon correct. Un exemple d' une alternative plus sûre à la bibliothèque de chaîne C est téléchargeable " La meilleure bibliothèque de String. « Libre
3
installation exécutable protection de l'espace add-ons pour aider à prévenir les débordements de tampon. Code de la tentative d'exécution de la pile ou tas provoquer une exception. Protection de l'espace Executable utilise le "No Execute" ( NX bit ) pour marquer les régions de mémoire non - exécutable. Des exemples de forfaits de protection de l' espace exécutables pour Unix incluent OpenWall , Exec Shield et Pax . Modules pour Windows incluent StackDefender et BufferShield . Depuis Windows XP Service Pack 2 , Windows propose des données Execution Prevention (DEP) , offrant une certaine protection contre les Buffer overflow .