WinRM (Windows Remote Management) est l'implémentation par Microsoft du protocole WS-Management, à l'écoute sur les ports TCP 5985 (HTTP) et 5986 (HTTPS), et c'est le transport derrière PowerShell Remoting. C'est une cible privilégiée de mouvement latéral et d'exécution à distance sur les réseaux Windows : avec des identifiants valides (ou un hash NT, puisque WinRM prend en charge l'authentification NTLM et donc le pass-the-hash) pour un membre du groupe Remote Management Users ou un administrateur local, un attaquant obtient une session PowerShell interactive sur l'hôte, généralement avec des privilèges administratifs. La surface est l'énumération du service, l'obtention et l'utilisation d'identifiants ou de hashes, et l'exécution de commandes elle-même.
nmap -p5985,5986 -sV <target>
nxc winrm <target> -u user -p 'pass' # validates creds and flags Pwn3d! (admin)
Sous-thèmes#
- Énumération : détecter WinRM et sa configuration.
- Authentification : mots de passe, NTLM et pass-the-hash.
- Exécution de commandes : obtenir un shell avec Evil-WinRM et PowerShell Remoting.