Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi MS-Office SQL & SGBD Oracle  4D  Business Intelligence
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil F.A.Q Sécurité Livres Sécurité Cours Sécurité

Dépassement de capacité de la pile :


Etude des exploitations avancées de stack overflow, écriture de shellcodes polymorphiques et alphanumériques


Date de publication : 22/04/2007

Par Gross David

Cet article permet de sensibiliser les programmeurs à la sécurité de leur application, et de démontrer que les protections existantes pouvant être mises en place sur le système afin d'empêcher un dépassement de capacité d'être exploité peuvent être bypassées. Parmis ces protections sont traitées la randomisation de l'adresse de base de la pile sous GNU/Linux sur les noyaux 2.6.x ainsi que la mise en place du NIDS (Network Intrusion Detection System) Snort afin de détecter l'injection d'un shellcode.


Sommaire
Téléchargement


Sommaire

    Chapitre 1 : Introduction
    Chapitre 2 : Rappels des concepts de base
  • Organisation de la mémoire sous GNU/Linux
  • Le langage assembleur
  • Utilisation de logiciels de débogage
    Chapitre 3 : Exploitation basique de stack overflow
  • Présentation d'un cas de stack overflow
  • Prise de contrôle du flux d'exécution
  • Programmation de shellcode basique et exploitation
  • Exemples de shellcode
    Chapitre 4 : Techniques avancées de programmation de shellcode
  • Shellcode polymorphique
  • Shellcode alphanumérique
    • Instructions disponibles
    • L'algorithme d'encodage
    • Substitutions d'instructions
    • Structure globale du shellcode
    • Mise en application
    • Exploitation
  • Camouflage de NOPs
    Chapitre 5 : Technique avancée d'exploitation de stack overflow
  • ret into linux-gate.so.1
    • 5.1.1 Présentation de la méthode
    • 5.1.2 Exploitation
    • 5.1.3 Protection possible
  • ret into .text
  • Exploitation en local
    Chapitre 6 : Conclusion
    Chapitre 7 : Remerciements
    Chapitre 8 : Références
    Annexes

Téléchargement

Le cours au format pdf (92 pages, 1008 Ko)
en cas de problème : lien mirroir


Responsable bénévole de la rubrique Sécurité : Jean-Philippe Dubé - Contacter par EMail :
Vos questions techniques : forum d'entraide Sécurité - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.