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
doublepulsar-usermode-injector — Uno strumento per utilizzare lo shellcode in modalità utente del payload DOUBLEPULSAR per caricare in modo riflessivo una DLL arbitraria in un altro processo, per l'uso nel testare tecniche di rilevamento o altre ricerche sulla sicurezza. | Kitploit
Strumenti/GitHubGitHub/withsecurelabs/doublepulsar-usermode-injector
ExploitPost-ExploitAnalisi MalwareRed TeamingSviluppo Payload
GitHubwithsecurelabs/doublepulsar-usermode-injector

doublepulsar-usermode-injector

Uno strumento per utilizzare lo shellcode in modalità utente del payload DOUBLEPULSAR per caricare in modo riflessivo una DLL arbitraria in un altro processo, per l'uso nel testare tecniche di rilevamento o altre ricerche sulla sicurezza.

Vedi Repository
123389 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

Autore: Matt Hillman ([email protected] - @sp1nl0ck)

Azienda: Countercept (@countercept)

Sito web: https://countercept.com

Una utility che utilizza lo shellcode in modalità utente del payload DOUBLEPULSAR per caricare in modo riflessivo una DLL arbitraria in un altro processo, per essere utilizzata nel testare tecniche di rilevamento o altre ricerche di sicurezza.

Contesto

Il payload DOUBLEPULSAR rilasciato da Shadow Brokers viene eseguito inizialmente in modalità kernel e carica in modo riflessivo una DLL in un processo in modalità utente utilizzando una chiamata a procedura asincrona (APC). Il caricamento effettivo della DLL avviene in modalità utente, e questa utility fa uso di quello shellcode in modalità utente per caricare una DLL in un processo specificato ed eseguire un determinato ordinale. Questo serve ad aiutare nel testare tecniche di rilevamento degli attacchi e di risposta agli incidenti di digital forensics contro il payload.

Il loader è di interesse perché funziona con qualsiasi DLL arbitraria senza fare uso della chiamata standard LoadLibrary. Evitare LoadLibrary può rendere il caricamento più furtivo, poiché evita la necessità di scrivere la DLL su disco, può evitare qualsiasi cosa che monitori le chiamate LoadLibrary, e può anche evitare di avere una voce nel Process Environment Block (PEB), che è solitamente il modo in cui si ottiene un elenco dei moduli caricati. Tali tecniche sono ormai abbastanza comuni, ma fino ad ora non eravamo a conoscenza di alcun codice pubblico che potesse caricare una DLL arbitraria in questo modo - il codice esistente richiede che la DLL sia costruita su misura per supportare il caricamento. DOUBLEPULSAR è diverso in quanto implementa un loader più completo che può caricare quasi qualsiasi DLL. Questo loader funziona su quasi tutte le versioni di Windows così com'è.

Mentre DOUBLEPULSAR stesso utilizza una chiamata APC dalla modalità kernel accodata contro un processo in modalità utente, questa utility accoda l'APC dalla modalità utente; questo fa poca differenza pratica. Inoltre, questa utility può attivare lo shellcode utilizzando CreateRemoteThread.

Utilizzo

root@kitploit:~
C:\>DOUBLEPULSAR-usermode-injector.exe
USAGE: <pid> <shellcode_file> <dll_to_inject> <ordinal_to_execute> [use_CreateRemoteProcess]

L'ultimo argomento è opzionale, se specificato 'true' verrà utilizzato CreateRemoteProcess invece di una chiamata APC 
che è il modo predefinito con cui funziona Doublepulsar. Questo serve a permettere alle persone di testarlo in modi diversi.
Il default è l'uso di APC. Questo inietterà in TUTTI i thread del processo target, il che rende più probabile che uno di essi 
si attivi rapidamente. Questo è adatto solo per test, poiché potrebbe essere indesiderabile chiamare il payload più di 
una volta.

Ad esempio, inietta somelibrary.dll nel processo 1234 utilizzando una chiamata a procedura asincrona (APC) e chiama l'ordinale 1:

root@kitploit:~
C:\>dopu-usermode-injector.exe 1234 dopu-64bit-usermode-shellcode.bin somelibrary.dll 1
Using thread: 2456
Using thread: 2032
Using thread: 3876

Oppure come sopra, ma utilizzando CreateRemoteThread invece di APC:

root@kitploit:~
C:\>dopu-usermode-injector.exe 1234 dopu-64bit-usermode-shellcode.bin somelibrary.dll 1 true

Ulteriori informazioni

Un'analisi completa dello shellcode in modalità utente di DOUBLEPULSAR:

https://www.countercept.com/our-thinking/doublepulsar-usermode-analysis-generic-reflective-dll-loader/

Lavori precedenti sul componente kernel di DOUBLEPULSAR:

https://www.countercept.com/our-thinking/analyzing-the-doublepulsar-kernel-dll-injection-technique/

https://zerosum0x0.blogspot.co.uk/2017/04/doublepulsar-initial-smb-backdoor-ring.html

Scarica lo strumento