MCPcopy Index your code
hub / github.com/BishopFox/sliver

github.com/BishopFox/sliver @v1.7.3 sqlite

repository ↗ · DeepWiki ↗ · release v1.7.3 ↗
41,923 symbols 186,520 edges 1,147 files 2,647 documented · 6%
README

Sliver

Sliver is an open source cross-platform adversary emulation/red team framework, it can be used by organizations of all sizes to perform security testing. Sliver's implants support C2 over Mutual TLS (mTLS), WireGuard, HTTP(S), and DNS and are dynamically compiled with per-binary asymmetric encryption keys.

The server and client support MacOS, Windows, and Linux. Implants are supported on MacOS, Windows, and Linux (and possibly every Golang compiler target but we've not tested them all).

Release Go Report Card License: GPL v3

Visit https://sliver.sh/ for tutorials and documentation.

Features

  • Dynamic code generation
  • Compile-time obfuscation
  • Multiplayer-mode
  • Staged and Stageless payloads
  • Procedurally generated C2 over HTTP(S)
  • DNS canary blue team detection
  • Secure C2 over mTLS, WireGuard, HTTP(S), and DNS
  • Fully scriptable using Python
  • Windows process migration, process injection, user token manipulation, etc.
  • Let's Encrypt integration
  • In-memory .NET assembly execution
  • COFF/BOF in-memory loader
  • TCP and named pipe pivots
  • Much more!

Getting Started

Download the latest release and see the Sliver wiki for a quick tutorial on basic setup and usage. To get the very latest and greatest compile from source.

Linux One Liner

curl https://sliver.sh/install|sudo bash and then run sliver

Help!

Please checkout the wiki, or start a GitHub discussion.

Compile From Source

See the wiki.

License - GPLv3

Sliver is licensed under GPLv3, some sub-components may have separate licenses. See their respective subdirectories in this project for details.

Extension points exported contracts — how you extend this code

Encoder (Interface)
Encoder - Can lossless-ly encode arbitrary binary data [20 implementers]
implant/sliver/encoders/encoders.go
GenericRequest (Interface)
GenericRequest - Generic request interface to use with generic handlers [100 implementers]
server/rpc/rpc.go
Encoder (Interface)
Encoder - Can losslessly encode arbitrary binary data [20 implementers]
util/encoders/encoders.go
Target (Interface)
Target is what an incoming matched connection is sent to. [4 implementers]
client/tcpproxy/tcpproxy.go
ShellcodeEncoder (Interface)
(no doc) [6 implementers]
server/encoders/shellcode/shellcode.go
LootBackend (Interface)
LootBackend - The interface any loot backend must implement [2 implementers]
server/loot/loot.go
PackageOutput (Interface)
(no doc) [2 implementers]
client/packages/output.go
Observer (FuncType)
Observer - A function to call when the sessions changes.
client/console/console.go

Core symbols most depended-on inside this repo

b
called by 1921
docs/sliver-docs/public/js/monaco/language/typescript/tsWorker.js
b
called by 1921
docs/sliver-docs/public/js/vs/language/typescript/tsWorker.js
push
called by 1778
docs/sliver-docs/public/js/monaco/language/json/jsonMode.js
push
called by 1778
docs/sliver-docs/public/js/vs/language/json/jsonMode.js
push
called by 1234
docs/sliver-docs/public/js/vs/editor/editor.main.js
get
called by 1229
docs/sliver-docs/public/js/vs/editor/editor.main.js
get
called by 1224
docs/sliver-docs/public/js/monaco/editor/editor.main.js
push
called by 1215
docs/sliver-docs/public/js/monaco/editor/editor.main.js

Shape

Method 21,859
Function 18,431
Struct 890
Class 562
TypeAlias 111
Interface 42
FuncType 27
Enum 1

Languages

TypeScript77%
Go23%

Modules by API surface

docs/sliver-docs/public/js/vs/editor/editor.main.js7,356 symbols
docs/sliver-docs/public/js/monaco/editor/editor.main.js7,356 symbols
docs/sliver-docs/public/js/vs/language/typescript/tsWorker.js6,822 symbols
docs/sliver-docs/public/js/monaco/language/typescript/tsWorker.js6,822 symbols
protobuf/sliverpb/sliver.pb.go1,780 symbols
protobuf/clientpb/client.pb.go1,628 symbols
protobuf/rpcpb/services_grpc.pb.go1,000 symbols
docs/sliver-docs/public/js/vs/base/worker/workerMain.js841 symbols
docs/sliver-docs/public/js/monaco/base/worker/workerMain.js841 symbols
docs/sliver-docs/public/js/vs/language/css/cssWorker.js164 symbols
docs/sliver-docs/public/js/monaco/language/css/cssWorker.js164 symbols
docs/sliver-docs/public/js/vs/language/html/htmlWorker.js134 symbols

Dependencies from manifests, versioned

cel.dev/exprv0.25.1 · 1×
cloud.google.com/gov0.123.0 · 1×
cloud.google.com/go/auth/oauth2adaptv0.2.8 · 1×
cloud.google.com/go/compute/metadatav0.9.0 · 1×
cloud.google.com/go/firestorev1.20.0 · 1×
cloud.google.com/go/longrunningv0.7.0 · 1×
cloud.google.com/go/monitoringv1.24.3 · 1×
cloud.google.com/go/storagev1.58.0 · 1×
example.com/otherv1.2.3 · 1×
filippo.io/agev1.3.1 · 1×

For agents

$ claude mcp add sliver \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact