OllyDbg Forensics
forensicsDéfinition
OllyDbg est un débogueur x86 pour Windows, autrefois la référence absolue pour l'analyse dynamique de malwares Windows 32 bits. Développé par Oleh Yuschuk, il reste utilisé dans la communauté forensique et malware analysis pour les binaires 32 bits anciens, bien qu'il ait été largement supplanté par x64dbg pour les analyses modernes (64 bits). OllyDbg offre une interface visuelle claire avec plusieurs panneaux simultanés : le panneau de désassemblage (code assembleur avec annotations), le panneau des registres CPU (valeurs en temps réel pendant l'exécution), la fenêtre de dump mémoire (vision hexadécimale de la mémoire), et la fenêtre des appels API (trace des fonctions Windows appelées). Cette disposition permet une analyse dynamique interactive sans avoir à écrire des commandes. Les fonctionnalités clés d'OllyDbg pour l'analyse de malware incluent : les breakpoints (points d'arrêt sur des adresses ou des appels API spécifiques), le single-stepping (exécution instruction par instruction), les conditional breakpoints (arrêt lorsqu'une condition est vraie, ex: EAX == valeur_cible), les logging breakpoints (enregistrement des paramètres à chaque appel sans s'arrêter), et les plugins spécialisés (OllyDump pour extraire un processus unpacked, StrongOD et ScyllaHide pour contourner les protections anti-debug). L'analyse d'un malware packé avec OllyDbg suit un processus appelé 'manual unpacking'. Le malware est chargé dans OllyDbg, qui détecte le code de décompression (packer stub). En suivant l'exécution jusqu'au point où le code original est décompressé en mémoire (OEP - Original Entry Point), on peut extraire le binaire décompressé avec OllyDump. Cette technique s'applique aux packers courants comme UPX, ASPack, PECompact. Pour les malwares 64 bits modernes, x64dbg est l'alternative recommandée : il supporte les architectures x86 et x64, dispose d'une interface modernisée, d'un système de plugins actif (x64dbgpy pour les scripts Python), et d'une compatibilité améliorée avec les systèmes Windows modernes.
Fonctionnement
OllyDbg s'attache à un processus (CreateProcess ou AttachDebugger) et intercepte l'exécution via les interfaces de débogage Windows (DebugActiveProcess, WaitForDebugEvent, SetThreadContext). Les breakpoints sont implémentés via l'instruction INT 3 (0xCC) inserée dans le code. Les anti-debug checks (IsDebuggerPresent, CheckRemoteDebuggerPresent, timing attacks) doivent être contournés via des plugins.
Application DFIR
OllyDbg est utilisé pour : décompresser manuellement des malwares packés (manual unpacking vers OEP), analyser les routines de déchiffrement C2 (extraire les clés et domaines déchiffrés), comprendre la logique de persistance (quels registres/fichiers créés), et extraire les payloads des droppers. Utiliser ScyllaHide plugin pour contourner les anti-debug avancés.
Outils
OllyDbg 1.10/2.0 (32 bits), x64dbg (32+64 bits, successeur moderne), WinDbg (Microsoft, avancé), Immunity Debugger (Python scripting). Plugins OllyDbg : OllyDump, StrongOD, ScyllaHide, CommandBar. Environnement : FlareVM (Windows forensics VM avec tous ces outils préinstallés). Alternative Linux : GDB avec PEDA/pwndbg.
Articles liés
Expert en cybersécurité offensive et intelligence artificielle. Pentest, audit et développement IA sur-mesure.
Services
- Audit Infrastructure
- Audit Kubernetes
- Audit Microsoft 365
- Audit Sécurité Réseau
- Analyse de Risques
- Audit Active Directory
- Audit Application Web
- Audit Cloud (AWS/Azure/GCP)
- Audit Messagerie
- Audit API (OWASP Top 10)
- Audit DevSecOps & CI/CD
- Audit Code Source (SAST)
- Audit Postes de Travail
- Audit Sauvegarde & Résilience
- Audit OT/SCADA (IEC 62443)
- Développement IA
- Formations
Ressources
Projets & Outils
© 2026 Ayi NEDJIMI Consultants. Tous droits réservés.
Un projet cybersécurité ?
Expert dispo · Réponse 24h