Files
maxDcb-C2Core/modules/AssemblyExec/assemblyExec.json
T
Maxime dcb 108a370807 CommandSpecs & Tests
* CommandSpecs

* CommandSpecs

* feat(command-specs): add simple module specs

* listModule

* AssemblyExec

* AssemblyExecTests

* Minor

* Inject

* InjectTests

* Spec modules

* Folder layout

* upload & download

* Chisel Minidump Powershell & Script

* CoffLoader DotnetExec /KerberosUseTicket PsExec PwSh ScreenShot

* add artifact_filters

* Minor

* stabilisation

* Fixes

* manual test

* manual test

* manual test

* manual test

* manual test

* manual test

* manual test

* manual test

* ScreenShot png

* socks5 hostname

* Maj for AI

* minor
2026-05-10 21:28:40 +02:00

94 lines
2.8 KiB
JSON

{
"name": "assemblyExec",
"display_name": "assemblyExec",
"kind": "module",
"description": "Execute shellcode in the current beacon using a thread, process, or spoofed-parent process mode. Donut inputs are prepared by the TeamServer shellcode service before the task is sent to the beacon.",
"command_template": "assemblyExec [--mode {mode}] [--raw {raw:q}] [--donut-exe {donut_exe:q}] [--donut-dll {donut_dll:q}] [--method {method:q}] [-- {arguments:raw}]",
"target": "beacon",
"requires_session": true,
"platforms": ["windows"],
"archs": ["x86", "x64", "arm64"],
"args": [
{
"name": "--mode",
"type": "flag",
"required": false,
"description": "Execution mode. Defaults to process.",
"values": ["thread", "process", "processWithSpoofedParent"]
},
{
"name": "--raw",
"type": "flag",
"required": false,
"description": "Use an existing raw shellcode file on the TeamServer.",
"artifact_filter": {
"category": "tool",
"scope": "server",
"target": "teamserver",
"platform": "windows",
"arch": "session.arch",
"runtime": "any",
"format": "bin",
"name_contains": ".bin"
}
},
{
"name": "--donut-exe",
"type": "flag",
"required": false,
"description": "Generate shellcode from a .NET executable on the TeamServer.",
"artifact_filter": {
"category": "tool",
"scope": "server",
"target": "teamserver",
"platform": "windows",
"arch": "session.arch",
"runtime": "any",
"format": "exe",
"name_contains": ".exe"
}
},
{
"name": "--donut-dll",
"type": "flag",
"required": false,
"description": "Generate shellcode from a .NET DLL on the TeamServer.",
"artifact_filter": {
"category": "tool",
"scope": "server",
"target": "teamserver",
"platform": "windows",
"arch": "session.arch",
"runtime": "any",
"format": "dll",
"name_contains": ".dll"
}
},
{
"name": "source_path",
"type": "path",
"required": true,
"description": "Raw shellcode, .NET executable, or .NET DLL path on the TeamServer."
},
{
"name": "--method",
"type": "flag",
"required": false,
"description": "Required for --donut-dll."
},
{
"name": "arguments",
"type": "text",
"required": false,
"description": "Arguments passed to the Donut source after --.",
"variadic": true
}
],
"examples": [
"assemblyExec --mode process --raw shellcode.bin",
"assemblyExec --mode thread --donut-exe Seatbelt.exe -- -group=system",
"assemblyExec --mode process --donut-dll Tool.dll --method EntryPoint -- arg1 arg2"
],
"source": "manifest"
}