proone-htbtclient
Client tool for interacting with Proone instances using the Heartbeat protocol.Overview
proone-htbtclient provides command-line access to Proone instances for management, monitoring, and control operations. It supports both direct TLS connections and TXT record-based command-and-control.Usage
Common Options
-h, --help: Print help for specified command-V, --version: Print version and exit-x: Script mode (no terminal interaction)-v, --verbose: Increase verbosity (can be used multiple times)-m <MODE>: Mode selection:tls(default) ortxtrec--tls-ca <FILE>: Path to TLS CA certificate--tls-cert <FILE>: Path to TLS client certificate--tls-key <FILE>: Path to TLS private key--tls-key-pw <PW>: Password for TLS private key-t, --host <REMOTE>: Remote host to connect to-p, --port <PORT>: Port number (default: 64420)
Commands
hostinfo
Query host information from a Proone instance.- Process uptimes and PIDs
- Infection statistics
- Program version UUID
- Boot and instance IDs
- Host credentials
- Architecture and OS
- Instance flags
hover
Send a handover request to redirect the instance to a different Heartbeat host.--v4-addr <ADDR>: IPv4 address--v6-addr <ADDR>: IPv6 address--port <PORT>: Set both v4 and v6 port--v4-port <PORT>: Set IPv4 port--v6-port <PORT>: Set IPv6 port
runcmd
Run a command on the remote instance.-d, --detach: Run detached (as daemon)
runbin
Upload and run a binary on the remote instance.-d, --detach: Run detached (as daemon)
upbin
Perform a binary update on the instance.--nybin: Binary is in nybin format (enables recombination)--exec: Upload executable as-is--no-compat: Do not retry with compatible architecture
- Receive the new binary
- Write it to a temporary file
- Execute it with provided arguments
- Exit if successful (parent restarts with new binary)
rcb
Request binary recombination and download the result.--arch <ARCH>: Target CPU architecture (see proone-list-arch)--no-compat: Disallow compatible architecture substitution-f: Overwrite output file if it exists
- or omit the filename).
Output Format
All commands output YAML with the structure:TLS Verification
- If
--tls-cais not provided, server verification is optional - Both
--tls-certand--tls-keymust be provided together - Proone instances require client certificates by design
- ALPN protocol “prne-htbt” must be negotiated
TXT Record Mode
Intxtrec mode:
- Commands are encoded and output as TXT record payloads
- No network connection is made
- Use for DNS-based command-and-control
Exit Codes
| Code | Description |
|---|---|
| 0 | Success |
| 1 | Runtime error |
| 2 | Invalid arguments |
Source
Location:src/proone-htbtclient.c