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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
BokuLoader — Un proof-of-concept di Cobalt Strike Reflective Loader che mira a ricreare, integrare e potenziare le funzionalità di evasione di Cobalt Strike! | Kitploit
Strumenti/GitHubGitHub/xforcered/bokuloader
Frameworks per Penetration TestingEvasione IDS/IPSPost-ExploitCommand and ControlRed TeamingSviluppo PayloadAttacco Avversario
GitHubxforcered/bokuloader

BokuLoader

Un proof-of-concept di Cobalt Strike Reflective Loader che mira a ricreare, integrare e potenziare le funzionalità di evasione di Cobalt Strike!

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

BokuLoader : Cobalt Strike Reflective Loader

Una proof-of-concept di User-Defined Reflective Loader (UDRL) che mira a ricreare, integrare e potenziare le funzionalità di evasione di Cobalt Strike!

Contributori:

ContributoreTwitterContributi notevoli
Bobby Cooke@0xBokuAutore originale e maintainer del progetto
Santiago Pecin@s4ntiago_pMiglioramenti principali del Reflective Loader
Chris Spehn@ConsciousHackerScripting Aggressor
Joshua Magri@passthehashbrwnHooking dell'IAT
Dylan Tran@d_tranmanSpoofing del call stack riflessivo
James Yeung@5cript1diotChiamate di sistema indirette

Considerazioni sull'uso dell'UDRL

Il reflective loader integrato di Cobalt Strike è robusto e gestisce tutte le funzionalità di evasione Malleable PE che Cobalt Strike offre. Il principale svantaggio nell'usare un UDRL personalizzato è che le funzionalità di evasione Malleable PE potrebbero essere o meno supportate out-of-the-box.

L'obiettivo del progetto pubblico BokuLoader è assistere i red team nella creazione del proprio UDRL interno per Cobalt Strike. Il progetto mira a supportare tutte le funzionalità di evasione Malleable PE di CS che valga la pena. Alcune funzionalità di evasione sfruttano l'integrazione con CS, altre sono state ricreate completamente e alcune non sono supportate.

Prima di usare questo progetto, in qualsiasi forma, dovresti testare adeguatamente che le funzionalità di evasione funzionino come previsto. Tra il codice C e lo script Aggressor, la compilazione con diverse versioni di sistemi operativi, compilatori e Java può restituire risultati diversi.

Funzionalità di evasione

Funzionalità di evasione specifiche di BokuLoader

  • Spoofing del call stack riflessivo tramite frame sintetici.
  • Codice personalizzato del reflective loader in ASM/C
  • Chiamate di sistema NT indirette tramite le tecniche HellsGate & HalosGate
    • Tutte le modifiche alla protezione della memoria per tutte le opzioni di allocazione vengono eseguite tramite syscall indiretta a NtProtectVirtualMemory
  • obfuscate "true" con implementazione personalizzata dello script Aggressor UDRL.
  • NOHEADERCOPY
    • Il loader non copierà le intestazioni della beacon DLL grezza nella beacon DLL virtuale. I primi 0x1000 byte saranno nulli.
  • XGetProcAddress per la risoluzione dei simboli
    • Non usa Kernel32.GetProcAddress
  • xLoadLibrary per risolvere l'indirizzo di base delle DLL e caricare le DLL
    • Per le DLL caricate, ottiene l'indirizzo di base della DLL da TEB->PEB->PEB_LDR_DATA->InMemoryOrderModuleList
    • Non usa Kernel32.LoadLibraryA
  • Cifrario di Cesare per l'offuscamento delle stringhe
  • Dimensione UDRL di 100k
  • I nomi delle DLL importate e le stringhe dei nomi delle voci importate vengono sovrascritti nella beacon DLL virtuale.

Funzionalità di evasione Malleable PE supportate

ComandoOpzione/iSupportato
allocatorHeapAlloc, MapViewOfFile, VirtualAllocTutte supportate tramite l'implementazione di BokuLoader
module_x64stringa (nome DLL)Supportato tramite l'implementazione di BokuLoader. Valgono gli stessi requisiti di DLL stomping dell'implementazione CS
obfuscatetrue/falseBeacon HTTP/S supportati tramite l'implementazione di BokuLoader. SMB/TCP attualmente non supportato per obfuscate true. Dettagli nella issue. Accetto aiuto se puoi sistemarlo :)
entry_pointRVA come numero decimaleSupportato tramite l'implementazione di BokuLoader
cleanuptrueSupportato tramite l'integrazione con CS
userwxtrue/falseSupportato tramite l'implementazione di BokuLoader
sleep_mask(true/false) o (Sleepmask Kit+true)Supportato. Quando usi il "sleepmask true" predefinito (senza sleepmask kit) imposta "userwx true". Quando usi il sleepmask kit che supporta la memoria RX beacon.text (src47/Ekko) imposta "sleepmask true" && "userwx false".
magic_mz_x64stringa di 4 caratteriSupportato tramite l'integrazione con CS
magic_pestringa di 2 caratteriSupportato tramite l'integrazione con CS
transform-x64 prependstringa hex con escapeModifica dello script Aggressor BokuLoader.cna
transform-x64 strrepstringa stringaModifica dello script Aggressor BokuLoader.cna
stomppetrue/falseNon supportato. BokuLoader non copia le intestazioni della beacon DLL. I primi 0x1000 byte della beacon DLL virtuale sono 0x00
checksumnumeroSperimentale. Modifica dello script Aggressor BokuLoader.cna
compile_timestringa data-oraSperimentale. Modifica dello script Aggressor BokuLoader.cna
image_size_x64valore decimaleNon supportato
namestringaSperimentale. Modifica dello script Aggressor BokuLoader.cna
rich_headerstringa hex con escapeSperimentale. Modifica dello script Aggressor BokuLoader.cna
stringwstringaNon supportato
stringstringaNon supportato

Test

  • (22/2/23) Tutti e 4 i metodi di allocazione testati con threatexpress/malleable-c2/master/jquery-c2.4.7.profile

Origini del progetto

  • Basato sull'incredibile progetto Reflective Loader di Stephen Fewer:
    • https://github.com/stephenfewer/ReflectiveDLLInjection
  • Creato inizialmente mentre seguivo i video di Reflective DLL di Renz0h del Corso Sektor7 Malware Developer Intermediate (MDI)

Utilizzo

  1. Compila il file oggetto BokuLoader con make
  2. Avvia il tuo Cobalt Strike Team Server
  3. In Cobalt Strike, importa lo script Aggressor BokuLoader.cna
  4. Genera la beacon x64 (Attacks -> Packages -> Windows Executable (S))
  5. Usa la Script Console per assicurarti che BokuLoader sia stato implementato nella build della beacon
  • Non supporta l'opzione x86. Il bin x86 è il file oggetto originale del Reflective Loader.
  • La generazione di beacon RAW funziona out of the box. Quando usi l'Artifact Kit per il loader della beacon, la variabile stagesize deve essere più grande del valore predefinito.
    • Consulta la documentazione del Cobalt Strike User-Defined Reflective Loader per ulteriori informazioni

Indicazioni per il rilevamento

Stringhe hardcoded

  • BokuLoader modifica alcune stringhe comunemente rilevate in nuovi valori hardcoded. Queste stringhe possono essere usate per creare firme per BokuLoader:
Stringa originale di Cobalt StrikeStringa BokuLoader di Cobalt Strike
ReflectiveLoaderBokuLoader
Microsoft Base Cryptographic Provider v1.012367321236742382543232341241261363163151d
(admin)(tomin)
beaconbacons

Allocatori di memoria

Scarica lo strumento