Kali Linux

Tetanus : Mythic C2 Agent Targeting Linux And Windows Hosts Written In Rust

Tetanus is a Windows and Linux C2 agent written in rust.

Installation

To install Tetanus, you will need Mythic set up on a machine.

In the Mythic root directory, use mythic-cli to install the agent.

sudo ./mythic-cli install github https://github.com/MythicAgents/tetanus
sudo ./mythic-cli payload start tetanus

Tetanus supports the http C2 profile:

sudo ./mythic-cli install github https://github.com/MythicC2Profiles/http
sudo ./mythic-cli c2 start http

Features

  • Background job management
  • Built-in ssh client
    • Connect to a machine and download/upload files between that machine and Mythic
    • Get directory listings from machines using sftp
    • Spawn agents on machines using ssh
    • ssh-agent hijacking
  • Streaming portscan
  • Stand up TCP redirectors

Future Additions

  • v0.2.0
    • Socks proxying
    • Windows token manipulation
    • More browser script integration
    • DNS C2 profile
    • p2p capabilities
    • In memory shellcode execution execute-shellcode

General Commands

CommandSyntaxDescription
catcat [file]Output the contents of a file.
cdcd [new directory]Change directory.
cpcp [source] [destination]Copy a file from [source] to [destination].
downloaddownload [path]Download a file from the target system (supports relative paths).
exitexitExit the agent.
getenvgetenvGet the current environment variables.
getprivsgetprivsGet the privileges of the agent session.
jobkilljobkill [job id]Shutdown a running background job.
jobsjobsList currently running background jobs.
lsls [directory]List files or directories (supports relative paths).
mkdirmkdir [directory]Make a new directory.
mvmv [source] [destination]Move a file from [source] to [destination] (supports relative paths).
portscanportscan [popup]Scan a list of IPs for open ports.
pspsGet a list of currently running processes.
pwdpwdPrint working directory.
redirectredirect [<bindhost>:<bindport>:<connecthost>:<connectport>]Setup a TCP redirector on the remote system.
rmrm [path]Remove a file or directory (supports relative paths).
setenvsetenv [name] [value]Set environment variable [name] to [value].
shellshell [command]Run a shell command with bash -c on Linux or cmd.exe /c on Windows in a new thread.
sleepsleep [interval][units] [jitter]Set the sleep interval and jitter (supports unit suffixing).
sshssh [popup]Use ssh to execute commands, download/upload files or grab directory listings.
ssh-agentssh-agent [-c <socket>] [-d] [-l]Connect to running ssh agent sockets on the host or list identities.
ssh-spawnssh-spawn [popup]Spawn a Mythic agent on a remote host using ssh.
unsetenvunsetenv [var]Unset an environment variable.
uploadupload [popup]Upload a file to the host machine.

Windows-specific Commands

CommandSyntaxDescription
powershellpowershell [command]Run a command using powershell.exe /c in a new thread.
R K

Recent Posts

id Command in Linux: Display User and Group Information

The id command prints user and group identity for any account on the system. It shows the…

16 hours ago

sed Delete Lines: Remove Lines by Number, Pattern, or Range

sed processes input line by line, applies your commands, and writes the result to standard output.…

16 hours ago

How to Rename Directories in Linux: mv, Loops, and rename

Linux provides two main tools for renaming directories: mv for single renames and the rename utility for batch pattern-based…

16 hours ago

w Command in Linux: Show Logged-In Users and System Activity

The w command in Linux shows who is currently logged in to the system and what each…

17 hours ago

sysctl Command in Linux: View and Change Kernel Parameters

The sysctl command reads and modifies Linux kernel parameters from the command line. Changes take effect immediately…

2 days ago

whereis Command in Linux: Find Binary, Source, and Man Pages

The whereis command locates the binary, source, and manual page files for a given command. Unlike which, it…

2 days ago