<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Gautier PLANTE, Auteur</title>
	<atom:link href="https://www.riskinsight-wavestone.com/author/gautier-plante/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.riskinsight-wavestone.com/author/gautier-plante/</link>
	<description>Le blog cybersécurité des consultants Wavestone</description>
	<lastBuildDate>Wed, 08 Jul 2026 07:54:49 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.riskinsight-wavestone.com/wp-content/uploads/2024/02/Blogs-2024_RI-39x39.png</url>
	<title>Gautier PLANTE, Auteur</title>
	<link>https://www.riskinsight-wavestone.com/author/gautier-plante/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Sécurité CI/CD : attaque de chaîne d’approvisionnement depuis un développeur compromis</title>
		<link>https://www.riskinsight-wavestone.com/2026/07/securite-ci-cd-attaque-de-chaine-dapprovisionnement-depuis-un-developpeur-compromis/</link>
					<comments>https://www.riskinsight-wavestone.com/2026/07/securite-ci-cd-attaque-de-chaine-dapprovisionnement-depuis-un-developpeur-compromis/#respond</comments>
		
		<dc:creator><![CDATA[Gautier PLANTE]]></dc:creator>
		<pubDate>Wed, 08 Jul 2026 07:54:48 +0000</pubDate>
				<category><![CDATA[Cybersecurity & Digital Trust]]></category>
		<category><![CDATA[Eclairage]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[artefacts]]></category>
		<category><![CDATA[artifactory]]></category>
		<category><![CDATA[CI/CD]]></category>
		<category><![CDATA[CI/CD attacks]]></category>
		<category><![CDATA[CI/CD security]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Cloud security]]></category>
		<category><![CDATA[cybersecurity]]></category>
		<category><![CDATA[DevSecOps]]></category>
		<category><![CDATA[pipeline]]></category>
		<category><![CDATA[Remediation]]></category>
		<category><![CDATA[runners]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=30370</guid>

					<description><![CDATA[<p>Dans les environnements DevOps modernes, les pipelines CI/CD automatisent le développement, les tests et le déploiement du code, permettant une livraison rapide et scalable tout en élargissant significativement la surface d’attaque. Les audits CI/CD réalisés en 2025 et 2026 ont...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/07/securite-ci-cd-attaque-de-chaine-dapprovisionnement-depuis-un-developpeur-compromis/">Sécurité CI/CD : attaque de chaîne d’approvisionnement depuis un développeur compromis</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p style="text-align: justify;">Dans les <strong>environnements DevOps modernes</strong>, les <em>pipelines</em> CI/CD automatisent le développement, les tests et le déploiement du code, permettant une livraison rapide et scalable tout en élargissant significativement la surface d’attaque.</p>
<p style="text-align: justify;">Les audits CI/CD réalisés en 2025 et 2026 ont révélé que des <strong>identifiants exposés </strong>dans des <strong>dépôts</strong>, des <strong><em>runners</em> mal configurés</strong>, des <strong>stockages d’artefacts non sécurisés </strong>et des <strong>rôles cloud trop permissifs </strong>constituent autant de vecteurs d&rsquo;attaque que des acteurs malveillants peuvent exploiter afin d&rsquo;obtenir un accès persistant et fortement privilégié à l&rsquo;ensemble de l&rsquo;infrastructure.</p>
<p style="text-align: justify;">Une vue d’ensemble des outils DevOps est illustrée ci-dessous :</p>
<figure id="attachment_30332" aria-describedby="caption-attachment-30332" style="width: 911px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="size-full wp-image-30332" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/1-Outils-aux-usages-et-fonctions-multiples-pour-le-DevOps.png" alt="Outils aux usages et fonctions multiples pour le DevOps" width="911" height="422" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/1-Outils-aux-usages-et-fonctions-multiples-pour-le-DevOps.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/1-Outils-aux-usages-et-fonctions-multiples-pour-le-DevOps-412x191.png 412w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/1-Outils-aux-usages-et-fonctions-multiples-pour-le-DevOps-71x33.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/1-Outils-aux-usages-et-fonctions-multiples-pour-le-DevOps-768x356.png 768w" sizes="(max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30332" class="wp-caption-text">Outils aux usages et fonctions multiples pour le DevOps</figcaption></figure>
<p style="text-align: justify;">Une compromission à n’importe quelle étape du <em>pipeline</em> peut ouvrir une voie vers des systèmes plus sensibles.</p>
<figure id="attachment_30358" aria-describedby="caption-attachment-30358" style="width: 911px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-30358" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/2-Outils-DevOps-pouvant-constituer-un-moyen-rapide-pour-les-attaquants-dobtenir-un-acces-a-privileges-eleves-sur-le-systeme-dinformation.png" alt="Outils DevOps pouvant constituer un moyen rapide pour les attaquants d’obtenir un accès à privilèges élevés sur le système d’information" width="911" height="380" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/2-Outils-DevOps-pouvant-constituer-un-moyen-rapide-pour-les-attaquants-dobtenir-un-acces-a-privileges-eleves-sur-le-systeme-dinformation.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/2-Outils-DevOps-pouvant-constituer-un-moyen-rapide-pour-les-attaquants-dobtenir-un-acces-a-privileges-eleves-sur-le-systeme-dinformation-437x182.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/2-Outils-DevOps-pouvant-constituer-un-moyen-rapide-pour-les-attaquants-dobtenir-un-acces-a-privileges-eleves-sur-le-systeme-dinformation-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/2-Outils-DevOps-pouvant-constituer-un-moyen-rapide-pour-les-attaquants-dobtenir-un-acces-a-privileges-eleves-sur-le-systeme-dinformation-768x320.png 768w" sizes="(max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30358" class="wp-caption-text">Outils DevOps pouvant constituer un moyen rapide pour les attaquants d’obtenir un accès à privilèges élevés sur le système d’information</figcaption></figure>
<p style="text-align: justify;">Cet article décrit <strong>une chaîne d’attaque CI/CD représentative visant un environnement CI/CD, </strong>fondée sur des scénarios observés en conditions réelles. Il met en évidence les vecteurs d&rsquo;attaque les plus couramment exploités ainsi que les principales mesures de durcissement permettant de réduire la surface d&rsquo;attaque à chaque étape du pipeline, depuis le code source jusqu&rsquo;au déploiement en production.</p>
<p> </p>
<h2>La chaîne d’attaque: de la reconnaissance à la persistance</h2>
<h3>Reconnaissance et accès initial</h3>
<p style="text-align: justify;">La chaîne d’attaque débute généralement par <strong>une attaque de phishing ciblant les développeurs</strong> afin de <strong>voler des identifiants et des codes MFA</strong>, bien que le MFA puisse lui-même être contourné via le vol de <strong>jetons d’accès</strong> ou de <strong>détournement de sessions.</strong></p>
<figure id="attachment_30334" aria-describedby="caption-attachment-30334" style="width: 911px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-30334" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/3-Attaque-de-Phishing-reussie.png" alt="Attaque de Phishing réussie" width="911" height="479" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/3-Attaque-de-Phishing-reussie.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/3-Attaque-de-Phishing-reussie-363x191.png 363w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/3-Attaque-de-Phishing-reussie-71x37.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/3-Attaque-de-Phishing-reussie-768x404.png 768w" sizes="(max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30334" class="wp-caption-text">Attaque de Phishing réussie</figcaption></figure>
<p style="text-align: justify;">Il convient de noter que la <strong>compromission d’identifiants seule </strong>n’est <strong>pas toujours suffisante</strong> pour accéder directement à des portails administratifs sensibles. Les <strong>contrôles de sécurité</strong> autour des interfaces d’administration <strong>Microsoft 365</strong> ont été <strong>renforcés</strong> par des mécanismes de MFA ainsi que, le cas échéant, par des politiques d’accès conditionnel, limitant l’impact du phishing sur les accès hautement privilégiés.</p>
<p style="text-align: justify;">Cependant, <strong>dans les environnements d’entreprise modernes</strong> où <strong>la majorité des applications reposent sur le Single Sign-On (SSO),</strong> la compromission d’une session Microsoft (par exemple via le <strong>vol</strong> de <strong>cookies</strong> de <strong>session</strong>) peut donner aux attaquants accès à un large éventail de services interconnectés, incluant les dépôts de code et les plateformes CI/CD. Les attaquants utilisent généralement ce point d’entrée initial pour identifier les environnements de développement et <strong>établir une persistance</strong> via des mécanismes tels que les <strong>Jetons d&rsquo;accès personnels (PAT).</strong></p>
<p style="text-align: justify;">Un risque souvent négligé survient lorsqu’un <strong>compte utilisateur est désactivé</strong> au niveau du fournisseur d’identité (ex. <strong>Entra ID</strong>) mais n’est <strong>pas entièrement désactivé </strong>dans les plateformes de dépôt. Dans ce cas, <strong>des PATs précédemment émis</strong> peuvent rester valides, permettant à un attaquant de conserver un accès malgré la révocation du compte.</p>
<p style="text-align: justify;">D’autres vecteurs d’entrée incluent <strong>l’exploitation de CVE connues</strong> ainsi qu&rsquo;une mauvaise gestion des identifiants. De nombreuses vulnérabilités majeures sur les outils DevOps sont régulièrement découvertes, ce qui souligne la nécessité d’une gestion continue des vulnérabilités. <strong>L’exploitation</strong> d’une <strong>vulnérabilité critique</strong> peut directement <strong>fournir un accès privilégié à un outil de la chaîne</strong>.</p>
<p style="text-align: justify;">Exemples :</p>
<ul>
<li style="text-align: justify;"><span style="color: #808080;"><a style="color: #808080;" href="https://nvd.nist.gov/vuln/detail/cve-2024-23897"><strong>CVE-2024-23897</strong></a></span><strong> (Jenkins)</strong>, permettant à des attaquants non authentifiés de lire des fichiers arbitraires présents sur le contrôleur Jenkins, exposant ainsi des secrets sensibles,</li>
<li style="text-align: justify;"><span style="color: #808080;"><a style="color: #808080;" href="https://nvd.nist.gov/vuln/detail/cve-2023-7028"><strong>CVE-2023-7028</strong></a></span><strong> (GitLab)</strong>, dans laquelle les emails de réinitialisation de mot de passe pouvaient être envoyés vers une adresse électronique non vérifiée.</li>
<li style="text-align: justify;"><span style="color: #808080;"><a style="color: #808080;" href="https://nvd.nist.gov/vuln/detail/cve-2023-36561"><strong>CVE-2023-36561</strong></a></span><strong> (Azure DevOps Server)</strong>, une vulnérabilité d&rsquo;élévation de privilèges permettant à un attaquant d&rsquo;obtenir un accès non autorisé à certaines fonctionnalités d&rsquo;Azure DevOps Server, avec un impact potentiel sur les pipelines, les secrets et les ressources des projets.</li>
</ul>
<p> </p>
<p style="text-align: justify;"><strong><u>REMÉDIATION – Renforcer les contrôles d’accès aux dépôts de code source</u></strong></p>
<p style="text-align: justify;">Afin de réduire les risques liés à l&rsquo;accès initial, les organisations doivent mettre en œuvre des contrôles permettant d&#8217;empêcher les accès non autorisés, de détecter les mécanismes de persistance et de renforcer la gouvernance des identités.</p>
<p style="text-align: justify;"><em><u>Appliquer des politiques d’accès strictes et réduire l’exposition réseau</u></em></p>
<ul style="text-align: justify;">
<li>Eviter l’utilisation des <strong>comptes génériques ou partagés</strong>,</li>
<li>Utiliser des <strong>identités développeurs dédiées</strong>, séparées des comptes bureautiques standards (messagerie et outils collaboratifs), afin de réduire l’exposition au phishing et l’impact d’une compromission dans les environnements CI/CD,</li>
<li><strong>Imposer des mécanismes MFA résistants au phishing</strong> (clés FIDO2, certificats, etc),</li>
<li><strong>Mettre en place des politiques d’accès conditionnel</strong> basées sur des critères contextuels (localisation réseau, conformité des appareils).</li>
</ul>
<p style="text-align: justify;"><em><u>Mettre en place des mécanismes de détection de persistance</u></em></p>
<ul style="text-align: justify;">
<li><strong>Surveiller</strong> la création ou l’utilisation suspecte de <strong>PAT</strong> dans GitLab, ainsi que les activités anormales (ex. <strong>déploiements à des horaires inhabituels</strong>),</li>
<li>Surveiller l’ajout de <strong>nouvelles méthodes d’authentification dans Entra ID</strong>, notamment les méthodes sans mot de passe, après un événement de phishing.</li>
</ul>
<p style="text-align: justify;"><em><u>Réviser périodiquement les accès et supprimer les comptes inutilisés</u></em></p>
<ul>
<li style="text-align: justify;">Désactiver ou supprimer les <strong>comptes inutilisés ou inactifs,</strong></li>
<li style="text-align: justify;">Révoquer les accès des <strong>collaborateurs sortis de l’organisation</strong> sur tous les systèmes,</li>
<li style="text-align: justify;">Réaliser des revues d’accès périodiques, <strong>au minimum tous les six mois</strong> pour les <strong>utilisateurs</strong> <strong>à risque élevé.</strong></li>
</ul>
<p> </p>
<h3>Compromission des dépôts de code et des <em>pipelines</em></h3>
<p style="text-align: justify;"><strong>Les dépôts de code</strong> sont souvent <strong>directement intégrés aux <em>pipelines</em> CI/CD</strong>, ce qui signifie que toute modification du code peut déclencher automatiquement des processus de <em>build</em> et de déploiement. Ainsi, la compromission d’un compte développeur peut influencer la manière dont les applications sont construites et déployées.</p>
<p style="text-align: justify;">Pour <strong>réduire le risque de modifications non autorisées en production</strong>, les organisations <strong>protègent</strong> généralement les <strong>branches de production</strong> (ex. main ou master) via des <em>pull requests</em>, des validations et des contrôles automatisés. En revanche, les <strong>branches de développement</strong> sont souvent <strong>moins strictement contrôlées</strong> afin de favoriser la rapidité de développement et de test.</p>
<p style="text-align: justify;">Dans le scénario observé, l’attaquant <strong>cible la branche de développement</strong> et modifie le fichier de configuration du <em>pipeline</em> (gitlab-ci.yml), en y injectant <strong>une commande malveillante</strong> (visant à établir un accès distant) au sein d’un <strong><em>job</em> existant</strong>. Lors de l&rsquo;exécution du <em>pipeline</em>, cette commande est exécutée sur le <em>runner</em> CI/CD, ce qui permet à l&rsquo;attaquant d&rsquo;obtenir un accès distant à ce dernier.</p>
<figure id="attachment_30336" aria-describedby="caption-attachment-30336" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30336" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/4-Etablissement-dun-acces-distant-depuis-lenvironnement-dexecution-CICD.png" alt="Établissement d’un accès distant depuis l’environnement d’exécution CICD" width="911" height="574" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/4-Etablissement-dun-acces-distant-depuis-lenvironnement-dexecution-CICD.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/4-Etablissement-dun-acces-distant-depuis-lenvironnement-dexecution-CICD-303x191.png 303w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/4-Etablissement-dun-acces-distant-depuis-lenvironnement-dexecution-CICD-62x39.png 62w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/4-Etablissement-dun-acces-distant-depuis-lenvironnement-dexecution-CICD-768x484.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30336" class="wp-caption-text">Établissement d’un accès distant depuis l’environnement d’exécution CICD</figcaption></figure>
<p style="text-align: justify;"><strong>Une fois dans le <em>runner</em> CI/CD</strong>, l’attaquant peut alors <strong>exécuter du code arbitraire sur le <em>runner </em>CI/CD</strong> et, entre autres, énumérer les variables d’environnement contenant des <strong>paramètres de configurations et les secrets définis dans le projet GitLab</strong>.</p>
<p style="text-align: justify;">Cependant, il arrive que certains <strong>composants</strong> de la chaîne CI/CD <strong>ne sont pas dupliqués entre environnements</strong> pour des <strong>raisons de coûts. </strong>Dans ce cas précis, les secrets GitLab ne sont pas segmentés entre les environnements de production et de développement. Ainsi l’attaquant est en capacité de<strong> lister les secrets de production depuis le <em>runner </em>CI/CD de développement</strong>.</p>
<p style="text-align: justify;">Un exemple de <strong>variables</strong> <strong>d’environnement</strong> rencontrées dans les <em>pipelines</em> CI/CD est présenté ci-dessous.</p>
<figure id="attachment_30338" aria-describedby="caption-attachment-30338" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30338" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/5-Exemple-de-variables-de-production-accessibles-depuis-un-environnement-de-developpement.png" alt="Exemple de variables de production accessibles depuis un environnement de développement" width="911" height="404" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/5-Exemple-de-variables-de-production-accessibles-depuis-un-environnement-de-developpement.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/5-Exemple-de-variables-de-production-accessibles-depuis-un-environnement-de-developpement-431x191.png 431w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/5-Exemple-de-variables-de-production-accessibles-depuis-un-environnement-de-developpement-71x31.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/5-Exemple-de-variables-de-production-accessibles-depuis-un-environnement-de-developpement-768x341.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30338" class="wp-caption-text">Exemple de variables de production accessibles depuis un environnement de développement</figcaption></figure>
<p style="text-align: justify;">Ce flux d’attaque montre comment la manipulation de <em>pipeline</em> permet l’exécution de code dans le <em>runner</em> et l’extraction de variables sensibles de production depuis un environnement de développement.</p>
<figure id="attachment_30340" aria-describedby="caption-attachment-30340" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30340" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/6-Manipulation-du-depot-de-code.png" alt="Manipulation du dépôt de code" width="911" height="396" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/6-Manipulation-du-depot-de-code.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/6-Manipulation-du-depot-de-code-437x191.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/6-Manipulation-du-depot-de-code-71x31.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/6-Manipulation-du-depot-de-code-768x334.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30340" class="wp-caption-text">Manipulation du dépôt de code</figcaption></figure>
<p style="text-align: justify;">Parmi les identifiants récupérés dans l&rsquo;environnement CI/CD compromis<strong>, l&rsquo;attaquant obtient un jeton d&rsquo;accès à Nexus, système de gestion d&rsquo;artefacts</strong> utilisé pour stocker et distribuer les artefacts de <em>build</em> de confiance consommés par les pipelines situés en aval.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><strong><u>REMÉDIATION – Durcir la sécurité des dépôts de code</u></strong></p>
<p style="text-align: justify;">La sécurisation du dépôt de code est essentielle pour empêcher l’exploitation des <em>pipelines</em> CI/CD après un accès initial, car les dépôts contrôlent directement le <em>build</em> et le déploiement.</p>
<p style="text-align: justify;"><em><u>Durcir les dépôts pour limiter les déclenchements de pipeline</u></em></p>
<ul style="text-align: justify;">
<li>Configurer des <strong>branches protégées</strong> pour les branches de déploiement,</li>
<li><strong>Mettre en place des workflows d’approbation multi-niveaux</strong> pour les <em>merge requests</em> déclenchant des <em>pipelines</em> et <strong>interdire</strong> <strong>l’auto-approbation</strong>,</li>
<li>Utiliser la <strong>propriété du code (<em>ownership</em>)</strong> pour <strong>assigner</strong> et <strong>exiger</strong> <strong>l’approbation</strong> des <strong>responsables</strong> désignés sur les <strong>fichiers</strong> <strong>sensibles</strong> (ex. configuration CI/CD).</li>
</ul>
<p style="text-align: justify;"><em><u>Limiter la visibilité et les permissions</u></em></p>
<ul style="text-align: justify;">
<li><strong>Limiter les droits d’écriture</strong> aux seuls utilisateurs qui en ont besoin,</li>
<li><strong>Restreindre la visibilité des projets</strong> selon le <strong>principe du besoin de savoir</strong> (interne ou privé recommandé).</li>
</ul>
<p style="text-align: justify;"><em><u>Mettre en place une bonne hygiène de gestion des secrets</u></em></p>
<ul style="text-align: justify;">
<li><strong>Configurer des secrets CI/CD scopés au niveau projet</strong> et privilégier des identifiants éphémères,</li>
<li><strong>Détecter les secrets en clair le plus tôt possible</strong> (au moment du <em>commit</em> ou avant la publication du code) et les révoquer immédiatement en cas d’exposition,</li>
<li>Réaliser <strong>des revues périodiques</strong> (ex. audits internes, exercices de red team) sur des plateformes telles que les dépôts Git, Jira ou Confluence afin d&rsquo;identifier d&rsquo;éventuelles fuites de secrets passées inaperçues.</li>
</ul>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><strong><u>REMÉDIATION – Renforcer la sécurité des <em>runners</em> auto-hébergés</u></strong></p>
<p style="text-align: justify;">Les <em>runners</em> sont des composants critiques des <em>pipelines</em> CI/CD car ils exécutent le code et manipulent des données sensibles. S’ils sont compromis, ils peuvent permettre des mouvements latéraux, l’accès aux secrets ou la prise de contrôle de l’environnement.</p>
<p style="text-align: justify;"><em><u>Réduire l’exposition réseau et le périmètre d’exécution</u></em></p>
<ul style="text-align: justify;">
<li><strong>Restreindre le trafic réseau des <em>runners</em></strong> uniquement à ce qui est nécessaire à l’exécution des pipelines, et appliquer des <strong>contrôles réseau</strong> tels que des <strong><em>proxies</em></strong> et de la <strong>segmentation</strong> afin d’empêcher tout accès Internet non contrôlé et limiter les mouvements latéraux au sein des réseaux internes,</li>
<li><strong>Restreindre les déclenchements</strong> depuis des dépôts non fiables ou personnels.</li>
</ul>
<p style="text-align: justify;"><em><u>Considérer les runners comme des systèmes sensibles</u></em></p>
<ul style="text-align: justify;">
<li>Considérer les <em>runners</em> comme des serveurs critiques (Application régulière des <strong>correctifs</strong> du <strong>système d’exploitation</strong> et <strong>durcissement</strong>),</li>
<li>Déployer des solutions de <strong><em>Endpoint Detection and Response (EDR)</em></strong> pour la surveillance des processus, y compris dans les environnements conteneurisés.</li>
</ul>
<p style="text-align: justify;"><em><u>Utiliser des runners dédiés et éphémères</u></em></p>
<ul style="text-align: justify;">
<li>Privilégier des <strong><em>runners</em> dédiés par projet ou environnement</strong>. Le partage de <em>runners</em> entre plusieurs contextes augmente le risque de contamination inter-projets et d’escalade de privilèges,</li>
<li>Utiliser des <strong><em>runners</em> éphémères / autoscalés</strong> détruits après chaque job,</li>
<li>S’assurer que les <strong><em>runners</em> basés sur VM</strong> soient également <strong>éphémères</strong> et <strong>isolés</strong> afin qu’aucune donnée ou accès résiduel ne persiste entre les exécutions. En complément, s’appuyer <strong>uniquement sur des images de base durcies et de confiance</strong> (par exemple des <strong>golden</strong> <strong>images</strong> pour les <em>runners</em> VM et des images conteneurs approuvées), afin d’éviter toute exécution dans des environnements compromis ou non vérifiés.</li>
</ul>
<p style="text-align: justify;"><em><u>Sécuriser les runners containerisés</u></em></p>
<ul style="text-align: justify;">
<li><strong>N’autoriser que des images approuvées et de confiance dans les exécutions de pipelines</strong> afin d’éviter l’introduction de code malveillant via des images compromises ou non vérifiées,</li>
<li>Appliquer le <strong>principe du moindre privilège</strong> dans les environnements d’exécution conteneurisés,</li>
<li><strong>Éviter le mode privilégié</strong> et supprimer les capacités Linux inutiles,</li>
<li>Utiliser des moteurs de <strong><em>build</em> sécurisés (BuildKit / Buildah)</strong> lorsque le <strong>Docker-in-Docker</strong> est requis.</li>
</ul>
<p style="text-align: justify;"><em><u>Durcir les runners cloud</u></em></p>
<ul>
<li style="text-align: justify;">Lors de l’utilisation de <strong><em>runners</em> managés dans le cloud</strong>, appliquer une <strong>isolation stricte</strong> et un <strong>périmètre d’identité</strong>, <strong>restreindre l’accès aux métadonnées</strong> afin d’éviter l’exposition d’identifiants depuis l’infrastructure sous-jacente, et s’assurer que les rôles CI/CD sont gouvernés par des <strong>politiques IAM strictes en moindre privilège</strong> afin d’éviter des permissions excessives.</li>
</ul>
<p> </p>
<h3>Empoisonnement d’artefacts et attaques sur les dépendances</h3>
<p style="text-align: justify;">Dans les environnements de livraison logicielle, <strong>les systèmes de gestion d’artefacts</strong> stockent et distribuent les <strong>sorties générées par les pipelines CI/CD</strong>. Ces sorties, appelées <strong>artefacts</strong>, représentent les <strong>résultats packagés</strong> du processus de <em>build</em>, tels que des binaires compilés, des packages applicatifs ou des images de déploiement.</p>
<p style="text-align: justify;"><strong>Les artefacts</strong> sont <strong>stockés de manière centralisée</strong> afin d’assurer le versioning, la traçabilité et la réutilisation à travers plusieurs pipelines. En plus des <strong>sorties spécifiques aux applications</strong>, ces dépôts hébergent souvent également des <strong>composants partagés tels que des golden images</strong>, des <strong>bibliothèques réutilisables</strong> ou des <strong>dépendances <em>runtime</em> communes</strong>. Comme ils proviennent de processus de <em>build</em> considérés comme fiables, les <strong>artefacts</strong> sont généralement supposés sûrs et <strong>largement consommés par les pipelines</strong> <strong>en aval</strong> sans validation supplémentaire.</p>
<p style="text-align: justify;">Dans le scénario observé, <strong>l’attaquant</strong> <strong>utilise</strong> des <strong>identifiants</strong> précédemment obtenus pour <strong>s’authentifier</strong> au <strong>dépôt</strong> <strong>d’artefacts</strong> (<strong>Nexus</strong> dans cet exemple) avec des <strong>permissions</strong> <strong>excessives</strong> (lecture/écriture sur plusieurs catégories, plutôt que limitées à un périmètre applicatif unique), et obtient ainsi un accès à la fois aux artefacts de production et aux artefacts partagés.</p>
<p style="text-align: justify;">Parmi ces derniers, l’attaquant identifie un <strong>binaire</strong> <strong>Terraform</strong> <strong>légitime</strong> utilisé dans le processus de déploiement d’infrastructure (appelé ici le <strong>binaire</strong> <strong>tofu</strong>), qui est couramment approuvé et consommé par les pipelines CI/CD pour provisionner et gérer les ressources cloud.</p>
<figure id="attachment_30342" aria-describedby="caption-attachment-30342" style="width: 1394px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30342" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/7-Binaire-legitime-utilise-pour-le-deploiement-dinfrastructure.png" alt="Binaire légitime utilisé pour le déploiement d’infrastructure" width="1394" height="949" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/7-Binaire-legitime-utilise-pour-le-deploiement-dinfrastructure.png 1394w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/7-Binaire-legitime-utilise-pour-le-deploiement-dinfrastructure-281x191.png 281w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/7-Binaire-legitime-utilise-pour-le-deploiement-dinfrastructure-57x39.png 57w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/7-Binaire-legitime-utilise-pour-le-deploiement-dinfrastructure-768x523.png 768w" sizes="auto, (max-width: 1394px) 100vw, 1394px" /><figcaption id="caption-attachment-30342" class="wp-caption-text">Binaire légitime utilisé pour le déploiement d’infrastructure</figcaption></figure>
<p style="text-align: justify;">L’attaquant <strong>télécharge</strong> <strong>cet artefact localement</strong> et en <strong>modifie le contenu</strong> en injectant une <strong>logique malveillante</strong> tout en conservant sa fonctionnalité d’origine, et y <strong>intègre un comportement caché</strong> conçu pour interagir avec les services <strong>AWS Identity and Access Management (IAM)</strong> et <strong>AWS Security Token Service (STS)</strong> afin de récupérer des identifiants.</p>
<figure id="attachment_30344" aria-describedby="caption-attachment-30344" style="width: 827px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30344" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/8-Logique-de-gestion-des-identifiants-AWS-IAM-et-STS-dans-le-binaire-Terraform-malveillant.png" alt="Logique de gestion des identifiants AWS IAM et STS dans le binaire Terraform malveillant" width="827" height="716" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/8-Logique-de-gestion-des-identifiants-AWS-IAM-et-STS-dans-le-binaire-Terraform-malveillant.png 827w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/8-Logique-de-gestion-des-identifiants-AWS-IAM-et-STS-dans-le-binaire-Terraform-malveillant-221x191.png 221w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/8-Logique-de-gestion-des-identifiants-AWS-IAM-et-STS-dans-le-binaire-Terraform-malveillant-45x39.png 45w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/8-Logique-de-gestion-des-identifiants-AWS-IAM-et-STS-dans-le-binaire-Terraform-malveillant-768x665.png 768w" sizes="auto, (max-width: 827px) 100vw, 827px" /><figcaption id="caption-attachment-30344" class="wp-caption-text">Logique de gestion des identifiants AWS IAM et STS dans le binaire Terraform malveillant</figcaption></figure>
<p style="text-align: justify;">Le binaire modifié est ensuite <strong>téléversé de nouveau</strong> <strong>dans</strong> <strong>Nexus</strong>, remplaçant la version légitime par un <strong>artefact compromis.</strong></p>
<figure id="attachment_30346" aria-describedby="caption-attachment-30346" style="width: 744px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30346" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/9-Upload-du-binaire-malveillant.png" alt="Upload du binaire malveillant" width="744" height="613" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/9-Upload-du-binaire-malveillant.png 744w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/9-Upload-du-binaire-malveillant-232x191.png 232w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/9-Upload-du-binaire-malveillant-47x39.png 47w" sizes="auto, (max-width: 744px) 100vw, 744px" /><figcaption id="caption-attachment-30346" class="wp-caption-text">Upload du binaire malveillant</figcaption></figure>
<p style="text-align: justify;">À partir de ce moment, <strong>tout pipeline CI/CD consommant cet artefact</strong> récupère automatiquement le <strong>binaire compromis</strong> lors de la résolution des dépendances, car il est toujours considéré comme fiable.</p>
<figure id="attachment_30348" aria-describedby="caption-attachment-30348" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30348" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/10-Telechargement-du-binaire-malveillant-depuis-Nexus.png" alt="Téléchargement du binaire malveillant depuis Nexus" width="911" height="473" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/10-Telechargement-du-binaire-malveillant-depuis-Nexus.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/10-Telechargement-du-binaire-malveillant-depuis-Nexus-368x191.png 368w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/10-Telechargement-du-binaire-malveillant-depuis-Nexus-71x37.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/10-Telechargement-du-binaire-malveillant-depuis-Nexus-768x399.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30348" class="wp-caption-text">Téléchargement du binaire malveillant depuis Nexus</figcaption></figure>
<p style="text-align: justify;">Lors de son exécution, <strong>le binaire compromis active la charge malveillante intégrée</strong>, dont l’objectif est de <strong>récupérer le jeton d’accès AWS</strong> utilisé par le <strong>contexte d’exécution Terraform</strong> et de l’envoyer vers un serveur contrôlé par l’attaquant pour exfiltration. Il génère ensuite une <strong>sortie obfusquée</strong> <strong>encodée en Base32</strong>. Le décodage permet de reconstruire un objet JSON contenant des identifiants AWS (AccessKeyId, SecretAccessKey et SessionToken).</p>
<figure id="attachment_30350" aria-describedby="caption-attachment-30350" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30350" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/11-Payload-Base32-decode-revelant-des-identifiants-AWS.png" alt="Payload Base32 décodé révélant des identifiants AWS" width="911" height="494" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/11-Payload-Base32-decode-revelant-des-identifiants-AWS.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/11-Payload-Base32-decode-revelant-des-identifiants-AWS-352x191.png 352w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/11-Payload-Base32-decode-revelant-des-identifiants-AWS-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/11-Payload-Base32-decode-revelant-des-identifiants-AWS-768x416.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30350" class="wp-caption-text">Payload Base32 décodé révélant des identifiants AWS</figcaption></figure>
<p style="text-align: justify;">L’attaquant configure ensuite ces identifiants localement et utilise <strong>AWS STS</strong> (appel API GetCallerIdentity) pour confirmer l’usurpation d’identité du <em>runner</em> CI/CD.</p>
<figure id="attachment_30352" aria-describedby="caption-attachment-30352" style="width: 910px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30352" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/12-Acces-AWS.png" alt="Accès AWS" width="910" height="182" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/12-Acces-AWS.png 910w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/12-Acces-AWS-437x87.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/12-Acces-AWS-71x14.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/12-Acces-AWS-768x154.png 768w" sizes="auto, (max-width: 910px) 100vw, 910px" /><figcaption id="caption-attachment-30352" class="wp-caption-text">Accès AWS</figcaption></figure>
<p style="text-align: justify;">Cette illustration montre la chaîne d’attaque : compromission d’artefact, injection de logique malveillante, propagation via les pipelines CI/CD et vol final d’identifiants AWS menant à la compromission de l’environnement.</p>
<figure id="attachment_30354" aria-describedby="caption-attachment-30354" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30354" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/13-Compromission-Artifactory-corruption-des-dependances.png" alt="Compromission Artifactory - corruption des dépendances" width="911" height="450" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/13-Compromission-Artifactory-corruption-des-dependances.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/13-Compromission-Artifactory-corruption-des-dependances-387x191.png 387w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/13-Compromission-Artifactory-corruption-des-dependances-71x35.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/13-Compromission-Artifactory-corruption-des-dependances-768x379.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30354" class="wp-caption-text">Compromission Artifactory &#8211; corruption des dépendances</figcaption></figure>
<p style="text-align: justify;">En conséquence, l’attaquant obtient un accès non autorisé aux ressources AWS sous une identité légitime.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;"><strong><u>REMÉDIATION – Améliorer la gestion des accès à l’Artifactory</u></strong></p>
<p style="text-align: justify;">Les dépôts d’artefacts tels que Nexus sont des composants clés des pipelines CI/CD utilisés pour stocker et distribuer les dépendances et artefacts de <em>build</em>. Ce sont des cibles à forte valeur pour les attaques de chaîne d’approvisionnement.</p>
<p style="text-align: justify;">La sécurité nécessite des contrôles d’accès forts, une gouvernance des dépendances et une surveillance continue de l’intégrité.</p>
<p style="text-align: justify;"><em><u>Durcir la plateforme d’artefacts</u></em></p>
<ul style="text-align: justify;">
<li><strong>Autoriser une large lecture du dépôt uniquement sous deux conditions :</strong> depuis le service nécessaire (CI/CD) et si une gestion de mots de passe dans les dépendances existe,</li>
<li>Restreindre fortement les <strong>permissions d’écriture,</strong></li>
<li>Modifier les <strong>identifiants par défaut.</strong></li>
</ul>
<p style="text-align: justify;"><em><u>Analyse de composition logicielle (SCA)</u></em></p>
<ul style="text-align: justify;">
<li><strong>Appliquer une analyse de composition logicielle</strong> aux <strong>dépendances internes</strong> (stockées dans des dépôts locaux) ainsi qu’aux <strong>dépendances externes</strong> (récupérées depuis des dépôts distants ou proxy) afin de détecter les vulnérabilités connues et les composants obsolètes.</li>
</ul>
<p style="text-align: justify;"><em><u>Restreindre les sources d’artefacts</u></em></p>
<ul>
<li style="text-align: justify;"><strong>Maintenir une whitelist de dépôts de confiance</strong> afin de garantir que seules des sources approuvées sont utilisées,</li>
<li style="text-align: justify;"><strong>Appliquer des contrôles au niveau des dépôts </strong>pour exclure les versions non approuvées ou vulnérables, par exemple dans Nexus ou via des règles d’exclusion dans <strong>JFrog</strong> Artifactory,</li>
<li style="text-align: justify;"><strong>Empêcher les pipelines CI/CD d’accéder à des sources externes</strong> <strong>non</strong> <strong>fiables</strong> en imposant des frontières strictes entre dépôts.</li>
</ul>
<p> </p>
<h3>Compromission cloud via abus des workloads CI/CD</h3>
<p style="text-align: justify;">Dans les environnements cloud, <strong>les <em>runners</em> CI/CD</strong> sont généralement associés à des <strong>rôles IAM privilégiés</strong> pour effectuer des opérations de déploiement, incluant la création, modification et suppression de ressources d’infrastructure. Ces rôles incluent souvent des <strong>permissions larges</strong> telles que <strong>AdministratorAccess</strong> ou des politiques personnalisées trop permissives, permettant au <em>runner</em> d’interagir avec un large ensemble de services AWS, incluant les services de calcul, le stockage et la gestion des identités.</p>
<p style="text-align: justify;">Lorsqu’un <strong><em>runner</em> CI/CD est compromis</strong>, un attaquant peut <strong>directement abuser de ces privilèges</strong> sans nécessiter d’escalade supplémentaire. Cela peut conduire à un <strong>accès immédiat</strong> à des ressources sensibles telles que des <strong>buckets S3</strong> ou <strong>des bases de données RDS</strong>, permettant <strong>l’exfiltration de données</strong>. L’attaquant peut également exploiter les <strong>permissions</strong> <strong>IAM</strong> pour assumer d’autres rôles dans <strong>d’autres comptes ou projets AWS</strong>, facilitant les mouvements latéraux au sein de l’organisation. En outre, <strong>l’accès aux services de <em>compute</em> </strong>peut être utilisé pour déployer, modifier ou maintenir des charges malveillantes, aboutissant finalement à une <strong>compromission</strong> <strong>complète</strong> de <strong>l’environnement cloud</strong>.</p>
<p> </p>
<h2>De la compromission initiale du développeur à la prise de contrôle cloud : vue complète de la chaîne CI/CD</h2>
<p style="text-align: justify;">la chaîne d’attaque CI/CD commence par la compromission initiale du développeur jusqu’à la prise de contrôle complète de l’environnement cloud.</p>
<p style="text-align: justify;">L’illustration suivante met en évidence <strong>les opportunités clés de détection et de surveillance à travers l’écosystème CI/CD.</strong> Elle montre comment les données de télémétrie de sécurité peuvent être collectées et corrélées tout au long des <strong>différentes étapes de la chaîne d&rsquo;attaque CI/CD</strong>, depuis les <strong>activités de développement </strong>jusqu&rsquo;aux <strong><em>runners</em></strong> <strong>CI/CD</strong>, aux <strong>dépôts d&rsquo;artefacts</strong> et aux <strong>opérations IAM dans le cloud</strong>.</p>
<figure id="attachment_30356" aria-describedby="caption-attachment-30356" style="width: 911px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-30356" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/14-Chaine-dattaque-Detection.png" alt="Chaîne d’attaque - Détection" width="911" height="409" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/14-Chaine-dattaque-Detection.png 911w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/14-Chaine-dattaque-Detection-425x191.png 425w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/14-Chaine-dattaque-Detection-71x32.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/07/14-Chaine-dattaque-Detection-768x345.png 768w" sizes="auto, (max-width: 911px) 100vw, 911px" /><figcaption id="caption-attachment-30356" class="wp-caption-text">Chaîne d’attaque &#8211; Détection</figcaption></figure>
<p style="text-align: justify;">Dans l’ensemble, bien que les pipelines CI/CD élargissent significativement la surface d’attaque, ils offrent également de multiples points d’interception stratégiques où une journalisation centralisée et une surveillance de sécurité peuvent permettre une détection précoce et une réponse aux activités malveillantes.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">En conclusion, pour obtenir <strong>un <em>pipeline</em> CI/CD sécurisé</strong>, la sécurité doit être pensée de bout en bout, des environnements développeurs jusqu’aux systèmes de production.</p>
<p style="text-align: justify;"><strong>Les développeurs sont le premier maillon de la chaîne</strong>, et la sécurisation de leurs comptes est essentielle. Cela doit être complété par de bonnes pratiques telles que la gestion sécurisée des secrets et la sensibilisation régulière à la sécurité.</p>
<p style="text-align: justify;">Il est également crucial d’assurer une <strong>bonne isolation entre environnements</strong> et d’appliquer strictement le <strong>principe du moindre privilège</strong>, aussi bien pour les <strong>utilisateurs</strong> que pour les <strong>comptes</strong> <strong>de</strong> <strong>service</strong>.</p>
<p style="text-align: justify;">Les problèmes de sécurité ne peuvent pas être corrigés par de simples correctifs si la conception globale du <em>pipeline</em> est faible.</p>
<p style="text-align: justify;">Enfin, <strong>les cas d’usage de déploiement</strong> doivent être définis clairement dès le départ, car ils influencent directement l’architecture et les choix IAM.</p>
<p style="text-align: justify;">Au-delà des aspects techniques, <strong>la sécurité CI/CD doit être évaluée en continu via des audits techniques réguliers</strong> ainsi que des <strong>revues organisationnelles</strong> du cycle de développement afin de maintenir les risques sous contrôle.</p>
<p style="text-align: justify;">Pour une perspective plus large et des <strong>recommandations de haut niveau</strong> sur le positionnement du CI/CD comme pilier du système d’information, voir l’article RiskInsight : « <a href="https://www.riskinsight-wavestone.com/2025/09/ci-cd-la-nouvelle-pierre-angulaire-du-si/"><span style="color: #808080;">CI/CD: the new cornerstone of the information system</span></a><span style="color: #808080;"> </span>».</p>
<p> </p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/07/securite-ci-cd-attaque-de-chaine-dapprovisionnement-depuis-un-developpeur-compromis/">Sécurité CI/CD : attaque de chaîne d’approvisionnement depuis un développeur compromis</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/2026/07/securite-ci-cd-attaque-de-chaine-dapprovisionnement-depuis-un-developpeur-compromis/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Sécurité orientée cloud : Adaptation à une nouvelle réalité</title>
		<link>https://www.riskinsight-wavestone.com/2026/01/securite-orientee-cloud-adaptation-a-une-nouvelle-realite/</link>
					<comments>https://www.riskinsight-wavestone.com/2026/01/securite-orientee-cloud-adaptation-a-une-nouvelle-realite/#respond</comments>
		
		<dc:creator><![CDATA[Gautier PLANTE]]></dc:creator>
		<pubDate>Wed, 28 Jan 2026 09:08:21 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[ABAC]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[Azure]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Cloud security]]></category>
		<category><![CDATA[Coeur de confiance]]></category>
		<category><![CDATA[Coeur de confiance Cloud]]></category>
		<category><![CDATA[Cybersécurité]]></category>
		<category><![CDATA[enterprise access model]]></category>
		<category><![CDATA[IAM Cloud]]></category>
		<category><![CDATA[Landing Zone]]></category>
		<category><![CDATA[REX RedTeam]]></category>
		<category><![CDATA[sécurité cloud]]></category>
		<category><![CDATA[Socle de sécurité cloud]]></category>
		<category><![CDATA[Tiering]]></category>
		<category><![CDATA[Trust Core Cloud]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=28879</guid>

					<description><![CDATA[<p>Les audits et missions de redteam menés par Wavestone ont mis en évidence un déséquilibre frappant entre la maturité des protections des infrastructures on-premise et celles déployées dans le cloud. Les infrastructures on-premise sont généralement bien identifiées, maîtrisées et protégées...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/01/securite-orientee-cloud-adaptation-a-une-nouvelle-realite/">Sécurité orientée cloud : Adaptation à une nouvelle réalité</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Les audits et missions de redteam menés par Wavestone ont mis en évidence un <strong>déséquilibre frappant entre la maturité des protections des infrastructures on-premise et celles déployées dans le cloud</strong>. Les infrastructures on-premise sont généralement bien identifiées, maîtrisées et protégées selon des standards éprouvés, tandis que leurs équivalents cloud restent souvent sous-évalués en termes de risques et par conséquent insuffisamment sécurisés.</p>
<p> </p>
<h2>Le principe de tiering préconisé sur les infrastructures on-premise est-il applicable au cloud ?</h2>
<h3>Évolution du modèle de sécurité</h3>
<p>Dans les environnements on-premise, en particulier <strong>Active Directory</strong>, la sécurité des infrastructures s&rsquo;appuie généralement sur une <strong>segmentation stricte en trois niveaux (T0, T1 et T2)</strong> permettant d’isoler les systèmes d’administration critiques (T0), les serveurs (T1) et les postes utilisateurs (T2) afin de limiter les risques de propagation.</p>
<p>Cette organisation hiérarchique et périmétrique est inhérente au monde AD et ne peut être directement appliquée au cloud pour ces deux principales raisons :</p>
<ul>
<li><strong>Les portails sont centralisés</strong>: une grande diversité d’administrateurs aux droits différents interagit avec la même URL.</li>
<li><strong>La frontière entre les niveaux d’administration est complexifiée</strong>: le principe de permission fine, par rôle (RBAC), par attribut de ressources (ABAC), selon certaines conditions (provenance, risque, conformité, méthode d’authentification…) permet de configurer des accès très précisément, mais complexifie et floute la vision globale des permissions.</li>
</ul>
<p>Afin de proposer une réponse à ce nouveau paradigme, Microsoft a publié son Enterprise Access Model (<span style="color: #333399;"><a style="color: #333399;" href="https://learn.microsoft.com/en-us/security/privileged-access-workstations/privileged-access-access-model">décrit ici</a></span>), mettant en évidence 3 principaux plans : le <em>Control Plane</em>, <em>Management Plane</em> et <em>Data Plane</em>.</p>
<p>Ce modèle reprend la <strong>criticité « en cascade »</strong>, mais simplifiant :</p>
<ul>
<li>les 3 tiers en <strong>2 accès : administrateur vs utilisateur</strong><strong> </strong>;</li>
<li>les flux d’administration en accès au portail ;</li>
<li>la criticité des serveurs en les centralisant dans le <em>Data plane.</em></li>
</ul>
<p>Une illustration de l’ancien et du nouveau modèle :</p>
<figure id="attachment_28880" aria-describedby="caption-attachment-28880" style="width: 1669px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28880" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud.png" alt="Du modèle en trois tiers à la complexité du cloud" width="1669" height="818" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud.png 1669w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud-390x191.png 390w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud-71x35.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud-768x376.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Du-modele-en-trois-tiers-a-la-complexite-du-cloud-1536x753.png 1536w" sizes="auto, (max-width: 1669px) 100vw, 1669px" /><figcaption id="caption-attachment-28880" class="wp-caption-text"><em>Du modèle en trois tiers à la complexité du cloud</em></figcaption></figure>
<p> </p>
<p>Ce nouveau modèle met particulièrement en valeur 3 éléments :</p>
<ul>
<li>L’<strong>identité</strong> de l’utilisateur : accès privilégié vs accès utilisateur ;</li>
<li>La <strong>donnée</strong> et les services : au détriment des serveurs ;</li>
<li>La <strong>méthode d’accès</strong> aux portails web d’administration.</li>
</ul>
<p>L’inversion des importances entre « serveurs » et « portails web » abstrayant l’Active Directory est un changement radical.</p>
<p>Cependant, très peu (si ce n’est aucune) grande structure en est à ce niveau d’abandon de son SI « legacy », une grande partie sera dans un état transitoire où <strong>ce SI aura été virtualisé sur un Cloud</strong> afin de se séparer de ses datacenters, mais dont les modalités d’administration sont restées les mêmes.</p>
<p>Ces entreprises doivent donc traiter avec un <em>tiering model</em> désuet et un Enterprise Access Model décoléré des risques et besoins de sécurité actuels.</p>
<p>Pour la suite de cet article, nous prendrons comme exemple la société <strong>Tartampion</strong>, qui vient de terminer un programme <strong>Move-to-Cloud de 3 ans sur AWS</strong>. Le bilan est le suivant :</p>
<ul>
<li>Une Landing Zone a été créée, les applications déjà sur AWS y ont été intégrées</li>
<li>Les Data Center ont été fermés</li>
<li>Pris par le manque de temps et de moyens, une majeure partie du SI a été incorporé en lift and shift, incluant des solutions métiers, réseau, bastion et AD.</li>
</ul>
<p> </p>
<h3>Un SI hybride et virtualisé qui pose problème</h3>
<p>Selon l’EAM, les portails Azure et AWS sont affichés au même niveau (le <em>management plane</em>) au rang T1, sans autre forme de distinction. Or ces 2 environnements cloud sont à eux seuls le support de nombreux SI, utilisés par de multiples collaborateurs avec des niveaux de droits et d’impacts très variés.</p>
<p>Pour illustrer les précédents propos, mettons de côté l’aspect <em>Digital Workplace</em> (suite O365) et prenons 3 comptes AWS issus d’une Landing Zone de Tartampion, supportant différents services d’infrastructure :</p>
<figure id="attachment_28882" aria-describedby="caption-attachment-28882" style="width: 1695px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28882" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise.png" alt="Exemple de comptes AWS pour une entreprise" width="1695" height="345" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise.png 1695w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise-437x89.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise-71x14.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise-768x156.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Exemple-de-comptes-AWS-pour-une-entreprise-1536x313.png 1536w" sizes="auto, (max-width: 1695px) 100vw, 1695px" /><figcaption id="caption-attachment-28882" class="wp-caption-text"><em>Exemple de comptes AWS pour une entreprise</em></figcaption></figure>
<p> </p>
<p>En se fiant au référentiel proposé par Microsoft, ces <strong>trois comptes AWS devraient appartenir au Management plane</strong> avec un niveau de sécurité T1. Cependant, en cas de compromission d’un des 3 comptes par un attaquant, les impacts seraient très différents.</p>
<p>Si la Landing Zone est correctement implémentée, la compromission d’un compte de Sandbox n’aurait que très peu d’impact, tandis que celle du Master Account entrainerait celle de tous les comptes et ressources sous-jacentes.</p>
<p>Un exemple de découpage plus adéquat serait le suivant :</p>
<figure id="attachment_28884" aria-describedby="caption-attachment-28884" style="width: 1679px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28884" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model.png" alt="Tiering Model étendu à l’Enterprise Access Model" width="1679" height="674" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model.png 1679w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model-437x175.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model-71x29.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model-768x308.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Tiering-Model-etendu-a-lEnterprise-Access-Model-1536x617.png 1536w" sizes="auto, (max-width: 1679px) 100vw, 1679px" /><figcaption id="caption-attachment-28884" class="wp-caption-text"><em>Tiering Model étendu à l’Enterprise Access Model</em></figcaption></figure>
<p> </p>
<p>L’Enterprise Access Model par Microsoft est un <strong>framework macroscopique</strong> permettant d’initier une base de découpage des services cloud, mais <strong>qui reste à adapter</strong> selon la criticité des SI concernés.</p>
<p>Comment le rendre pertinent ? Pour répondre, il faut comprendre les scénarios d’attaque exploitant les services cloud.</p>
<p> </p>
<h2>Le Cloud vu de l’attaquant</h2>
<h3>5 principes du cloud favorisant les attaques</h3>
<p>Premièrement, les <strong>infrastructures cloud sont par défaut exposées sur Internet</strong>, contrairement aux ressources sensibles d’un SI. Ainsi, un phishing réussi conduit très probablement à un accès sur le Cloud.</p>
<p>Deuxièmement, les entreprises ont aujourd’hui des <strong>organisations hybrides</strong> (on-premise et cloud) :</p>
<ul>
<li>Les <strong>infrastructures cloud sont reliées au reste du SI on-premise</strong> ;</li>
<li>Les <strong>postes de travail</strong> peuvent également être <strong>hybrides</strong> et gérés par un service cloud comme Intune. Les permissions pour utiliser ce service sont gérées dans Entra ID ;</li>
<li>Les identités sont souvent des <strong>comptes synchronisés</strong>, cela concerne également les comptes d’administration.</li>
</ul>
<p>Les organisations hybrides peuvent faciliter les latéralisations entre le cloud et l’on-premise.</p>
<p>Troisièmement, la <strong>gestion des identités est très complexe avec différentes portées</strong>. Par exemple, Entra ID permet de gérer les accès à Azure et M365 aussi bien pour des utilisateurs, que des applications que des comptes de service.</p>
<p>Pour compléter, les notions de cybersécurité liées au Cloud sont encore relativement nouvelles et méconnues pour certaines équipes « legacy », comme le SOC/CERT, le réseau&#8230; Les <strong>ressources cloud les plus sensibles ne sont pas systématiquement identifiées, protégées et surveillées</strong>.</p>
<p>Enfin, même si des mécanismes de détection natifs sont présents, ils ne sont <strong>pas toujours interconnectés avec les SIEM/SOAR</strong>, ce qui ralentit les capacités d’intervention. Une récente opération Purple Team menée sur des infrastructures Azure et AWS a confirmé que les <strong>outils de détection natifs ont une capacité de détection limitée</strong>. Il s’agit d’un <strong>constat retrouvable dans les Red Team puisqu’avec une démarche « OpSec », les outils de détection cloud sont rarement capables d’identifier une attaque en cours</strong>.</p>
<p> </p>
<h3>REX de nos tests d’intrusion &amp; Red Team</h3>
<p>Issus des opérations de Red Team menées récemment, ces chemins d’attaques spécifiques aux environnements cloud sont témoin des impacts et des facilités qu’il est possible d’avoir pour s’élever en privilège jusqu’à obtenir des accès très permissifs :</p>
<figure id="attachment_28886" aria-describedby="caption-attachment-28886" style="width: 1689px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28886" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team.png" alt="Exemples de chemins d’attaques Cloud exploités en Red Team" width="1689" height="761" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team.png 1689w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team-424x191.png 424w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team-71x32.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team-768x346.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Exemples-de-chemins-dattaques-Cloud-exploites-en-Red-Team-1536x692.png 1536w" sizes="auto, (max-width: 1689px) 100vw, 1689px" /><figcaption id="caption-attachment-28886" class="wp-caption-text"><em>Exemples de chemins d’attaques Cloud exploités en Red Team</em></figcaption></figure>
<p> </p>
<p>Le premier scénario, effectué sur AWS, est décrit ci-dessous, les deux autres ont été analysés dans une série d’articles Risk Insight disponible <span style="color: #333399;"><a style="color: #333399;" href="https://www.riskinsight-wavestone.com/2025/01/enterprise-access-model-1-2-comment-definir-un-control-plane-pour-securiser-ladministration-cloud-et-empecher-une-compromission-a-grande-echelle/">ici</a></span>.</p>
<p> </p>
<p><span style="text-decoration: underline;"><em><strong>Reconnaissance et Accès initial</strong></em></span></p>
<p>Des catégories d’employés sont généralement <strong>ciblées afin de compromettre une personne avec des droits intéressants dans le SI (Développeur, Support, OPS…)</strong>. Un moyen souvent utilisé est d’utiliser du <strong>phishing</strong>. Les mécanismes de <a href="https://www.riskinsight-wavestone.com/2025/07/phishing-evilginx-pousse-a-ses-limites/"><span style="color: #333399;">phishing actuel</span></a> sont capables de contourner l’usage de mots de passe complexe et la plupart des méthodes de MFA (Multi-Factor Authentication).</p>
<p> </p>
<p><em><span style="text-decoration: underline;"><strong>Escalade de privilèges et mouvements latéraux</strong></span></em></p>
<p>Dans le premier scénario, un développeur compromis possédait des accès à une ferme Citrix. Les <strong>environnements Citrix ne sont pas simples à durcir complètement </strong>et quelques vulnérabilités d’échappement ont permis à la Red Team d’avoir un accès au serveur sous-jacent.</p>
<p>Les informations récoltées sur la machine ont indiqué que le serveur pouvait être hébergé sur AWS. Cela s’est vérifié en essayant d’<strong>accéder aux métadonnées AWS du serveur </strong>: l’instance avait des droits sur le compte AWS du client. La machine virtuelle du Citrix possédait le rôle « <strong>AmazonEC2FullAccess </strong>» lui permettant des actions de gestion sur les EC2 du même compte AWS.</p>
<p>À l’aide de la CLI AWS, les autres EC2 ont été listées. Un contrôleur de domaine du client était présent dans ce compte AWS. C’est une pratique courante de vouloir regrouper dans un même compte, généralement appelé « Shared Services », les services qui ont pour vocation d’être utilisés par plusieurs projets. Il est néanmoins recommandé de <strong>vérifier que la criticité des services partagés soit homogène de sorte à pouvoir appliquer un durcissement adéquat</strong> sur le compte, ou les séparer en plusieurs environnements.</p>
<p> </p>
<p><em><span style="text-decoration: underline;"><strong>Actions sur les trophées</strong></span></em></p>
<p>À partir du rôle AWS du serveur Citrix, <strong>une sauvegarde instantanée du contrôleur de domaine a été faite puis téléchargée</strong>. Les sauvegardes d’un contrôleur de domaine contiennent tous les fichiers de la machine, y compris les fichiers les plus sensibles, comme la base <em>ntds.dit</em>, qui contient les informations et secrets de tous les utilisateurs du domaine. L’exfiltration de cette base se traduit en la compromission totale du domaine AD concerné.</p>
<p>Ce scénario illustre l&rsquo;un des chemins d’attaques qui ont été exploités lors des opérations de redteam, facilité par le manque de visibilité sur les impacts que peuvent avoir une ressource compromise hébergée sur le cloud.</p>
<p> </p>
<h3>Des impacts plus rapides et plus forts</h3>
<p>Les attaques déjà possibles sur un SI on-premise peuvent être reproduites et même <strong>accélérées grâce aux fonctionnalités du cloud</strong>. Par exemple, le chiffrement de buckets S3 (service de stockage de fichiers) à partir d’une clé KMS (de chiffrement) d’un autre compte AWS imite le chiffrement massif de données, ou l’utilisation de la fonctionnalité « lifecycle » permet une suppression de tous les objets en moins de 24 heures, peu importe la quantité de données.</p>
<p>De nouvelles attaques sont également apparues comme le « <strong>Hijack de souscription</strong> » qui permet de <strong>rattacher un abonnement d’une organisation Azure à une autre</strong> et ainsi de voler toutes les données qu’il contient et empêcher les actions de remédiation. Cette attaque est réalisable en quelques clics depuis l’interface web Azure.</p>
<p> </p>
<h2>Identification et protection du cœur de confiance cloud</h2>
<h3>Identification du Cœur de confiance</h3>
<p><strong>Le cœur de confiance</strong> adopte une approche centrée sur la priorisation des actifs, qui diffère du modèle de tiering ou de l’Enterprise Access Model de Microsoft. Contrairement à ces modèles qui proposent un découpage prédéfini, il n’existe pas de grille universelle : chaque organisation doit identifier elle-même quelles ressources méritent le plus haut niveau de protection. L’idée est d’établir un <strong>cercle restreint de ressources critiques</strong> (qu’elles soient cloud ou on-premise) puis de <strong>déployer des niveaux de protection dégressifs à mesure que l’on s’éloigne de ce cœur</strong><strong>.</strong></p>
<p>L’identification du cœur de confiance repose sur <strong>deux grands critères</strong> :</p>
<ul>
<li><strong>Criticité métier</strong>: ce sont les ressources qui concentrent la valeur et la continuité des activités de l’entreprise. Si elles venaient à être perdues ou compromises, les conséquences seraient immédiates pour le fonctionnement quotidien et financièrement. Un environnement SharePoint contenant la donnée intellectuelle / brevets en est un exemple courant ;</li>
<li><strong>Criticité SI</strong>: il s’agit des ressources qui assurent l’administration du système d’information et qui disposent d’un niveau d’accès élevé. Leur compromission aurait un impact majeur sur l’ensemble du SI et permettrait d’avoir l’impact métier précédemment énoncé. On retrouve ici les contrôleurs de domaine ou encore les services d’IAM Cloud comme Entra ID et AWS Identity Center.</li>
</ul>
<p><em><strong> </strong></em></p>
<p>Cette cartographie n’est jamais totalement tranchée. Pour certains éléments, la posture à adopter reste plus floue, deux exemples l’illustrent bien :</p>
<ul>
<li><strong>L’EDR</strong>: élément de sécurité évident d’un SI, systématiquement déployé tant sur les postes de travail que sur les serveurs cloud <strong>et</strong> on-premise, sa console d’administration est de plus en plus souvent exposée sur internet, et permet d’exécuter des commandes arbitraires sur les équipements qui en sont équipés.</li>
<li><strong>Les chaînes CICD</strong>: un savant, mais complexe agglomérat d’applications s’appelant entre elles, dont l’accès (le gestionnaire de code : GitLab, GitHub…) est offert à l’ensemble des collaborateurs et les droits sur le SI (manipulé par les runners de déploiement) sont bien souvent administrateur de l’ensemble des infrastructures cloud. Sur l’ensemble des <strong>Red Team effectués en 2024 &amp; 2025, 80% ont exploité des vulnérabilités associées</strong> à ses solutions pour progresser dans leur opération, voire obtenir des trophées de compromission par ce biais.</li>
</ul>
<p> </p>
<p>Afin d’identifier le « noyau dur » du cœur de confiance, qu’on appellera <strong>socle de sécurité</strong>, on peut reprendre les préceptes de l’ancien T0 : la compromission d’un de ses éléments entrainerait probablement celles des autres, et par cascade de la majeure partie du SI.</p>
<p>En supposant que vos applications appliquent un correct cloisonnement interutilisateur (l’intégralité de vos sites SharePoint n’est pas accessible par tous, n’est-ce pas ?), les références aux prochaines applications seront à comprendre comme des <strong>accès administrateurs</strong> / super-utilisateurs à ces dernières, et non simple utilisateur.</p>
<p>Voici l’une des représentations possibles pour un cœur de confiance hybride :</p>
<figure id="attachment_28888" aria-describedby="caption-attachment-28888" style="width: 1680px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28888" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance.png" alt="Protéger l’essentiel, votre cœur de confiance" width="1680" height="998" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance.png 1680w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance-322x191.png 322w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance-66x39.png 66w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance-120x70.png 120w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance-768x456.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Proteger-lessentiel-votre-coeur-de-confiance-1536x912.png 1536w" sizes="auto, (max-width: 1680px) 100vw, 1680px" /><figcaption id="caption-attachment-28888" class="wp-caption-text"><em>Protéger l’essentiel, votre cœur de confiance</em></figcaption></figure>
<p> </p>
<p>Dans cette représentation, il y a côté on-premise :</p>
<ul>
<li><strong>Le T0</strong> avec ses contrôleurs de domaine, l’ADCS, et potentiellement la PKI, le bastion, la console EDR…</li>
<li><strong>Le T1</strong> en intégrant en plus les applications métiers à fort impact.</li>
</ul>
<p>Et côté Cloud, on retrouve :</p>
<ul>
<li>Au cœur le <strong>Control Plane</strong> (AWS Orga &amp; Identity Center, Entra ID) ainsi que les modules de la Landing Zone supportant le <strong>T0</strong> (si une partie du T0 est hébergée dans le Cloud) ;</li>
<li>En s’éloignant, les diverses <strong>consoles d’administration</strong> des suites de bureautique, et de management des infrastructures ou des applications.</li>
</ul>
<p>En établissant ce diagramme, il est important de garder à l’esprit que :</p>
<ul>
<li><strong>L’IT sert au métier</strong> et quand bien même la zone centrale du cœur de confiance est principalement occupée par des briques techniques, il convient d’inscrire ses solutions critiques ;</li>
<li><strong>Les</strong> <strong>chaînes de dépendance</strong> / compromission ont beaucoup d’impact sur les <strong>choix d’architecture</strong>: positionner un AD sur AWS, ou déployer un EDR sur un AD peut soudainement créer de nombreux chemins de compromission et de rebond entre les 2 mondes.</li>
</ul>
<p>Enfin, la construction d’un cœur de confiance ne peut pas se limiter à une logique de classification statique. Elle doit reposer sur <strong>une approche qui évalue la criticité de chaque actif et le risque qu’il introduit</strong> (une entreprise de développement de logiciel ne positionnera surement son Git au même niveau qu’une entreprise de travaux public).</p>
<p> </p>
<h3>Protection du cœur de confiance cloud</h3>
<p>La sécurité du cœur de confiance va reposer sur les deux traditionnels facteurs de risques :</p>
<ul>
<li><strong>Réduire l’impact</strong>: comment empêcher un utilisateur compromis ou malveillant de se connecter aux portails cloud sur un navigateur et de faire des actions sensibles en quelques clics, comme faire une sauvegarde d’un contrôleur de domaine hébergé sur une VM ou supprimer les sauvegardes de données de production ?</li>
<li><strong>Réduire la probabilité </strong>: comment réduire les risques d’accès illégitimes à partir d’un cookie de session volé par phishing, de la compromission d’un poste de travail ou de la réutilisation de mots de passe des utilisateurs ?</li>
</ul>
<p> </p>
<p><strong><em><span style="text-decoration: underline;">Protection du socle de sécurité cloud</span></em></strong></p>
<p>Concernant le « socle de sécurité » cloud il est possible de hiérarchiser les environnements par criticité selon cette échelle macroscopique :</p>
<figure id="attachment_28890" aria-describedby="caption-attachment-28890" style="width: 1641px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28890" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud.png" alt="Les principaux niveaux du socle de sécurité cloud" width="1641" height="678" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud.png 1641w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud-437x181.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud-71x29.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud-768x317.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Les-principaux-niveaux-du-socle-de-securite-cloud-1536x635.png 1536w" sizes="auto, (max-width: 1641px) 100vw, 1641px" /><figcaption id="caption-attachment-28890" class="wp-caption-text"><em>Les principaux niveaux du socle de sécurité cloud</em></figcaption></figure>
<p> </p>
<p>En fonction des équipes en charge et de la complexité de les inclure dans un niveau de protection particulièrement élevée, certaines organisations font le choix d’exclure des environnements dont la compromission ne permettrait pas une latéralisation dangereuse, telle que ceux de FinOps, de détection, le Digital Workplace…</p>
<p>La sécurisation du socle de sécurité cloud repose sur 2 principaux points :</p>
<ul>
<li>Une <strong>hygiène</strong> impeccable : configuration IAM épurée, respect du moindre privilège, procédure de déploiement, limitation des ressources au strict nécessaire…</li>
<li>Une couche de sécurité passive / active : déploiement de <strong>politiques</strong> (SCP sur AWS, Policy sur Azure) interdisant explicitement certaines actions, ou la manipulation de certaines ressources, et <strong>règles de détection</strong> afin de lever une alerte en cas de modification d’une politique ou l’occurrence d’un de ses évènements protégés ;</li>
</ul>
<p>Ces politiques peuvent efficacement être associées à une <strong>stratégie de tagging</strong> afin d’appliquer, en plus du modèle RBAC (Role Based Access Control) un modèle ABAC (Attribute Based Access Control).</p>
<p>Par exemple il est possible de tagger différentes ressources avec une clé « tiering » et une valeur entre « T0 », « T1 », « T2 » puis de déployer cet ensemble de stratégies :</p>
<ul>
<li>Interdire toute action visant une ressource taguée tiering par une identité dont la valeur de son propre tag tiering n’est pas équivalente ;</li>
<li>Interdire la manipulation de tag tiering, sauf pour un rôle bien précis.</li>
</ul>
<p>Et voilà comment, en quelques tags et 2 SCP, il est possible de répliquer le tiering model de Microsoft (quelques exceptions peuvent subvenir).</p>
<p> </p>
<p><strong><em><span style="text-decoration: underline;">Protections des identités et des accès</span></em></strong></p>
<p>Pour protéger les utilisateurs, 3 thématiques de durcissement peuvent être mises en place :</p>
<ul>
<li><strong>Identité </strong>: avec quel compte l’utilisateur se connecte-t-il aux interfaces d’administration cloud ? Comment les droits sont-ils obtenus ?</li>
<li><strong>MFA</strong> : l’identité est-elle protégée avec une authentification multifactorielle résistante aux attaques de phishing ?</li>
<li><strong>Provenance</strong>: à partir de quelle plateforme l’utilisateur se connecte-t-il aux interfaces d’administration cloud ? La plateforme est-elle managée, et saine ?</li>
</ul>
<p>Plusieurs niveaux de protection sont envisageables afin de protéger les administrateurs cloud :</p>
<figure id="attachment_28892" aria-describedby="caption-attachment-28892" style="width: 1684px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28892" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque.png" alt="Aligner le niveau de protection avec le niveau de risque" width="1684" height="835" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque.png 1684w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque-385x191.png 385w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque-71x35.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque-768x381.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Aligner-le-niveau-de-protection-avec-le-niveau-de-risque-1536x762.png 1536w" sizes="auto, (max-width: 1684px) 100vw, 1684px" /><figcaption id="caption-attachment-28892" class="wp-caption-text"><em>Aligner le niveau de protection avec le niveau de risque</em></figcaption></figure>
<p> </p>
<p>Afin de protéger le <strong>cœur de confiance restreint</strong>, représenté par les triples cadenas, il est recommandé de mettre en œuvre les <strong>facteurs d’authentification les plus robustes</strong>. Cela inclut l’utilisation d’un compte dédié à l’administration cloud, l’activation d’une authentification multifactorielle physique (exemple : clé de sécurité FIDO2) et le recours à un poste de travail spécifiquement réservé aux opérations sur ce cœur de confiance.</p>
<p>Pour les <strong>ressources plus éloignées</strong> du centre du cœur de confiance, symbolisées par les doubles cadenas, un <strong>niveau de sécurité durci, mais proportionné</strong> peut être appliqué, afin de renforcer la protection pour maitriser les coûts et réduire les contraintes excessives aux utilisateurs concernés.</p>
<p>Finalement, les <strong>méthodes les plus sécurisées sont également celles qui impliquent le plus de contraintes aux personnes concernées</strong>. Il faut maitriser les usages et prendre en compte des situations d’urgence, comme une intervention en astreinte nécessitant des privilèges très élevés.</p>
<p> </p>
<h3>Répéter les opérations</h3>
<p>À l’issue des phases d’identification et de protection, les ressources seront réparties dans les différentes couches du cœur de confiance.</p>
<p>Pour vérifier la bonne implémentation du cœur de confiance, un <strong>audit peut être conduit pour vérifier la bonne protection des ressources</strong> critiques qui le compose.</p>
<p>Un système d’information est toujours en évolution, mais les deux premières phases auront été faites à un instant <em>t</em>. De <strong>nouvelles ressources critiques peuvent être ajoutées, d’autres modifiées, voire supprimées</strong>. Il est primordial de <strong>refaire une évaluation régulière de son SI </strong>et de mettre à jour la répartition des ressources dans le cœur de confiance.</p>
<h2> </h2>
<p>En conclusion, la sécurité des systèmes d’information s’inscrit désormais dans un contexte de complexité croissante et de forte diversification des composants et services d’infrastructures.</p>
<p>Dans ce contexte, il apparaît de plus en plus complexe de définir un modèle de sécurité universel. Certains cadres conservent toute leur pertinence sur des périmètres bien identifiés : le tiering reste une référence pour la sécurisation de l’Active Directory, tout comme l’EAM pour des environnements Cloud fortement centrés sur l’écosystème Microsoft. Néanmoins, ces modèles atteignent rapidement leurs limites dès lors que l’on s’éloigne de ces cas d’usage spécifiques.</p>
<p>Pour la majorité des systèmes d’information, une approche fondée sur l’analyse des risques s’impose donc comme la plus pertinente. Identifier un cœur de confiance, définir clairement les actifs critiques <em>— les crown jewels —</em> et décliner les mesures de sécurité à partir de ces éléments permet de construire une posture de sécurité plus pragmatique, adaptée à la réalité du SI et capable d’évoluer avec lui.</p>
<p>Cette logique, moins normative mais plus contextualisée, constitue sans doute l’un des leviers majeurs pour concilier sécurité, agilité et pérennité des systèmes d’information.</p>






<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/01/securite-orientee-cloud-adaptation-a-une-nouvelle-realite/">Sécurité orientée cloud : Adaptation à une nouvelle réalité</a> est apparu en premier sur <a href="https://www.riskinsight-wavestone.com">RiskInsight</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.riskinsight-wavestone.com/2026/01/securite-orientee-cloud-adaptation-a-une-nouvelle-realite/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
