Sliver
Overview
Sliver est un framework d'émulation d'adversaire/red team open source et cross-platform, développé par BishopFox, permettant aux organisations de toutes tailles d'effectuer des tests de sécuritéSliver génère des implants (payloads) qui supportent le Command & Control (C2) via Mutual TLS (mTLS), WireGuard, HTTP(S), et DNSLes implants sont compilés dynamiquement avec des clés de chiffrement asymétriques uniques par binaire.
Sliver se distingue par sa génération de code dynamique, son obfuscation à la compilation, son mode multi-utilisateurs, ses payloads staged et stageless, et son support de multiples protocoles C2 sécurisésIl est particulièrement adapté aux red team engagements, aux tests de sécurité avancés, et à l'émulation d'adversaire.
Informations essentielles
| Propriété | Valeur |
|---|---|
| Site officiel | https://github.com/BishopFox/sliver |
| Site web | https://sliver.sh |
| Licence | GPL-3.0 |
| Nationalité | International (BishopFox) |
| Déploiement | Serveur et client (macOS, Windows, Linux) |
| Difficulté | Intermédiaire à avancé |
| Technologies | Go |
TL;DR
Sliver est idéal pour les red team engagements et l'émulation d'adversaire avec support C2 avancé, génération dynamique d'implants, obfuscation à la compilation, et mode multi-utilisateurs.
Points clés à retenir :
- Framework d'émulation d'adversaire/red team
- Support C2 via mTLS, WireGuard, HTTP(S), DNS
- Génération dynamique d'implants avec clés uniques
- Obfuscation à la compilation
- Mode multi-utilisateurs
- Payloads staged et stageless
- C2 procédural sur HTTP(S)
- Détection DNS canary pour blue team
- Scriptable en Python
Compatibilité et intégrations
- Plateformes serveur/client : macOS, Windows, Linux
- Plateformes implants : macOS, Windows, Linux (et potentiellement toutes les cibles du compilateur Golang)
- Protocoles C2 : mTLS, WireGuard, HTTP(S), DNS
- Intégrations : Let's Encrypt pour certificats HTTPS
- Extensions : Support COFF/BOF (in-memory loader), exécution d'assemblies .NET en mémoire
- Pivots : TCP et named pipes
- Scripting : API Python pour automatisation
Avantages
- Génération dynamique : Code généré dynamiquement avec clés uniques par binaire
- Obfuscation : Obfuscation à la compilation pour éviter la détection
- Multi-protocoles C2 : Support mTLS, WireGuard, HTTP(S), DNS
- Mode multi-utilisateurs : Collaboration en équipe sur les engagements
- Payloads flexibles : Staged et stageless selon les besoins
- C2 procédural : Génération procédurale de C2 sur HTTP(S) pour éviter la détection
- Détection blue team : DNS canary pour détecter les blue teams
- Fonctionnalités avancées : Migration de processus Windows, injection de processus, manipulation de tokens utilisateur
- Intégration Let's Encrypt : Certificats HTTPS automatiques
- Exécution en mémoire : Assemblies .NET et COFF/BOF en mémoire
- Scriptable : API Python pour automatisation complète
- Cross-platform : Support macOS, Windows, Linux
Limites
- Courbe d'apprentissage pour les utilisateurs débutants
- Nécessite compréhension des concepts C2 et red team
- Configuration initiale peut être complexe
- Licence GPL-3.0 (contraintes de redistribution)
- Communauté plus petite que Metasploit
- Documentation moins extensive que certains frameworks établis
Fonctionnalités principales
Génération d'implants
- Compilation dynamique : Génération de code à la volée
- Clés uniques : Chaque binaire a ses propres clés de chiffrement asymétriques
- Obfuscation : Obfuscation à la compilation pour éviter la détection
- Staged/Stageless : Support des deux types de payloads
Command & Control
- mTLS : C2 sécurisé via Mutual TLS
- WireGuard : C2 via WireGuard VPN
- HTTP(S) : C2 procédural sur HTTP(S) avec génération dynamique
- DNS : C2 via DNS avec canary detection
- Let's Encrypt : Intégration pour certificats HTTPS automatiques
Fonctionnalités avancées
- Migration de processus : Migration d'implants entre processus Windows
- Injection de processus : Injection de code dans des processus existants
- Manipulation de tokens : Manipulation de tokens utilisateur Windows
- Exécution .NET : Exécution d'assemblies .NET en mémoire
- COFF/BOF loader : Chargement en mémoire de COFF/BOF
- Pivots : Pivots TCP et named pipes pour accès réseau
- Multi-utilisateurs : Mode collaboratif pour équipes red team
Scripting et automatisation
- API Python : Interface Python complète pour automatisation
- Scriptable : Toutes les fonctionnalités accessibles via scripts
Déploiement
Installation Linux (One-liner)
bash curl https://sliver.sh/install | sudo bash
Puis lancer : bash sliver
Installation depuis source
Voir la documentation officielle pour compiler depuis les sources.
Architecture
- Serveur : Instance centrale gérant les implants et sessions
- Client : Interface de commande pour interagir avec le serveur
- Implants : Binaires générés déployés sur les systèmes cibles
Cas d'usage
- Red team engagements : Simulations d'attaques pour valider les défenses
- Tests de pénétration : Tests de sécurité avancés
- Émulation d'adversaire : Simulation de techniques d'attaquants réels
- Formation sécurité : Apprentissage des techniques d'attaque et défense
- Validation de défenses : Test de la détection et réponse aux incidents
Ressources
- Documentation Sliver : https://sliver.sh
- GitHub : https://github.com/BishopFox/sliver
- Wiki : Documentation complète sur le wiki GitHub
- Discussions : Support communautaire via GitHub Discussions
- Survey : Feedback et améliorations via le survey officiel