
Le shell WinRM ultime pour le hacking/pentesting
Le shell WinRM ultime pour le hacking/pentesting

Ce shell est le shell WinRM ultime pour le hacking/pentesting.
WinRM (Windows Remote Management) est l'implémentation Microsoft du protocole WS-Management. Un protocole standard basé sur SOAP qui permet à du matériel et des systèmes d'exploitation de différents fournisseurs d'interopérer. Microsoft l'a inclus dans ses systèmes d'exploitation afin de faciliter la vie des administrateurs système.
Ce programme peut être utilisé sur n'importe quel serveur Microsoft Windows avec cette fonctionnalité activée (généralement sur le port 5985), bien sûr uniquement si vous disposez d'identifiants et des permissions nécessaires pour l'utiliser. On peut donc dire qu'il pourrait être utilisé dans une phase de post-exploitation de hacking/pentesting. L'objectif de ce programme est de fournir des fonctionnalités pratiques et faciles à utiliser pour le hacking. Il peut également être utilisé à des fins légitimes par les administrateurs système, mais la plupart de ses fonctionnalités sont axées sur le hacking/pentesting.
Il est principalement basé sur la bibliothèque Ruby WinRM qui a changé sa façon de fonctionner depuis sa version 2.0. Désormais, au lieu d'utiliser le protocole WinRM, il utilise PSRP (Powershell Remoting Protocol) pour initialiser des pools de runspaces ainsi que pour créer et traiter des pipelines.
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
## Exigences
Ruby 2.3 ou supérieur est requis. Certaines gemmes Ruby sont également nécessaires : `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`.
Selon votre méthode d'installation (4 disponibles), leur installation peut devoir être effectuée manuellement.
Une autre exigence importante, utilisée uniquement pour l'authentification Kerberos, est d'installer le paquet Kerberos utilisé pour l'authentification réseau.
Pour certains Linux basés sur Debian (Kali, Parrot, etc.), il s'appelle `krb5-user`. Pour BlackArch, il s'appelle `krb5` et il peut probablement porter un nom différent pour d'autres distributions Linux.
La fonctionnalité de complétion de chemin distant nécessite la liaison native `readline-ext`, qui est installée automatiquement comme dépendance d'Evil-WinRM. Certains systèmes nécessitent des paquets de développement supplémentaires pour la compiler. Consultez [la section ci-dessous](#Remote-path-completion) pour plus d'informations.
## Installation et démarrage rapide (4 méthodes)