Upload
salah-triki
View
178
Download
2
Embed Size (px)
Citation preview
Securite de bas niveauAppel de fonction et pile : resume
Fonction appelante :
1. Empiler les parametres dans la pile/positionner les parametresdans des registres
2. Empiler l’adresse de l’instruction de retour
3. Faire un saut vers l’adresse de la fonction
Fonction appelee :
4. Empiler l’adresse du pointeur de pile (%ebp)
5. (%ebp) ← (%esp)
6. Empiler les variables locales
Retour a la fonction appelante :
7. Reinitialiser le pointeur de pile et le pointeur de sommet depile
8. Faire un saut vers l’instruction de retour
Securite de bas niveauAppel de fonction et pile : resume (Cont.)
Securite de bas niveauBuffer Overflow
I Buffer : Espace memoire contigu associe a une variable ou aun champ
I Overflow : Ecrire dans le buffer plus de donnees qu’il ne peutsupporter
Securite de bas niveauBuffer Overflow : Exemple 1
Securite de bas niveauBuffer Overflow : Exemple 2
Securite de bas niveauInjection de code
I Il existe deux difficultees pour injecter un codeI Utiliser le programme pour charger un code dans la memoire
I Charger la permiere instruction du code dans le registred’instruction
Securite de bas niveauInjection de code (Cont.)
Caracteristiques de code :
I Ecrit en langage machine
I Ne contient pas des caracteres NULL
I N’utilise pas un chargeur (Loader)
I shellcode : Permet d’avoir un interpreteur de commandes
Securite de bas niveauInjection de code (Cont.)
Exemple de shellcode