NetExec ist ein Windows-Kommandozeilen-Dienstprogramm, das das Starten von Prozessen im Kontext anderer Benutzerkonten ermöglicht – ähnlich dem Windows-internen runas.exe, jedoch mit erweiterten Möglichkeiten für den Einsatz in Netzwerkumgebungen. Das Tool richtete sich ursprünglich an Windows-Systemadministratoren, die Skripte und Anwendungen unter definierten Dienstkonten oder Netzwerkadressen ausführen mussten.
In IT-Umgebungen stellt die kontrollierte Prozessausführung unter Fremdkonten eine Standardanforderung dar: Softwareinstallationen, Fernwartungsaufgaben und automatisierte Skripte benötigen häufig Berechtigungen, die das laufende Benutzerprofil nicht besitzt.
Funktionsweise: Prozesskontext wechseln unter Windows
Windows bietet mit runas.exe eine eingebaute Möglichkeit, Prozesse unter anderem Kontext zu starten. Die Einschränkungen sind jedoch bekannt: kein Passwort-Caching, keine automatisierbare Netzwerkauthentifizierung, eingeschränkte Skriptintegration.
NetExec erweiterte diese Grundfunktion um:
- Netzwerk-Credential-Übergabe – Anmeldedaten werden direkt als Parameter übergeben, ohne interaktive Eingabeaufforderung
- Silent-Modus – Keine Konsolenfenster, geeignet für Hintergrundprozesse
- Rückgabecodes – Auswertung des Prozess-Exit-Codes durch aufrufende Skripte
- Kompatibilität – Betrieb unter Windows NT 4.0, Windows 2000 und Windows XP
Die Einsatzszenarien reichten von einfacher Softwareinstallation über Netzwerkpfade bis hin zu automatisierten Backup-Skripten, die Zugriff auf mehrere Netzwerkressourcen benötigten.
Vergleich: NetExec, PsExec und runas.exe
Die drei wichtigsten Windows-Tools für kontextuelles Prozess-Starten unterscheiden sich in Ziel und Umfang:
| Tool | Lizenz | Netzwerk-fähig | Skriptbar | Plattform |
|---|---|---|---|---|
| NetExec | Shareware | Ja (lokal) | Ja | Windows NT/XP |
| PsExec (Sysinternals) | Freeware | Ja (Remote) | Ja | Windows alle |
| runas.exe | Systemtool | Nein | Eingeschränkt | Windows alle |
| NeoExec | Shareware | Ja (lokal) | Ja | Windows NT/XP |
Das moderne Open-Source-Tool: netexec (ehemals CrackMapExec)
Seit Mitte der 2020er Jahre existiert ein gleichnamiges Open-Source-Projekt: netexec (kurz: nxc), das aus dem bekannten CrackMapExec-Projekt hervorgegangen ist. Dieses Python-basierte Framework dient der Netzwerkaufklärung und dem autorisierten Penetrationstest von Windows-Umgebungen.
Das moderne netexec unterstützt Protokolle wie SMB, WMI, WinRM, MSSQL und LDAP und wird in IT-Sicherheitsteams sowie für autorisierte Schwachstellenanalysen eingesetzt. Es ist nicht mit dem ursprünglichen Windows-Shareware-Tool identisch, teilt jedoch die grundlegende Konzeptidee: Netzwerkoperationen unter definierten Anmeldekontexten ausführen.
PsExec: Die bis heute aktive Alternative
PsExec aus den Microsoft Sysinternals ist die meistgenutzte Alternative für Remote-Prozessausführung unter Windows. Das kostenlose Tool wird bis heute aktiv unterstützt und ermöglicht die Ausführung von Befehlen auf entfernten Systemen über SMB-Shares.
Typischer PsExec-Aufruf:
psexec \remotehost -u DOMAINadmin -p Passwort cmd.exe
Für moderne Windows-Umgebungen (Windows 10, Windows 11, Windows Server 2022) bieten sich zusätzlich folgende Mechanismen an:
- WinRM / PowerShell Remoting – Standardmäßig verfügbar, Kerberos- und NTLM-Authentifizierung
- SSH für Windows – Ab Windows 10 1809 nativer OpenSSH-Client und -Server
- Scheduled Tasks Remote – Aufgabenplanung über Netzwerk
Häufig gestellte Fragen
Was ist NetExec und wofür wird es eingesetzt?
NetExec war ein Windows-Shareware-Tool, das das Ausführen von Prozessen unter anderen Benutzerkonten ermöglichte. Es richtete sich an IT-Administratoren, die Skripte oder Anwendungen ohne interaktive Benutzereingabe unter Fremdkonten starten mussten.
Wie unterscheidet sich NetExec von PsExec?
PsExec von Sysinternals ermöglicht die Ausführung von Prozessen auf entfernten Systemen über das Netzwerk, während NetExec primär auf lokalen Kontextwechsel mit Netzwerk-Credentials ausgerichtet war. PsExec ist zudem kostenlos und wird bis heute aktiv gepflegt.
Ist NetExec noch verfügbar?
Das ursprüngliche NetExec-Shareware-Tool ist nicht mehr aktiv erhältlich. Für aktuelle Windows-Versionen empfehlen sich PsExec (Sysinternals), PowerShell Remoting oder WinRM als Alternativen.
Was ist der Unterschied zwischen dem alten NetExec und dem modernen netexec-Tool?
Das moderne Open-Source-Tool netexec (früher CrackMapExec) ist ein Python-Framework für IT-Sicherheitstests unter Windows-Netzwerken. Es hat außer dem Namen keine Verbindung zum ursprünglichen Windows-Shareware-Tool aus den frühen 2000er Jahren.
Welche Windows-Versionen werden von PsExec unterstützt?
PsExec unterstützt alle Windows-Versionen ab Windows XP und ist kompatibel mit Windows 10, Windows 11 sowie Windows Server 2019 und 2022. Es ist Teil der Sysinternals Suite, die von Microsoft bereitgestellt wird.
Wie kann man unter Windows einen Prozess unter einem anderen Konto starten?
Windows bietet mehrere Methoden: runas /user:DOMAINKonto programm.exe über die Kommandozeile, PsExec für Remote-Systeme, PowerShell mit Start-Process -Credential, oder WinRM für vollständige Remote-Sitzungen. Die Wahl hängt von der konkreten Anforderung und dem Sicherheitskontext ab.
Was ist WinRM und wie unterscheidet es sich von PsExec?
WinRM (Windows Remote Management) ist Microsofts standardisiertes Remote-Verwaltungsprotokoll auf Basis von WS-Management. Im Gegensatz zu PsExec nutzt WinRM nicht SMB, sondern HTTP/HTTPS (Port 5985/5986) und ist in modernen Windows-Umgebungen die empfohlene Lösung für Remote-Administration.
Ist die Nutzung von Tools wie PsExec oder netexec legal?
Die Verwendung von PsExec und ähnlichen Administrationstools ist auf eigenen Systemen und mit ausdrücklicher Genehmigung des Systemverantwortlichen legal. Der Einsatz auf fremden Systemen ohne Autorisierung ist strafbar. Das Open-Source-Tool netexec wird ausschließlich für autorisierte Penetrationstests und Sicherheitsaudits eingesetzt.