
Asynchrones Password-Spraying-Tool in C# für Windows-Umgebungen
SharpHose ist ein C#-Tool zum Passwort-Spraying, das schnell, sicher und über Cobalt Strikes execute-assembly nutzbar sein soll. Es bietet eine flexible Möglichkeit, mit Active Directory zu interagieren, sowohl in domänengebundenen als auch in nicht domänengebundenen Kontexten, und kann gezielt bestimmte Domänen und Domänencontroller ansprechen. SharpHose berücksichtigt die Domänen-Passwortrichtlinie, einschließlich granularer Passwortrichtlinien, um Kontosperrungen zu vermeiden. Feingranulare Passwortrichtlinien werden für die Benutzer und Gruppen ermittelt, auf die die Richtlinie angewendet wird. Wenn die Richtlinie auch auf Gruppen angewendet wird, werden die Gruppenbenutzer erfasst. Alle aktivierten Domänenbenutzer werden dann nach ihren Passwortrichtlinien klassifiziert, in der Reihenfolge der Priorität, und als sicher oder unsicher markiert. Die verbleibenden Benutzer werden gegen eine optionale vom Benutzer bereitgestellte Ausschlussliste gefiltert.
Neben dem reinen Spraying können Red-Team-Operatoren alle Passwortrichtlinien einer Domäne, alle von der Richtlinie betroffenen Benutzer oder nur die aktivierten Domänenbenutzer anzeigen. Die Ausgabe kann direkt an die Konsole oder in einen vom Benutzer angegebenen Ausgabeordner gesendet werden.
Folge mir auf Twitter für weitere Tool-Veröffentlichungen in Kürze! @ustayready
Nozzles sind integrierte Methoden des Sprayings. Obwohl derzeit nur eine Nozzle (LDAP) unterstützt wird, ist sie so geschrieben, dass sie leicht erweiterbar ist.
Active Directory Spraying-Nozzle unter Verwendung des LDAP-Protokolls
Cobalt Strike-Benutzer
Stellen Sie sicher, dass Sie --auto verwenden, um die interaktiven Eingabeaufforderungen in SharpHose zu vermeiden. Bereiten Sie Ihre Argumente auch lokal vor, damit Sie die Beschreibung vor dem Ausführen lesen können. Wenn Sie keine Argumente über execute-assembly übergeben, löst SharpHose eine "Missing Argument Exception" aus und Cobalt Strike gibt keine Ausgabe zurück. Sie erkennen dies daran, dass Sie [-] Invoke_3 on EntryPoint failed sehen. Dies wird irgendwann behoben.
Domänengebundenes Spraying ohne Interaktion SharpHose.exe --action SPRAY_USERS --spraypassword Spring2020! --output c:\temp\ --auto
Domänengebundenes Spraying mit Ausschlüssen SharpHose.exe --action SPRAY_USERS --spraypassword Spring2020! --output c:\temp\ --exclude c:\temp\exclusion_list.txt
Nicht domänengebundenes Spraying SharpHose.exe --action SPRAY_USERS --spraypassword Spring2020! --domain lab.local --username demo --password DemoThePlanet --output c:\temp\
Domänengebundenes Anzeigen von Richtlinien Active Directory speichert Dauern in negativen großen Integer-Werten, die nach Überschreiten des letzten lockoutThreshold verstreichen müssen. In zukünftigen Versionen werden diese sauberer formatiert. SharpHose.exe --action GET_POLICIES --output c:\temp\
Domänengebundenes Anzeigen von Richtlinienbenutzern SharpHose.exe --action GET_POLICY_USERS --policy lab --output c:\temp\
Domänengebundenes Anzeigen aller Benutzer SharpHose.exe --action GET_ENABLED_USERS --output c:\temp\
Domänengebundenes Spraying mit Cobalt Strike execute-assembly /path/to/SharpHose.exe --action SPRAY_USERS --spraypassword Spring2020! --output c:\temp\ --auto