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
LittleCorporal — LittleCorporal: Un generatore automatizzato di maldoc in C# | Kitploit
Strumenti/GitHubGitHub/connormcgarr/littlecorporal
Analisi Dinamica (Sandboxing)Generazione di PayloadAnalisi del CodiceExploitShellcodeAnalisi MalwarePenetration TestingRed TeamingGenerazione di ShellcodeSviluppo Payload
GitHubconnormcgarr/littlecorporal

LittleCorporal

227565 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

LittleCorporal: Un generatore automatizzato di maldoc in C#

Vedi Repository

LittleCorporal

LittleCorporal: Un generatore automatizzato di Maldoc in C#

root@kitploit:~
C:\LittleCorporal\bin\Release>LittleCorporal.exe C:\beacon.bin explorer.exe
.____    .__  __    __  .__         _________                                         .__
|    |   |__|/  |__/  |_|  |   ____ \_   ___ \  _________________   ________________  |  |
|    |   |  \   __\   __\  | _/ __ \/    \  \/ /  _ \_  __ \____ \ /  _ \_  __ \__  \ |  |
|    |___|  ||  |  |  | |  |_\  ___/\     \___(  <_> )  | \/  |_> >  <_> )  | \// __ \|  |__
| _______ \__||__|  |__| |____/\___  >\______  /\____/|__|  |   __/ \____/|__|  (____  /____/
        \/                        \/        \/             |__|                     \/


             ________
            /        \
         __ /       (o)\__
        /     ______\   \                   Sono il più forte dibattitore di tutto il Consiglio.
        | ____/__  __\____|                 Mi lascio attaccare, perché so difendermi.
           [  --~~--  ]                                                              - Napoleone Bonaparte
            | (  L   )|
      ___----\  __  /----___
     /   |  < \____/ >   |   \
    /    |   < \--/ >    |    \
    ||||||    \ \/ /     ||||||
    |          \  /   o       |
    |     |     \/   === |    |
    |     |      |o  ||| |    |
    |     \______|   +#* |    |
    |            |o      |    |
     \           |      /     /
     |\__________|o    /     /
     |           |    /     /

[+] Parsed Arguments:
   [>] Shellcode Path: C:\beacon.bin
   [>] Target Process: explorer.exe

[+] Embedded shellcode in Loader.cs!
[+] Generated C# Loader artifact!
[+] Ran the .NET assembly through Donut!
[+] Donut artifact is located at: C:\LittleCorporal\Artifacts\payload.bin
[+] Path to Word document: C:\LittleCorporal\Artifacts\Form.doc

LEGGERE L'INTERO README PRIMA DELL'USO!

Come Funziona?

LittleCorporal accetta un argomento fornito dall'utente per un processo in cui iniettare su una macchina remota, sulla quale si prevede di eseguire il documento Word malevolo, e accetta anche un percorso a un file di shellcode locale memorizzato in formato .bin – come ad esempio un blob di shellcode Beacon Stageless sulla macchina su cui si esegue LittleCorporal. Quindi, se si desidera utilizzare il maldoc generato da questo progetto, è necessario specificare un processo già in esecuzione sulla macchina su cui si intende eseguire il maldoc (sia essa la macchina locale o una macchina diversa. explorer.exe ha sempre un'istanza, quindi usalo se non ti interessa quale processo iniettare).

