OllyDBG
Débogueur au niveau assembleur x86 32 bits pour binaires Windows, longtemps une référence pour l'analyse manuelle de malware et le développement d'exploits. 32-bit x86 assembler-level debugger for Windows binaries, long a staple for manual malware analysis and exploit development.
↗ http://www.ollydbg.deOverview
OllyDBG is a user-mode Windows debugger that operates at the assembly level, combining a disassembler, register/stack/memory views, and dynamic analysis features (breakpoints, tracing, patching) in a single GUI. It remains popular for reverse engineering legacy 32-bit Windows malware and manually crafting exploits where step-by-step control over execution is needed, despite being largely superseded by x64dbg for modern work.
Common Usage
GUI-driven — typical workflow via menus and hotkeys:
File → Open Load a target EXE/DLL for debugging
File → Attach Attach to an already-running process
F2 Toggle breakpoint at cursor
F7 Step into
F8 Step over
F9 Run / continue
Ctrl+F9 Execute till return
Alt+M Memory map view
Alt+B Breakpoints window
Alt+C CPU window (disassembly/registers/stack)
Ctrl+G Go to address/expression
Common Workflows
1. Load the binary: File → Open → target.exe
2. Find the entry point: View → Executable modules → double-click module
3. Set a breakpoint on an API: Right-click disassembly → Search for →
All intermodular calls → filter e.g. VirtualAlloc
4. Trace execution: F7/F8 to step, watch registers/stack update live
5. Patch in memory: Right-click instruction → Assemble, or
Binary → Edit on the hex pane
6. Dump patched process: Use an OllyDump plugin to rebuild a PE from memory
Tips
- OllyDBG 1.x only supports 32-bit binaries — for x64 targets use x64dbg instead.
- Plugins (OllyDump, Hide Debugger, Command Line) extend it significantly and are commonly needed against packed/protected malware.
- Anti-debug checks (
IsDebuggerPresent, timing checks) are common in malware — pair with a plugin like ScyllaHide to defeat them.
Help / Man page
OllyDbg is a GUI application; there is no traditional CLI --help.
Command-line invocation:
ollydbg.exe [target.exe] [arguments]
ollydbg.exe -p <PID> attach to running process
Key hotkeys:
F2 Toggle breakpoint
F3 Open new executable
F4 Run to cursor
F7 Step into
F8 Step over
F9 Run
Ctrl+F2 Restart
Ctrl+F9 Execute till return
Alt+B Breakpoints window
Alt+M Memory map
Alt+C CPU window
Alt+E Executable modules
Ctrl+G Go to address
Vue d’ensemble
OllyDBG est un débogueur Windows en mode utilisateur qui opère au niveau assembleur, combinant un désassembleur, des vues registres/pile/mémoire, et des fonctionnalités d’analyse dynamique (points d’arrêt, traçage, patch) dans une seule interface graphique. Il reste populaire pour le reverse engineering de malware Windows 32 bits legacy et la création manuelle d’exploits nécessitant un contrôle pas à pas de l’exécution, bien qu’il soit largement supplanté par x64dbg pour le travail moderne.
Utilisation courante
Piloté par l’interface graphique : flux de travail typique via menus et raccourcis clavier :
File → Open Charger un EXE/DLL cible pour le débogage
File → Attach S'attacher à un processus déjà en cours d'exécution
F2 Basculer un point d'arrêt au curseur
F7 Step into (entrer dans l'appel)
F8 Step over (passer par-dessus l'appel)
F9 Exécuter / continuer
Ctrl+F9 Exécuter jusqu'au retour
Alt+M Vue de la carte mémoire
Alt+B Fenêtre des points d'arrêt
Alt+C Fenêtre CPU (désassemblage/registres/pile)
Ctrl+G Aller à une adresse/expression
Flux de travail courants
1. Charger le binaire : File → Open → target.exe
2. Trouver le point d'entrée : View → Executable modules → double-clic sur le module
3. Poser un point d'arrêt sur une API : clic droit sur le désassemblage → Search for →
All intermodular calls → filtrer par ex. VirtualAlloc
4. Tracer l'exécution : F7/F8 pour avancer pas à pas, observer registres/pile en direct
5. Patcher en mémoire : clic droit sur l'instruction → Assemble, ou
Binary → Edit sur le panneau hexadécimal
6. Dumper le processus patché : utiliser un plugin OllyDump pour reconstruire un PE depuis la mémoire
Conseils
- OllyDBG 1.x ne supporte que les binaires 32 bits : pour les cibles x64 utiliser x64dbg à la place.
- Les plugins (OllyDump, Hide Debugger, Command Line) l’étendent considérablement et sont souvent nécessaires face à des malwares packés/protégés.
- Les vérifications anti-debug (
IsDebuggerPresent, contrôles de timing) sont courantes dans les malwares : associer avec un plugin comme ScyllaHide pour les contourner.
Aide / Page de manuel
OllyDbg is a GUI application; there is no traditional CLI --help.
Command-line invocation:
ollydbg.exe [target.exe] [arguments]
ollydbg.exe -p <PID> attach to running process
Key hotkeys:
F2 Toggle breakpoint
F3 Open new executable
F4 Run to cursor
F7 Step into
F8 Step over
F9 Run
Ctrl+F2 Restart
Ctrl+F9 Execute till return
Alt+B Breakpoints window
Alt+M Memory map
Alt+C CPU window
Alt+E Executable modules
Ctrl+G Go to address