
pefile est un module Python pour lire et travailler avec les fichiers PE (Portable Executable)
pefile est un module Python multiplateforme pour analyser et travailler avec les fichiers Portable Executable (PE). La plupart des informations contenues dans les en-têtes des fichiers PE sont accessibles, ainsi que les détails et les données de toutes les sections.
Les structures définies dans les fichiers d'en-tête Windows seront accessibles en tant qu'attributs de l'instance PE. La dénomination des champs/attributs suivra autant que possible la convention de dénomination utilisée dans ces en-têtes. Seuls les raccourcis ajoutés par commodité s'écarteront de cette convention.
pefile nécessite une compréhension de base de la disposition d'un fichier PE — avec lui, il est possible d'explorer pratiquement toutes les fonctionnalités du format de fichier PE.
Pour installer pefile via pip :
pip3 install pefile
Voici quelques-unes des tâches que pefile rend possibles :
Veuillez consulter les Exemples d'utilisation pour des extraits de code qui montrent comment utiliser pefile.
Voici quelques exemples de ce à quoi ressemble un vidage produit avec pefile pour différents types de fichiers :
Pour travailler avec des binaires authentifiés, y compris les signatures Authenticode, veuillez consulter le projet verify-sigs.
pefile s'exécute dans plusieurs pipelines analysant des centaines de milliers de nouveaux fichiers PE chaque jour, et bien qu'il ne soit pas parfait, il est devenu assez robuste au fil du temps. Cela dit, de petits problèmes sont parfois découverts. Si vous tombez sur un PE qui ne semble pas être traité correctement, veuillez le signaler ! Cela contribuera à rendre pefile un peu plus puissant.
pefile est autonome. Le module n'a pas de dépendances ; il est indépendant de l'endianness ; et il fonctionne sur Windows, macOS et Linux.
PDFs d'affiches représentant le format de fichier PE :
Les liens suivants fournissent des informations détaillées sur le format PE et ses structures.