Un runner cumule secrets, droits cloud et accès réseau : laissé ouvert, il devient une tête de pont pour exfiltrer, atteindre le service de métadonnées (IMDS) et se déplacer latéralement vers le SI ou la production. Cette famille referme le runner côté réseau : pas d'entrée, egress filtré, IMDS bloqué, aucun accès au SI/prod, transport chiffré.
Dans le détail, le runner n'accepte aucune connexion entrante ; son trafic sortant est filtré en refus par défaut pour couper l'exfiltration et les rappels C2 ; l'accès au service de métadonnées (IMDS) est bloqué pour empêcher le vol des identifiants cloud de l'instance ; aucun chemin réseau ne mène au SI ou à la production depuis l'exécuteur ; et les flux d'administration transitent chiffrés. Le runner ne parle ainsi qu'à ce dont le job a strictement besoin.
Concrètement, ces exigences parent : l'exfiltration de secrets et de code vers l'extérieur, le pivot via l'IMDS vers les identifiants cloud de l'instance, le mouvement latéral vers le SI ou la production, la compromission de la plateforme d'orchestration elle-même, et l'interception d'un transport non chiffré.
Un runner ouvert sur le réseau permet exfiltration, accès IMDS et mouvement latéral.
Les pièges à éviter
Section intitulée « Les pièges à éviter »Les erreurs les plus fréquentes sur ce périmètre :
Exigences
Section intitulée « Exigences »aucune exposition entrante : le runner tire le travail (pull / webhook), sans port d'écoute public.#
Un runner qui écoute en entrée offre une surface d'attaque directe. Le modèle pull (le runner tire le travail par une connexion sortante) supprime tout port d'écoute public : rien à attaquer de l'extérieur, et la plateforme d'orchestration reste hors de portée.
- Preuve attendue
- Topologie réseau : aucun port d'écoute entrant ; mode pull/webhook documenté.
- Outillage
- Cilium
Correspondances & menaces parées 3 standards · 2 menaces
La plateforme d'orchestration CI/CD elle-même (serveur, contrôleur, base de secrets) est compromise, donnant le contrôle de tous les pipelines, secrets et déploiements. C'est le vecteur de plus haut impact : il rend caducs les contrôles en aval CNCF Publishing CICD-SEC-7. Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation ATT&CK.
filtrage de l'egress par liste d'autorisation ; tout flux sortant non listé est bloqué et journalisé.#
Une charge compromise exfiltre secrets et code vers l'extérieur (cas tj-actions). Un egress par liste d'autorisation déclare les seules destinations légitimes et bloque puis journalise tout le reste : la fuite est coupée à la source, pas seulement détectée.
- Preuve attendue
- Règles d'egress (allowlist) + journaux de blocage des flux non listés.
- Outillage
- Cilium
Correspondances & menaces parées 3 standards · 2 menaces
Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis ATT&CK. Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005) CICD-SEC-7 ATT&CK T1552.005.
aucun accès au SI corporate ni à la production ; segmentation réseau stricte.#
Un runner qui peut joindre le SI bureautique ou la production offre un tremplin de mouvement latéral : une compromission de job devient compromission du SI. Le CI n'a aucune raison d'y accéder ; une segmentation stricte l'en empêche.
- Preuve attendue
- Schéma de segmentation ; règles interdisant l'accès SI/prod depuis le runner.
- Outillage
- Cilium
Correspondances & menaces parées 3 standards · 1 menace
Après une intrusion initiale, l'attaquant se déplace latéralement et installe des mécanismes de persistance pour conserver l'accès. La compromission s'étend dans le temps et l'espace faute de détection et de segmentation ATT&CK.
blocage de l'accès aux endpoints de métadonnées cloud (IMDS) depuis le contexte du job.#
Un job qui atteint le service de métadonnées (169.254.169.254) vole les identifiants de rôle de l'instance et hérite des droits de l'hôte (ATT&CK T1552.005). Bloquer l'IMDS au niveau réseau, avec IMDSv2, ferme ce pivot vers le compte cloud.
- Preuve attendue
- Règle de blocage IMDS (169.254.169.254) testée depuis un job.
- Outillage
- Cilium
Correspondances & menaces parées 2 standards · 1 menace
Un job de build atteint le service de métadonnées d'instance (IMDS) pour récupérer les identifiants de rôle de la machine et pivoter vers le cloud. Sans IMDSv2 ni blocage réseau, le pipeline hérite des droits de l'hôte (ATT&CK T1552.005) CICD-SEC-7 ATT&CK T1552.005.
contextes sensibles : architecture air-gap, dépôts et registres en miroir interne.#
En contexte sensible, toute dépendance à l'internet public est une voie d'exfiltration et d'injection. Une architecture air-gap, dépôts et registres en miroir interne, rend le build hermétique : il ne tire ni n'envoie rien hors du périmètre maîtrisé.
- Preuve attendue
- Preuve d'architecture air-gap ; miroirs internes des dépôts et registres.
- Outillage
- Cilium
Correspondances & menaces parées 3 standards · 1 menace
Une charge compromise exfiltre des données ou des secrets en production vers un système contrôlé par l'attaquant. La détection comportementale runtime est la dernière ligne, une fois les contrôles amont franchis ATT&CK.
communication runner ↔ serveur chiffrée (TLS/HTTPS) ; jamais de transport en clair.#
Un transport en clair entre runner et serveur expose le jeton d'enregistrement et les données de job à l'interception sur le réseau. La communication doit être chiffrée (TLS/HTTPS), jamais en clair : une base souvent oubliée sur les runners internes.
- Preuve attendue
- URL en https et tls-ca-file configurés ; aucun endpoint en http.
- Outillage
- Cilium
Correspondances & menaces parées 3 standards · 1 menace
Un jeton d'accès de longue durée est volé et réutilisé tant qu'il n'est pas révoqué, sans nouvelle authentification. La durée de vie sans rotation maximise la valeur du vol CICD-SEC-6.