5985,5986 - Pentesting WinRM
Rejoignez le serveur HackenProof Discord pour communiquer avec des pirates expérimentés et des chasseurs de primes en bugs !
Perspectives de piratage Engagez-vous avec du contenu qui explore le frisson et les défis du piratage
Actualités de piratage en temps réel Restez à jour avec le monde du piratage rapide grâce aux actualités et aux informations en temps réel
Dernières annonces Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme
Rejoignez-nous sur Discord et commencez à collaborer avec les meilleurs pirates dès aujourd'hui !
WinRM
Windows Remote Management (WinRM) est mis en avant comme un protocole de Microsoft qui permet la gestion à distance des systèmes Windows via HTTP(S), en utilisant SOAP dans le processus. Il est fondamentalement alimenté par WMI, se présentant comme une interface basée sur HTTP pour les opérations WMI.
La présence de WinRM sur une machine permet une administration à distance simple via PowerShell, similaire au fonctionnement de SSH pour d'autres systèmes d'exploitation. Pour déterminer si WinRM est opérationnel, il est recommandé de vérifier l'ouverture de ports spécifiques :
5985/tcp (HTTP)
5986/tcp (HTTPS)
Un port ouvert dans la liste ci-dessus signifie que WinRM a été configuré, permettant ainsi des tentatives d'initiation d'une session à distance.
Initiation d'une session WinRM
Pour configurer PowerShell pour WinRM, la cmdlet Enable-PSRemoting
de Microsoft entre en jeu, configurant l'ordinateur pour accepter des commandes PowerShell à distance. Avec un accès PowerShell élevé, les commandes suivantes peuvent être exécutées pour activer cette fonctionnalité et désigner tout hôte comme digne de confiance :
Cet approche implique d'ajouter un joker à la configuration trustedhosts
, une étape qui nécessite une considération prudente en raison de ses implications. Il est également noté que la modification du type de réseau de "Public" à "Work" pourrait être nécessaire sur la machine de l'attaquant.
De plus, WinRM peut être activé à distance en utilisant la commande wmic
, comme démontré ci-dessous:
Ce méthode permet la configuration à distance de WinRM, améliorant ainsi la flexibilité dans la gestion des machines Windows à distance.
Tester si configuré
Pour vérifier la configuration de votre machine d'attaque, la commande Test-WSMan
est utilisée pour vérifier si la cible a correctement configuré WinRM. En exécutant cette commande, vous devriez vous attendre à recevoir des détails concernant la version du protocole et wsmid, indiquant une configuration réussie. Voici des exemples illustrant la sortie attendue pour une cible configurée par rapport à une non configurée :
Pour une cible qui est correctement configurée, la sortie ressemblera à ceci :
La réponse devrait contenir des informations sur la version du protocole et wsmid, signifiant que WinRM est configuré correctement.
En revanche, pour une cible non configurée pour WinRM, cela résulterait en l'absence de ces informations détaillées, mettant en évidence l'absence d'une configuration WinRM appropriée.
Exécuter une commande
Pour exécuter ipconfig
à distance sur une machine cible et afficher sa sortie, faites :
Vous pouvez également exécuter une commande de votre console PS actuelle via Invoke-Command. Supposons que vous ayez localement une fonction appelée enumeration et que vous souhaitiez l'exécuter sur un ordinateur distant, vous pouvez le faire :
Exécuter un script
Obtenir un shell inversé
Obtenir une session PS
Pour obtenir un shell PowerShell interactif, utilisez Enter-PSSession
:
La session s'exécutera dans un nouveau processus (wsmprovhost) à l'intérieur de la "victime"
Forcer l'ouverture de WinRM
Pour utiliser PS Remoting et WinRM mais si l'ordinateur n'est pas configuré, vous pouvez l'activer avec :
Sauvegarde et restauration des sessions
Cela ne fonctionnera pas si la langue est restreinte sur l'ordinateur distant.
À l'intérieur de ces sessions, vous pouvez charger des scripts PS en utilisant Invoke-Command.
Erreurs
Si vous rencontrez l'erreur suivante :
enter-pssession : La connexion au serveur distant 10.10.10.175 a échoué avec le message d'erreur suivant : Le client WinRM ne peut pas traiter la requête. Si le schéma d'authentification est différent de Kerberos, ou si l'ordinateur client n'est pas joint à un domaine, le transport HTTPS doit être utilisé ou la machine de destination doit être ajoutée à la configuration de TrustedHosts. Utilisez winrm.cmd pour configurer TrustedHosts. Notez que les ordinateurs de la liste TrustedHosts peuvent ne pas être authentifiés. Vous pouvez obtenir plus d'informations à ce sujet en exécutant la commande suivante : winrm help config. Pour plus d'informations, consultez le sujet d'aide sur le dépannage à distance about_Remote_Troubleshooting.
L'essai sur le client (informations provenant ici) :
Rejoignez le serveur HackenProof Discord pour communiquer avec des hackers expérimentés et des chasseurs de bugs !
Perspectives de Hacking Engagez-vous avec du contenu qui explore les sensations fortes et les défis du hacking
Actualités de Hacking en Temps Réel Restez à jour avec le monde du hacking en constante évolution grâce aux actualités et aux informations en temps réel
Dernières Annonces Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme
Rejoignez-nous sur Discord et commencez à collaborer avec les meilleurs hackers dès aujourd'hui !
Connexion WinRM sous linux
Brute Force
Soyez prudent, le bruteforcing de WinRM pourrait bloquer les utilisateurs.
Utilisation d'evil-winrm
Lisez la documentation sur son github : https://github.com/Hackplayers/evil-winrm
Pour utiliser evil-winrm pour se connecter à une adresse IPv6, créez une entrée à l'intérieur de /etc/hosts en définissant un nom de domaine pour l'adresse IPv6 et connectez-vous à ce domaine.
Transmettre le hachage avec evil-winrm
Utilisation d'une machine PS-docker
Utilisation d'un script ruby
Code extrait d'ici: https://alamot.github.io/winrm_shell/
Shodan
port:5985 Microsoft-HTTPAPI
Références
Commandes automatiques HackTricks
Rejoignez le serveur HackenProof Discord pour communiquer avec des hackers expérimentés et des chasseurs de bugs !
Perspectives de piratage Engagez-vous avec du contenu qui explore le frisson et les défis du piratage
Actualités de piratage en temps réel Restez à jour avec le monde du piratage en constante évolution grâce aux actualités et aux informations en temps réel
Dernières annonces Restez informé des dernières primes de bugs lancées et des mises à jour cruciales de la plateforme
Rejoignez-nous sur Discord et commencez à collaborer avec les meilleurs hackers dès aujourd'hui !
Last updated