sliver

Control the Sliver C2 server via its API. All commands use type: sliver.

Note

For developers: The sliver and sliver-session command families use a legacy type + cmd discrimination pattern and should not be replicated. New commands must define a unique type literal and handle sub-behavior branching via cmd in the executor. See Adding a New Command for details.

start_https_listener

Start an HTTPS listener on the Sliver server.

commands:
  - type: sliver
    cmd: start_https_listener
    host: 0.0.0.0
    port: 443
host

Network interface to bind the listener to.

Type:

str

Default:

0.0.0.0

port

TCP port to listen on.

Type:

int

Default:

443

domain

Limit responses to specific domain.

Type:

str

Default:

`` ``

website

Website name to associate with this listener.

Type:

str

Default:

`` ``

acme

Attempt to provision a let’s encrypt certificate.

Type:

bool

Default:

False

persistent

Keep the listener running across Sliver server restarts.

Type:

bool

Default:

False

enforce_otp

Require OTP authentication for connecting implants.

Type:

bool

Default:

True

randomize_jarm

Enable randomized JARM fingerprints.

Type:

bool

Default:

True

long_poll_timeout

Server-side long poll timeout(in seconds).

Type:

int

Default:

1

long_poll_jitter

Server-side long poll jitter(in seconds)

Type:

int

Default:

2

timeout

Command timeout in seconds.

Type:

int

Default:

60

generate_implant

Generates a new sliver binary and saves the implant to a given path or to /tmp/<name>. The path to the implant is saved and can be retrieved from the builtin variable $LAST_SLIVER_IMPLANT.

commands:
  - type: sliver
    cmd: generate_implant
    c2url: "https://myC2url.com"
    name: "linux_implant"
    target: linux/amd64
    filepath: /path/to/implant/my_implant
target

Target operating system and architecture. Supported values:

  • darwin/amd64

  • darwin/arm64

  • linux/386

  • linux/amd64

  • windows/386

  • windows/amd64

Type:

str

Default:

linux/amd64

c2url

URL which is used by the implant to reach the C2 server.

Type:

str

Required:

True

format

Output format for the implant binary. One of:

  • EXECUTABLE

  • SERVICE

  • SHARED_LIB

  • SHELLCODE

Type:

str

Default:

EXECUTABLE

name

Name of the implant. This name is the session identifier used by sliver-session commands.

Type:

str

Required:

True

filepath

The local filepath to save the implant to. If omitted, the implant is saved to /tmp. The filename will be randomly genrated and have the format ^tmp[a-z0-9]{8}$.

Type:

str

Default:

/tmp/<name>

IsBeacon

Generate a beacon-mode implant instead of a session-mode implant.

Type:

bool

Default:

False

RunAtLoad

Run the implant entrypoint from DllMain/Constructor (shared library only).

Type:

bool

Default:

False

Evasion

Enable evasion features such as overwriting user space hooks.

Type:

bool

Default:

False