« Attaque par Buffer Overflow » : différence entre les versions
Ligne 6 : | Ligne 6 : | ||
L'attaque par Buffer Overflow (dépassement de tampon mémoire) est l'exploitation d'une faille de mémoire, durant laquelle l'écriture en mémoire du buffer dépasse son espace mémoire alloué. Le procesus subit alors une modification des informations nécessaires au fonctionnement du programme. |
L'attaque par Buffer Overflow (dépassement de tampon mémoire) est l'exploitation d'une faille de mémoire, durant laquelle l'écriture en mémoire du buffer dépasse son espace mémoire alloué. Le procesus subit alors une modification des informations nécessaires au fonctionnement du programme. |
||
L'attaque a pour objectif de faire crasher le programme ou l'application et d'exploiter une faille, en remplaçant, par exemple, le code source du programme. |
L'attaque a pour objectif de faire crasher le programme ou l'application et d'exploiter une faille, en remplaçant, par exemple, le code source du programme. Un de ses avantages est qu'il n'y a pas besoin d'avoir accès à la machine victime. |
||
Ce type d'attaque nécessite des compétences pointilleuses en informatique et particulièrement en sécurité informatique. |
Ce type d'attaque nécessite des compétences pointilleuses en informatique et particulièrement en sécurité informatique. |
Version du 12 novembre 2018 à 20:56
Auteurs : Olivier STHIOUL et Ludovic MILLON
Introduction
L'attaque par Buffer Overflow (dépassement de tampon mémoire) est l'exploitation d'une faille de mémoire, durant laquelle l'écriture en mémoire du buffer dépasse son espace mémoire alloué. Le procesus subit alors une modification des informations nécessaires au fonctionnement du programme.
L'attaque a pour objectif de faire crasher le programme ou l'application et d'exploiter une faille, en remplaçant, par exemple, le code source du programme. Un de ses avantages est qu'il n'y a pas besoin d'avoir accès à la machine victime.
Ce type d'attaque nécessite des compétences pointilleuses en informatique et particulièrement en sécurité informatique.
Principe de l'attaque
Rappels sur la pile d'exécution
Exemple d'attaque
Solutions pour éviter l'attaque
plusieurs solutions s'offrent au développeurs:
- utiliser des langages haut-niveau qui intègre une gestion complète de la mémoire. Ex: Java, Cyclone...
- utiliser des librairies et des fonctions sécurisés (fonction strncpy()..., librairie Libsafe)
- tester son code avec des logiciels spécialisé comme Qaudit ou Flawfinder
- Appliquer rapidement les correctifs
Sources
https://fr.wikipedia.org/wiki/D%C3%A9passement_de_tampon
https://www.securiteinfo.com/attaques/hacking/buff.shtml
http://www.student.montefiore.ulg.ac.be/~blaugraud/node2.html
https://www.nbs-system.com/blog/cerberhost-les-attaques-de-type-buffer-overflow/
https://zestedesavoir.com/articles/143/exploitez-votre-premier-stack-based-overflow/
https://web.maths.unsw.edu.au/~lafaye/CCM/attaques/buffer-overflow.htm