Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
BokuLoader — Ein Proof-of-Concept Cobalt Strike Reflective Loader, der darauf abzielt, Cobalt Strikes Evasion-Funktionen nachzubilden, zu integrieren und zu verbessern! | Kitploit
Tools/GitHubGitHub/boku7/bokuloader
Penetrationstest-FrameworksExploit-FrameworksShellcodeBinäranalyseRed TeamingPayload-Entwicklung
GitHubboku7/bokuloader

BokuLoader

Ein Proof-of-Concept Cobalt Strike Reflective Loader, der darauf abzielt, Cobalt Strikes Evasion-Funktionen nachzubilden, zu integrieren und zu verbessern!

Repository anzeigen
1.4k27522vor 2 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

BokuLoader : Reflektiver Loader für Cobalt Strike

Ein Proof-of-Concept User-Defined Reflective Loader (UDRL), der darauf abzielt, die Evasion-Funktionen von Cobalt Strike nachzubilden, zu integrieren und zu verbessern!

Mitwirkende:

MitwirkenderTwitterBemerkenswerte Beiträge
Bobby Cooke@0xBokuProjekt ursprünglicher Autor und Betreuer
Santiago Pecin@s4ntiago_pWesentliche Verbesserungen des Reflective Loaders
Chris Spehn@ConsciousHackerAggressor-Scripting
Joshua Magri@passthehashbrwnIAT-Hooking
Dylan Tran@d_tranmanReflective Call-Stack-Spoofing
James Yeung@5cript1diotIndirekte Systemaufrufe

Überlegungen zur Verwendung des UDRL

Der integrierte Cobalt Strike-Reflective-Loader ist robust und unterstützt alle Malleable-PE-Evasion-Funktionen, die Cobalt Strike bietet. Der größte Nachteil bei der Verwendung eines benutzerdefinierten UDRL besteht darin, dass Malleable-PE-Evasion-Funktionen möglicherweise nicht out-of-the-box unterstützt werden.

Das Ziel des öffentlichen BokuLoader-Projekts ist es, Red Teams bei der Erstellung eines eigenen Cobalt-Strike-UDRL zu unterstützen. Das Projekt soll alle sinnvollen CS-Malleable-PE-Evasion-Funktionen unterstützen. Einige Evasion-Funktionen nutzen die CS-Integration, andere wurden komplett neu erstellt, und einige werden nicht unterstützt.

Bevor Sie dieses Projekt in irgendeiner Form verwenden, sollten Sie testen, ob die Evasion-Funktionen wie erwartet funktionieren. Zwischen dem C-Code und dem Aggressor-Skript können unterschiedliche Betriebssystemversionen, Compiler und Java zu unterschiedlichen Ergebnissen führen.

Evasion-Features

BokuLoader-spezifische Evasion-Features

  • Reflective Callstack-Spoofing mittels synthetischer Frames.
  • Benutzerdefinierter ASM/C-Reflective-Loader-Code
  • Indirekte NT-Syscalls mittels HellsGate- und HalosGate-Techniken
    • Alle Änderungen des Speicherschutzes für alle Allokationsoptionen werden über indirekte Syscalls an NtProtectVirtualMemory durchgeführt.
  • obfuscate "true" mit benutzerdefinierter UDRL-Aggressor-Skript-Implementierung.
  • NOHEADERCOPY
    • Der Loader kopiert keine Rohdaten der Beacon-DLL in die virtuelle Beacon-DLL. Die ersten 0x1000 Bytes sind Nullen.
  • XGetProcAddress zur Auflösung von Symbolen
    • Verwendet nicht Kernel32.GetProcAddress
  • xLoadLibrary zur Auflösung der Basisadresse von DLLs und zum Laden von DLLs
    • Für geladene DLLs wird die Basisadresse aus TEB->PEB->PEB_LDR_DATA->InMemoryOrderModuleList bezogen.
    • Verwendet nicht Kernel32.LoadLibraryA
  • Caesar-Chiffre zur Zeichenfolgenverschleierung
  • 100k UDRL-Größe
  • Die Namen der Import-DLLs und die Namen der Importeinträge werden in der virtuellen Beacon-DLL überschrieben.

Unterstützte Malleable-PE-Evasion-Features

