Lors de l'analyse des logiciels malveillants ou des logiciels tiers, il est difficile d'identifier les bibliothèques liées statiquement et de comprendre ce que fait une fonction de la bibliothèque.
idenLib.exe est un outil pour générer des signatures de bibliothèque à partir de fichiers .lib / .obj / .exe .
idenLib.dp32 / idenLib.dp64 est un plugin x32dbg / x64dbg pour identifier les fonctions de bibliothèque.
idenLib.py est un plugin IDA Pro pour identifier les fonctions de bibliothèque.
.lib / .obj ) pour obtenir une liste d'adresses de fonction et de noms de fonction.
Comprime la signature avec ZSTD
Enregistre la signature sous le répertoire SymEx , si le nom de fichier d'entrée est zlib.lib , la sortie sera zlib.lib.sig ou zlib.lib.sig64 , si zlib.lib.sig(64) existe déjà sous le répertoire SymEx à partir d'une exécution précédente ou à partir de la version précédente de la bibliothèque, la prochaine exécution va appuyer différentes signatures. Si vous exécutez plusieurs fois idenLib.exe avec une version différente du fichier .lib , le fichier .sig / sig64 inclura toutes les signatures de fonction uniques.
À l'intérieur d'une signature (il est comprimé): 
idenLib.exe /path/to/file ou idenLib.exe /path/to/directorymain : idenLib.exe /path/to/pe -getmain 
x32dbg / x64dbg , utilisation du plugin IDA Pro :SymEx sous x32dbg / x64dbg / IDA Pro de répertoire x32dbg / x64dbg :

IDA Pro :

main : Si vous souhaitez générer une signature pour la fonction main compilée à l'aide de MSVC 14 vous devez créer une application hello world avec le compilateur correspondant et utiliser l'application comme entrée pour idenLib

Les fichiers de signature de la fonction main sont les EntryPointSignatures.sig EntryPointSignatures.sig64


mainidenLib utilise les DIA APIs pour parcourir les informations de débogage stockées dans un fichier PDB. Pour exécuter idenLib avec le paramètre -getmain , vous devrez vous assurer que le MSDIA140.DLL (trouvé dans Microsoft Visual Studio2017CommunityDIA SDKbin ) est enregistré en tant que composant COM, en invoquant RegSVR32.exe sur la DLL. Il existe deux façons d'appliquer des signatures, une correspondance exacte et l'utilisation Jaccard index

C Run-Time Libraries (CRT) Zydis (licence MIT)
Zstandard (licence BSD)
Icône par freepik