Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
Spartacus — Spartacus Toolkit per l'hijacking di DLL/COM | Kitploit
Strumenti/GitHubGitHub/accenture/spartacus
Strumenti DifensiviGenerazione di PayloadAnalisi del CodiceExploitReverse EngineeringPenetration TestingAnalisi di BinariRed TeamingArchived
GitHubaccenture/spartacus

Spartacus

Spartacus Toolkit per l'hijacking di DLL/COM

1.1k153292 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 →
Vedi Repository
Condividi

[!CAUTION] Questo repository non è più mantenuto, visita https://github.com/sadreck/Spartacus per l'ultima versione.

Spartacus DLL/COM Hijacking Toolkit version

Perché "Spartacus"?

Se hai visto il film Spartacus del 1960, ricorderai la scena in cui i romani chiedono che Spartacus si arrenda. Nel momento in cui il vero Spartacus si alzò, molti altri si alzarono e rivendicarono di essere lui usando la frase "IO SONO SPARTACUS".

Quando un processo vulnerabile al DLL Hijacking richiede il caricamento di una DLL, è come chiedere "CHI È VERSION.DLL?" e directory casuali iniziano a dichiarare "IO SONO VERSION.DLL" e "NO, IO SONO VERSION.DLL". E così, Spartacus.

Cosa rende questo strumento diverso da tutti gli altri tool di hijacking?

  • Spartacus automatizza gran parte del processo. Analizza i log grezzi di SysInternals Process Monitor e puoi lasciare ProcMon in esecuzione per ore e scoprire vulnerabilità di DLL/COM hijacking di secondo e terzo livello (ad es. un'app che carica un'altra DLL che a sua volta ne carica un'altra quando usi una funzione specifica dell'app principale).
  • Genera automaticamente soluzioni Visual Studio per DLL vulnerabili.
  • In grado di elaborare file PML di grandi dimensioni e salvare tutti gli eventi di interesse in un file CSV. Benchmark locale: elaborato un file da 3 GB con 8 milioni di eventi in 45 secondi.
  • Supporta la scansione sia per vulnerabilità di DLL che di COM hijacking.
  • Supporta la generazione di certificati autofirmati e la firma di file DLL.
  • Utilizzando le funzionalità di Ghidra, estrae le firme delle funzioni di esportazione ed esegue il payload tramite funzioni proxied individualmente anziché eseguire tutto da DllMain. Questa tecnica è stata ispirata e implementata dal walkthrough descritto su https://www.redteam.cafe/red-team/dll-sideloading/dll-sideloading-not-by-dllmain, di Shantanu Khandelwal.
  • [Difesa] Modalità di monitoraggio per cercare di identificare applicazioni in esecuzione che fanno proxying delle chiamate, come in "DLL Hijacking in corso". Questo serve solo per individuare frutti a portata di mano e non dovrebbe essere considerato affidabile.

Indice

  • Installazione
  • Funzionalità supportate
    • DLL Hijacking
      • Utilizzo
    • COM Hijacking
      • Utilizzo
    • Generazione proxy DLL
      • Utilizzo
    • Firma di file DLL
      • Utilizzo
    • Rilevamento DLL Hijacking
  • Argomenti da riga di comando
  • Contributi
  • Crediti

Installazione

Trova e scarica l'ultima versione di Spartacus in Releases. Altrimenti clona semplicemente questo repository e compila dal sorgente.

Funzionalità supportate

Di seguito una descrizione di ciascuna delle modalità supportate da Spartacus.

Nota: Gli argomenti da riga di comando sono cambiati notevolmente dalla v1 alla v2.

DLL Hijacking

