./HAVOC CLI

The ./HAVOC CLI is the easiest way to interact with a ./HAVOC deployment. You can install the CLI as part of a complete deployment or you can install the CLI by itself and configure credentials for use with an existing deployment. The available command line options for the ./HAVOC CLI are detailed below.

./HAVOC CLI Shell Commands

Overview

The ./HAVOC CLI has several arguments that help manage profiles, deployments, playbook configurations, and script executions.

Arguments

--profile

  • Description: Manage profiles for the ./HAVOC CLI.
  • Usage: ./havoc --profile <action>
  • Actions:
    • add: Add a new profile.
    • remove: Remove an existing profile.
    • list: List all existing profiles.
    • <profile_name>: Specify a profile name (used when combined with other commands).

--deployment

  • Description: Manage your ./HAVOC deployment.
  • Usage: ./havoc --deployment <action>
  • Actions:
    • create: Create a new deployment.
    • modify: Modify an existing deployment.
    • update: Update an existing deployment.
    • remove: Remove an existing deployment.
    • get_deployment: Retrieve information about a deployment.
    • connect_tf_backend: Connect to a Terraform backend.
    • disconnect_tf_backend: Disconnect from a Terraform backend.
  • Additional Info: If the --profile option is not specified when calling the create action, a default profile will be created under the profile name default. There is no need to specify the --profile option when using the default profile.

--playbook

  • Description: Configure a ./HAVOC playbook.
  • Usage: ./havoc --playbook <action>
  • Actions:
    • configure: Configure a playbook.

--run_script

  • Description: Run a local ./HAVOC script.
  • Usage: ./havoc --run_script <script_name>
  • Additional Info: The script to be run should be located in the havoc_scripts directory.

Examples

  1. Managing Profiles:

    • Adding a Profile: ./havoc --profile add
    • Removing a Profile: ./havoc --profile remove
    • Listing Profiles: ./havoc --profile list
  2. Managing Deployments:

    • Creating a Deployment: ./havoc --deployment create --profile <profile_name>
    • Updating a Deployment: ./havoc --deployment update --profile <profile_name>
  3. Configuring Playbook:

    • Configuring a Playbook: ./havoc --playbook configure --profile <profile_name>
  4. Running Script:

    • Running a Script: ./havoc --run_script <script_name> --profile <profile_name>

Notes

  • Profiles must be configured before they can be used with deployments or playbook configurations.
  • When running scripts or managing deployments, if no profile is specified with the --profile option, the default profile will be used.

./HAVOC CLI Interactive Console Commands

Running the ./HAVOC CLI with the only the--profile option (or without any options specified at all) will drop you into an interactive havoc> console. See the Administration Through CLI Console and Usage Through CLI Console pages for more information on available console commands.