LittleCorporal incorpora lo shellcode e il nome del processo di destinazione in Loader.cs, compila Loader.cs al volo in un artefatto .exe .NET, e quindi utilizza thread hijacking per eseguire l'iniezione di processo remoto. L'artefatto .exe .NET, che è il loader di thread hijacking, viene passato attraverso Donut per generare shellcode indipendente dalla posizione, che eseguirà l'.exe. Lo shellcode generato da Donut viene quindi codificato in base64, viene generato un documento Word, e il blob finale di Donut viene memorizzato in una proprietà di Word InlineShape.AlternativeText, che è in grado di contenere l'intero payload. Questo viene fatto inserendo una proprietà immagine (attualmente un'immagine vuota, che conferisce al documento un aspetto "vuoto") nel documento Word, come testo alternativo sull'immagine, che contiene il payload. LittleCorporal sfrutta quindi un "template" VBA, contenuto in questo progetto come file di testo, e inietta questa Macro nel documento Word appena generato. La Macro si chiama autoopen, quindi si apre all'apertura del documento, e poi è configurata per estrarre il valore del testo alternativo dell'immagine precedentemente generata, che contiene il payload finale, lo decodifica in base64, e infine utilizza chiamate API di Windows, in VBA, per eseguire l'iniezione locale in Word. In sostanza, questo progetto utilizza un semplice "loader" in VBA per eseguire l'iniezione locale in Word, che è un po' meno scrutinata dell'iniezione di processo remoto, e poi utilizza l'esecuzione dalla semplice iniezione locale per eseguire lo shellcode di Donut, che è un altro loader che esegue thread hijacking per l'iniezione di processo remoto finale dello shellcode fornito dall'utente nel processo specificato. Tutto questo è fatto in modo automatizzato, inclusa la generazione del documento Word.

Requisiti e Limitazioni

  1. LittleCorporal assembla l'artefatto di thread hijacking .NET utilizzando .NET v2. Assicurati che .NET v2 sia installato sulla macchina su cui generi il documento Word (assicurati che esista C:\Windows\Microsoft.NET\Framework64\v2.0.50727\) e sulla macchina di destinazione su cui prevedi di eseguire il documento.
  2. Devi anche avere Office installato sulla macchina su cui prevedi di eseguire LittleCorporal.exe. Questo perché LittleCorporal deve interagire tramite COM con Word. Tieni inoltre presente che il documento Word generato scarica un'immagine vuota da Internet – ciò significa che avrai bisogno di accesso a Internet sul computer su cui esegui LittleCorporal e sulla macchina remota su cui prevedi di far detonare il documento Word.
  3. Sfortunatamente, LittleCorporal può essere utilizzato solo con versioni a 64 bit di Word. Perché? Solo un sistema a 64 bit può identificare le strutture utilizzate nella capacità del loader di thread hijacking – come una struttura CONTEXT a 64 bit, che ha tipi di dati specifici per 64 bit. Ciò è dovuto al fatto che il thread hijacking è attualmente supportato solo su sistemi a 64 bit, poiché richiede shellcode personalizzato che aderisce specificamente alla convenzione di chiamata __fastcall. Non ho intenzione di implementare una versione a 32 bit della capacità di thread hijacking, ma se alla fine ci sarà una pull request per il supporto a 32 bit, dato che molte installazioni di Microsoft Word sono a 32 bit, non escluderei del tutto questa possibilità. Attualmente non dovrebbe essere una grande correzione dal punto di vista logico, il problema diventa l'onere e la seccatura di mantenere traccia dello stack quando si passa da __fastcall a __stdcall e calcolare nuovi offset. Tecnicamente non è complesso, ma è un po' faticoso.
  4. Il codice di thread hijacking esegue prima un controllo per vedere se la macchina che esegue il documento Word è unita al dominio. Se viene eseguito su una macchina non unita al dominio, modifica in prima di eseguire per generare un documento Word.

Raccomandazioni

Se prevedi di utilizzare questo progetto per operazioni attive di red team, considera di impostare la funzionalità "Exit" del tuo shellcode per eseguire un'uscita "pulita" con un'uscita del thread, invece di uccidere completamente il processo in cui risiede lo shellcode. Questo può essere configurato con msfvenom tramite EXITFUNC=thread, e può anche essere configurato in Cobalt Strike tramite Aggressor.

Utilizzo

  1. DEVI OTTENERE L'INTERO PROGETTO PER USARLO! LittleCorporal utilizza percorsi relativi per risorse aggiuntive, come Donut.
  2. Una volta ottenuto l'intero progetto, imposta la directory di lavoro su bin\Release (cd C:\Path\to\LittleCorporal\bin\Release). Si raccomanda che, se scegli di ricompilare questo progetto, utilizzi una build Release invece di una Debug.
  3. Specifica il percorso del tuo file shellcode sulla macchina su cui esegui LittleCorporal.exe e il processo già in esecuzione sulla macchina sulla quale desideri eseguire il documento Word. (LittleCorporal.exe C:\Path\To\Shellcode.bin explorer.exe)
  4. LittleCorporal restituirà quindi il percorso del documento Word finale.
  5. Per "pulire" la directory Artifacts, utilizza il seguente comando: LittleCorporal.exe clean
Scarica lo strumento
questa riga di codice
bool FUNC1 = true;
LittleCorporal.exe