Aller au contenu
Sécurité medium

Command & Control (C2) : piloter les machines compromises

11 min de lecture

Le Command & Control (C2) est le canal par lequel un attaquant pilote à distance une machine déjà compromise : il envoie des ordres, reçoit des données, met à jour son implant. Sans ce canal, l'intrusion est aveugle et figée. Cette page vous explique à quoi sert un C2, quelles techniques les attaquants emploient pour le camoufler dans le trafic normal, et comment un défenseur le repère. Elle s'adresse aux personnes qui découvrent la détection réseau, sans prérequis autre que la notion de connexion sortante.

Le C2 est la sixième phase de la kill chain : l'implant posé lors de l'installation doit maintenant « appeler à la maison » pour recevoir ses ordres. Concrètement, vous saurez :

  • Expliquer le rôle d'un canal C2 et les trois briques qui le composent (serveur, implant, protocole).
  • Reconnaître les canaux courants : HTTP(S), DNS tunneling, domain fronting, et le rythme de connexion appelé beaconing.
  • Situer les frameworks offensifs de référence, Cobalt Strike et Sliver, sans les diaboliser ni les banaliser.
  • Lister les indicateurs réseau qui trahissent un C2 et les parades côté défense (analyse de trafic, proxy filtrant, threat intelligence).
  • Rattacher le C2 à la tactique ATT&CK « Commande et contrôle » (Command and Control, TA0011), dont la technique phare est le protocole de couche applicative (T1071). Le détail du référentiel est sur MITRE ATT&CK, et la parade en production sur le domaine Runtime et exploitation du SOCLE.

Un implant seul ne vaut rien. C'est un programme installé sur la machine victime qui attend des instructions : lister des fichiers, voler des mots de passe, se propager, chiffrer un disque. Le canal Command & Control est le fil qui relie cet implant au serveur de l'attaquant. Couper ce fil, c'est isoler l'intrusion et la rendre inoffensive.

L'analogie simple est celle d'un agent infiltré dans un bâtiment. Une fois à l'intérieur, il ne sert à rien s'il ne peut pas communiquer avec sa base : recevoir ses missions, transmettre ce qu'il découvre. Le C2 est cette liaison radio, et comme une liaison radio, c'est le point où l'agent risque le plus d'être repéré.

Une architecture C2 tient en trois briques. Le serveur C2 est l'infrastructure contrôlée par l'attaquant, souvent plusieurs relais pour brouiller les pistes. L'implant (aussi appelé agent ou beacon) est le logiciel côté victime. Le protocole est la langue commune entre les deux : c'est lui qui détermine à quel point le trafic sera discret ou visible.

L'enjeu pour l'attaquant est de se fondre dans le trafic légitime. Un canal qui ressemble à une navigation web ordinaire passe inaperçu au milieu de milliers de connexions par jour. Voici les techniques les plus employées, de la plus banale à la plus retorse.

Le protocole web est de loin le canal C2 le plus courant. Il traverse les pare-feux sans effort, car les ports 80 et 443 sont presque toujours ouverts en sortie, et il se noie dans le flot de la navigation normale. Avec HTTPS, le contenu est chiffré par TLS, si bien que le défenseur ne voit qu'une connexion sortante chiffrée de plus.

Une requête de balise HTTP ressemble à une requête d'API banale, ce qui la rend difficile à distinguer à l'oeil nu.

GET /api/v1/update?id=ABC123&status=ready HTTP/1.1
Host: cdn-assets-updates.example.net
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64)

Ici, le paramètre id transporte en réalité l'identifiant de la machine compromise, et la réponse du serveur contient la prochaine commande. Rien ne distingue visuellement cette requête d'un vrai appel de mise à jour.

Le DNS tunneling exploite le système de noms de domaine pour transporter des données. L'idée est astucieuse : même les réseaux les plus verrouillés laissent passer les requêtes DNS, car sans résolution de noms, plus rien ne fonctionne. L'attaquant encode ses données dans le nom de domaine demandé.

dGhpcyBpcyB1bmUgY29tbWFuZGU.c2.example-domain.net

Le sous-domaine, ici en Base64, contient un morceau de message. Le serveur DNS de l'attaquant, autoritaire sur example-domain.net, décode la requête et répond. La bande passante est faible, mais amplement suffisante pour piloter un implant et exfiltrer discrètement. C'est un canal de secours redoutable quand HTTP est filtré.

Domain fronting, se cacher derrière un nom de confiance

Section intitulée « Domain fronting, se cacher derrière un nom de confiance »

Le domain fronting est une technique de camouflage avancée. L'attaquant fait transiter son trafic par un CDN légitime (grand fournisseur de diffusion de contenu). De l'extérieur, la connexion semble viser un domaine de confiance très fréquenté, alors qu'à l'intérieur du CDN, elle est routée vers le serveur de l'attaquant. Le nom affiché rassure, la destination réelle est masquée.

Le beaconing décrit la façon dont l'implant rappelle son serveur à intervalles réguliers pour demander : « une commande pour moi ? ». Ce battement régulier est à la fois vital pour l'attaquant et révélateur pour le défenseur. Une machine qui contacte la même destination toutes les 60 secondes, jour et nuit, ne se comporte pas comme un humain.

