
SharpHook ist ein offensives API-Hooking-Tool, das entwickelt wurde, um verschiedene Anmeldeinformationen innerhalb des API-Aufrufs abzufangen.
SharpHook ist inspiriert vom SharpRDPThief-Projekt. Es verwendet verschiedene API-Hooks, um die gewünschten Anmeldeinformationen zu erhalten.
Im Hintergrund nutzt es das EasyHook-Projekt. Sobald der gewünschte Prozess läuft, injiziert SharpHook automatisch seine Abhängigkeiten in den Zielprozess und sendet uns dann die Anmeldeinformationen über den EasyHook-IPC-Server.
| Prozess | API-Aufruf | Beschreibung | Fortschritt |
|---|---|---|---|
| mstsc | CredUnPackAuthenticationBufferW | Dieser Hook greift in mstsc ein und sollte Benutzername, Passwort und die entfernte IP-Adresse liefern. | ERLEDIGT |
| runas | CreateProcessWithLogonW | Dieser Hook greift in runas ein und sollte Benutzername, Passwort und den Domainnamen liefern. | ERLEDIGT |
| powershell | CreateProcessWithLogonW | Dieser Hook greift in PowerShell ein und sollte die Ausgabe für Befehle liefern, wenn der Benutzer andere Anmeldeinformationen eingibt. Zum Beispiel: Start-Process cmd -Credential X | ERLEDIGT |
| cmd | RtlInitUnicodeStringEx | Dieser Hook sollte in cmd eingreifen und dann Schlüsselwörter wie PsExec, password usw. filtern können. | In Bearbeitung - Crasht cmd, keine Ahnung warum |
| MobaXterm | CharUpperBuffA | Dieser Hook greift in MobaXterm ein und sollte Anmeldeinformationen für SSH- und RDP-Anmeldungen liefern. | In Bearbeitung - Probleme, da es sich um einen 32-Bit-Prozess handelt und Fody nicht funktioniert. Als Workaround können Sie das Projekt als x86 kompilieren, dann funktioniert es einwandfrei |
| explorer (UAC Prompt) | CredUnPackAuthenticationBufferW | Dieser Hook greift in den Explorer ein und sollte Benutzername, Passwort und den Domainnamen aus der UAC-Eingabeaufforderung liefern. | In Bearbeitung - UAC sagt Zugriff verweigert, wahrscheinlich Integritätsebenen-Probleme |

Bitte zögern Sie nicht, beizutragen, da ich bei einigen Prozessen noch Probleme habe. Sie finden mich auf Twitter oder können einen Pull-Request öffnen.