BefehlOption(en)Unterstützt
allocatorHeapAlloc, MapViewOfFile, VirtualAllocAlle unterstützt durch BokuLoader-Implementierung
module_x64string (DLL-Name)Unterstützt durch BokuLoader-Implementierung. Die gleichen DLL-Stomping-Anforderungen wie bei der CS-Implementierung gelten
obfuscatetrue/falseHTTP/S-Beacons werden durch BokuLoader-Implementierung unterstützt. SMB/TCP wird derzeit für obfuscate true nicht unterstützt. Details im Issue. Hilfe wird angenommen, wenn du es beheben kannst :)
entry_pointRVA als DezimalzahlUnterstützt durch BokuLoader-Implementierung
cleanuptrueUnterstützt durch CS-Integration
userwxtrue/falseUnterstützt durch BokuLoader-Implementierung
sleep_mask(true/false) oder (Sleepmask Kit+true)Unterstützt. Bei Verwendung des Standard-„sleepmask true“ (ohne Sleepmask Kit) setze „userwx true“. Bei Verwendung des Sleepmask Kits, das RX-Beacon.text-Speicher unterstützt (src47/Ekko), setze „sleepmask true“ && „userwx false“.
magic_mz_x644-Zeichen-StringUnterstützt durch CS-Integration
magic_pe2-Zeichen-StringUnterstützt durch CS-Integration
transform-x64 prependescaped hex stringBokuLoader.cna Aggressor-Skript-Modifikation
transform-x64 strrepstring stringBokuLoader.cna Aggressor-Skript-Modifikation
stomppetrue/falseNicht unterstützt. BokuLoader kopiert keine Beacon-DLL-Header. Die ersten 0x1000 Bytes der virtuellen Beacon-DLL sind 0x00
checksumnumberExperimentell. BokuLoader.cna Aggressor-Skript-Modifikation
compile_timedate-time stringExperimentell. BokuLoader.cna Aggressor-Skript-Modifikation
image_size_x64decimal valueNicht unterstützt
namestringExperimentell. BokuLoader.cna Aggressor-Skript-Modifikation
rich_headerescaped hex stringExperimentell. BokuLoader.cna Aggressor-Skript-Modifikation
stringwstringNicht unterstützt
stringstringNicht unterstützt

Test

  • (22.02.23) Alle 4 Allokator-Methoden getestet mit threatexpress/malleable-c2/master/jquery-c2.4.7.profile

Projektursprünge

  • Basierend auf Stephen Fewers unglaublichem Reflective-Loader-Projekt:
    • https://github.com/stephenfewer/ReflectiveDLLInjection
  • Ursprünglich erstellt während der Arbeit an Renz0hs Reflective-DLL-Videos aus dem Sektor7 Malware Developer Intermediate (MDI) Course

Verwendung

  1. Kompiliere die BokuLoader-Objektdatei mit make
  2. Starte deinen Cobalt Strike Team Server
  3. Importiere innerhalb von Cobalt Strike das Aggressor-Skript BokuLoader.cna
  4. Generiere den x64-Beacon (Angriffe -> Pakete -> Windows Executable (S))
  5. Verwende die Skript-Konsole, um sicherzustellen, dass BokuLoader in den Beacon-Build implementiert wurde
  • Unterstützt keine x86-Option. Die x86-Binärdatei ist die ursprüngliche Reflective-Loader-Objektdatei.
  • Die Erzeugung von RAW-Beacons funktioniert sofort. Bei Verwendung des Artifact-Kits für den Beacon-Loader muss die Variable stagesize größer als der Standardwert sein.
    • Weitere Informationen findest du in der Cobalt Strike-Dokumentation zum benutzerdefinierten Reflective Loader

Erkennungshinweise

Hartcodierte Zeichenfolgen

  • BokuLoader ändert einige häufig erkannte Zeichenfolgen in neue hartcodierte Werte. Diese Zeichenfolgen können zur Signatur von BokuLoader verwendet werden:
Ursprünglicher Cobalt-Strike-StringBokuLoader-Cobalt-Strike-String
ReflectiveLoaderBokuLoader
Microsoft Base Cryptographic Provider v1.012367321236742382543232341241261363163151d
(admin)(tomin)
beaconbacons

Speicherzuweiser

Tool herunterladen