file_id to track the new file, and then posting file data against that ID.
Mythic 4.0 supports two mutually exclusive transfer modes:
- Offset mode uses
total_sizeand zero-basedchunk_offset. - Chunk mode uses
total_chunks,chunk_size, and one-basedchunk_numfor compatibility with existing agents.
total_size with total_chunks, or chunk_offset with chunk_num, in the same transfer.
Offset mode
Register the file with its byte length. Optional metadata can be supplied during registration or a later data message. A negativetotal_size can be updated later when the final size becomes known.
total_size.
Resume a transfer
To resume an existing file from a later task, send the priorfile_id with resume: true.
Mythic returns the first contiguous byte offset that has not been received.
chunk_offset.
For a numbered transfer, the same resume request returns total_chunks, chunk_size, and the next one-based chunk_num instead.
Numbered chunk compatibility
Existing agents can continue registering withtotal_chunks and an optional fixed chunk_size:
chunk_num:
chunk_size during registration or on the first chunk.
chunk_size is the normal block size, not necessarily the length of the final block.
A negative total_chunks can be updated later when the final count becomes known.
Common fields
full_pathrecords the remote path and helps Mythic update the file browser.hostdefaults to the callback host when omitted.filenamesupplies a display name when no meaningful remote path exists.is_screenshotroutes the completed file to screenshot views; it defaults tofalse.- Additional keys are echoed in Mythic’s response, which can be useful for an agent-local correlation ID.
