Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
shed — Inspecteur du runtime .NET | Kitploit
Outils/GitHubGitHub/enkomio/shed
Analyse Dynamique (Sandboxing)Criminalistique MémoireRétro-ingénierieAnalyse de Malware
GitHubenkomio/shed

shed

Inspecteur du runtime .NET

Voir le dépôt
27537il y a 7 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Shed - Inspecteur de runtime .NET

Release Software License

Shed est une application qui permet d'inspecter le runtime .NET d'un programme afin d'en extraire des informations utiles. Il peut être utilisé pour inspecter des applications malveillantes afin d'avoir un premier aperçu général des informations stockées une fois que le malware est exécuté.

Shed est capable de :

  • Injecter un assembly .NET dans un processus distant (géré et non géré)
  • Extraire tous les objets stockés dans le tas managé
  • Afficher les chaînes de caractères stockées en mémoire
  • Sauvegarder l'instantané du tas au format JSON pour un post-traitement
  • Déverser tous les modules chargés en mémoire

Téléchargement

  • Code source
  • Télécharger le binaire

Utiliser Shed

Shed est un outil en ligne de commande. Pour afficher toutes les options disponibles, exécutez :

shed.exe --help

Inspecter une application déjà en cours d'exécution

Pour inspecter un processus déjà en cours d'exécution, vous devez passer le pid à Shed. Exemple :

Shed.exe --pid 2356

Inspecter un binaire

Pour inspecter un binaire, Shed doit l'exécuter et s'y attacher pour inspecter le runtime. Exemple :

Shed.exe --exe malware.exe

Vous pouvez également spécifier le temps d'attente (en millisecondes) avant de suspendre le processus. Cela permettra au programme d'avoir le temps d'initialiser ses propriétés. Exemple :

Shed.exe --timeout 2000 --exe malware.exe

Injecter un assembly dans un processus distant

Avec Shed, il est possible d'injecter un assembly .NET dans un processus distant grâce à la bibliothèque ManagedInjector. Pour ce faire, il est nécessaire de spécifier le pid du processus et l'exe à injecter. Une fois que l'assembly est injecté, il est possible de l'activer en invoquant une méthode spécifique. Les règles d'identification de la méthode sont héritées du projet ManagedInjector et sont les suivantes :

  • Vous devez spécifier le nom complet de la méthode à invoquer (par ex. this.is.my.namespace.class.method)
  • Vous pouvez injecter un exécutable qui définit une méthode EntryPoint à exécuter (comme un projet Console)
  • Vous pouvez définir une méthode avec la signature suivante : <public|private> static void Inject()

Par exemple, pour injecter l'assembly InjectedAssembly dans le processus avec le pid 1234, vous devez exécuter Shed avec la commande suivante :

shed.exe --pid 1234 --exe InjectedAssembly.dll --inject

Avec l'option --method, vous pouvez spécifier une méthode à invoquer depuis InjectedAssembly.exe.

Vous trouverez ci-dessous un exemple d'exécution :

Options de vidage

Par défaut, Shed vide à la fois le tas et les modules. Si vous ne souhaitez que l'un des deux, spécifiez l'option --dump-heap pour vider uniquement les objets du tas ou --dump-modules pour vider uniquement les modules.

Le vidage du tas peut produire beaucoup d'informations qui ne sont pas strictement utiles pour l'analyse. Vous pouvez le filtrer en utilisant deux fichiers :

blacklist.txt ce fichier contient les préfixes des noms de types qui ne doivent pas être enregistrés

whitelist.txt ce fichier contient les préfixes des noms de types qui doivent être enregistrés même s'ils sont sur la liste noire

Par exemple, si vous souhaitez filtrer tout l'espace de noms System.IO mais que vous êtes intéressé par l'enregistrement de System.IO.MemoryStream, vous pouvez ajouter la première valeur dans blacklist.txt et la seconde dans whitelist.txt.

Exemples

Dans le dossier Examples, vous trouverez trois projets différents que vous pouvez utiliser pour tester Shed. Exemple :

Shed.exe --exe ..\Examples\ConfigurationSample\ConfigurationSample.exe

Lorsque l'analyse est terminée, Shed affichera où vous pouvez trouver le résultat, comme illustré ci-dessous :

[+] Résultat sauvegardé dans C:\Shed\Result\7800

Compiler Shed

Si vous avez installé Visual Studio, exécutez simplement le fichier batch build.bat, il créera un fichier zip dans le dossier build.

Informations sur la licence

Copyright (C) 2017 Antonio Parata - @s4tan

Licence : GNU General Public License, version 2 ou ultérieure ; voir LICENSE inclus dans cette archive pour plus de détails.

Télécharger l’outil