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
clrinject — Injecte l'Assembly C# EXE ou DLL dans chaque runtime CLR et AppDomain d'un autre processus | Kitploit
Outils/GitHubGitHub/jonatan1024/clrinject
Escalade de PrivilègesExploitationMouvement LatéralPost-ExploitationTests d'IntrusionRed Teaming
GitHubjonatan1024/clrinject

clrinject

Injecte l'Assembly C# EXE ou DLL dans chaque runtime CLR et AppDomain d'un autre processus

Voir le dépôt
23757il 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

clrinject

Injecte un assembly C# (EXE ou DLL) dans tout runtime CLR et AppDomain d'un autre processus. L'assembly injecté peut alors accéder aux instances statiques des classes du processus injecté et ainsi affecter son état interne.

Utilisation

clrinject-cli.exe -p <processId/processName> -a <assemblyFile>

Ouvre le processus avec l'identifiant <processId> ou le nom <processName>, injecte l'assembly <assemblyFile> EXE et exécute la méthode Main.

Options supplémentaires

  • -e Énumère tous les runtimes CLR chargés et les AppDomains créés.
  • -d <#> Injecte uniquement dans le <#>-ième AppDomain. Si aucun nombre ou zéro n'est spécifié, l'assembly est injecté dans chaque AppDomain.
  • -i <namespace>.<className> Crée une instance de la classe <className> du namespace <namespace>.

Exemples

Exemples d'utilisation

  • clrinject-cli.exe -p victim.exe -e (Énumère les runtimes et AppDomains de victim.exe)
  • clrinject-cli.exe -p 1234 -a "C:\Path\To\invader.exe" -d 2 (Injecte invader.exe dans le deuxième AppDomain du processus avec l'identifiant 1234)
  • clrinject-cli.exe -p victim.exe -a "C:\Path\To\invader.dll" -i "Invader.Invader" (Crée une instance d'Invader dans chaque AppDomain de victim.exe)
  • clrinject-cli64.exe -p victim64.exe -a "C:\Path\To\invader64.exe" (Injecte un assembly x64 dans un processus x64)

Exemple d'assembly injectable

Le code suivant peut être compilé en exécutable C# puis injecté dans un processus PowerShell. Ce code accède aux instances statiques des classes internes de PowerShell pour changer la couleur du texte de la console en vert.

root@kitploit:~
using System;
using System.Reflection;

using Microsoft.PowerShell;
using System.Management.Automation.Host;

namespace Invader
{
    class Invader
    {
        static void Main(string[] args)
        {
            try
            {
                var powerShellAssembly = typeof(ConsoleShell).Assembly;
                var consoleHostType = powerShellAssembly.GetType("Microsoft.PowerShell.ConsoleHost");
                var consoleHost = consoleHostType.GetProperty("SingletonInstance", BindingFlags.Static | BindingFlags.NonPublic).GetValue(null);

                var ui = (PSHostUserInterface)consoleHostType.GetProperty("UI").GetValue(consoleHost);
                ui.RawUI.ForegroundColor = ConsoleColor.Green;
            }
            catch (Exception e)
            {
                Console.WriteLine(e.ToString());
            }
        }
    }
}

Commande d'injection :

clrinject-cli64.exe -p powershell.exe -a "C:\Path\To\invader64.exe"

Résultat :

Result

Télécharger l’outil