Command-and-control frameworks are the backbone of every red team operation. Once you have a foothold, C2 is what keeps you in — and what determines whether you get caught.
The market shifted hard in the last few years. Cobalt Strike’s $5,000/year price tag pushed teams toward open-source alternatives, and those alternatives caught up fast. Sliver and Havoc aren’t budget substitutes anymore — they’re legitimate tools with their own advantages.
This guide breaks down all three: what they do well, where they fall short, and how to decide which one belongs in your toolkit.
What Is a C2 Framework?
A command-and-control framework is software that manages communication between an attacker’s infrastructure and compromised hosts. After initial access, you deploy an implant (beacon, agent, payload) on the target. That implant checks back in with your C2 server on a schedule, receives tasks, executes them, and returns output.
Good C2 frameworks give you:
- Persistent access — survives reboots, handles reconnections
- Evasion — malleable comms, sleep obfuscation, AMSI/ETW bypasses
- Collaboration — multiple operators, shared sessions, logging
- Post-exploitation modules — lateral movement, credential theft, pivoting
- OPSEC controls — traffic profiling, redirectors, jitter
The framework you choose shapes your entire engagement. Choosing wrong costs you the op.
Cobalt Strike
Type: Commercial
Cost: ~$5,000/year per operator
Language: Java (server), C (beacon)
Protocols: HTTP, HTTPS, DNS, SMB, TCP
OS Support: Windows (primary), Linux beacon available
Cobalt Strike is the industry standard. Built by Raphael Mudge, now maintained by Fortra. It’s been the go-to for red teams since 2012 and remains the benchmark everything else is measured against.
What Makes It the Standard
Malleable C2 profiles. CS’s defining feature. You can make beacon traffic look like anything — jQuery, legitimate CDN requests, custom APIs. Well-crafted profiles defeat most network-based detection. The profile language is mature and the community has thousands of working examples.
Aggressor Script. Built-in scripting language for automating workflows, creating custom commands, and extending the framework. Massive ecosystem of community BOFs (Beacon Object Files) — small, position-independent C code that runs in-memory.
Mature post-exploitation. The full suite is there: Mimikatz integration, pass-the-hash, port scanning, pivoting via SOCKS proxies, lateral movement, process injection. If there’s a technique, there’s probably a BOF for it.
Battle-tested reliability. Ten-plus years of real engagements. The edge cases are known. The bugs are documented. Your team has probably used it before.
Where It Falls Short
Cost. $5,000/year is a significant barrier for smaller teams, consultancies, and independent researchers. The price has also made it a target for cracking — leaked versions are everywhere, which created a detection problem (defenders now hunt for Cobalt Strike patterns aggressively).
Java server. Performance overhead. Not a dealbreaker but worth noting if you’re running lean infrastructure.
Detection. Because it’s been around so long and is so widely used (including by threat actors using cracked versions), defenders have extensive Cobalt Strike detection content. Default configurations are immediately flagged. You need a solid malleable profile and proper OPSEC discipline from day one.
Attribution signal. CS artifacts — even custom ones — carry identifiable characteristics that threat intel teams actively track. If you’re simulating nation-state TTPs, consider whether CS is the right choice.
Best For
Enterprise red teams, mature security programs, operations requiring the full feature set and team collaboration. Worth the price if your clients are mature organizations with advanced defenses that require the evasion capabilities CS can deliver.
Sliver
Type: Open Source
Cost: Free
Language: Go (server + implants)
Protocols: HTTP, HTTPS, DNS, mTLS, WireGuard
OS Support: Windows, Linux, macOS
Sliver is BishopFox’s open-source C2 framework. Cross-platform, actively maintained, and genuinely capable. It’s not “Cobalt Strike but free” — it has its own design philosophy and real advantages in some areas.
What Makes It Stand Out
Multi-platform implants. Go compiles to native binaries for any platform. Windows, Linux, macOS — same framework, same workflow. This matters if your engagements go beyond Windows-only environments.
mTLS and WireGuard. Default transport options include mutual TLS and WireGuard — both harder to detect than plain HTTP and more resilient against interception. Good OPSEC defaults out of the box.
Armory. Sliver’s built-in package manager for extensions. Install BOFs, community tools, third-party integrations with a single command. Growing ecosystem that’s closing the gap with CS’s community content.
Active development. BishopFox is actively developing it. The GitHub is alive. Bugs get fixed. Features get added. This isn’t abandonware.
Multiplayer. Full multi-operator support with role-based access. Operators can share sessions and coordinate in real time.
OPSEC defaults. Random jitter, procedurally generated implant configurations, no hardcoded defaults that screech “this is Sliver” to a defender. You still need to work, but you’re not starting from a known-bad baseline.
Where It Falls Short
No Malleable C2. This is the biggest gap. Sliver’s traffic customization exists but doesn’t match CS’s malleable profiles for flexibility and maturity. If you need to make your C2 traffic look like a specific legitimate application, you’ll hit limits.
Smaller BOF ecosystem. Growing, but CS’s Aggressor Script community has a decade head start. Fewer ready-made tools means more custom development.
Less battle-tested on high-maturity targets. CS has ten years of tuning against elite defenses. Sliver is newer and some edge cases around EDR evasion require more effort.
Documentation gaps. Improving, but you’ll still hit underdocumented areas faster than you would with CS.
Best For
Teams that can’t justify the CS price tag, multi-platform engagements, operators who want solid OPSEC without paying $5K/year. Also solid for training environments and CTFs. A Vultr or DigitalOcean VPS is enough to run a full Sliver team server.
Havoc
Type: Open Source
Cost: Free
Language: C++/Go (server + implants)
Protocols: HTTP, HTTPS, SMB
OS Support: Windows (Demon implant), Linux (partial)
Havoc is newer — emerged prominently in 2022 from developer Paul Ungur. It was built specifically to address modern EDR evasion and takes a different architectural approach. The implant is called “Demon.”
What Makes It Stand Out
Built for modern EDR evasion. Havoc’s Demon implant was designed from scratch with current defensive technology in mind. Sleep masking, stack spoofing, indirect syscalls — these are first-class features, not bolt-ons. Against tools like SentinelOne, CrowdStrike, and Microsoft Defender, Demon’s evasion capabilities are strong.
Indirect syscalls and sleep masking. Demon implements these natively. Both techniques are critical for evading modern EDR behavioral analysis. CS requires BOFs and custom configurations to reach the same place; Havoc does it by default.
HTTP traffic customization. Supports custom HTTP headers, user agents, and endpoint paths. Not malleable profiles, but enough to blend in for many environments.
C2 profile system. Havoc introduced profile-based configuration that gives you meaningful control over how the Demon communicates. Still maturing, but functional.
Visual interface. Havoc has a Qt-based GUI that some operators prefer for situational awareness. Personal preference, but it’s there.
Where It Falls Short
Maturity. It’s newer. The codebase has had instability issues. Production use on high-stakes engagements requires careful testing first.
Windows-focused. The Demon implant is Windows-first. Linux support exists but is limited. Cross-platform operations need a different tool.
Smaller community. Fewer operators, fewer community contributions, fewer ready-made extensions. You’re more on your own when you hit edge cases.
Active development instability. The project has had periods of reduced activity. Open-source C2 frameworks depend on maintainer motivation — something to track before committing to it for a long engagement.
Detection catching up. As Havoc gets more popular, defenders are building detection. The early “no one detects this” period is over for most mature environments.
Best For
Engagements against environments with aggressive EDR where evasion capability matters more than ecosystem depth. Good as a secondary C2 or for specific phases of an operation where its syscall and sleep masking give you an edge.
Head-to-Head Comparison
| Feature | Cobalt Strike | Sliver | Havoc |
|---|---|---|---|
| Cost | ~$5,000/yr | Free | Free |
| Implant Language | C | Go | C++ |
| Platforms | Windows (primary) | Win/Linux/Mac | Windows (primary) |
| Traffic Customization | Malleable C2 (best in class) | Limited profiles | HTTP profiles |
| EDR Evasion | Good (with effort) | Moderate | Strong (native) |
| BOF/Extension Ecosystem | Massive | Growing | Small |
| Multi-operator | ✅ | ✅ | ✅ |
| Sleep Masking | Via BOF | Partial | Native |
| Indirect Syscalls | Via BOF | Limited | Native |
| Maturity | High | Medium | Low-Medium |
| Detection Coverage | High (widely targeted) | Medium | Growing |
| Documentation | Excellent | Good | Sparse |
OPSEC Considerations for All Three
Framework choice only gets you so far. OPSEC is operator discipline, not just tooling.
Use redirectors. Never expose your team server directly. All traffic should hit a redirector (Apache/Nginx with mod_rewrite, or a cloud-based proxy) that filters out non-implant traffic and forwards only valid callbacks. A Vultr instance makes a solid, cheap redirector.
Categorized domains. Your C2 domain needs to be aged, categorized, and clean. Fresh domains get flagged by proxy solutions. Use expired domains with history or age a domain before the engagement.
HTTPS everywhere. HTTP-only C2 is almost always caught by mature defenses. TLS with a valid cert is baseline.
Don’t use default configs. Every framework’s defaults are known and signatured. Change everything — ports, endpoints, user agents, sleep times, jitter. For CS, run a custom malleable profile. For Sliver and Havoc, customize the profile before first use.
Kill date. Configure implants with a kill date. If an implant sits unattended past engagement end, it’s a liability.
Which One Should You Use?
Choose Cobalt Strike if:
- Your organization can absorb the licensing cost
- You’re operating against mature defenses that require the best traffic evasion
- You need the full ecosystem of community BOFs and Aggressor scripts
- Your team is already trained on it and consistency matters
Choose Sliver if:
- Budget is a constraint
- You’re running multi-platform engagements
- You want solid default OPSEC without paying CS prices
- You’re building out internal capabilities on a timeline that allows for some ramp-up
Choose Havoc if:
- You’re targeting environments with aggressive modern EDR
- You need strong native sleep masking and syscall evasion
- You’re using it alongside another C2 (Havoc as a secondary is a smart pattern)
- You’re comfortable dealing with a less mature codebase
The honest answer for most teams: Sliver for the main C2, Havoc as a secondary for EDR-heavy targets, Cobalt Strike if budget and maturity requirements justify it.
Setting Up Your C2 Infrastructure
Any of these frameworks runs fine on a lean VPS. For a team server, you want:
- 2 vCPUs, 4GB RAM minimum — the server itself is lightweight; headroom matters when you have multiple active sessions
- Separate redirector(s) — one cheap instance per active engagement
- Private networking between redirectors and team server — keep the actual C2 IP off the internet
- Snapshots — before and after setup, so you can restore clean if something goes sideways
Both Vultr and DigitalOcean work well for this. Vultr has better performance per dollar at the lower tiers. DigitalOcean has better documentation if you’re newer to VPS management. Either works.
Final Take
Cobalt Strike remains the gold standard — but “gold standard” and “best choice for your situation” aren’t always the same thing. The open-source alternatives are real tools now. Sliver handles most engagements well. Havoc covers the EDR-evasion gap where Sliver falls short.
Pick based on your actual requirements: budget, target environment, team experience, and what phase of the operation you’re tooling for. The best C2 framework is the one your team knows well and has tested against the specific defenses you’ll face.
Need professional red team content for your security blog or security awareness program? CipherWrite delivers technically accurate, publication-ready articles by cybersecurity professionals.
