PE Analysis
forensicsDéfinition
Le format PE (Portable Executable) est le format de fichier exécutable standard sous Windows (.exe, .dll, .sys, .ocx). Sa connaissance approfondie est indispensable pour l'analyse forensique de malwares Windows, car la quasi-totalité des malwares Windows sont des fichiers PE ou se chargent sous forme de PE en mémoire. La structure d'un fichier PE comprend plusieurs composants essentiels. L'en-tête DOS (MZ header) commence par les octets 4D 5A ('MZ'), suivi de l'offset vers l'en-tête PE. L'en-tête PE contient : la signature ('PE\0\0'), l'en-tête COFF (machine, nombre de sections, timestamp de compilation), l'en-tête optionnel (ImageBase, AddressOfEntryPoint, taille des entêtes), et les Data Directories pointant vers les tables importantes (IAT, EAT, Resources, TLS callbacks, etc.). Les sections PE sont des segments de données avec des noms conventionnels (.text pour le code, .data pour les données initialisées, .rdata pour les données en lecture seule, .rsrc pour les ressources, .reloc pour les relocations). Des sections avec des noms inhabituels, une entropie élevée (chiffrement/compression), ou des permissions inhabituelles (section de code writable) sont des indicateurs de malware ou de packer. Le timestamp de compilation dans l'en-tête PE est un artefact forensique précieux mais falsifiable. Les malwares sophistiqués falsifient souvent ce timestamp (timestomping PE) pour paraître légitimes. Un timestamp dans le futur ou antérieur à l'existence du système d'exploitation cible est un indicateur évident de falsification. Les timestamps valides peuvent aider à attribuer le malware à des groupes connus dont les patterns de développement sont documentés. L'analyse des Rich headers (présents dans les PE compilés avec des outils Microsoft) révèle des informations sur les bibliothèques et compilateurs utilisés. Les Rich headers ont été corrélés avec des groupes APT spécifiques dans des recherches de threat intelligence, permettant une attribution par signature de développement.
Fonctionnement
Un PE commence par un stub DOS (MZ), suivi d'un en-tête PE optionnel décrivant les sections, les imports/exports, les ressources et les métadonnées. Le loader Windows mappe les sections en mémoire selon leur VirtualAddress et aligne le code à l'ImageBase. Les relocations sont appliquées si l'ImageBase préférée est déjà occupée (ASLR).
Application DFIR
Analyse PE forensique : PEStudio (vue complète), PE-Bear (édition interactive), CFF Explorer (navigation hiérarchique). Points clés : ImportTable (capacités du malware), timestamp compilation (authentique ou falsifié ?), entropie des sections (packed = haute entropie), exports (nom et fonction des DLL malveillantes), overlays (données cachées après la fin du PE).
Outils
PEStudio (analyse complète + VirusTotal), Detect-It-Easy / DIE (identification packer et compilateur), PE-Bear (éditeur PE hexadécimal), CFF Explorer, pestudio, readpe (Linux). Analyse d'entropie : binwalk, peframe. Rich headers : richheader Python tool. Analyse sections : pefile Python library (automatisation).
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