Pour brouiller ce rythme, les implants modernes ajoutent du jitter, une variation aléatoire des intervalles (par exemple ±20 %), et des sleeps longs, de longues périodes de silence. Le but est de casser la régularité qui saute aux yeux d'un outil de détection. Le rythme reste néanmoins l'un des meilleurs signaux à surveiller.

Les attaquants n'écrivent que rarement leur C2 de zéro. Ils s'appuient sur des frameworks, des boîtes à outils qui fournissent implant, serveur et console de pilotage. Ces mêmes outils servent aux équipes de red team légitimes pour tester les défenses, d'où leur ambivalence.

Cobalt Strike est le framework commercial de référence, conçu pour les tests d'intrusion professionnels. Son implant, le Beacon, gère plusieurs canaux (HTTP, HTTPS, DNS, SMB) et surtout des profils personnalisables qui font imiter au trafic C2 des applications métier légitimes. Massivement détourné via des versions crackées, il est devenu l'outil favori de nombreux groupes criminels, ce qui en fait aussi une cible privilégiée de la détection.

Sliver, développé en open source, s'est imposé comme l'alternative moderne. Multi-plateforme, écrit en Go, il propose des implants furtifs et une communauté active. Sa gratuité et sa flexibilité expliquent son adoption croissante, aussi bien par les red teams que par des acteurs malveillants. Face à ces outils, le défenseur ne cherche pas à reconnaître un nom de produit, mais les comportements qu'ils produisent sur le réseau.

Un canal C2, aussi soigné soit-il, laisse des traces dans le trafic. Les repérer suppose de savoir ce qui est normal sur son réseau pour distinguer l'anomalie. Voici les signaux les plus parlants.

  • Beaconing régulier : des connexions sortantes vers la même destination à intervalles trop constants pour être humaines.
  • Destinations douteuses : domaines récemment enregistrés, adresses IP géographiquement incohérentes, noms à l'apparence aléatoire.
  • Volumes asymétriques : de petites requêtes sortantes suivies de réponses anormalement grosses, signe d'un pilotage puis d'une exfiltration.
  • En-têtes suspects : un User-Agent absent, figé ou incohérent avec le système réel de la machine.
  • Certificats douteux : certificats auto-signés ou rattachés à des domaines générés automatiquement.

Aucune parade unique ne neutralise le C2. La défense combine contrôle des sorties, visibilité sur le trafic et renseignement à jour. L'objectif est double : compliquer l'établissement du canal, et détecter celui qui passe malgré tout.

Analyser le trafic réseau est la base. Un capteur qui observe les flux sortants met en évidence le beaconing, les destinations rares et les volumes anormaux. C'est le domaine des sondes réseau et des systèmes de détection d'intrusion, qui appliquent des règles ciblées sur les comportements C2 connus.

Filtrer les sorties réduit la surface. Un proxy filtrant obligatoire pour le trafic web force chaque connexion à passer par un point de contrôle où l'on peut journaliser, catégoriser et bloquer. Côté noms de domaine, un résolveur DNS interne avec filtrage empêche la résolution des domaines malveillants et complique le DNS tunneling. Bloquer en sortie les protocoles non essentiels ferme autant de canaux alternatifs.

Bloquer les domaines et IP connus s'appuie sur la threat intelligence, c'est-à-dire des feeds de renseignement qui listent les infrastructures C2 identifiées : domaines, adresses IP, empreintes d'implants. Ces flux alimentent proxy, pare-feu et sondes. Leur limite est qu'ils ne voient que le déjà connu : une infrastructure neuve y échappe, d'où l'importance de coupler blocage et détection comportementale.

Détecter les balises relève de l'analyse comportementale. Plutôt que de chercher une signature précise, on repère le motif : régularité des connexions, faible variance des intervalles, asymétrie des volumes. Cette approche attrape des canaux inédits que les listes de blocage laissent passer, au prix d'un réglage soigneux pour limiter les fausses alertes.

  1. Le C2 est le lien vital entre l'attaquant et la machine compromise : couper ce canal isole l'intrusion et la rend inoffensive.

  2. HTTP et HTTPS dominent parce qu'ils traversent les pare-feux et se noient dans le trafic web légitime, chiffrés par TLS.

  3. Le DNS tunneling offre un canal de secours quand le web est filtré, en encodant les données dans les noms de domaine demandés.

  4. Le beaconing est détectable : la régularité des connexions sortantes est l'un des meilleurs signaux, même atténuée par le jitter.

  5. Les frameworks Cobalt Strike et Sliver industrialisent le C2 ; le défenseur traque les comportements qu'ils produisent, pas leur nom.

  6. La défense combine plusieurs couches : proxy filtrant, filtrage DNS, threat intelligence et analyse comportementale se complètent.

  7. Le C2 est la tactique ATT&CK « Commande et contrôle » (TA0011) : sa parade en production est portée par le domaine Runtime et exploitation du SOCLE, qui relie ces comportements aux contrôles à mettre en place.

Ce site vous est utile ?

Sachez que moins de 1% des lecteurs soutiennent ce site.

Je maintiens +700 guides gratuits, sans pub ni tracking. Un soutien, même symbolique, m'aide à couvrir l'hébergement et à garder ces ressources gratuites. Merci pour votre appui.

Le formulaire ne s'affiche pas ? Ouvrir Ko-fi dans un onglet.

Abonnez-vous et suivez mon actualité DevSecOps sur LinkedIn