
Dateilose Befehlsausführung für laterale Bewegung.
SharpNoPSExec fragt alle Dienste ab und wählt zufällig einen mit dem Starttyp deaktiviert oder manuell, dem aktuellen Status gestoppt und mit LocalSystem-Berechtigungen aus, um diese wiederzuverwenden.
Sobald es den Dienst ausgewählt hat, speichert es seinen aktuellen Zustand, ersetzt den Binärpfad durch die von Ihnen gewählte Nutzlast und führt sie aus.
Nach einer Wartezeit von 5 Sekunden wird die Dienstkonfiguration wiederhergestellt und Sie werden höchstwahrscheinlich Ihre Shell haben :)
Dieses Tool ist von der PSExec-Erklärung von #OSEP für laterale Bewegung inspiriert. Beim Lesen der Übung wurde mir klar, dass ich die laterale Bewegung durchführen kann, ohne die Festplatte zu berühren und ohne einen neuen Dienst zu erstellen, um der Erkennung zu entgehen.
███████╗██╗ ██╗ █████╗ ██████╗ ██████╗ ███╗ ██╗ ██████╗ ██████╗ ███████╗███████╗██╗ ██╗███████╗ ██████╗
██╔════╝██║ ██║██╔══██╗██╔══██╗██╔══██╗████╗ ██║██╔═══██╗██╔══██╗██╔════╝██╔════╝╚██╗██╔╝██╔════╝██╔════╝
███████╗███████║███████║██████╔╝██████╔╝██╔██╗ ██║██║ ██║██████╔╝███████╗█████╗ ╚███╔╝ █████╗ ██║
╚════██║██╔══██║██╔══██║██╔══██╗██╔═══╝ ██║╚██╗██║██║ ██║██╔═══╝ ╚════██║██╔══╝ ██╔██╗ ██╔══╝ ██║
███████║██║ ██║██║ ██║██║ ██║██║ ██║ ╚████║╚██████╔╝██║ ███████║███████╗██╔╝ ██╗███████╗╚██████╗
╚══════╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚══════╝╚══════╝╚═╝ ╚═╝╚══════╝ ╚═════╝
Version: 0.0.3
Author: Julio Ureña (PlainText)
Twitter: @juliourena
SharpNoPSExec.exe --target=192.168.56.128 --payload=""c:\windows\system32\cmd.exe /c powershell -exec bypass -nop -e ZQBjAGgAbwAgAEcAbwBkACAAQgBsAGUAcwBzACAAWQBvAHUAIQA=""
Erforderliche Argumente:
--target= - IP oder Computername, der angegriffen werden soll.
--payload= - Nutzlast, die auf dem Zielcomputer ausgeführt werden soll.
Optionale Argumente:
--username= - Benutzername zur Authentifizierung auf dem Remotecomputer.
--password= - Passwort des Benutzers.
--domain= - Domänenname, falls nicht gesetzt wird stattdessen ein Punkt (.) verwendet.
--service= - Dienst, der zur Ausführung der Nutzlast geändert werden soll. Nach Abschluss der Nutzlast wird der Dienst wiederhergestellt.
Hinweis: Wenn kein Dienst angegeben wird, sucht das Programm nach einem zufälligen Dienst zur Ausführung.
Hinweis: Wenn der ausgewählte Dienst ein Nicht-Systemkonto hat, wird dies ignoriert.
--help - Hilfeinformationen anzeigen.