Connaissances Informatiques >> programmation >> Computer Programming Languages >> Content
  Derniers articles
  • Comment régler les paramètres RVB …
  • Comment faire pour supprimer la rout…
  • Comment apprendre le code flash 
  • iPhone Apps et extensions de fichier…
  • Comment lier des données en mode Gr…
  • Comment utiliser Update Avec Select …
  • Quelle est la coloration syntaxique 
  • Qu'est-ce qu'une chaîne décimale 
  • Comment faire pour installer un paqu…
  • Comment faire pour trouver des entie…
  •   Computer Programming Languages
  • C /C + + Programming

  • Computer Programming Languages

  • Delphi Programming

  • Programmation Java

  • Programmation JavaScript

  • PHP /MySQL Programmation

  • programmation Perl

  • Programmation Python

  • Ruby Programming

  • Visual Basics programmation
  •  
    Computer Programming Languages

    Les effets de tampon débordements et Chaînes de format sur ​​les flux de programme

    Même les aspects les plus modestes d'un programme peuvent présenter des menaces de sécurité . Saisie de l'utilisateur de base peut court-circuiter le code intérieure d'un programme de diverses façons. L'entrée peut utiliser les rouages ​​de fonctions d'impression accéder au flux du programme de contrôle en substituant les limites de la fonction . Or , il peut envahir les frontières de tampon qui lui sont fixés par le programmeur pour modifier les données en dehors de son espace programmeur - désignés. De toute façon, l'entrée de l' utilisateur affecte la façon dont le programme s'exécute , potentiellement vers des fins malveillantes. Chaînes de format

    chaînes de mise en forme en C et C + + font partie d' entrée et fonctions de sortie . La chaîne de format contenant des données à des données de sortie à l'écran . Les chaînes de format ont deux composantes principales. Le premier est la chaîne de base à imprimer, contenant des caractères et des signes de ponctuation. Le deuxième volet comprend un caractère spécial marqué par des signes de pourcentage qui servent d' espaces réservés pour les données variables . Ces symboles existent dans la chaîne, et sont remplacées lors de la sortie des valeurs détenues dans des variables . L'exemple suivant illustre une déclaration printf de base avec une chaîne de format :

    caractères x = "C " ; int y = 10 ;

    printf ( " % c impression de caractères et les décimales % d" ; , x, y);
    Chaîne de Format Attaques

    l'insécurité des chaînes de format réside dans la façon dont les symboles intégrés dans la chaîne de référence à d'autres parties du programme . Par exemple , un attaquant entrer des données dans une variable utilisée dans une chaîne de format peut injecter des symboles qui lui permettent d' accéder à d'autres cadres de l'exécution du programme. Ce faisant, l'attaquant peut modifier les valeurs des variables en dehors de la portée de la fonction d'impression. Par ailleurs , l'attaquant pourrait éventuellement accéder à des valeurs dans la mémoire qui représentent l'emplacement de fonctions. L'attaquant pourrait alors changer cette valeur pour pointer vers une fonction différente , modifiant ainsi le flux d'exécution et le détournement essentiellement le programme.
    Tampons d'entrées

    entrée tampons sont des espaces de stockage des données créées par le programmeur pour contenir des données saisies par l'utilisateur . Le plus souvent, les tampons d'entrée gérer les entrées de l'utilisateur de se connecter à des noms et des mots de passe. Spécifiquement pour le langage de programmation C , qui ne comprend pas la gestion de chaînes d'origine, tampons d'entrée existent sous forme de tableaux de caractères avec une taille définie . Dans ce cas , il appartient au programmeur d'allouer des données pour la saisie de l'utilisateur .
    Buffer Overflow

    Un attaquant pourrait tirer parti des limites de ces tampons par inondant de données. Dans l' exemple le plus simple , un tableau de caractères destiné à tenir un journal dans le nom aurait 20 espace alloué , mais un attaquant donne plus de vingt personnages à traiter. Dans ce cas, les caractères supplémentaires remplacent des emplacements de mémoire immédiatement après le tableau. Ces lieux de mémoire peut-être contiennent des données relatives à l'exécution du programme , comme les variables conditionnelles pour les instructions de contrôle de flux ou des références à des fonctions dans la pile. Comme l'attaque de chaîne de format, ce qui permet essentiellement à l'attaquant de détourner le programme.

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Comment lier à un objet CLR 
  • Les avantages de la programmation déclarative 
  • Comment passer Date de variables dynamiques dans SSIS 
  • Les meilleurs endroits pour mettre NET de journaux d'application 
  • Comment compiler VLC dans Visual Studio SLN 
  • ColdFusion cocher Tutorial 
  • Quel est TK Format 
  • Comment faire pour intégrer Autoplay sur une page Plugins Demande Avec X- shockwave-flash 
  • Comment calculer SHA1 pour une chaîne en C # 
  • Comment faire pour envoyer une pièce jointe avec une ligne de commande 
  • Connaissances Informatiques © http://www.ordinateur.cc