Au sujet Des Débordements D'Amortisseur


  Share  
|

Les débordements d'amortisseur sont peut-être les attaques les plus notoires et largement les plus annoncées. Ce sont des attaques complexes qui exploitent les possibilités fondamentales de matériel et de logiciel d'un système.

Pour tels qui ne sont pas des réalisateurs de logiciel, quelques concepts ont besoin d'explication. D'abord, il est utile de comprendre ce qu'est un amortisseur. Le système informatique a une piscine de la mémoire à accès sélective (RAM) organisée en petits gros morceaux par le logiciel d'exploitation qui court des applications. Afin de mettre en commun cette mémoire entre les beaucoup de processus et applications du logiciel d'exploitation, coordonnées spéciales d'un directeur de mémoire qui les gros morceaux de la piscine de RAM sont en service et qui sont disponibles pour courir une application. Quand une application est la première course, de la mémoire est assignée pour l'application et toutes ses fonctions et variables.

Pendant que l'application fonctionne, plus de mémoire peut être assignée pour de nouvelles variables et être désaffectée quand plus en service. Un amortisseur est un gros morceau (ou plusieurs gros morceaux) de mémoire employés pour stocker une variable. Les différents amortisseurs peuvent et souvent existent côte à côte dans la mémoire. Un amortisseur qui tient une variable peut exister à côté d'un morceau de mémoire qui tient une fonction ou une application différente. Par exemple, quand vous écrivez votre username à un message de sollicitation ou à une fenêtre, le programme a déclaré un amortisseur, dans lequel les caractères du nom sont stockés.

Un débordement d'amortisseur se produit quand un amortisseur est trop petit pour adapter à la quantité de données fournies. Les données qui ne s'adaptent pas dans l'amortisseur recouvriront les prochains gros morceaux de la mémoire. Se trouve ci-dessus le danger des débordements d'amortisseur. La mémoire qui est recouverte avec les données supplémentaires peut être une autre variable dans l'application courante, une variable pour une autre application, ou la pile de l'application. La pile contient l'information spécifique à l'application, telle que les endroits physiques des fonctions et des variables de l'application.

Ceci change le chemin que l'application suivrait normalement, la faisant employer de mauvaises données, accident, ou exécute la nouvelle fonctionnalité. L'exécution de la nouvelle fonctionnalité est habituellement le but d'un débordement exploit.whether d'amortisseur pour permettre d'accéder au système ou pour modifier ses arrangements.

Quand son propriétaire accède à la mémoire recouverte après, les nouvelles données pourraient être inadmissibles, et l'application peut se briser ou fonctionner incorrectement. Des débordements d'amortisseur sont exploités en ouvrant les données de débordement dans quelque chose de utile que la machine peut comprendre. Ceci a pu signifier exécuter un autre programme, causer le mal au système ou voler l'information.

Pour démontrer mieux ce concept, considérez la machine postale qui balaye des lettres pour leur ville de destination. Supposez que l'enveloppe A est destinée à New York, NY, et l'enveloppe B est destinée à Boston, mA. Le code postal de l'enveloppe B a l'encre humide spéciale que "déborde," recouvrir le code postal de New York sur l'enveloppe A avec cela de Boston quand les enveloppes sont automatiquement empilées au service postal. La machine postale balaye l'enveloppe A et indique le code postal recouvert. La lettre est alors conduite à Boston.

Les débordements d'amortisseur sont souvent plus malveillants que de seuls accidents, ainsi laissez-nous supposent qu'une somme valable d'argent comptant est destinée à une boîte postale à New York. Le voleur, ou l'attaquant, connaît l'endroit exact de la lettre et crée une enveloppe avec l'encre liquide qui recouvre le code postal sur l'enveloppe avec le code postal pour Boston quand ils sont empilés. L'attaquant loue la boîte postale de Boston avec le même nombre que la destination originale à New York et procède voler l'argent.

Une machine postale est seulement capable d'identifier les codes postaux, aucune matière d'où ils viennent. Un ordinateur est capable d'exécuter les instructions, aucune matière d'où elles viennent. Par conséquent, une attaque de débordement d'amortisseur qui recouvre les instructions originales d'une application avec de nouvelles instructions peut faire exécuter l'ordinateur n'importe quoi des souhaits d'un attaquant.

c'est un article supplémentaire par Tamas Querolin


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions