User Defined Reflective DLL Loader
User Defined Reflective DLL Loader
Cobalt Strike 4.4 added support for using customized reflective loaders for beacon payloads. The User Defined Reflective Loader (UDRL) Kit is the source code for the UDRL example. Go to Help -> Arsenal and download the UDRL Kit. Your licence key is required.
NOTE: The reflective loader's executable code is the extracted .text section from a user provided compiled object file. The extracted executable code must be less than 100KB.
Implementation
The following Aggressor script hooks (functions) are provided to allow implementation of User Defined Reflective Loaders:
The following Aggressor script functions are provided to extract the Reflective Loader executable code (.text section) from a compiled object file and insert the executable code into the beacon payload:
The following Aggressor script functions are provided to modify the beacon payload using information from the Malleable C2 profile:
The following Aggressor script function is provided to obtain information about the beacon payload to assist with custom modifications to the payload:
The following Aggressor script functions are provided to perform custom modifications to the beacon payload:
NOTE: Depending on the custom modifications made (obfuscation, mask, etc...), the reflective loader may have to reverse those modifications when loading.
Using User Defined Reflective DLL Loaders
Create/Compile your Reflective Loaders
The User Defined Reflective Loader (UDRL) Kit is the source code for the UDRL example. Go to Help -> Arsenal and download the UDRL Kit (your license key is required).
The following is the Cobalt Strike process for prepping beacons:
Last updated