Analyse Forensique d'Exécutables - Analyseur Gratuit PE/ELF/Mach-O en Ligne
Analyse Forensique d'Exécutables
Chargez un binaire Windows PE (.exe/.dll), Linux ELF ou macOS Mach-O pour inspecter ses en-têtes, sections, imports et exports, ressources incrustées et couverture de signature de code - sans rien téléverser.
Déposez un binaire PE, ELF ou Mach-O ici
.exe .dll .sys .so .o .dylib ou tout binaire ELF/Mach-O - ou cliquez pour parcourir votre appareil
Choisir un fichierVue d'ensemble
Ce qu'est ce binaire, sa plateforme et son architecture cibles, et ce qui ressort de la façon dont il a été compilé.
En-têtes
Les en-têtes de fichier, optionnels/de programme et de commandes de chargement qui décrivent comment le chargeur doit mapper et exécuter ce binaire, ainsi que des marqueurs de provenance tels que l'en-tête Rich de PE, la chaîne de commentaire du compilateur et la détection .NET/CLI, et les deux empreintes de pivot, l'empreinte des importations (imphash) et l'empreinte de l'en-tête Rich, calculées exactement comme pefile et VirusTotal les calculent.
Sections
Chaque section ou segment, ses permissions et son entropie en octets - une section à la fois inscriptible et exécutable, ou à l'entropie anormalement élevée, mérite un examen plus approfondi. Sous le tableau, l'overlay : les données situées au-delà de ce que décrivent les en-têtes, avec leur taille, leur entropie, la présence éventuelle du certificat de signature de code et des boutons pour les enregistrer ou les ouvrir dans l'analyse forensique binaire.
Imports
Chaque bibliothèque et symbole externe que ce binaire déclare nécessiter au chargement - DLL et fonctions pour PE, objets partagés requis et symboles dynamiques pour ELF, dylibs chargées pour Mach-O. Pour PE, chaque DLL se déplie sur ses fonctions importées, et celles qui figurent dans la liste des API suspectes (injection de processus, enregistrement de frappe, anti-débogage, accès aux identifiants, etc.) sont signalées et résumées par catégorie.
Exports
Symboles que ce binaire met à disposition de tout ce qui le charge - noms, ordinaux et redirecteurs qui renvoient entièrement vers un autre module.
Ressources
Informations de version PE et manifeste incrusté, décodés à partir de l'arborescence du répertoire de ressources - y compris si le nom de fichier d'origine enregistré correspond au nom réel.
Signature de Code
Si le binaire porte une signature incrustée, et qui elle désigne comme signataire - présence et couverture uniquement. Cet outil ne valide jamais une chaîne de certificats ni ne confirme qu'une signature se vérifie réellement.
Chaînes
Texte lisible ASCII et UTF-16 extrait de n'importe où dans le fichier, utile pour repérer des chemins de fichiers, des URL et des fragments de ligne de commande qu'une vue limitée aux en-têtes manquerait.
--
Comprendre l'Analyse Forensique d'Exécutables
Trois Formats, Une Seule Idée
Windows PE, Linux ELF et macOS Mach-O résolvent tous le même problème - décrire le code, les données et les dépendances d'un programme pour qu'un chargeur de système d'exploitation puisse le mapper en mémoire et l'exécuter - avec des dispositions d'en-tête différentes. PE fait précéder son en-tête réel d'un stub DOS pour la rétrocompatibilité, ELF utilise un en-tête compact de taille fixe nommant chaque section, et Mach-O organise tout comme un flux de commandes de chargement typées. Lire les en-têtes directement, plutôt que de se fier à l'extension du fichier, est la première étape de toute analyse sérieuse, exactement comme pour tout autre format de fichier.
Pourquoi l'Entropie par Section Compte Ici Aussi
Une section de code normale affiche une entropie faible à modérée - les instructions et les tables de chaînes sont structurées, pas aléatoires. Une section dont l'entropie avoisine 8 bits par octet sur toute sa longueur est généralement compressée ou chiffrée, ce qui est exactement ce que fait un packer pour dissimuler le code réel d'un binaire à l'analyse statique jusqu'à ce qu'il se décompresse lui-même en mémoire à l'exécution. Comparer l'entropie section par section, plutôt que sur le fichier entier, est ce qui rend ce signal utile ici.
Ce Qu'une Signature de Code Prouve Réellement
Une signature de code Authenticode, ELF ou Mach-O relie un binaire à celui qui l'a signé et permet de détecter après coup une modification du fichier - mais une signature prouve seulement que le fichier correspond à ce qui a été signé, pas que le signataire est digne de confiance ni que la chaîne de certificats est actuellement valide. Cet outil indique si une signature est présente et qui elle désigne, jamais si elle se vérifie - une vérification réelle nécessite de parcourir une chaîne de certificats active par rapport à un magasin de confiance, ce qui se produit en dehors du bac à sable du navigateur dans lequel cet outil s'exécute.
Pourquoi l'Horodatage de Compilation Mérite d'Être Lu
L'en-tête d'un fichier PE enregistre le moment exact où l'éditeur de liens l'a produit, et bien que cette valeur puisse être falsifiée ou remise à zéro par une compilation délibérément évasive, la plupart des binaires ordinaires la conservent sans modification. Un horodatage très éloigné dans le futur, situé à l'epoch Unix, ou nettement incohérent avec les autres métadonnées d'un fichier est un signal modeste mais authentique que quelque chose dans le processus de compilation n'était pas ce qu'il paraît être.
Imphash et empreinte de l'en-tête Rich
Deux échantillons recompilés à partir des mêmes sources partagent rarement un SHA-256, mais partagent généralement une empreinte des importations (le MD5 de chaque bibliothèque et fonction importée, dans l'ordre de la table) et une empreinte de l'en-tête Rich, le MD5 du bloc non documenté où l'éditeur de liens de Microsoft consigne chaque version de compilateur et d'outil ayant produit le fichier. Aucune ne prouve que deux fichiers sont identiques ; toutes deux servent à retrouver le reste d'une famille dans VirusTotal, MalwareBazaar ou YARA. Cet outil les calcule comme pefile, y compris ses tables de noms par ordinal pour Winsock et OLE Automation, afin que les valeurs puissent être recherchées telles quelles.
Qu'est-ce qu'un overlay
Les en-têtes d'un exécutable indiquent exactement combien d'octets le chargeur projette en mémoire ; tout ce qui suit est un overlay que le système d'exploitation ne charge jamais. Les installateurs et les archives auto-extractibles y rangent leur charge, un fichier signé y conserve son certificat Authenticode et les droppers y cachent une seconde étape. Ajouter des données après une signature valide est un abus connu, car certains vérificateurs les ignorent. La taille et l'entropie de l'overlay indiquent de quel type de données il s'agit ; l'enregistrer, ou l'ouvrir dans l'analyse forensique binaire, montre ce qu'il contient réellement.