Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
PPLdump — Dumpare la memoria di un PPL con un exploit in userland. | Kitploit
Strumenti/GitHubGitHub/itm4n/ppldump
Escalation di PrivilegiMemory ForensicsExploitRed TeamingSviluppo PayloadBinary ExploitationArchived
GitHubitm4n/ppldump

PPLdump

Dumpare la memoria di un PPL con un exploit in userland.

Vedi Repository
893142114 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

PPLdump

⚠️ 2022-07-24 - A partire dall'aggiornamento di luglio 2022 di Windows 10 21H2 10.0.19044.1826, l'exploit implementato in PPLdump non funziona più. Una patch in NTDLL ora impedisce ai PPL di caricare le Known DLLs. Maggiori informazioni qui.

Questo strumento implementa un exploit userland inizialmente discusso da James Forshaw (alias @tiraniddo) - in questo articolo del blog - per dumppare la memoria di qualsiasi PPL come amministratore.

Ho scritto due articoli su questo strumento. La prima parte riguarda i concetti di Protected Processes mentre la seconda discute la tecnica di bypass stessa.

  • Blog post parte #1: Conosci Davvero la Protezione LSA (RunAsPPL)?
  • Blog post parte #2: Bypassare la Protezione LSA in Userland

Usage

Basta eseguire l'eseguibile senza alcun argomento e si otterrà un aiuto/uso dettagliato.

root@kitploit:~
c:\Temp>PPLdump64.exe
 _____ _____ __      _
|  _  |  _  |  |   _| |_ _ _____ ___
|   __|   __|  |__| . | | |     | . |  version 0.4
|__|  |__|  |_____|___|___|_|_|_|  _|  by @itm4n
                                |_|

Description:
  Dump the memory of a Protected Process Light (PPL) with a *userland* exploit

Usage:
  PPLdump.exe [-v] [-d] [-f] <PROC_NAME|PROC_ID> <DUMP_FILE>

Arguments:
  PROC_NAME  The name of a Process to dump
  PROC_ID    The ID of a Process to dump
  DUMP_FILE  The path of the output dump file

Options:
  -v         (Verbose) Enable verbose mode
  -d         (Debug) Enable debug mode (implies verbose)
  -f         (Force) Bypass DefineDosDevice error check

Examples:
  PPLdump.exe lsass.exe lsass.dmp
  PPLdump.exe -v 720 out.dmp

FAQ

Funziona su tutte le versioni di Windows?

Innanzitutto, i PPL sono stati introdotti con Windows 8.1, quindi le versioni precedenti di Windows non sono ovviamente supportate. Questo progetto ha come target principale Windows 10 (e le sue edizioni server) ma l'ho testato anche su versioni precedenti. Troverai una tabella riassuntiva dei test che ho effettuato nella sezione omonima.

In cosa si differenzia dagli altri strumenti?

Altri strumenti di bypass dei PPL solitamente eseguono codice arbitrario nel Kernel tramite un driver firmato digitalmente. Questo è diverso perché coinvolge solo trucchi in userland ed è (quasi) fileless.

"Userland", hai detto?!

Questo strumento sfrutta un trucco molto intelligente inizialmente discusso da James Forshaw nel 2018 (vedi Crediti). Coinvolge l'uso della funzione API DefineDosDevice per ingannare il sistema facendogli creare una voce arbitraria di Known DLL. Poiché i PPL non verificano la firma digitale delle Known DLL, questo può essere successivamente utilizzato per eseguire un attacco di DLL hijacking ed eseguire codice arbitrario all'interno di un PPL.

È davvero "fileless"?

Anche se questo strumento esegue un attacco di DLL hijacking come secondo stadio, non crea un nuovo file DLL su disco. Invece, utilizza una transazione NTFS per sostituire virtualmente il contenuto di uno esistente, una tecnica direttamente ispirata al lavoro di @_ForrestOrr (vedi Crediti).

Questo strumento può causare un DoS?

La risposta breve è "no". Innanzitutto, non coinvolge alcun accesso diretto al Kernel, quindi non c'è rischio di causare un BSOD da questo punto di vista. Nello scenario peggiore, lo strumento potrebbe non riuscire a rimuovere la voce di Known DLL creata, ma ciò non causerà un Denial of Service. Rimarrà lì fino al prossimo riavvio della macchina. Poiché la voce creata sarebbe solo un collegamento simbolico che punta a una sezione inesistente, il sistema alla fine ricadrà sulla posizione predefinita (cioè la cartella System32), quindi non avrà impatto sugli altri programmi in esecuzione sulla macchina.

Tests

⚠️ L'exploit fallisce su macchine Windows 8.1 / Server 2012 R2 completamente aggiornate. Devo ancora capire quale patch ha causato l'errore.

root@kitploit:~
[-] DefineDosDevice failed with error code 6 - The handle is invalid.

⚠️ Su Windows 8.1 / Server 2012 R2, potrebbe essere necessario compilare il binario staticamente (vedi "Istruzioni di compilazione" sotto).

Build instructions

Questa soluzione Visual Studio comprende due progetti (l'eseguibile e una DLL payload) che devono essere compilati in un ordine specifico. Tutto è preconfigurato, quindi basta seguire queste semplici istruzioni. La DLL payload compilata viene automaticamente incorporata nell'eseguibile finale.

  1. Apri la soluzione con Visual Studio 2019.
  2. Seleziona Release / x64 o Release / x86 a seconda dell'architettura della macchina target.
  3. Build > Build Solution.

Su Windows 8.1 / Server 2012 R2, potrebbe essere necessario compilare il binario staticamente.

  1. Fai clic destro sul progetto PPLdump.
  2. Vai su Configuration Properties > C/C++ > Code Generation.
  3. Seleziona Multi-threaded (/MT) come opzione Runtime Library.
  4. Compila la soluzione.

Credits

  • @tiraniddo - Windows Exploitation Tricks: Exploiting Arbitrary Object Directory Creation for Local Elevation of Privilege
    https://googleprojectzero.blogspot.com/2018/08/windows-exploitation-tricks-exploiting.html
  • @_ForrestOrr - Masking Malicious Memory Artifacts – Part I: Phantom DLL Hollowing
    https://www.forrest-orr.net/post/malicious-memory-artifacts-part-i-dll-hollowing
Scarica lo strumento
Versione di WindowsBuildEdizioneArchAdminSYSTEM
Windows 10 20H219042Prox64✔️✔️
Windows 10 20H219042Prox86✔️✔️
Windows 10 190918363Prox64✔️✔️
Windows 10 150710240Educationalx64✔️✔️
Windows 10 150710240Homex64✔️✔️
Windows 10 150710240Prox64✔️✔️
Windows Server 201917763Standardx64✔️✔️
Windows Server 201917763Essentialsx64✔️✔️
Windows 8.19600Prox64⚠️⚠️
Windows Server 2012 R29600Standardx64⚠️⚠️