
Die ultimative WinRM-Shell für Hacking/Pentesting
Die ultimative WinRM-Shell für Hacking/Pentesting

Diese Shell ist die ultimative WinRM-Shell für Hacking/Pentesting.
WinRM (Windows Remote Management) ist die Microsoft-Implementierung des WS-Management-Protokolls. Ein standardbasiertes SOAP-Protokoll, das Hardware und Betriebssysteme verschiedener Hersteller interoperabel macht. Microsoft hat es in seine Betriebssysteme integriert, um Systemadministratoren das Leben zu erleichtern.
Dieses Programm kann auf jedem Microsoft Windows Server mit aktiviertem Feature (normalerweise auf Port 5985) verwendet werden, natürlich nur wenn du Anmeldedaten und Berechtigungen zur Nutzung hast. Man kann also sagen, dass es in einer Post-Exploitation-Phase des Hackings/Pentestings eingesetzt werden kann. Der Zweck dieses Programms ist es, nützliche und einfach zu bedienende Funktionen für Hacking bereitzustellen. Es kann auch von Systemadministratoren für legitime Zwecke verwendet werden, aber die meisten Funktionen sind auf Hacking/Pentesting ausgerichtet.
Es basiert hauptsächlich auf der WinRM-Ruby-Bibliothek, die ihre Arbeitsweise seit Version 2.0 geändert hat. Statt des WinRM- Protokolls wird nun PSRP (Powershell Remoting Protocol) verwendet, um Runspace-Pools zu initialisieren sowie Pipelines zu erstellen und zu verarbeiten.
Usage: evil-winrm -i IP -u USER [-s SCRIPTS_PATH] [-e EXES_PATH] [-P PORT] [-a USERAGENT] [-p PASS] [-H HASH] [-U URL] [-S] [-c PUBLIC_KEY_PATH ] [-k PRIVATE_KEY_PATH ] [-r REALM] [-K TICKET_FILE] [--spn SPN_PREFIX] [-l] -S, --ssl Enable ssl -c, --pub-key PUBLIC_KEY_PATH Local path to public key certificate -k, --priv-key PRIVATE_KEY_PATH Local path to private key certificate -r, --realm DOMAIN Kerberos auth, it has to be set also in /etc/krb5.conf file using this format -> CONTOSO.COM = { kdc = fooserver.contoso.com } -K, --ccache TICKET_FILE Path to Kerberos ticket file (ccache or kirbi format, auto-detected) -s, --scripts PS_SCRIPTS_PATH Powershell scripts local path --spn SPN_PREFIX SPN prefix for Kerberos auth (default HTTP) -e, --executables EXES_PATH C# executables local path -i, --ip IP Remote host IP or hostname. FQDN for Kerberos auth (required) -U, --url URL Remote url endpoint (default /wsman) -u, --user USER Username (required if not using kerberos) -p, --password PASS Password -H, --hash HASH NTHash -P, --port PORT Remote host port (default 5985) -a, --user-agent Specify connection user-agent (default Microsoft WinRM Client) -V, --version Show version -n, --no-colors Disable colors -N, --no-rpath-completion Disable remote path completion -l, --log Log the WinRM session -h, --help Display this help message
## Anforderungen
Ruby 2.3 oder höher ist erforderlich. Einige Ruby-Gems werden ebenfalls benötigt: `winrm >=2.3.7`, `winrm-fs >=1.3.2`, `stringio >=0.0.2`, `logger >= 1.4.3`, `fileutils >= 0.7.2`, `readline ~> 0.0.4`, `readline-ext ~> 0.2.0`.
Je nach Installationsmethode (4 verfügbar) kann deren Installation manuell erfolgen müssen.
Eine weitere wichtige Anforderung, die nur für die Kerberos-Authentifizierung verwendet wird, ist die Installation des Kerberos-Pakets für die Netzwerkauthentifizierung.
Für einige Linux-Distributionen auf Debian-Basis (Kali, Parrot usw.) heißt es `krb5-user`. Für BlackArch heißt es `krb5`, und für andere Linux-Distributionen kann es wahrscheinlich anders heißen.
Die Funktion zur Remote-Pfadvervollständigung erfordert die native `readline-ext`-Bindung, die automatisch als Evil-WinRM-Abhängigkeit installiert wird. Einige Systeme benötigen zusätzliche Entwicklungspakete, um sie zu kompilieren. Weitere Informationen finden Sie [im Abschnitt unten](#Remote-path-completion).
## Installation & Schnellstart (4 Methoden)
### Methode 1. Direkte Installation als Ruby-Gem (Abhängigkeiten werden automatisch auf Ihrem System installiert)
- Schritt 1. Installieren Sie es (Abhängigkeiten werden automatisch installiert): ```gem install evil-winrm```
- Schritt 2. Fertig. Starten Sie es einfach!```
evil-winrm -i 192.168.1.100 -u Administrator -p 'MySuperSecr3tPass123!' -s '/home/foo/ps1_scripts/' -e '/home/foo/exe_files/'
sudo gem install winrm winrm-fs stringio logger fileutils readline readline-extgit clone https://github.com/Hackplayers/evil-winrm.git### Methode 3. Verwendung von Bundler (Abhängigkeiten werden nicht auf Ihrem System installiert, nur zur Nutzung von evil-winrm)
- Schritt 1. Bundler installieren: `gem install bundler`
- Schritt 2. Das Repository klonen: `git clone https://github.com/Hackplayers/evil-winrm.git`
- Schritt 3. Abhängigkeiten mit Bundler installieren: `cd evil-winrm && bundle install --path vendor/bundle`
- Schritt 4. Starten Sie es mit Bundler:```
bundle exec evil-winrm.rb -i 192.168.1.100 -u Administrator -p 'MySuperSecr3tPass123!' -s '/home/foo/ps1_scripts/' -e '/home/foo/exe_files/'
## Dokumentation