La funzionalità originale di Spartacus era esclusivamente la ricerca di vulnerabilità di DLL hijacking. Il funzionamento è il seguente:

  1. Genera al volo un file di configurazione ProcMon (PMC) basato sugli argomenti passati. I filtri che verranno impostati sono:
    • Operazione è CreateFile.
    • Il percorso termina con .dll.
    • Il nome del processo non è procmon.exe o procmon64.exe.
    • Abilita Drop Filtered Events per garantire una dimensione minima dell'output PML.
    • Disabilita Auto Scroll.
  2. Esegue Process Monitor e si ferma fino a quando l'utente non preme INVIO.
  3. L'utente esegue/termina i processi, o lo lascia in esecuzione per tutto il tempo necessario.
  4. Termina Process Monitor quando l'utente preme INVIO.
  5. Analizza il file Event Log (PML) di output.
    1. Crea un file CSV con tutte le DLL con risultato NAME_NOT_FOUND e PATH_NOT_FOUND.
    2. Confronta le DLL di cui sopra e cerca di identificare le DLL che sono state effettivamente caricate.
    3. Per ogni DLL "trovata", genera una soluzione Visual Studio per il proxying di tutte le funzioni di esportazione identificate della DLL.

Utilizzo DLL Hijacking

Raccogli tutti gli eventi e salvali in C:\Data\logs.pml. Tutte le DLL vulnerabili verranno salvate in C:\Data\VulnerableDLLFiles.csv e tutte le soluzioni proxy DLL in C:\Data\Solutions.

--mode dll --procmon C:\SysInternals\Procmon.exe --pml C:\Data\logs.pml --csv C:\Data\VulnerableDLLFiles.csv --solution C:\Data\Solutions --verbose

Analizza un file PML di log eventi esistente, salva l'output in CSV e genera soluzioni Visual Studio proxy.

--mode dll --existing --pml C:\MyData\SomeBackup.pml --csv C:\Data\VulnerableDLLFiles.csv --solution C:\Data\Solutions --verbose

Screenshot

DLL Runtime

CSV Output

COM Hijacking

Una nuova funzionalità di Spartacus è l'identificazione di vulnerabilità di COM hijacking locali. Il funzionamento è il seguente:

  1. Genera al volo un file di configurazione ProcMon (PMC) basato sugli argomenti passati. I filtri che verranno impostati sono:
    • Operazione è RegOpenKey.
    • Il nome del processo non è procmon.exe o procmon64.exe.
    • Abilita Drop Filtered Events per garantire una dimensione minima dell'output PML.
    • Disabilita Auto Scroll.
  2. Esegue Process Monitor e si ferma fino a quando l'utente non preme INVIO.
  3. L'utente esegue/termina i processi, o lo lascia in esecuzione per tutto il tempo necessario.
  4. Termina Process Monitor quando l'utente preme INVIO.
  5. Analizza il file Event Log (PML) di output.
    1. Identifica tutte le chiavi di registro mancanti che terminano con InprocServer32 e il cui risultato è NAME_NOT_FOUND.
    2. Se la chiave identificata si trova sotto HKEY_CURRENT_USER, cerca il suo GUID sotto HKEY_CLASSES_ROOT e include i suoi dettagli nel CSV di esportazione (se trovato).
    3. Crea un file CSV di output con tutte le informazioni raccolte.
  6. Spartacus non crea automaticamente una soluzione Visual Studio per il COM hijacking, tuttavia se hai bisogno di creare una DLL proxy puoi usare la modalità proxy.

Per il COM hijacking, Spartacus supporta anche la scansione del sistema locale per voci COM malconfigurate:

  1. Enumerare tutte le chiavi in HKEY_CLASSES_ROOT, HKEY_CURRENT_USER e HKEY_LOCAL_MACHINE.
  2. Cerca chiavi di registro chiamate InProcServer, InProcServer32, LocalServer o LocalServer32.
  3. Identifica qualsiasi posizione EXE/DLL mancante, insieme a eventuali configurazioni ACL errate come la possibilità per l'utente corrente di Modificare o Eliminare il file.

Utilizzo COM Hijacking

Raccogli tutti gli eventi e salvali in C:\Data\logs.pml. Tutte le informazioni COM vulnerabili verranno salvate in C:\Data\VulnerableCOM.csv.

--mode com --procmon C:\SysInternals\Procmon.exe --pml C:\Data\logs.pml --csv C:\Data\VulnerableCOM.csv --verbose

Elabora un file PML esistente per identificare voci COM vulnerabili.

--mode com --existing --pml C:\Data\logs.pml --csv C:\Data\VulnerableCOM.csv --verbose
Scarica lo strumento