Note CC

carnet de recherche-action, ateliers et notes libres

Outils pour utilisateurs

Outils du site


norae:si:dev_note-form_5

Gnu Debugger et Peda pour débuter le débuggage en C

Gdb et UI en python

  1. Installer gdb + peda pour une aide « grahique » dans votre terminal https://mamot.fr/@XavCC/102989902429089282
  2. Ajout de Voltron à GDB https://github.com/snare/voltron
après installation de voltron avec pip3, dans .gdbinit
source ~/peda/peda.py
source /usr/local/lib/python3.6/dist-packages/voltron/entry.py
set disassembly-flavor intel
set pagination off
unset env LINES
unset env COLUMNS 

gdb fournit quelques commandes supplémentaires pour contrôler ce qui se passe lorsque la commande break ne peut pas résoudre la spécification de l'adresse du point d'arrêt à une adresse :

  • set breakpoint pending auto : C'est le comportement par défaut. Lorsque gdb ne peut pas trouver l'emplacement du point d'arrêt, il vous demande si un point d'arrêt en attente doit être créé.
  • set breakpoint pending on : Ceci indique qu'un emplacement de point d'arrêt non reconnu devrait automatiquement entraîner la création d'un point d'arrêt en attente.
  • set breakpoint pending off Ceci indique que les points d'arrêt en attente ne doivent pas être créés. Toute position de point d'arrêt non reconnue entraîne une erreur.

Ce réglage s'effectue dans .gdbinit

Quelques bases de debuggers et exercices en C

  1. les principaux debuggers, courte fiche en fr, GNU/Linux et un exercice en fin de fiche https://gist.github.com/GreenCandlePrinter/efb650c69de706b367ba
  2. 38 diapos d'un cours des Mines avec aussi initiation au C https://www-apr.lip6.fr/~mine/enseignement/prog2006/cours5.pdf

Débogguer et exploiter

  1. PDF, notions de base pour comprende des techniques exploit en C introexploit-120613131925-phpapp02_1_.pdf
  2. Exemple de programme à deboguer avec un fichier d'entrée (INRIA) https://www.rocq.inria.fr/secret/Anne.Cant
Vous pourriez laisser un commentaire si vous étiez connecté.
norae/si/dev_note-form_5.txt · Dernière modification: 2020/01/02 12:43 par xavcc