user_output
field, such as:
Reserved Keywords
When we talk aboutHooking Features
in the Action: post_response message of an agent, we’re really talking about a specific set of Dictionary key value pairs that have special meaning. All responses from the agent to the Mythic server already have to be in a structured format. Each of the following sections goes into what their reserved keywords mean, but some simpler ones are:
- task_id - string - UUID associated with tasks
- user_output - string - used with any command to display information back to the user
- completed - boolean - used with any command to indicate that the task is done (switches to the green completed icon)
- status - string - used to indicate that a command is not only done, but has encountered an error or some other status to return to the user
-
process_response - this is passed to your command’s python file for processing in the
process_response
function.
PayloadType Development Reference
As you’re developing an agent to hook into these features, it’s helpful to know where to look if you have questions. All of the Task, Command, and Parameter definitions/functions available to you are defined in themythic_container
PyPi package, which is hosted on the MythicMeta Organization on GitHub. Information about the Payload Type itself (BuildResponse, SupportedOS, BuildParameters, PayloadType, etc) can be found in the PayloadBuilder.py file in the same PyPi repo.