<?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>compromission - RiskInsight</title>
	<atom:link href="https://www.riskinsight-wavestone.com/tag/compromission/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.riskinsight-wavestone.com/tag/compromission/</link>
	<description>Le blog cybersécurité des consultants Wavestone</description>
	<lastBuildDate>Wed, 07 Jan 2026 09:42:57 +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>compromission - RiskInsight</title>
	<link>https://www.riskinsight-wavestone.com/tag/compromission/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 2)</title>
		<link>https://www.riskinsight-wavestone.com/2026/01/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-2/</link>
					<comments>https://www.riskinsight-wavestone.com/2026/01/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-2/#respond</comments>
		
		<dc:creator><![CDATA[Evenson Jeunesse]]></dc:creator>
		<pubDate>Wed, 07 Jan 2026 09:42:54 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[Amavis]]></category>
		<category><![CDATA[CERT]]></category>
		<category><![CDATA[CERT-W]]></category>
		<category><![CDATA[compromission]]></category>
		<category><![CDATA[forensic]]></category>
		<category><![CDATA[Incident response]]></category>
		<category><![CDATA[incident response CERT-W]]></category>
		<category><![CDATA[Investigation]]></category>
		<category><![CDATA[Réponse à incident]]></category>
		<category><![CDATA[Spam]]></category>
		<category><![CDATA[SPF]]></category>
		<category><![CDATA[Spoofing]]></category>
		<category><![CDATA[Zimbra]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=28600</guid>

					<description><![CDATA[<p>Il est temps d’entamer la seconde partie de notre investigation Zimbra. Si vous n’avez pas encore lu la première partie, il est vivement recommandé de de commencer ICI avant de poursuivre. Dans cette nouvelle partie, nous partirons du principe qu’un...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/01/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-2/">Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 2)</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;">Il est temps d’entamer la seconde partie de notre investigation Zimbra. Si vous n’avez pas encore lu la première partie, il est vivement recommandé de de commencer <a href="https://www.riskinsight-wavestone.com/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/"><span style="color: #000080;">ICI</span> </a>avant de poursuivre.</p>
<p style="text-align: justify;">Dans cette nouvelle partie, nous partirons du principe qu’un attaquant est parvenu à compromettre un compte Zimbra et que nous avons déjà identifié son point d’entrée (accès initial). Nous allons désormais analyser comment exploiter les journaux Zimbra pour identifier les actions malveillantes que l’attaquant aurait pu réaliser à partir de ses accès. Nous verrons ensuite quelles mesures de remédiation mettre en place pour prévenir ce type d’incident et y répondre efficacement.</p>
<p style="text-align: justify;">Installez-vous confortablement (et assurez-vous que votre café est encore chaud) : entrons sans plus attendre dans le vif du sujet !</p>
<p> </p>
<h2>Investiguer dans un environnement Zimbra</h2>
<p style="text-align: justify;">Maintenant que l’infrastructure et les journaux Zimbra n’ont <strong>plus de secrets pour vous,</strong> c’est le moment de <strong>passer au concret</strong>.</p>
<p style="text-align: justify;">Imaginez que vous êtes un analyste forensique, arrivé en avance de bon matin, quand soudain : <strong>le téléphone sonne</strong>. On vous appelle car plusieurs utilisateurs signalent que des courriels <strong>qu’ils n’auraient pas envoyés</strong> apparaissent dans leur dossier «<em>Envoyés</em>».</p>
<p style="text-align: justify;"><strong>C’est la panique générale</strong> !  Les utilisateurs n’osent plus se connecter à leur boîte mail et certains administrateurs commencent à se demander si <strong>l’infrastructure Zimbra elle-même</strong> ne serait pas <strong>compromise</strong>.</p>
<p style="text-align: justify;">Puisque vous maîtrisez Zimbra comme personne, c’est naturellement vers vous que l’équipe se tourne pour <strong>élucider cet incident</strong> !</p>
<p style="text-align: justify;">En tant qu’analyste forensique, beaucoup de questions vous viennent à l’esprit :</p>
<ul style="text-align: justify;">
<li><em>Est-ce que les comptes ont réellement été compromis ? Si oui, comment et depuis quand ?</em></li>
<li><em>Combien d’utilisateurs sont affectés ?</em></li>
<li><em>Quel est l’objectif de l’attaquant et quelles actions malveillantes ont été menées depuis ces comptes ?</em></li>
<li><em>Le serveur de messagerie ou d’autres composants Zimbra ont-ils été compromis ?</em></li>
<li><strong><em>Et, surtout</em></strong><em> : ai-je le temps de prendre un café </em><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2615.png" alt="☕" class="wp-smiley" style="height: 1em; max-height: 1em;" /><em> avant que la chasse aux informations ne commence ? </em></li>
</ul>
<p style="text-align: justify;">Afin de vous aider dans vos investigations, nous allons voir ensemble comment apporter des éléments de réponses via l’analyse des journaux Zimbra. Mais avant cela, voici un ensemble de conseils pour vous aider dans vos investigations</p>
<p style="text-align: justify;">Lors d’une réponse à incidents, il est facile de se sentir <strong>submergé</strong> par la <strong>quantité</strong> <strong>de journaux</strong> et <strong>d’événements</strong> à analyser. Il est donc important de garder un <strong>fil conducteur. </strong>Quelques réflexes simples permettent de ne pas perdre le cap :</p>
<ul style="text-align: justify;">
<li><strong>Confirmer</strong> : Vérifier les informations ayant mené à l’incident. Avant d’avancer dans les investigations, il faut s’assurer de la véracité de l’élément déclencheur. Cette base indéniable servira de pilier pour l’ensemble de l’investigation.</li>
<li><strong>Corréler </strong>: recouper les adresses IP et domaines suspectes avec d’autres sources (proxy, VPN, EDR, bases antivirales en ligne). Cela permet d’obtenir des informations complémentaires en relation avec l&rsquo;indicateur identifié.</li>
<li><strong>Pivoter </strong>: exploiter les informations collectées pour élargir l’analyse. Un attaquant peut par exemple réutiliser la même adresse IP ou le même user-agent pour cibler plusieurs comptes. À l’inverse, un compte compromis peut être utilisé depuis des adresses IP ou des user-agents différents. Pivoter permet de révéler d’autres indicateurs permettant d&rsquo;identifier l&rsquo;attaquant.</li>
<li><strong>Comparer les motifs </strong>: même sans accéder directement au contenu des courriels ou des pièces jointes, certains éléments peuvent révéler des similitudes (taille, nom de fichier identique, séquence d’actions répétée après la compromission d’un compte). Cette approche d’analyse comportementale peut aider à identifier plusieurs utilisateurs compromis par un même attaquant. Ces hypothèses doivent être formulées et manipulées avec prudence mais elles peuvent s’avérer intéressantes pour confirmer une intuition.</li>
<li><strong>Assurer la conservation des journaux </strong>: Cela peut sembler évident, mais dès la détection de l’incident, il est important de sécuriser la conservation des journaux. Cela passe par la collecte immédiate des logs sur l’ensemble de l’infrastructure Zimbra mais aussi par l’allongement de la période rétention pour éviter toute suppression automatique. Car soyons honnêtes : les logs qui disparaissent pile au moment où l’équipe forensique arrive, c’est malheureusement un grand classique… et une mésaventure dont vous vous passerez bien.</li>
</ul>
<p style="text-align: justify;">Même si ces conseils ne sont <strong>pas exhaustifs</strong>, ils offrent une bonne base pour réaliser une analyse à la fois <strong>rapide</strong> et <strong>complète</strong>.</p>
<p> </p>
<h2>Activité post compromission</h2>
<h3>Analyse des actions utilisateur</h3>
<p style="text-align: justify;"><strong>Quelle maîtrise !</strong> Vous avez réussi à remonter jusqu’au point d’entrée initial emprunté par l’attaquant pour compromettre les comptes utilisateurs. Vous avez identifié les adresses IP malveillantes, repéré l’User-Agent utilisé, et même débusqué d’autres comptes compromis grâce à ces informations. Bref, du travail propre et efficace. Impressionnant !</p>
<p style="text-align: justify;">Mais…. nous n’avons pas encore répondu une question cruciale : « <em>Quel était l’objectif de l’attaquant et quelles actions a-t-il menées depuis les comptes compromis ? </em><strong>»</strong></p>
<p style="text-align: justify;">Pour le découvrir, il va maintenant falloir analyser <strong>l’activité de l’attaquant à l’intérieur de l’infrastructure Zimbra</strong>. Une fois authentifié, un attaquant peut en effet :</p>
<ul style="text-align: justify;">
<li>Lancer une <strong>campagne de phishing interne ou externe</strong></li>
<li>Envoyer des messages visant à pousser un collègue, partenaire ou client à l’action (fraude au président, demande urgente fictive, etc.)</li>
<li><strong>Exfiltrer des données sensibles</strong> depuis les boîtes mail</li>
</ul>
<p style="text-align: justify;">Dans cette section, nous examinerons <strong>quelques exemples d’activités suspectes</strong> qui peuvent être identifiées à partir des journaux Zimbra.</p>
<p> </p>
<h4>Envoi d&rsquo;un grand nombre de courriels sur une courte période</h4>
<p style="text-align: justify;">Vous souhaitez déterminer si des comptes compromis ont été utilisés <strong>pour mener d&rsquo;autres tentatives de phishing </strong>en envoyant des <strong>e-mails</strong><strong> en masse</strong> à des <strong>destinataires internes</strong> ou <strong>externes</strong>. Malheureusement, Zimbra ne propose pas d&rsquo;événement natif vous permettant de récupérer directement cette information. Cependant, une petite commande <strong><em>grep</em></strong> vous permettra de parvenir à vos fins.</p>
<p style="text-align: justify;">La commande ci-dessous permet d’extraire <strong>le nombre de messages envoyés par chaque utilisateur</strong> sur une période précise (ici du <strong>21 au 27 novembre 2025</strong>) :</p>
<figure id="attachment_28660" aria-describedby="caption-attachment-28660" style="width: 1377px" class="wp-caption aligncenter"><img fetchpriority="high" decoding="async" class="size-full wp-image-28660" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Recuperation-du-nombre-de-courriels-envoyes-par-utilisateur-mailbox.log_.png" alt="Récupération du nombre de courriels envoyés par utilisateur (mailbox.log)" width="1377" height="444" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Recuperation-du-nombre-de-courriels-envoyes-par-utilisateur-mailbox.log_.png 1377w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Recuperation-du-nombre-de-courriels-envoyes-par-utilisateur-mailbox.log_-437x141.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Recuperation-du-nombre-de-courriels-envoyes-par-utilisateur-mailbox.log_-71x23.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/1-Recuperation-du-nombre-de-courriels-envoyes-par-utilisateur-mailbox.log_-768x248.png 768w" sizes="(max-width: 1377px) 100vw, 1377px" /><figcaption id="caption-attachment-28660" class="wp-caption-text"><em>Récupération du nombre de courriels envoyés par utilisateur (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Dans cet exemple, <strong><em>user25@wavestone.corp</em></strong> <strong>se démarque</strong> clairement avec un volume d’envoi <strong>largement supérieur à la normale</strong>. Un <strong>volume anormalement élevé</strong> de courriels émis par une boîte aux lettres sur une<strong> période courte</strong> constitue une <strong>activité suspecte</strong>.</p>
<p style="text-align: justify;">Dans un usage légitime, les envois massifs de courriels restent relativement rares et sont généralement associés à des <strong>adresses génériques</strong> ou à des <strong>systèmes de communication interne</strong> (ex. newsletters, annonces RH). Lorsqu’un <strong>compte utilisateur classique</strong> présente ce type de comportement, il est important :</p>
<ul style="text-align: justify;">
<li>D’identifier si c&rsquo;est une activité normale et récurrente de l&rsquo;utilisateur</li>
<li>De vérifier la plage horaire, l&rsquo;adresse IP et l&rsquo;user-agent d’émission</li>
<li>De vérifier si des pièces jointes suspectes ont été associées aux envois</li>
</ul>
<p style="text-align: justify;">Un envoi massif de courriels peut entraîner le déclenchement de <strong>mécanismes de protection</strong> intégrés à Zimbra, notamment les règles de <strong>quota</strong>. Ces seuils ont pour but de limiter le volume de messages émis par un compte sur une période donnée afin de prévenir l’abus, le <strong>spam</strong> ou les <strong>campagnes de phishing</strong>.</p>
<p style="text-align: justify;">Les deux commandes ci-dessous vous permettent de récupérer les événements liés aux dépassements de quota :</p>
<figure id="attachment_28662" aria-describedby="caption-attachment-28662" style="width: 1378px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-28662" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Recuperation-des-depassements-de-quota-mailbox.log_.png" alt="Récupération des dépassements de quota (mailbox.log)" width="1378" height="146" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Recuperation-des-depassements-de-quota-mailbox.log_.png 1378w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Recuperation-des-depassements-de-quota-mailbox.log_-437x46.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Recuperation-des-depassements-de-quota-mailbox.log_-71x8.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/2-Recuperation-des-depassements-de-quota-mailbox.log_-768x81.png 768w" sizes="(max-width: 1378px) 100vw, 1378px" /><figcaption id="caption-attachment-28662" class="wp-caption-text"><em>Récupération des dépassements de quota (mailbox.log)</em></figcaption></figure>
<figure id="attachment_28664" aria-describedby="caption-attachment-28664" style="width: 1375px" class="wp-caption aligncenter"><img decoding="async" class="size-full wp-image-28664" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Recuperation-des-depassements-de-quota-mail.log_.png" alt="Récupération des dépassements de quota (mail.log)" width="1375" height="187" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Recuperation-des-depassements-de-quota-mail.log_.png 1375w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Recuperation-des-depassements-de-quota-mail.log_-437x59.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Recuperation-des-depassements-de-quota-mail.log_-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/3-Recuperation-des-depassements-de-quota-mail.log_-768x104.png 768w" sizes="(max-width: 1375px) 100vw, 1375px" /><figcaption id="caption-attachment-28664" class="wp-caption-text"><em>Récupération des dépassements de quota (mail.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">L’apparition de messages d’erreur liés au dépassement de quota constitue un signal à <strong>ne pas ignorer</strong>, car :</p>
<ul style="text-align: justify;">
<li>Soit l’utilisateur légitime a dépassé accidentellement un quota</li>
<li>Soit le compte est utilisé de manière frauduleuse pour effectuer des envois massifs</li>
</ul>
<p style="text-align: justify;">Cet indicateur pouvant générer un <strong>grand nombre de faux positifs</strong>, il est recommandé de le <strong>corréler avec d’autres éléments</strong> afin d’en tirer des conclusions.</p>
<p style="text-align: justify;"> </p>
<h4>Envoi d&rsquo;un courriel à un grand nombre de destinataires</h4>
<p style="text-align: justify;">Pour éviter de déclencher une alerte de dépassement de quota, un attaquant averti peut adopter une stratégie plus « <em>subtile</em> ». Plutôt que d’envoyer des <strong>dizaines de courriels individuels</strong> (méthode bruyante), il peut choisir d’envoyer un <strong>unique message adressé à une longue liste de destinataires</strong>. Une manière d’optimiser son phishing.</p>
<p style="text-align: justify;">Heureusement pour vous, les journaux Zimbra permettent d’identifier le <strong>nombre de destinataires</strong> associés à chaque envoi, ce qui rend ce type de manœuvre détectable sans trop d’efforts.</p>
<p style="text-align: justify;">Les commandes ci-dessous permettent d&rsquo;identifier les e-mails envoyés à un <strong>grand nombre de destinataires </strong>:</p>
<figure id="attachment_28666" aria-describedby="caption-attachment-28666" style="width: 1377px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28666" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mail.log_.png" alt="Récupération des mails envoyés à plus de 100 destinataires (mail.log)" width="1377" height="144" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mail.log_.png 1377w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mail.log_-437x46.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mail.log_-71x7.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/4-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mail.log_-768x80.png 768w" sizes="auto, (max-width: 1377px) 100vw, 1377px" /><figcaption id="caption-attachment-28666" class="wp-caption-text"><em>Récupération des mails envoyés à plus de 100 destinataires (mail.log)</em></figcaption></figure>
<figure id="attachment_28668" aria-describedby="caption-attachment-28668" style="width: 1371px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28668" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mailbox.log_.png" alt="Récupération des mails envoyés à plus de 100 destinataires (mailbox.log)" width="1371" height="185" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mailbox.log_.png 1371w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mailbox.log_-437x59.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mailbox.log_-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/5-Recuperation-des-mails-envoyes-a-plus-de-100-destinataires-mailbox.log_-768x104.png 768w" sizes="auto, (max-width: 1371px) 100vw, 1371px" /><figcaption id="caption-attachment-28668" class="wp-caption-text"><em>Récupération des mails envoyés à plus de 100 destinataires (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Ici vous pouvez observer que l’utilisateur <strong><em>user25@wavestone.corp</em></strong> a envoyé un mail à <strong><em>211 </em>destinataires</strong>. Ce type de comportement est plutôt suspect.</p>
<p style="text-align: justify;">En pratique, il est rare qu’une <strong>adresse électronique personnelle</strong> envoie des messages à plusieurs dizaines de destinataires simultanément. Ce comportement est davantage associé à des <strong>boîtes aux lettres partagées</strong> ou les <strong>adresses génériques</strong> (ex. communication interne, service RH, annonces institutionnelles). Lorsqu’un compte utilisateur classique présente ce type de comportement, il est important :</p>
<ul style="text-align: justify;">
<li>D’identifier les pratiques de communication habituelles dans l’organisation</li>
<li>D’identifier si c&rsquo;est une activité normale et récurrente de l&rsquo;utilisateur </li>
<li>De vérifier la plage horaire, l&rsquo;adresse IP et l&rsquo;user-agent d’émission</li>
<li>De vérifier si des pièces jointes suspectes ont été associées aux envois</li>
</ul>
<p style="text-align: justify;">Afin de gagner du temps, il est également possible de <strong>valider directement auprès de l’utilisateur</strong> si l’envoi du courriel était légitime.</p>
<p style="text-align: justify;">L’exemple présenté ici permet d’identifier les mails comptant <strong>plus de 100 destinataires</strong>. Toutefois, selon ce que vous considérez comme un <strong>volume légitime</strong> et en fonction de la <strong>période </strong>couverte par les journaux analysés, <strong>ce seuil doit être</strong> <strong>adapté</strong> <strong>au</strong> <strong>contexte</strong> de votre recherche.</p>
<p style="text-align: justify;"> </p>
<h4>Téléversement de pièces jointes suspectes</h4>
<p style="text-align: justify;">Contrairement à la réception, le <strong>téléversement de pièces jointes suspectes</strong> et mieux journalisé par Zimbra. Chaque fois qu’un utilisateur joint un fichier à un nouveau courriel, Zimbra note soigneusement l’opération dans ses journaux.</p>
<p style="text-align: justify;">Grâce aux commandes ci-dessous, vous pouvez retrouver les <strong>pièces jointes attachées aux courriels </strong>par un éventuel utilisateur compromis :</p>
<figure id="attachment_28670" aria-describedby="caption-attachment-28670" style="width: 1374px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28670" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-1-2.png" alt="Récupération des évènements de téléversement de pièce jointe (mailbox.log) (1/2)" width="1374" height="184" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-1-2.png 1374w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-1-2-437x59.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-1-2-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/6-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-1-2-768x103.png 768w" sizes="auto, (max-width: 1374px) 100vw, 1374px" /><figcaption id="caption-attachment-28670" class="wp-caption-text"><em>Récupération des évènements de téléversement de pièce jointe (mailbox.log) (1/2)</em></figcaption></figure>
<figure id="attachment_28672" aria-describedby="caption-attachment-28672" style="width: 1377px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28672" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-2-2.png" alt="Récupération des évènements de téléversement de pièce jointe (mailbox.log) (2/2)" width="1377" height="147" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-2-2.png 1377w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-2-2-437x47.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-2-2-71x8.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/7-Recuperation-des-evenements-de-televersement-de-piece-jointe-mailbox.log-2-2-768x82.png 768w" sizes="auto, (max-width: 1377px) 100vw, 1377px" /><figcaption id="caption-attachment-28672" class="wp-caption-text"><em>Récupération des évènements de téléversement de pièce jointe (mailbox.log) (2/2)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">De la même manière que pour la réception de pièces jointes malveillantes, vous pourrez notamment rechercher dans les journaux :</p>
<ul style="text-align: justify;">
<li>le téléversement de <strong>pièces jointes aux extensions suspectes</strong> (ex. .htm, .html, .exe, .js, .arj, .iso, .bat, .ps1, ou encore des documents Office/PDF contenant des macros)</li>
<li>les fichiers <strong>déjà observés en amont</strong> lors des premières phases de l’incident (par exemple un document téléchargé par le patient zéro)</li>
<li>à corréler les activités de téléversement avec les adresses IP sources malveillantes ou les comptes identifiés comme compromis.</li>
</ul>
<p style="text-align: justify;">Cette liste n’étant <strong>pas exhaustive</strong>, il peut être pertinent de rechercher tout type de fichier qui vous semble adapté au <strong>contexte de votre investigation</strong>.</p>
<p style="text-align: justify;"> </p>
<h4>Suppression des traces</h4>
<p style="text-align: justify;">A présent que vous avez une bonne image de ce que l’attaquant a fait avec les comptes compromis. Vous êtes déçus car vous n’arrivez pas à <strong>retrouver les mails en question</strong>. Vous suspectez que l’attaquant a <strong>effacé ses traces</strong>. Mais comment le vérifier ?</p>
<p style="text-align: justify;">En effet après avoir envoyés des mails malveillant un attaquant averti peut tenter de <strong>dissimuler les traces</strong> auprès de l’utilisateur légitime de la boîte mail en <strong>supprimant les mails envoyés</strong> ou <strong>reçus</strong> <strong>en retour</strong>.</p>
<p style="text-align: justify;">Heureusement ces commandes permettront d’identifier les<strong> suppressions de mails </strong>effectuées dans Zimbra :</p>
<figure id="attachment_28680" aria-describedby="caption-attachment-28680" style="width: 1373px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28680" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/8-Recuperation-des-deplacements-dans-la-corbeille-mailbox.log_.png" alt="Récupération des déplacements dans la corbeille (mailbox.log)" width="1373" height="361" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/8-Recuperation-des-deplacements-dans-la-corbeille-mailbox.log_.png 1373w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/8-Recuperation-des-deplacements-dans-la-corbeille-mailbox.log_-437x115.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/8-Recuperation-des-deplacements-dans-la-corbeille-mailbox.log_-71x19.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/8-Recuperation-des-deplacements-dans-la-corbeille-mailbox.log_-768x202.png 768w" sizes="auto, (max-width: 1373px) 100vw, 1373px" /><figcaption id="caption-attachment-28680" class="wp-caption-text"><em>Récupération des déplacements dans la corbeille (mailbox.log)</em></figcaption></figure>
<figure id="attachment_28682" aria-describedby="caption-attachment-28682" style="width: 1375px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28682" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/9-Recuperation-suppressions-definitives-mail.log_.png" alt="Récupération suppressions définitives (mail.log)" width="1375" height="364" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/9-Recuperation-suppressions-definitives-mail.log_.png 1375w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/9-Recuperation-suppressions-definitives-mail.log_-437x116.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/9-Recuperation-suppressions-definitives-mail.log_-71x19.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/9-Recuperation-suppressions-definitives-mail.log_-768x203.png 768w" sizes="auto, (max-width: 1375px) 100vw, 1375px" /><figcaption id="caption-attachment-28682" class="wp-caption-text"><em>Récupération suppressions définitives (mail.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Dans un usage légitime, il n’est pas rare qu’un utilisateur <strong>supprime plusieurs courriels</strong> (ex. nettoyage de boîte de réception, gestion de newsletters). Cependant, la situation devient <strong>anormale</strong> lorsque la suppression intervient :</p>
<ul style="text-align: justify;">
<li><strong>Immédiatement </strong>après un <strong>envoi massif de mails</strong></li>
<li>Qu’elle cible spécifiquement les <strong>derniers messages envoyés</strong></li>
</ul>
<p style="text-align: justify;">Dans votre investigation, il faut garder en tête qu’un attaquant pourra également chercher à supprimer :</p>
<ul style="text-align: justify;">
<li>Les <strong>accusés de réception</strong> générés par ses envois</li>
<li>Les <strong>réponses automatiques</strong> (out-of-office, NDR) qui pourraient alerter la victime</li>
</ul>
<p style="text-align: justify;">Il est donc important de ne pas négliger les suppressions et de le <strong>corréler avec d’autres indicateurs</strong> (authentifications suspectes, envoi massif, dépassement de quota, connexions depuis des IP malveillante) afin d’évaluer la <strong>légitimité</strong> <strong>de ces dernières</strong>.</p>
<p> </p>
<h4>Exfiltration de données</h4>
<p style="text-align: justify;"><strong>Une question vous taraude encore</strong>… parmi les comptes compromis, certains appartenaient à des utilisateurs manipulant <strong>des données sensibles pour l’entreprise</strong>. Vous souhaitez donc déterminer si l’attaquant a tenté d’<strong>exfiltrer</strong> certains messages auxquels il a eu accès.</p>
<p style="text-align: justify;">Malheureusement pour vous, <strong>Zimbra ne journalise pas le téléchargement direct des mails</strong>. Après tout, la récupération via <strong>IMAP </strong>ou <strong>SMTP</strong>, consiste en réalité à un “<em>téléchargement</em>” du serveur vers le client mail. Il est donc difficile différencier un <strong>tranfert classique</strong> d’un <strong>téléchargement</strong>. Et du côté des logs Nginx (qui exposent le Webmail), même constat, impossible d’identifier précisément qu’un mail a été téléchargé.</p>
<p style="text-align: justify;">En guise de maigre compensation, Zimbra journalise certaines opérations internes, notamment les <strong>actions de copie</strong> réalisées dans la boîte mail. Un attaquant pourrait, par exemple, créer un dossier pour stocker des mails sensibles avant extraction.</p>
<p style="text-align: justify;">La commande suivante permet notamment de repérer <strong>une copie massive de messages</strong> dans un dossier (ici nommé « <em>Exfiltration</em> ») depuis le client Web :</p>
<figure id="attachment_28685" aria-describedby="caption-attachment-28685" style="width: 1254px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28685" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/10-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-1-2.png" alt="Récupération des événements de copie massive de mails (mailbox.log) (1/2)" width="1254" height="785" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/10-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-1-2.png 1254w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/10-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-1-2-305x191.png 305w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/10-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-1-2-62x39.png 62w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/10-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-1-2-768x481.png 768w" sizes="auto, (max-width: 1254px) 100vw, 1254px" /><figcaption id="caption-attachment-28685" class="wp-caption-text"><em>Récupération des événements de copie massive de mails (mailbox.log) (1/2)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">La commande suivante permet notamment de repérer <strong>une copie massive de messages</strong> dans un dossier depuis un client lourd IMAP :</p>
<figure id="attachment_28688" aria-describedby="caption-attachment-28688" style="width: 1129px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28688" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/11-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-2-2.png" alt="Récupération des événements de copie massive de mails (mailbox.log) (2/2)" width="1129" height="708" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/11-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-2-2.png 1129w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/11-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-2-2-305x191.png 305w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/11-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-2-2-62x39.png 62w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/11-Recuperation-des-evenements-de-copie-massive-de-mails-mailbox.log-2-2-768x482.png 768w" sizes="auto, (max-width: 1129px) 100vw, 1129px" /><figcaption id="caption-attachment-28688" class="wp-caption-text"><em>Récupération des événements de copie massive de mails (mailbox.log) (2/2)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Bien qu’il existe des cas légitimes (ex : sauvegarde manuelle par l’utilisateur), ce type d’activité doit <strong>attirer l’attention</strong>, surtout lorsqu’il est corrélé avec :</p>
<ul style="text-align: justify;">
<li>Des connexions depuis des adresses IP inhabituelles</li>
<li>Des authentifications suspectes</li>
<li>Des envois massifs de mails</li>
</ul>
<p style="text-align: justify;">Mais comme vous pouvez le constater, il est <strong>très difficile d’infirmer</strong> <strong>une</strong> <strong>exfiltration</strong>. Il faut donc considérer que, si une <strong>boîte est compromise</strong>, l’attaquant a potentiellement eu la possibilité de <strong>télécharger l’ensemble des courriels</strong> de l’utilisateur concerné.</p>
<p> </p>
<h3>Détection des solutions antivirus et antispam</h3>
<p style="text-align: justify;">On ne l’a pas trop abordé jusqu’à maintenant, mais il faut savoir que Zimbra intègre nativement <strong>Amavis</strong>, un composant « central » qui <strong>orchestre différents moteurs de sécurité</strong>. Ces moteurs permettent d’identifier des fichiers suspects, des campagnes de phishing ou encore des envois massifs de spam. Il est donc intéressant d’exploiter ces mécanismes de détection dans le cadre de l’analyse des activités d’un attaquant.</p>
<p style="text-align: justify;">Durant vos investigations, l’examen des messages générés par Amavis permet notamment de mettre en évidence :</p>
<ul>
<li style="text-align: justify;">Les <strong>messages bloqués</strong> avant qu’ils n’atteignent la boîte aux lettres de l’utilisateur (ex. tentatives de spoofing)</li>
<li style="text-align: justify;">Les <strong>pièces jointes malveillantes</strong> détectées et placées en quarantaine,</li>
<li style="text-align: justify;">Le <strong>non-respect de certaines politiques de sécurité</strong> définies sur la plateforme.</li>
</ul>
<p> </p>
<h4>Amavis</h4>
<p style="text-align: justify;">Il est possible de récupérer certains événements générés par<strong> Amavis </strong>avec les commandes suivantes :</p>
<figure id="attachment_28691" aria-describedby="caption-attachment-28691" style="width: 1124px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28691" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/12-Recuperation-des-evenements-amavis-mail.log_.png" alt="Récupération des événements amavis (mail.log)" width="1124" height="185" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/12-Recuperation-des-evenements-amavis-mail.log_.png 1124w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/12-Recuperation-des-evenements-amavis-mail.log_-437x72.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/12-Recuperation-des-evenements-amavis-mail.log_-71x12.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/12-Recuperation-des-evenements-amavis-mail.log_-768x126.png 768w" sizes="auto, (max-width: 1124px) 100vw, 1124px" /><figcaption id="caption-attachment-28691" class="wp-caption-text"><em>Récupération des événements amavis (mail.log)</em></figcaption></figure>
<figure id="attachment_28693" aria-describedby="caption-attachment-28693" style="width: 1127px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28693" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/13-Recuperation-des-evenements-amavis-mailbox.log_.png" alt="Récupération des événements amavis (mailbox.log)" width="1127" height="272" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/13-Recuperation-des-evenements-amavis-mailbox.log_.png 1127w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/13-Recuperation-des-evenements-amavis-mailbox.log_-437x105.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/13-Recuperation-des-evenements-amavis-mailbox.log_-71x17.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/13-Recuperation-des-evenements-amavis-mailbox.log_-768x185.png 768w" sizes="auto, (max-width: 1127px) 100vw, 1127px" /><figcaption id="caption-attachment-28693" class="wp-caption-text"><em>Récupération des événements amavis (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Les événements générés par Amavis étant <strong>nombreux</strong>, il peut être judicieux de concentrer vos recherches sur les détections liées au <strong>spam</strong> et au <strong>phishing</strong>. À noter que l’identification des messages de phishing a déjà été abordée dans une section précédente de cet article (« <em>Compromission du compte par attaque de phishing »</em>).</p>
<p> </p>
<h4>Spams entrants</h4>
<p style="text-align: justify;">Il peut être pertinent d’identifier les messages ayant généré des<strong> détections de spams entrants. </strong>Lorsqu’un message est classé comme spam, Zimbra génère des traces qui indiquent la<strong> raison de cette catégorisation.</strong></p>
<p style="text-align: justify;">Ces événements peuvent contenir <strong>plusieurs informations intéressantes</strong> :</p>
<ul style="text-align: justify;">
<li>Le compte concerné,</li>
<li>L’identifiant unique du message dans la boîte aux lettres,</li>
<li>L’adresse IP d’origine du mail,</li>
<li>Additionnellement dans le cas d&rsquo;un SpamReport :
<ul>
<li>Le résultat de l’analyse (champ isSpam),</li>
<li>L’action appliquée (par exemple : déplacement du dossier Inbox vers Junk),</li>
<li>Et parfois le destinataire du rapport utilisé pour l’apprentissage ou le signalement (par ex. une adresse dédiée spam@wavestone.corp).</li>
</ul>
</li>
</ul>
<p style="text-align: justify;">La commande suivante peut vous aider à <strong>identifier les événements liés au traitement des spams entrants :</strong></p>
<figure id="attachment_28696" aria-describedby="caption-attachment-28696" style="width: 1124px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28696" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/14-Recuperation-des-evenements-lie-aux-spams-entrantszimbra.log_.png" alt="Récupération des événements lié aux spams entrants (zimbra.log)" width="1124" height="456" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/14-Recuperation-des-evenements-lie-aux-spams-entrantszimbra.log_.png 1124w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/14-Recuperation-des-evenements-lie-aux-spams-entrantszimbra.log_-437x177.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/14-Recuperation-des-evenements-lie-aux-spams-entrantszimbra.log_-71x29.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/14-Recuperation-des-evenements-lie-aux-spams-entrantszimbra.log_-768x312.png 768w" sizes="auto, (max-width: 1124px) 100vw, 1124px" /><figcaption id="caption-attachment-28696" class="wp-caption-text"><em>Récupération des événements lié aux spams entrants (zimbra.log)</em></figcaption></figure>
<figure id="attachment_28698" aria-describedby="caption-attachment-28698" style="width: 1127px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28698" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/15-Recuperation-des-evenements-lie-aux-spams-entrantsmailbox.log_.png" alt="Récupération des événements lié aux spams entrants (mailbox.log)" width="1127" height="154" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/15-Recuperation-des-evenements-lie-aux-spams-entrantsmailbox.log_.png 1127w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/15-Recuperation-des-evenements-lie-aux-spams-entrantsmailbox.log_-437x60.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/15-Recuperation-des-evenements-lie-aux-spams-entrantsmailbox.log_-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/15-Recuperation-des-evenements-lie-aux-spams-entrantsmailbox.log_-768x105.png 768w" sizes="auto, (max-width: 1127px) 100vw, 1127px" /><figcaption id="caption-attachment-28698" class="wp-caption-text"><em>Récupération des événements lié aux spams entrants (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Les détections de spam générant de <strong>nombreux faux positifs</strong>, il peut être pertinent de <strong>réduire</strong> <strong>au maximum</strong> le <strong>périmètre</strong> <strong>de</strong> <strong>recherche</strong> (par exemple en ciblant une période précise ou un ensemble d’utilisateurs spécifiques).</p>
<p> </p>
<h4>Spams sortants</h4>
<p style="text-align: justify;">Le mal ne vient pas toujours de l’extérieur. Certains mails malveillants <strong>envoyés depuis des comptes internes compromis</strong> vers des destinataires externes peuvent laisser des <strong>traces très intéressantes</strong> dans les journaux Zimbra. En effet, si le message envoyé par le compte compromis est <strong>bloqué par la solution antispam du serveur mail destinataire</strong>, ce dernier renverra une notification d’erreur au serveur Zimbra pour signaler le refus.</p>
<p style="text-align: justify;">Analyser ces <strong>messages de non-livraison (NDR)</strong> peut alors vous mettre la puce à l’oreille :<br />cela peut révéler qu’un utilisateur est compromis… ou qu’un compte a été utilisé pour <strong>tenter d’envoyer des courriels malveillants</strong>.</p>
<p style="text-align: justify;">Il est possible d’extraire ces rejets de mails grâce à la commande suivante :</p>
<figure id="attachment_28700" aria-describedby="caption-attachment-28700" style="width: 1130px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28700" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/16-Recuperation-des-evenements-lie-aux-spams-sortants.png" alt="Récupération des événements lié aux spams sortants" width="1130" height="188" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/16-Recuperation-des-evenements-lie-aux-spams-sortants.png 1130w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/16-Recuperation-des-evenements-lie-aux-spams-sortants-437x73.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/16-Recuperation-des-evenements-lie-aux-spams-sortants-71x12.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2026/01/16-Recuperation-des-evenements-lie-aux-spams-sortants-768x128.png 768w" sizes="auto, (max-width: 1130px) 100vw, 1130px" /><figcaption id="caption-attachment-28700" class="wp-caption-text"><em>Récupération des événements lié aux spams sortants</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Les spams sortants sont généralement peu nombreux. Toutefois, leur analyse ne devient réellement utile qu’en cas de <strong>tentative de latéralisation </strong>de l’attaquant vers des <strong>comptes mail externes</strong>.</p>
<p> </p>
<h2>Mesures de remédiations</h2>
<p style="text-align: justify;"><strong>Vous avez mené votre investigation tambour battant</strong> : utilisateurs compromis identifiés, adresses IP malveillantes répertoriées, activités suspectes décortiquées… bref, vous avez déroulé le fil de l’attaque avec une précision chirurgicale. Il est maintenant temps de passer à l’étape suivante : <strong>la remédiation</strong>. </p>
<p style="text-align: justify;">Celle-ci vise avant tout à <strong>supprimer les accès</strong> <strong>de l’attaquant</strong> à l’infrastructure, à mettre en place des mécanismes de <strong>détection </strong>capables de <strong>prévenir de nouvelles tentatives de compromission</strong> et à <strong>renforcer la sensibilisation</strong> des utilisateurs afin de limiter l’impact des campagnes de phishing <strong>en cours</strong> et <strong>à venir</strong>.</p>
<p style="text-align: justify;">Via la <strong>collecte les différents indicateurs</strong> liés à la campagne de phishing (comptes compromis ou suspectés de l’être, adresses e-mail, adresses IP et domaines malveillants, etc.), il est recommandé de mettre en œuvre une série d’actions <strong>correctives</strong> et <strong>préventives </strong>(non exhaustives): </p>
<ul style="text-align: justify;">
<li><strong>Réinitialiser les mots de passe des comptes suspects </strong>: Pour tout utilisateur compromis ou suspecté de l&rsquo;avoir été, une réinitialisation du mot de passe est nécessaire.</li>
<li><strong>Bloquer les domaines, adresses IP et adresses électroniques malveillantes </strong>: Les éléments d’infrastructure utilisés par l’attaquant (domaines, IPs, expéditeurs) doivent être bloqués via les solutions réseaux disponibles (proxy, pare-feu, filtres mail) dès leur détection. Cela limitera les risques de propagation.</li>
<li><strong>Effectuer un scan antivirus/EDR sur les postes des utilisateurs compromis</strong> : Les postes de travail des utilisateurs compromis doivent faire l’objet d’une analyse antivirus ou EDR afin de :
<ul>
<li>Détecter et supprimer tout fichier malveillant éventuel</li>
<li>Vérifier que les fichiers liés au phishing ne sont plus présents sur le poste</li>
</ul>
</li>
<li><strong>Renforcer la sensibilisation des utilisateurs </strong>: Une communication sur les campagnes de phishing en cours doit être adressée aux utilisateurs afin de prévenir de nouvelles compromissions. Des campagnes régulières de sensibilisation au phishing sont fortement conseillées, en particulier à destination des utilisateurs ayant été compromis.</li>
<li><strong>Mettre en place l’authentification multifacteur (MFA) pour l’accès aux mails Zimbra </strong>: La mise en œuvre d’un second facteur d’authentification est fortement recommandée pour sécuriser l’accès aux boîtes mail. Une telle mesure peut être perçu comme contraignant, l’usage d’un SSO (Single Sign-On) avec MFA unique permet de limiter cette friction tout en renforçant la sécurité globale des authentifications.</li>
<li><strong>Déployer une solution spécialisée de filtrage et de détection de phishing </strong>: il est recommandé de mettre en place une solution spécialisée dans la détection d’activités malveillantes dans les environnements de messagerie. La solution mise en place doit permettre d’identifier :
<ul>
<li>Les connexions depuis des IPs inhabituelles</li>
<li>Les tentatives de bruteforce sur les comptes utilisateurs</li>
<li>L’envoi massif de mails à de nombreux destinataires</li>
<li>L’usage de pièces jointes ou de liens suspects vers des domaines non fiables</li>
<li>Les campagnes de phishing actives (identifiées par un service CTI par exemple)</li>
</ul>
</li>
</ul>
<ul style="text-align: justify;">
<li><strong>Assurer la conservation des journaux Zimbra : </strong>Il est important de sécuriser la collecte et la conservation des journaux. Pour cela, il est recommandé de centraliser les logs de l’ensemble de l’infrastructure Zimbra sur un serveur externe à cette infrastructure. Cette approche garantit que, même en cas de compromission, de modification ou de chiffrement des serveurs Zimbra, les journaux restent intacts et consultables, permettant ainsi de mener des investigations forensiques fiables.</li>
</ul>
<p style="text-align: justify;">Bien que non exhaustives, ces mesures de remédiation vous permettront de <strong>restaurer la confiance</strong> dans votre infrastructure Zimbra et dans les comptes utilisateurs. Il sera toutefois nécessaire de maintenir un effort continu de <strong>surveillance</strong> et <strong>d’amélioration de la posture de sécurité</strong> afin de s’adapter aux <strong>menaces futures</strong>.</p>
<h1> </h1>
<p style="text-align: justify;">Au terme de cette petite enquête, une chose est sûre : si l’attaquant lui peut faire le choix de la facilité, l’analyste forensique, lui, n’a pas cette chance. Entre les <strong>journaux éparpillés</strong> (ou parfois <strong>manquants</strong>), les <strong>témoignages discordants</strong> des utilisateurs ou encore le <strong>manque de visibilité</strong> sur certains événements Zimbra : mener l’investigation revient parfois à <strong>résoudre un Rubik’s Cube</strong>… <strong>dans le noir</strong>… <strong>avec des moufles</strong>.</p>
<p style="text-align: justify;">Mais avec une <strong>bonne méthodologie</strong> et <strong>quelques réflexes</strong>, Zimbra vous révèlera bien plus d’informations qu’on ne pourrait le croire au premier abord. Ses journaux constituent une <strong>véritable mine d’or</strong>, à condition de ne <strong>pas s’y perdre</strong>.</p>
<p style="text-align: justify;">In fine, cet article n’a pas la prétention de transformer chaque lecteur en <strong>maître Jedi du forensique Zimbra</strong>… mais s’il peut vous éviter de passer deux jours à tenter de <strong>décoder les journaux Zimbra</strong> ou à chercher où <strong>dénicher la bonne information</strong>, alors l’objectif est atteint !</p>
<p style="text-align: justify;">Et comme on le dit assez souvent, dans la cybersécurité comme ailleurs, <strong>mieux vaut prévenir que guérir</strong>. Alors durcissez votre infrastructure Zimbra, sauvegardez vos journaux, sensibilisez vos utilisateurs… et surtout, ne négligez pas la réserve de café !</p>
<p> </p>
<h1>Références</h1>
<ul>
<li><a href="https://wiki.zimbra.com/wiki/Log_Files"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Log_Files</span></a></li>
<li><a href="https://wiki.zimbra.com/wiki/Troubleshooting_Course_Content_Rough_Drafts-Zimbra_Architecture_Component_Overview"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Troubleshooting_Course_Content_Rough_Drafts-Zimbra_Architecture_Component_Overview</span></a></li>
<li><a href="https://wiki.zimbra.com/wiki/Trouble_Shooting_Spam_Score_Changes"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Trouble_Shooting_Spam_Score_Changes</span></a></li>
</ul>
<p> </p>
<p> </p>




<p>Cet article <a href="https://www.riskinsight-wavestone.com/2026/01/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-2/">Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 2)</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/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-2/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 1)</title>
		<link>https://www.riskinsight-wavestone.com/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/</link>
					<comments>https://www.riskinsight-wavestone.com/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/#respond</comments>
		
		<dc:creator><![CDATA[Evenson Jeunesse]]></dc:creator>
		<pubDate>Thu, 18 Dec 2025 09:07:03 +0000</pubDate>
				<category><![CDATA[Deep-dive]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[CERT]]></category>
		<category><![CDATA[CERT-W]]></category>
		<category><![CDATA[compromission]]></category>
		<category><![CDATA[forensic]]></category>
		<category><![CDATA[Incident response]]></category>
		<category><![CDATA[incident response CERT-W]]></category>
		<category><![CDATA[Investigation]]></category>
		<category><![CDATA[Réponse à incident]]></category>
		<category><![CDATA[SPF]]></category>
		<category><![CDATA[Spoofing]]></category>
		<category><![CDATA[Zimbra]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=28432</guid>

					<description><![CDATA[<p>Les attaques les plus simples sont souvent les meilleures. Dans la majorité des entreprises, les portails d’accès aux messageries sont exposés sur internet et ne bénéficient pas toujours de mécanismes de contrôle d’accès suffisants. De plus, certains services de messagerie...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/">Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 1)</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;">Les attaques les plus <strong>simples</strong> sont souvent les <strong>meilleures</strong>.</p>
<p style="text-align: justify;">Dans la majorité des entreprises, les <strong>portails d’accès aux messageries</strong> sont <strong>exposés sur internet </strong>et ne bénéficient pas toujours de <strong>mécanismes de contrôle d’accès suffisants</strong>. De plus, certains services de messagerie proposent des<strong> fonctionnalités étendues</strong> dépassant la simple consultation des courriels, telles que le <strong>partage de fichiers</strong> ou l’accès à des <strong>applications collaboratives</strong>.</p>
<p style="text-align: justify;">Les services de messagerie peu sécurisés représentent donc <strong>une cible de premier choix pour les attaquants</strong>. En effet, la <strong>compromission d’une boîte mail </strong>permet par la suite de <strong>lancer des campagnes de phishing</strong>, d’<strong>accéder à des données sensibles</strong>, de <strong>réaliser des actions de fraude</strong> ou encore d&rsquo;obtenir<strong> l’accès</strong> <strong>à d’autres services.</strong></p>
<p style="text-align: justify;">Au <strong>CERT-W</strong>, nous intervenons régulièrement sur ce type de compromissions. En particulier, plusieurs de nos investigations en 2025 ont impliqué la <strong>compromission de comptes de messagerie</strong> <strong>Zimbra</strong>, une solution utilisée dans de nombreuses organisations publiques et privées. Face à ces incidents, nous nous sommes aperçus d’un <strong>manque criant de documentation</strong> <strong>forensique</strong> spécifique aux infrastructures Zimbra.</p>
<p style="text-align: justify;">Cet article est donc notre humble contribution visant à combler ce vide. Nous y partageons une approche <strong>pragmatique</strong> et <strong>quelques astuces</strong> pour gagner du temps dans vos analyses sur ce type d’environnement, ainsi que quelques actions de remédiation.</p>
<p> </p>
<h2>L&rsquo;infrastructure Zimbra</h2>
<p style="text-align: justify;">Si vous n’êtes pas encore familier avec les infrastructures Zimbra, pas de panique : <strong>cette section est là pour vous</strong> ! Pour les plus initiés, vous pouvez directement filer à la section investigation (<em>on ne vous en voudra pas</em>).</p>
<p> </p>
<h3>L’architecture</h3>
<p style="text-align: justify;">Zimbra, ce n’est pas juste « <em>un serveur mail de plus</em> ». C’est toute une <strong>suite collaborative open source</strong> assez complète, qui réunit plusieurs briques bien pratiques :</p>
<ul style="text-align: justify;">
<li><strong>Un serveur de messagerie :</strong> le cœur du système.</li>
<li><strong>Un gestionnaire de calendriers, contacts et tâches :</strong> pour ne jamais oublier la réunion de 9h.</li>
<li><strong>Un client web :</strong> accessible depuis n’importe quel navigateur.</li>
<li><strong>Des services complémentaires :</strong> antispam, antivirus, synchronisation mobile, etc.</li>
</ul>
<p style="text-align: justify;">Mais comme toute infrastructure utilisée par des centaines (voire des milliers) d’utilisateurs en simultané, le dimensionnement et la performance deviennent vite des sujets importants. C’est pourquoi Zimbra peut être déployé de deux façons :</p>
<ul style="text-align: justify;">
<li><strong>En mode monolithique :</strong> tout sur un seul serveur (simple, efficace… jusqu’à un certain point).</li>
<li><strong>En mode distribué :</strong> plusieurs serveurs, chacun avec un rôle précis, pour mieux gérer la charge, la disponibilité et la maintenance.</li>
</ul>
<p> </p>
<p style="text-align: justify;">Schématiquement, une infrastructure Zimbra distribuée ressemble à ceci :</p>
<figure id="attachment_28433" aria-describedby="caption-attachment-28433" style="width: 1277px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28433" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Architecture-zimbra-FR.png" alt="Architecture d'une infrastructure Zimbra distribuée" width="1277" height="683" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Architecture-zimbra-FR.png 1277w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Architecture-zimbra-FR-357x191.png 357w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Architecture-zimbra-FR-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Architecture-zimbra-FR-768x411.png 768w" sizes="auto, (max-width: 1277px) 100vw, 1277px" /><figcaption id="caption-attachment-28433" class="wp-caption-text"><em>Architecture d&rsquo;une infrastructure Zimbra distribuée</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Bien que l&rsquo;architecture puisse varier, on retrouve généralement les composants suivants :</p>
<ul style="text-align: justify;">
<li><strong>Serveur Proxy :</strong> il constitue le point d’entrée pour les clients Web, IMAP/POP et ActiveSync. Les journaux générés à ce niveau fournissent une visibilité sur les connexions utilisateurs (adresses IP, user agent, dates, etc.).</li>
<li><strong>Serveur Web Client (Mailboxd UI) :</strong> il héberge l’interface Webmail utilisée par les utilisateurs pour accéder à leur messagerie via un navigateur.</li>
<li><strong>Serveur de messagerie (Mailboxd) :</strong> il héberge les boîtes aux lettres des utilisateurs et assurent la gestion des messages, dossiers et calendriers. Ce composant génère les journaux les plus riches (par ex. <em>mailbox.log</em>, <em>audit.log</em>, <em>sync.log</em>).</li>
<li><strong>Serveur MTA (Message Transfer Agent)</strong>: il reçoit les courriels via SMTP et acheminent les messages, à l’aide du protocole LMTP (<em>Local Mail Transfer Protocol</em>) vers le serveur de messagerie Zimbra approprié.<br />Le rôle du MTA Zimbra repose sur plusieurs services complémentaires :
<ul>
<li><strong>Postfix MTA :</strong> routage, relais et filtrage des messages (y compris des pièces jointes).</li>
<li><strong>ClamAV </strong>: moteur antivirus chargé d’analyser les messages et leurs pièces jointes.</li>
<li><strong>SpamAssassin et DSPAM :</strong> filtres de spam exploitant divers mécanismes pour identifier les courriels indésirables.</li>
<li><strong>Amavis </strong>: orchestrateur qui exécute les moteurs antivirus et antispam configurés, puis applique les politiques de traitement sur les messages entrants.</li>
</ul>
</li>
</ul>
<p style="text-align: justify;">Le <strong>serveur MTA</strong> occupe une place particulière dans l’infrastructure Zimbra. C’est à ce niveau que s’effectue la <strong>majorité des contrôles de sécurité</strong> appliqués aux <strong>courriels entrants</strong>. Le schéma ci-dessous présente les principales étapes de ce parcours d’analyse :</p>
<figure id="attachment_28435" aria-describedby="caption-attachment-28435" style="width: 1385px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28435" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Zimbra-MTA-scans-FR.png" alt="Processus d'analyse des mails entrants Zimbra" width="1385" height="550" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Zimbra-MTA-scans-FR.png 1385w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Zimbra-MTA-scans-FR-437x174.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Zimbra-MTA-scans-FR-71x28.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/Zimbra-MTA-scans-FR-768x305.png 768w" sizes="auto, (max-width: 1385px) 100vw, 1385px" /><figcaption id="caption-attachment-28435" class="wp-caption-text"><em>Processus d&rsquo;analyse des mails entrants Zimbra</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Dans le processus de réception d’un courriel entrant, le message est d’abord pris en charge par <strong>Postfix</strong>. Celui-ci le transfère ensuite à <strong>Amavis</strong> pour analyse.<br />Amavis va ensuite récupérer les <strong>différents moteurs d’analyse configurés</strong> et va soumettre le courriel à chacun d’eux afin d’obtenir leurs résultats.<br />En fonction des politiques définies, Amavis rend un verdict à Postfix : délivrer le message, le bloquer ou le déplacer vers un dossier spécifique.</p>
<p> </p>
<h3>Les journaux</h3>
<p style="text-align: justify;">À présent que vous êtes un expert en architecture Zimbra (<em>ou presque</em> <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />), vous avez sans doute remarqué que de <strong>nombreux services</strong> sont nécessaires pour <strong>assurer l’envoi</strong> et la <strong>réception</strong> des courriels des utilisateurs. La bonne nouvelle c’est que <strong>chacun de ces services génère ses propres journaux</strong>, offrant ainsi une <strong>visibilité </strong>non négligeable sur <strong>l’activité</strong> de l’infrastructure de messagerie. Et pour nous, analystes forensiques, c’est une excellente nouvelle ! <strong>Car on adore les journaux</strong> !</p>
<p style="text-align: justify;">L’étude des logs générés par Zimbra nous permettra en effet de <strong>reconstituer la chronologie</strong> <strong>d’une compromission</strong>, identifier les boîtes compromises, repérer des pièces jointes malveillantes ou encore détecter d’éventuels rebonds internes.</p>
<p style="text-align: justify;">Cette <strong>richesse d’informations</strong> est rendue possible grâce aux journaux principalement localisés dans :</p>
<ul style="text-align: justify;">
<li><strong>/opt/zimbra/log/mailbox.log</strong> : journal principal des activités utilisateurs (authentifications, envois/réceptions, manipulations de mails, dossiers, contacts, calendriers, etc.).</li>
<li><strong>/opt/zimbra/log/access_log</strong> : journal des accès Webmail (adresses IP, user-agents, URLs consultées).</li>
<li><strong>/opt/zimbra/log/audit.log</strong> : traces d’authentification (succès, échecs, mécanismes utilisés).</li>
<li><strong>/opt/zimbra/log/sync.log</strong> : traces des synchronisations mobiles (ActiveSync/EAS).</li>
<li><strong>/opt/zimbra/log/convertd.log</strong> : traces de conversion de fichiers (aperçus webmail, indexation).</li>
<li><strong>/opt/zimbra/log/clamd.log| /opt/zimbra/log/freshclam.log</strong> : activité de l’antivirus ClamAV.</li>
<li><strong>/opt/zimbra/log/spamtrain.log</strong> : traces de l’entraînement antispam initié par les utilisateurs.</li>
<li><strong>/opt/zimbra/log/cbpolicyd.log</strong> : application des politiques Postfix (quotas, anti-relay, restrictions).</li>
<li><strong>/var/log/mail.log</strong> : logs système Postfix (SMTP, LMTP, Amavis).</li>
<li><strong>/var/log/nginx.access.log | /var/log/nginx.log</strong> : journaux du serveur web nginx (utiles pour contextualiser les sessions web).</li>
</ul>
<p style="text-align: justify;">Malheureusement, dans une <strong>architecture Zimbra distribuée</strong>, les journaux <strong>ne sont pas centralisés</strong>. Autrement dit, pour obtenir une vision complète d’un incident, <strong>l’analyste devra souvent collecter les logs sur chaque nœud</strong> : proxy, mailstore, MTA ou tout autre serveur périphérique. Oui, cela demande un peu de gymnastique (<em>et de patience</em>).</p>
<p style="text-align: justify;">Nous l’avons dit : la richesse des journaux Zimbra est une <strong>véritable mine d’or</strong> pour les investigations… mais… comme toute mine, il faut savoir <strong>creuser avec méthode</strong>, sans quoi on se retrouve vite enseveli sous des tonnes de lignes de logs. Un <strong>effort de tri et de corrélation</strong> est donc nécessaire pour <strong>extraire les</strong> <strong>informations pertinentes</strong>.</p>
<p style="text-align: justify;">Et malgré leur utilité <strong>indéniable</strong>, les journaux Zimbra présentent <strong>quelques limites notables </strong>:</p>
<ul>
<li style="text-align: justify;"><strong>Une impossibilité d’accès au contenu complet</strong> des courriels ni à leurs pièces jointes.</li>
<li style="text-align: justify;"><strong>Des sujets des courriels rarement disponibles</strong>, sauf lorsqu’ils sont interceptés par les modules antispam ou antivirus.</li>
<li style="text-align: justify;"><strong>Un manque de visibilité native</strong> sur la création de règles de redirections.</li>
<li style="text-align: justify;"><strong>La rotation rapide des journaux verbeux</strong> (comme mailbox.log), ce qui limite la fenêtre temporelle d’analyse en absence de centralisation des journaux.</li>
</ul>
<p> </p>
<h2>Investiguer dans un environnement Zimbra</h2>
<p style="text-align: justify;">Maintenant que l’infrastructure et les journaux Zimbra n’ont <strong>plus de secrets pour vous,</strong> c’est le moment de <strong>passer au concret</strong>.</p>
<p style="text-align: justify;">Imaginez que vous êtes un analyste forensique, arrivé en avance de bon matin, quand soudain : <strong>le téléphone sonne</strong>. On vous appelle car plusieurs utilisateurs signalent que des courriels <strong>qu’ils n’auraient pas envoyés</strong> apparaissent dans leur dossier «<em>Envoyés</em>».</p>
<p style="text-align: justify;"><strong>C’est la panique générale</strong> !  Les utilisateurs n’osent plus se connecter à leur boîte mail et certains administrateurs commencent à se demander si <strong>l’infrastructure Zimbra elle-même</strong> ne serait pas <strong>compromise</strong>.</p>
<p style="text-align: justify;">Puisque vous maîtrisez Zimbra comme personne, c’est naturellement vers vous que l’équipe se tourne pour <strong>élucider cet incident</strong> !</p>
<p style="text-align: justify;">En tant qu’analyste forensique, beaucoup de questions vous viennent à l’esprit :</p>
<ul style="text-align: justify;">
<li><em>Est-ce que les comptes ont réellement été compromis ? Si oui, comment et depuis quand ?</em></li>
<li><em>Combien d’utilisateurs sont affectés ?</em></li>
<li><em>Quel est l’objectif de l’attaquant et quelles actions malveillantes ont été menées depuis ces comptes ?</em></li>
<li><em>Le serveur de messagerie ou d’autres composants Zimbra ont-ils été compromis ?</em></li>
<li><strong><em>Et, surtout</em></strong><em> : ai-je le temps de prendre un café </em><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2615.png" alt="☕" class="wp-smiley" style="height: 1em; max-height: 1em;" /><em> avant que la chasse aux informations ne commence ? </em></li>
</ul>
<p style="text-align: justify;">Afin de vous aider dans vos investigations, nous allons voir ensemble comment apporter des éléments de réponses via l’analyse des journaux Zimbra. Mais avant cela, voici un ensemble de conseils pour vous aider dans vos investigations</p>
<p style="text-align: justify;">Lors d’une réponse à incidents, il est facile de se sentir <strong>submergé</strong> par la <strong>quantité</strong> <strong>de journaux</strong> et <strong>d’événements</strong> à analyser. Il est donc important de garder un <strong>fil conducteur. </strong>Quelques réflexes simples permettent de ne pas perdre le cap :</p>
<ul style="text-align: justify;">
<li><strong>Confirmer</strong> : Vérifier les informations ayant mené à l’incident. Avant d’avancer dans les investigations, il faut s’assurer de la véracité de l’élément déclencheur. Cette base indéniable servira de pilier pour l’ensemble de l’investigation.</li>
<li><strong>Corréler </strong>: recouper les adresses IP et domaines suspectes avec d’autres sources (proxy, VPN, EDR, bases antivirales en ligne). Cela permet d’obtenir des informations complémentaires en relation avec l&rsquo;indicateur identifié.</li>
<li><strong>Pivoter </strong>: exploiter les informations collectées pour élargir l’analyse. Un attaquant peut par exemple réutiliser la même adresse IP ou le même user-agent pour cibler plusieurs comptes. À l’inverse, un compte compromis peut être utilisé depuis des adresses IP ou des user-agents différents. Pivoter permet de révéler d’autres indicateurs permettant d&rsquo;identifier l&rsquo;attaquant.</li>
<li><strong>Comparer les motifs </strong>: même sans accéder directement au contenu des courriels ou des pièces jointes, certains éléments peuvent révéler des similitudes (taille, nom de fichier identique, séquence d’actions répétée après la compromission d’un compte). Cette approche d’analyse comportementale peut aider à identifier plusieurs utilisateurs compromis par un même attaquant. Ces hypothèses doivent être formulées et manipulées avec prudence mais elles peuvent s’avérer intéressantes pour confirmer une intuition.</li>
<li><strong>Assurer la conservation des journaux </strong>: Cela peut sembler évident, mais dès la détection de l’incident, il est important de sécuriser la conservation des journaux. Cela passe par la collecte immédiate des logs sur l’ensemble de l’infrastructure Zimbra mais aussi par l’allongement de la période rétention pour éviter toute suppression automatique. Car soyons honnêtes : les logs qui disparaissent pile au moment où l’équipe forensique arrive, c’est malheureusement un grand classique… et une mésaventure dont vous vous passerez bien.</li>
</ul>
<p style="text-align: justify;">Même si ces conseils ne sont <strong>pas exhaustifs</strong>, ils offrent une bonne base pour réaliser une analyse à la fois <strong>rapide</strong> et <strong>complète</strong>.</p>
<p> </p>
<h3>Compromission et accès initial</h3>
<h4><em>Le piège du spoofing</em></h4>
<p style="text-align: justify;"><strong>Vous n’êtes pas dupe !</strong> Vous savez que parfois, l’on peut croire que l’attaquant est déjà à l’intérieur du système alors qu’en réalité, il est toujours à l’extérieur (<em>fake it until you make it )</em>. Surtout lorsque plusieurs utilisateurs commencent à signaler des incidents préoccupants, tels que :</p>
<ul style="text-align: justify;">
<li>« <em>J’ai reçu un e-mail de telle personne, pourtant elle m’affirme ne jamais l’avoir envoyé</em> »</li>
<li>« <em>J’ai reçu un e-mail venant de ma propre adresse, ce qui n’a aucun sens !</em> »</li>
</ul>
<p style="text-align: justify;">Mais votre expérience vous pousse à vérifier que la confusion actuelle n’est pas le fruit d’une simple attaque&#8230; de <strong>spoofing</strong>.</p>
<p style="text-align: justify;">En effet, le <strong>spoofing</strong> est une technique d’usurpation d’identité assez simple utilisée par des acteurs malveillants pour <strong>falsifier des informations d’en-tête</strong> ou d’origine d’un mail afin de <strong>tromper une victime</strong>. Le spoofing permet d&rsquo;envoyer un courriel en se faisant passer pour un <strong>expéditeur légitime</strong> (par exemple un utilisateur interne de l’entreprise ou le destinataire lui-même), alors que le mail provient en réalité d’une infrastructure qui n&rsquo;a <strong>aucune autorisation pour utiliser cette adresse électronique</strong>.</p>
<p style="text-align: justify;">L’objectif est de <strong>gagner la confiance du destinataire</strong> pour l’inciter à réaliser une action (cliquer sur un lien, ouvrir une pièce jointe, fournir des identifiants, etc.) ou de <strong>contourner les mécanismes de filtrage</strong>.</p>
<p style="text-align: justify;">Les mécanismes tels que <strong>SPF, DKIM et DMARC</strong> ont été conçus pour limiter les risques liés au spoofing en permettant de vérifier l’authenticité du domaine et du serveur expéditeur.</p>
<p style="text-align: justify;">Plus particulièrement, le <strong>Sender Policy Framework (SPF)</strong> est un mécanisme de sécurité des courriels qui permet de vérifier que le serveur expéditeur d’un message est bien autorisé à envoyer des courriels pour le domaine indiqué dans l’adresse de l’expéditeur. Les étapes d&rsquo;un contrôle SPF sont illustrées ci-dessous :</p>
<figure id="attachment_28437" aria-describedby="caption-attachment-28437" style="width: 1136px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28437" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/SPF-check-Zimbra-FR.png" alt="Etapes d'un contrôle SPF" width="1136" height="482" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/SPF-check-Zimbra-FR.png 1136w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/SPF-check-Zimbra-FR-437x185.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/SPF-check-Zimbra-FR-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/SPF-check-Zimbra-FR-768x326.png 768w" sizes="auto, (max-width: 1136px) 100vw, 1136px" /><figcaption id="caption-attachment-28437" class="wp-caption-text"><em>Etapes d&rsquo;un contrôle SPF</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Concrètement, le propriétaire du domaine publie dans les enregistrements DNS une <strong>liste des adresses IP autorisées à envoyer des mails</strong> pour son domaine. Lorsqu’un serveur de mail reçoit un courriel, il peut <strong>comparer l’adresse IP de l’expéditeur </strong>à cette liste et déterminer si le message est légitime ou potentiellement frauduleux.</p>
<p style="text-align: justify;">Un <strong>échec du contrôle SPF</strong> indique que le courriel a été envoyé depuis un <strong>serveur non autorisé</strong> par le domaine de l’expéditeur. C’est un <strong>indicateur qui permet de d&rsquo;identifier </strong>de potentielles<strong> tentatives d’usurpation d’identité</strong>.</p>
<p style="text-align: justify;">Dans les journaux Zimbra, il est possible d’identifier les <strong>échecs de contrôle SPF</strong> à l’aide de la commande suivante :</p>
<figure id="attachment_28495" aria-describedby="caption-attachment-28495" style="width: 1682px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28495" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_.png" alt="Récupération des messages qui ont échoué le contrôle SPF (zimbra.log)" width="1682" height="333" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_.png 1682w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_-437x87.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_-71x14.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_-768x152.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/1-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-zimbra.log_-1536x304.png 1536w" sizes="auto, (max-width: 1682px) 100vw, 1682px" /><figcaption id="caption-attachment-28495" class="wp-caption-text"><em>Récupération des messages qui ont échoué le contrôle SPF (zimbra.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Dans cet exemple, on constate que le message en provenance de <strong><em>attacker@microsoft.com</em> </strong>vers <strong><em>user25@wavestone.corp</em></strong> <strong>ne valide pas le SPF </strong>(SPF_FAIL). Le champ « <em>Yes</em> » indique qu’il est <strong>classé </strong>comme<strong> spam</strong>. Son score (<em>9.172</em>) dépassant le seuil requis (<em>4</em>), ce message <strong>ne sera donc pas délivré</strong> à son destinataire.</p>
<p style="text-align: justify;">Il ne faut cependant pas donner une confiance aveugle au moteur antispam ! Certains courriels <strong>échouant le contrôle SPF</strong> peuvent malgré tout être <strong>délivrés</strong>. Pour extraire exclusivement ces messages, vous pouvez utiliser la commande suivante :</p>
<figure id="attachment_28497" aria-describedby="caption-attachment-28497" style="width: 1692px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28497" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_.png" alt="Récupération des messages qui ont échoué le contrôle SPF et ont été délivrés (zimbra.log)" width="1692" height="360" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_.png 1692w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_-437x93.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_-71x15.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_-768x163.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/2-Recuperation-des-messages-qui-ont-echoue-le-controle-SPF-et-ont-ete-delivres-zimbra.log_-1536x327.png 1536w" sizes="auto, (max-width: 1692px) 100vw, 1692px" /><figcaption id="caption-attachment-28497" class="wp-caption-text"><em>Récupération des messages qui ont échoué le contrôle SPF et ont été délivrés (zimbra.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Dans l’exemple ci-dessous, le message <strong>échoue le contrôle SPF</strong>, mais son score est négatif (-2.06) et inférieur au seuil de spam (4). Il est donc considéré comme <strong>légitime</strong> et <strong>délivré au destinataire</strong>, <strong>malgré l’échec SPF</strong>.</p>
<p style="text-align: justify;">Comme vous pouvez le constater, grâce aux journaux Zimbra, il est possible d’identifier rapidement les <strong>expéditeurs à l’origine d’attaques de spoofing</strong>. Détecter un cas de spoofing dès le début de l’investigation permet de réduire rapidement les inquiétudes et de restaurer un certain niveau de <strong>confiance dans l’infrastructure Zimbra</strong>.</p>
<p> </p>
<h4><em>Analyse de l’accès initial de l’attaquant</em></h4>
<p style="text-align: justify;">Une fois que vous avez confirmé que <strong>vous n’êtes pas face à une attaque de spoofing</strong>, c’est que l’attaquant a réussi, d’une manière ou d’une autre, à compromettre un compte ou un composant de l’infrastructure. La première étape de votre investigation va consister à <strong>identifier le point d’entrée initial de l’attaquant</strong>. C’est trouver la réponse aux questions «<em>Où ?</em>», «<em>Quand ?</em>» et «<em>Comment ?</em>». Mais pour compromettre une boîte mail, plusieurs approches sont possibles…</p>
<figure id="attachment_28499" aria-describedby="caption-attachment-28499" style="width: 1693px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28499" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_.png" alt="Récupération des échecs de connexion (mail.log)" width="1693" height="229" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_.png 1693w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_-437x59.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_-71x10.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_-768x104.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/3-Recuperation-des-echecs-de-connexion-mail.log_-1536x208.png 1536w" sizes="auto, (max-width: 1693px) 100vw, 1693px" /><figcaption id="caption-attachment-28499" class="wp-caption-text"><em>Récupération des échecs de connexion (mail.log)</em></figcaption></figure>
<p> </p>
<figure id="attachment_28501" aria-describedby="caption-attachment-28501" style="width: 1690px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28501" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_.png" alt="Récupération des échecs de connexion (audit.log)" width="1690" height="384" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_.png 1690w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_-437x99.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_-71x16.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_-768x175.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/4-Recuperation-des-echecs-de-connexion-audit.log_-1536x349.png 1536w" sizes="auto, (max-width: 1690px) 100vw, 1690px" /><figcaption id="caption-attachment-28501" class="wp-caption-text"><em>Récupération des échecs de connexion (audit.log)</em></figcaption></figure>
<p> </p>
<p><em><span style="text-decoration: underline;"><strong>Compromission de compte via brute force du mot de passe</strong></span></em></p>
<p style="text-align: justify;">Une première piste que vous pouvez explorer est la possibilité que l’attaquant ait tenté de compromettre certains comptes au moyen d’une <strong>attaque par force brute</strong>.</p>
<p style="text-align: justify;">Pour cela, il suffit d’examiner dans les journaux Zimbra les <strong>échecs d’authentification :</strong></p>
<p style="text-align: justify;">Sur les événements ci-dessus, on observe des <strong>tentatives d’authentification</strong> provenant de l’adresse IP <strong>100.100.4.111 </strong>qui ont <strong>échouées</strong> pour le compte <strong>user25@wavestone.corp.</strong></p>
<p style="text-align: justify;">Un <strong>nombre important de tentatives de connexion infructueuses</strong>, sur une <strong>courte période</strong>, depuis une <strong>même adresse IP</strong> ou envers un <strong>même compte</strong>, est révélateur d’une <strong>tentative de brute force.</strong></p>
<p style="text-align: justify;">Un trop grand nombre d’échecs d’authentification peut également entraîner le <strong>verrouillage automatique d’un compte</strong> par Zimbra :</p>
<figure id="attachment_28503" aria-describedby="caption-attachment-28503" style="width: 1692px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28503" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_.png" alt="Récupération des évènements de blocage de compte (mail.log)" width="1692" height="180" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_.png 1692w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_-437x46.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_-71x8.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_-768x82.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/5-Recuperation-des-evenements-de-blocage-de-compte-mail.log_-1536x163.png 1536w" sizes="auto, (max-width: 1692px) 100vw, 1692px" /><figcaption id="caption-attachment-28503" class="wp-caption-text"><em>Récupération des évènements de blocage de compte (mail.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Du point de vue forensique, l’apparition d’un tel événement dans les journaux peut suggérer qu’un compte à <strong>potentiellement été ciblé</strong>.</p>
<p style="text-align: justify;">Une fois la tentative de brute force identifiée. Il est possible de vérifier à quels moments l’attaquant aurait utilisé le compte compromis en analysant les <strong>connexions réussies</strong> associées à cet utilisateur :</p>
<figure id="attachment_28505" aria-describedby="caption-attachment-28505" style="width: 1689px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28505" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_.png" alt="Récupération des évènements d'authentification réussie (audit.log)" width="1689" height="280" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_.png 1689w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_-437x72.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_-71x12.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_-768x127.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/6-Recuperation-des-evenements-dauthentification-reussie-audit.log_-1536x255.png 1536w" sizes="auto, (max-width: 1689px) 100vw, 1689px" /><figcaption id="caption-attachment-28505" class="wp-caption-text"><em>Récupération des évènements d&rsquo;authentification réussie (audit.log)</em></figcaption></figure>
<p> </p>
<figure id="attachment_28507" aria-describedby="caption-attachment-28507" style="width: 1692px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28507" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_.png" alt="Récupération des évènements d'authentification réussie (mailbox.log)" width="1692" height="335" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_.png 1692w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_-437x87.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_-71x14.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_-768x152.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/7-Recuperation-des-evenements-dauthentification-reussie-mailbox.log_-1536x304.png 1536w" sizes="auto, (max-width: 1692px) 100vw, 1692px" /><figcaption id="caption-attachment-28507" class="wp-caption-text"><em>Récupération des évènements d&rsquo;authentification réussie (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Additionnellement, si vous avez <strong>identifié l’IP de l’attaquant</strong>, vous pouvez retrouver l’ensemble des <strong>connexions réussies depuis cette adresse</strong> avec les commandes suivantes :</p>
<figure id="attachment_28509" aria-describedby="caption-attachment-28509" style="width: 1694px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28509" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_.png" alt="Récupération des évènements d'authentification réussie via l’IP (audit.log)" width="1694" height="49" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_.png 1694w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_-437x13.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_-71x2.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_-768x22.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/8-Recuperation-des-evenements-dauthentification-reussie-via-lIP-audit.log_-1536x44.png 1536w" sizes="auto, (max-width: 1694px) 100vw, 1694px" /><figcaption id="caption-attachment-28509" class="wp-caption-text"><em>Récupération des évènements d&rsquo;authentification réussie via l’IP (audit.log)</em></figcaption></figure>
<figure id="attachment_28511" aria-describedby="caption-attachment-28511" style="width: 1693px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28511" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_.png" alt="Récupération des évènements d'authentification réussie via l’IP (mailbox.log)" width="1693" height="48" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_.png 1693w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_-437x12.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_-71x2.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_-768x22.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/9-Recuperation-des-evenements-dauthentification-reussie-via-lIP-mailbox.log_-1536x44.png 1536w" sizes="auto, (max-width: 1693px) 100vw, 1693px" /><figcaption id="caption-attachment-28511" class="wp-caption-text"><em>Récupération des évènements d&rsquo;authentification réussie via l’IP (mailbox.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Une fois les connexions réussies malveillantes identifiées, il est nécessaire d’<strong>analyser l’activité du compte</strong> postérieure à ces accès afin d’identifier les <strong>actions effectuées par l’attaquant</strong>.</p>
<p> </p>
<p><span style="text-decoration: underline;"><strong><em>Compromission de compte par attaque de phishing</em></strong></span></p>
<p style="text-align: justify;">Si aucun brute force n’a été identifié. Une autre piste fréquente de compromission initiale est le bien regretté <strong>phishing</strong>. Ici, l’attaque ne se déroule pas directement « <em>sur</em> » l’infrastructure Zimbra : l’utilisateur a d’abord reçu un courriel l’incitant à <strong>visiter</strong> <strong>une page frauduleuse</strong> ou à <strong>ouvrir un fichier malveillant</strong>. Et ce n’est qu’après avoir cliqué que le mal sera fait (récupération des identifiants de connexion ou jetons de session).</p>
<p style="text-align: justify;">Dans ce scénario, il faudra, <strong>si possible</strong>, récupérer le courriel malveillant dans la boîte mail de l’utilisateur pour analyse. Si vous arrivez à mettre la main dessus, voici les <strong>informations intéressantes à collecter</strong> :</p>
<ul style="text-align: justify;">
<li>Date et heure de réception</li>
<li>Objet du message</li>
<li>Expéditeur (From)</li>
<li>Destinataires (To, Cc)</li>
<li>Adresses de réponse (Reply-To, Return-Path)</li>
<li>Adresse IP du serveur d’envoi d’origine</li>
<li>Noms des fichiers joints (le cas échéant)</li>
<li>Résultats des contrôles SPF, DKIM et DMARC</li>
<li>URL de phishing identifiées (si présentes)</li>
</ul>
<p style="text-align: justify;">Ces éléments vous permettront de reconstituer la méthodologie de l’attaquant, <strong>d’orienter vos investigations</strong> et de définir les <strong>premières</strong> <strong>mesures</strong> de <strong>remédiation</strong>.</p>
<p style="text-align: justify;">Malheureusement, dans le scénario où vous n’avez <strong>pas directement accès à la boîte mail de l’utilisateur</strong>, il faudra essentiellement se reposer sur les journaux Zimbra, et plus précisément, les <strong>événements générés par</strong> <strong>Amavis</strong> lors de l’analyse des <strong>courriels entrants</strong>.</p>
<p style="text-align: justify;">Supposons que vous souhaitez <strong>identifier des pièces jointes malveillantes envoyées par un attaquant aux utilisateurs</strong>. Pour cela, les journaux générés par Zimbra sont très utiles car ils permettent d’identifier les fichiers qui ont été analysés et d’en <strong>extraire des</strong> <strong>informations</strong> comme leur nom, leur taille, leur type ou encore leur empreinte (SHA1).</p>
<p style="text-align: justify;">La commande suivante permet d’identifier les pièces jointes traitées par Amavis lors de l’analyse des messages entrants :</p>
<figure id="attachment_28513" aria-describedby="caption-attachment-28513" style="width: 1694px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28513" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_.png" alt="Récupération des pièces jointes analysées par amavis (zimbra.log)" width="1694" height="311" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_.png 1694w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_-437x80.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_-71x13.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_-768x141.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/10-Recuperation-des-pieces-jointes-analysees-par-amavis-zimbra.log_-1536x282.png 1536w" sizes="auto, (max-width: 1694px) 100vw, 1694px" /><figcaption id="caption-attachment-28513" class="wp-caption-text"><em>Récupération des pièces jointes analysées par amavis (zimbra.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Le résultat ci-dessus montre que le fichier <strong><em>Evil.htm</em></strong> a été analysé par Amavis. On y retrouve plusieurs informations plutôt intéressantes :</p>
<ul style="text-align: justify;">
<li><strong>La date et l’heure</strong> : <em>12 novembre à 11h15</em></li>
<li><strong>La signature SHA-1 du fichier</strong> : <em>9d57b71f9f758a27ccd680f701317574174e82d8</em></li>
<li><strong>La taille</strong> : <em>22111 octets</em></li>
<li><strong>Le Content-Type</strong> : <em>text/html</em></li>
<li><strong>L’ID de session Amavis associé à cette analyse</strong> : <em>4384125-19</em></li>
</ul>
<p style="text-align: justify;">Cependant, à eux seuls, ces éléments ne permettent pas de déterminer <strong>quels utilisateurs ont reçu cette pièce jointe</strong> ni <strong>qui en était l’expéditeur</strong>. Pour obtenir ces informations, il est nécessaire d’exécuter une seconde commande afin de récupérer l’ensemble des traces associées à cette session Amavis :</p>
<figure id="attachment_28515" aria-describedby="caption-attachment-28515" style="width: 1317px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28515" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/11-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_.png" alt=" Récupération des traces générées par une session d’analyse amavis (zimbra.log)" width="1317" height="723" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/11-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_.png 1317w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/11-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-348x191.png 348w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/11-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-71x39.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/11-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-768x422.png 768w" sizes="auto, (max-width: 1317px) 100vw, 1317px" /><figcaption id="caption-attachment-28515" class="wp-caption-text"><em>Récupération des traces générées par une session d’analyse amavis (zimbra.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">De ces informations vous pouvez à présent en déduire que <strong>attacker@example.com</strong> a envoyé le fichier <strong>Evil.htm</strong> de <strong>22111 octets</strong> à <strong>user25@wavestone.corp</strong> le <strong>12 novembre à 11h15</strong>, dont la signature <strong>SHA-1</strong> est <strong>9d57b71f9f758a27ccd680f701317574174e82d8</strong>. Pas si mal, non ?</p>
<p style="text-align: justify;">Au cours de vos investigations, vous pourrez filtrer davantage les résultats de ces commandes afin d&rsquo;identifier :</p>
<ul style="text-align: justify;">
<li>Les <strong>pièces jointes avec des extensions suspectes</strong> (ex. .htm, .html, .exe, .js, .arj, .iso, .bat, .ps1, ou encore des documents Office/PDF contenant des macros)</li>
<li>Les fichiers <strong>déjà observés en amont</strong> lors des premières phases de l’incident (par exemple un fichier téléchargé par le patient zéro)</li>
</ul>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Lors d’une <strong>campagne de phishing</strong> impliquant <strong>l’envoi d’un fichier malveillant</strong>, un attaquant a souvent tendance à <strong>diffuser le même fichier</strong> à plusieurs utilisateurs. Il est donc possible de s’appuyer sur une <strong>analyse statistique</strong> pour faire ressortir des <strong>valeurs anormales</strong>.</p>
<p style="text-align: justify;">La commande suivante permet d’identifier des <strong>fichiers identiques</strong> présents dans différents mails entrants :</p>
<figure id="attachment_28517" aria-describedby="caption-attachment-28517" style="width: 1320px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28517" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/12-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_.png" alt="Récupération des traces générées par une session d’analyse amavis (zimbra.log)" width="1320" height="528" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/12-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_.png 1320w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/12-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-437x175.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/12-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-71x28.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/12-Recuperation-des-traces-generees-par-une-session-danalyse-amavis-zimbra.log_-768x307.png 768w" sizes="auto, (max-width: 1320px) 100vw, 1320px" /><figcaption id="caption-attachment-28517" class="wp-caption-text"><em>Récupération des traces générées par une session d’analyse amavis (zimbra.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">La commande ci‑dessus permet de récupérer, pour <strong>chaque pi</strong><strong>è</strong><strong>ce jointe</strong> des messages reçus par Zimbra, <strong>le nombre de fois o</strong><strong>ù</strong><strong> elle a </strong><strong>é</strong><strong>t</strong><strong>é</strong><strong> observ</strong><strong>é</strong><strong>e dans d</strong><strong>’</strong><strong>autres mails</strong>, en se basant sur son <strong>nom</strong> et sa <strong>signature</strong> (SHA‑1).</p>
<p style="text-align: justify;">Dans cet exemple, le fichier <strong>Evil.htm</strong> apparaît dans <strong>40 courriels</strong>, ce qui, combiné à son extension <strong>.htm</strong>, le rend particulièrement <strong>suspect</strong>. Il serait donc pertinent de tenter de <strong>récupérer ce fichier</strong> <strong>auprès des utilisateurs concernés</strong> afin d’en vérifier la légitimité.</p>
<p style="text-align: justify;">Si l’analyse des pièces jointes ne vous a pas permis de dénicher le coupable, il reste une dernière piste à explorer : la récupération des détections de phishing par <strong>SpamAssassin</strong> (un moteur antispam exécuté par Amavis).</p>
<p style="text-align: justify;">La commande suivante permet de repérer les messages suspectés de phishing par SpamAssassin :</p>
<figure id="attachment_28519" aria-describedby="caption-attachment-28519" style="width: 1318px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28519" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-1-2.png" alt="Récupération des messages catégorisés comme phishing par SpamAssassin (zimbra.log) (1/2)" width="1318" height="438" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-1-2.png 1318w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-1-2-437x145.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-1-2-71x24.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-1-2-768x255.png 768w" sizes="auto, (max-width: 1318px) 100vw, 1318px" /><figcaption id="caption-attachment-28519" class="wp-caption-text"><em>Récupération des messages catégorisés comme phishing par SpamAssassin (zimbra.log) (1/2)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Cependant, cette commande ne fournit que des <strong>informations limitées</strong> : l’expéditeur, le destinataire et les règles de détection qui ont été déclenchées. Pour obtenir <strong>davantage de détails</strong> sur l’analyse complète, il faut récupérer l’<strong>ID de session Amavis</strong> associé au message (ici <strong>765283-08</strong>), puis exécuter la commande suivante :</p>
<figure id="attachment_28532" aria-describedby="caption-attachment-28532" style="width: 1319px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28532" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13.2-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-2-2.png" alt="Récupération des messages catégorisés comme phishing par SpamAssassin (zimbra.log) (2/2)" width="1319" height="40" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13.2-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-2-2.png 1319w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13.2-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-2-2-437x13.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13.2-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-2-2-71x2.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/13.2-Recuperation-des-messages-categorises-comme-phishing-par-SpamAssassin-zimbra.log-2-2-768x23.png 768w" sizes="auto, (max-width: 1319px) 100vw, 1319px" /><figcaption id="caption-attachment-28532" class="wp-caption-text"><em>Récupération des messages catégorisés comme phishing par SpamAssassin (zimbra.log) (2/2)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Cette seconde commande permet d’accéder à des informations supplémentaires générées lors de l’analyse du message par Amavis.</p>
<p style="text-align: justify;"><strong>Il faut toutefois interpréter les résultats de SpamAssassin avec prudence</strong> car ses règles de détection peuvent générer un nombre important de faux positifs.</p>
<p> </p>
<p><span style="text-decoration: underline;"><em><strong>Exploitation d’une vulnérabilité sur le serveur web Zimbra</strong></em></span></p>
<p style="text-align: justify;"><strong>Votre expérience d’investigateur forensique vous l’a appris </strong>: ce n’est ni la première, ni la dernière fois qu’une vulnérabilité applicative permet à un attaquant de détourner des sessions utilisateur. <strong>Zimbra n’échappe pas à cette règle</strong> et son serveur web, qui expose l’accès aux boîtes mail, peut très bien être vulnérable à ce type d’attaque.</p>
<p style="text-align: justify;">La compromission du serveur web Zimbra pourrait, en théorie, permettre à un attaquant de <strong>capturer des identifiants</strong> des utilisateurs qui se connectent. « <em>Mais comment vérifier si Zimbra a subi des tentatives d’intrusion Web ?</em> » me direz-vous ?</p>
<p style="text-align: justify;">Un premier réflexe consiste à <strong>inspecter les journaux du proxy (nginx)</strong> afin d’identifier des <strong>requêtes HTTP malveillantes</strong> ou <strong>suspectes</strong> dirigées vers l’interface web :</p>
<figure id="attachment_28521" aria-describedby="caption-attachment-28521" style="width: 1501px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28521" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/14-Recuperation-des-tentatives-dexploitation-web-nginx.log-nginx.access.log_.png" alt="Récupération des tentatives d’exploitation web (nginx.log-nginx.access.log)" width="1501" height="566" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/14-Recuperation-des-tentatives-dexploitation-web-nginx.log-nginx.access.log_.png 1501w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/14-Recuperation-des-tentatives-dexploitation-web-nginx.log-nginx.access.log_-437x165.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/14-Recuperation-des-tentatives-dexploitation-web-nginx.log-nginx.access.log_-71x27.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/12/14-Recuperation-des-tentatives-dexploitation-web-nginx.log-nginx.access.log_-768x290.png 768w" sizes="auto, (max-width: 1501px) 100vw, 1501px" /><figcaption id="caption-attachment-28521" class="wp-caption-text"><em>Récupération des tentatives d’exploitation web (nginx.log/nginx.access.log)</em></figcaption></figure>
<p> </p>
<p style="text-align: justify;">Parmi les indicateurs à rechercher dans les journaux, on retrouve notamment :</p>
<ul style="text-align: justify;">
<li>Requêtes <strong>POST</strong> ou <strong>PUT</strong> inhabituelles ou vers des endpoints inattendus</li>
<li>Tentatives d’injection (<strong>SQLi</strong>, <strong>LFI</strong>, <strong>RCE</strong> visibles dans les URI ou paramètres)</li>
<li>Accès répétés à des ressources non publiques ou à des scripts atypiques</li>
<li><strong>User-Agents</strong> étranges ou une forte concentration de requêtes depuis une même IP</li>
<li>Nombreuses erreurs <strong>4xx/5xx</strong> sur des chemins sensibles (détection de scanner/scan d’énumération)</li>
<li>Indices d’upload de fichiers (tentatives d’accès à <strong>/tmp</strong>, /<strong>uploads</strong>, etc.) ou hits sur des <strong>web shells connus</strong>.</li>
</ul>
<p style="text-align: justify;">Si vous observez des <strong>requêtes malveillantes</strong> <strong>ayant</strong> <strong>abouti</strong> (par exemple avec un code HTTP 200), il est recommandé de <strong>mener des investigations</strong> plus approfondies <strong>sur le serveur</strong> afin de déterminer si l’exploitation a réellement réussi ou non.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: left;"><span style="text-decoration: underline;"><strong><em>Compromission du poste de travail de l’utilisateur</em></strong></span></p>
<p style="text-align: justify;">Si aucun des scénarios précédents ne semble correspondre à ce que vous observez et que le point d’entrée initial reste<strong> introuvable</strong>, il est possible que l’attaquant ait <strong>récupéré les identifiants d’accès directement sur le poste de travail de l’utilisateur</strong>.</p>
<p style="text-align: justify;">Ce type de compromission peut survenir, par exemple :</p>
<ul style="text-align: justify;">
<li>À la suite d’une <strong>campagne de phishing</strong> <strong>antérieure</strong></li>
<li>Parce-que l’utilisateur a <strong>exécuté un programme malveillant</strong> sur sa machine (crack, logiciel téléchargé sur un site douteux, branchement d’une clé USB infectée, etc.).</li>
</ul>
<p style="text-align: justify;">Une fois en mesure d’exécuter du code sur le poste, l’attaquant peut facilement <strong>extraire les identifiants stockés dans le navigateur</strong>, <strong>récupérer des cookies de session</strong>, ou même <strong>installer un keylogger</strong> pour intercepter les frappes clavier.</p>
<p style="text-align: justify;">La détection de ce type de compromission dépasse le cadre de cet article. Mais gardez cette hypothèse en tête : si aucune trace d’intrusion n’apparaît dans Zimbra, <strong>le problème vient peut-être d’ailleurs</strong> <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f609.png" alt="😉" class="wp-smiley" style="height: 1em; max-height: 1em;" />.</p>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Oui ! L’investigation est loin d’être terminée ! Mais cette première partie vous a permis de maîtriser l’architecture de Zimbra, de comprendre les différentes sources d’éléments de preuve et d’observer qu’à travers les journaux Zimbra, il est possible d’identifier plusieurs techniques de compromission. Cependant, l’accès initial ne constitue que le point de départ de nos recherches. Dans une seconde partie, nous poursuivrons l’analyse post–accès initial. Dans un premier temps, nous tenterons d’identifier les actions malveillantes effectuées par l’attaquant après la compromission d’un compte. Dans un second temps, nous passerons en revue les différentes mesures de remédiation à mettre en œuvre. La suite arrive bientôt: un article complémentaire sera publié pour approfondir ces étapes!</p>
<p style="text-align: justify;"> </p>
<h2>Références</h2>
<ul>
<li><a href="https://wiki.zimbra.com/wiki/Log_Files"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Log_Files</span></a></li>
<li><a href="https://wiki.zimbra.com/wiki/Troubleshooting_Course_Content_Rough_Drafts-Zimbra_Architecture_Component_Overview"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Troubleshooting_Course_Content_Rough_Drafts-Zimbra_Architecture_Component_Overview</span></a></li>
<li><a href="https://wiki.zimbra.com/wiki/Trouble_Shooting_Spam_Score_Changes"><span style="color: #000080;">https://wiki.zimbra.com/wiki/Trouble_Shooting_Spam_Score_Changes</span></a></li>
</ul>








<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/">Compromission de boîte mail Zimbra : de l’analyse à la remédiation (Partie 1)</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/2025/12/compromission-de-boite-mail-zimbra-de-lanalyse-a-la-remediation-partie-1/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>SharePoint &#038; App Registrations : Vecteur de compromission du SI et RETEX Red Team</title>
		<link>https://www.riskinsight-wavestone.com/2025/10/sharepoint-app-registrations-vecteur-de-compromission-du-si-et-retex-red-team/</link>
					<comments>https://www.riskinsight-wavestone.com/2025/10/sharepoint-app-registrations-vecteur-de-compromission-du-si-et-retex-red-team/#respond</comments>
		
		<dc:creator><![CDATA[Nathan HAMARD]]></dc:creator>
		<pubDate>Wed, 15 Oct 2025 08:15:00 +0000</pubDate>
				<category><![CDATA[Eclairage]]></category>
		<category><![CDATA[Ethical Hacking & Incident Response]]></category>
		<category><![CDATA[App Registrations]]></category>
		<category><![CDATA[compromission]]></category>
		<category><![CDATA[Cybersécurité]]></category>
		<category><![CDATA[cybersecurity]]></category>
		<category><![CDATA[Detection]]></category>
		<category><![CDATA[Elevation des privileges]]></category>
		<category><![CDATA[EntraID]]></category>
		<category><![CDATA[Microsoft]]></category>
		<category><![CDATA[protection]]></category>
		<category><![CDATA[red team]]></category>
		<category><![CDATA[RETEX]]></category>
		<category><![CDATA[RETEX Red Team]]></category>
		<category><![CDATA[Sharepoint]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=27926</guid>

					<description><![CDATA[<p>Alors que les environnements Active Directory on-premise se renforcent face aux menaces (modèle en tiers, segmentation réseau, bastions d&#8217;administration, durcissement des contrôleurs de domaine), une nouvelle composante est aujourd’hui exploitée par les attaquants pour compromettre leurs cibles&#160;: les ressources cloud,...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/10/sharepoint-app-registrations-vecteur-de-compromission-du-si-et-retex-red-team/">SharePoint &amp; App Registrations : Vecteur de compromission du SI et RETEX Red Team</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;">Alors que les environnements Active Directory on-premise se renforcent face aux menaces (modèle en tiers, segmentation réseau, bastions d&rsquo;administration, durcissement des contrôleurs de domaine), une nouvelle composante est aujourd’hui exploitée par les attaquants pour compromettre leurs cibles&nbsp;: les ressources cloud, et notamment les <em>App Registrations</em> associées aux services Microsoft 365.</p>
<p style="text-align: justify;">Par défaut sous-estimées par les équipes techniques internes et de défense, souvent sur-privilégiées, les <em>App registrations</em> peuvent permettre des pivots puissants suite à la compromission de l’environnement cloud.</p>
<p style="text-align: justify;">Parmi les services les plus exposés, <em>Microsoft SharePoint</em> se distingue. Présent sur la majorité des tenants M365, souvent configuré de manière permissive, il offre un <strong>accès aux fichiers de l’entreprise via SharePoint et des collaborateurs au travers de OneDrive</strong>.</p>
<p style="text-align: justify;">Cet article revient sur plusieurs constats observés en opération Red Team&nbsp;: comment une simple<em> App Registration</em>, liée de près ou de loin à SharePoint, peut offrir un accès élargi à votre SI on-premise, et comment l’exploitation de ce maillon faible permet parfois de faire de votre segmentation en Tiers une simple formalité pour l&rsquo;attaquant.</p>
<p style="text-align: justify;">&nbsp;</p>
<h2 class="Title2" style="text-align: justify;"><span lang="FR">Introduction aux App Registrations</span></h2>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Dans Microsoft Azure, l’enregistrement d’une application (<em>App Registration</em>) dans Entra ID permet de créer une identité pour cette application, ainsi qu’une <em>Enterprise Application</em> associée. L’<em>App Registration</em> définit l’application (identifiants, clés, permissions), tandis que l’<em>Enterprise Application</em> représente son instance dans le tenant, sur laquelle sont appliquées les politiques d’accès (comme l’authentification conditionnelle portée par les politiques d’accès conditionnels ou les rôles attribués).</p>
<p style="text-align: justify;">Une <em>App Registration</em> contient les informations requises pour s’authentifier auprès d’Entra ID et obtenir des jetons d’accès pour interagir avec des services Microsoft 365 via des API comme Microsoft Graph. Selon les permissions qui lui sont accordées (déléguées (scopes) ou applicatives (rôles)) elle peut lire ou modifier des ressources telles que des mails, des fichiers, des utilisateurs ou des groupes tant que l’<em>Enterprise Application</em> est instanciée dans le tenant.</p>
<p style="text-align: justify;">&nbsp;</p>
<figure id="attachment_27932" aria-describedby="caption-attachment-27932" style="width: 1527px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27932 " src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/1.png" alt="App Registration dans EntraID" width="1527" height="796" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/1.png 1452w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/1-366x191.png 366w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/1-71x37.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/1-768x400.png 768w" sizes="auto, (max-width: 1527px) 100vw, 1527px" /><figcaption id="caption-attachment-27932" class="wp-caption-text"><em>App Registration dans EntraID</em></figcaption></figure>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Généralement utilisées pour enregistrer une application visant à automatiser des processus métiers (gestion des utilisateurs, nettoyage de fichiers SharePoint, supervision de l’activité O365…), elles constituent une <strong>surface peu surveillée</strong>, mais à fort impact.</p>
<p style="text-align: justify;">En effet, les secrets des <em>App Registrations</em> (certificats, client secrets) sont souvent stockés de manière non sécurisée (dans des dépôts de code, postes de travails, serveurs). Ces secrets permettent de personnifier une application avec des privilèges potentiellement élevés (listés dans l’<em>App Registration</em>) entraînant une<strong> persistance discrète sur les ressources de l’entreprise.</strong></p>
<p style="text-align: justify;">Pour un attaquant, compromettre une <em>App Registration</em> revient à <strong>s’approprier une identité applicative EntraID disposant d’un accès direct à certaines données de l&rsquo;entreprise</strong>, sans nécessiter de rebond par des comptes utilisateurs interactifs ni MFA. Alors que les sécurités se multiplient autour des comptes utilisateurs (MFA obligatoire, accès conditionnel imposant une adresse IP ou un appareil de confiance), il est souvent constaté que celles-ci ne sont pas encore appliquées aux applications.</p>
<p style="text-align: justify;">&nbsp;</p>
<h3 class="Title3" style="text-align: justify;"><span lang="FR">Se connecter en tant qu&rsquo;une App Registration</span></h3>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Les <strong>applications Azure</strong> peuvent s’authentifier auprès d’Entra ID à l’aide de secrets d’application générés dans <strong>l’App registration</strong> associée&nbsp;:</p>
<ul style="text-align: justify;">
<li>
<p><em><span style="text-decoration: underline;">AppId + App Secret</span>: </em>Ce moyen d’authentification, équivalent à l’usage d’un nom d’utilisateur et d’un mot de passe est soumis aux mêmes limitations&nbsp;: il est <strong>compliqué d’assurer leur protection</strong> car ils peuvent facilement se retrouver stockés de manière non sécurisée, exposés dans les historiques de commandes, etc…</p>
</li>
<li>
<p><em><span style="text-decoration: underline;">AppId + Certificat</span>: </em>Cette méthode de connexion est davantage sécurisée, puisque les solutions de sécurité installées sur les machines protègent de manière efficace les certificats installés. Néanmoins, celle-ci est généralement moins utilisée en raison des contraintes d&rsquo;utilisation qu&rsquo;elle implique, telle que l&rsquo;installation du certificat sur chaque machine nécessitant l&rsquo;utilisation du compte.</p>
</li>
</ul>
<p style="text-align: justify;">&nbsp;</p>
<figure id="attachment_27934" aria-describedby="caption-attachment-27934" style="width: 1480px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class=" wp-image-27934" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2-437x160.png" alt="Certificats et secrets de l'App Registration" width="1480" height="542" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2-437x160.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2-71x26.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2-768x281.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2-1536x563.png 1536w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/2.png 1801w" sizes="auto, (max-width: 1480px) 100vw, 1480px" /><figcaption id="caption-attachment-27934" class="wp-caption-text"><em>Certificats et secrets de l&rsquo;App Registration</em></figcaption></figure>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Les identifiants et secrets d&rsquo;une application lui permettent de récupérer un jeton d’accès <em>OAuth2</em>, afin de s’authentifier et d’appeler des API Microsoft (Graph, SharePoint, Exchange, etc.) qu&rsquo;elle est autorisée à contacter. Ce mode de connexion est généralement difficile à détecter si les journaux d’accès ne sont pas activés ni supervisés.</p>
<p style="text-align: justify;">&nbsp;</p>
<h3 class="Title3" style="text-align: justify;"><span lang="FR">Les droits d&rsquo;une App Registration</span></h3>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Chaque <em>App Registration</em> définit les <strong>permissions API associées à l’application enregistrée</strong>. Elles sont décrites sous forme de rôles ou de scopes, sur différents services Microsoft. A titre d’exemples, ces autorisations d’application peuvent permettre de&nbsp;:</p>
<ul style="text-align: justify;">
<li>Lire ou modifier des profils utilisateurs (<em>User.ReadWrite.All</em>)&nbsp;;</li>
<li>Gérer des objets dans l’annuaire Entra ID (<em>Directory.ReadWrite.All</em>)&nbsp;;</li>
<li>Lire, écrire ou supprimer des fichiers SharePoint ou OneDrive (<em>Files.ReadWrite.All</em>)&nbsp;;</li>
<li>Lire ou écrire des mails dans toutes les boîtes mails (<em>Mail.ReadWrite</em>)&nbsp;;</li>
<li>Etc.</li>
</ul>
<p style="text-align: justify;">Lors des audits, il est constaté que ces droits sont <strong>souvent surdimensionnés</strong> par rapport aux besoins réels des applications. Ils peuvent ainsi offrir à un attaquant un <strong>levier d’élévation de privilèges majeur</strong> s’ils sont récupérés.</p>
<p style="text-align: justify;">D’autre part, un attaquant peut <strong>identifier les droits d’une application au travers de l’</strong><em>App Registration</em><strong> associée et compromise</strong> en s’authentifiant via l’URL <a href="https://login.microsoftonline.com/$TenantId/oauth2/v2.0/token"><span style="color: #000080;">https://login.microsoftonline.com/$TenantId/oauth2/v2.0/token</span></a><span style="color: #000080;">&nbsp;</span>:</p>
<p style="text-align: justify;">&nbsp;</p>
<figure id="attachment_27936" aria-describedby="caption-attachment-27936" style="width: 1423px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class=" wp-image-27936" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3-437x128.png" alt="Récupération d’un jeton d’accès à l’API Microsoft Graph" width="1423" height="417" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3-437x128.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3-71x21.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3-768x225.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3-1536x451.png 1536w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/3.png 1667w" sizes="auto, (max-width: 1423px) 100vw, 1423px" /><figcaption id="caption-attachment-27936" class="wp-caption-text"><em>Récupération d’un jeton d’accès à l’API Microsoft Graph</em></figcaption></figure>
<p style="text-align: justify;">&nbsp;</p>
<p style="text-align: justify;">Le jeton d’accès obtenu est au format <em>base64</em>, et les droits définis par l’App Registration y sont présents&nbsp;:</p>
<p style="text-align: justify;">&nbsp;</p>
<figure id="attachment_27997" aria-describedby="caption-attachment-27997" style="width: 720px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27997 " src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/4.png" alt="Récupération des droits de l’App Registration compromiseRécupération des droits de l’App Registration compromise" width="720" height="602" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/4.png 1035w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/4-229x191.png 229w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/4-47x39.png 47w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/4-768x642.png 768w" sizes="auto, (max-width: 720px) 100vw, 720px" /><figcaption id="caption-attachment-27997" class="wp-caption-text"><em>Récupération des droits de l’App Registration compromiseRécupération des droits de l’App Registration compromise</em></figcaption></figure>
<p style="text-align: justify;">&nbsp;</p>



<h2 style="text-align: justify;">Compromission d&rsquo;App Registrations en opération Red Team</h2>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Dans le cadre d&rsquo;une attaque, il est très fréquent que la compromission s&rsquo;opère de manière progressive.</p>
<p style="text-align: justify;">Généralement, un premier serveur est compromis, puis un second, etc. jusqu&rsquo;à atteindre des composants plus critiques de l&rsquo;infrastructure ou des utilisateurs davantage privilégiés : accès initial, élévation de privilèges, latéralisation, et ainsi de suite.</p>
<p style="text-align: justify;">Ces dernières années, l&rsquo;implémentation du modèle en Tiers (Tier-0, Tier-1 et Tier-2) au sein des infrastructures Active Directory s&rsquo;est généralisée, avec par la même occasion une augmentation du niveau de sécurité des SI on-premise. Un nouveau facteur s’est également ajouté avec le développement des agents EDR : la détection !</p>
<p style="text-align: justify;">Dorénavant au sein d&rsquo;environnements matures, il est plus difficile de compromettre le Tier-0 (contrôleur de domaine, PKI, etc.) par la simple compromission d&rsquo;un serveur Tier-1, le tout sans se faire détecter par la Blue Team, l’équipe de défense.</p>
<p style="text-align: justify;">Toutefois, au cours de plusieurs opérations au sein d&rsquo;environnement très variés, SharePoint s&rsquo;est présenté comme un vecteur d&rsquo;élévation de privilèges redoutable, et où <strong>aucune détection</strong> n&rsquo;a été remontée côté Blue Team.</p>
<p style="text-align: justify;">Plusieurs retours d&rsquo;expériences d&rsquo;opérations Red Team illustrant ce propos sont partagés ci-dessous.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Cas n°1 : Administrateur Tier-2 d&rsquo;un sous-domaine vers la compromission de la forêt Active Directory</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Ce cas illustre une opération pour un client international dont le SI se compose de plusieurs milliers de serveurs, qu&rsquo;il s&rsquo;agisse de serveurs applicatifs et métiers, industriels, d&rsquo;infrastructure, etc. La compromission d&rsquo;un premier serveur a engendré la <strong>compromission de comptes administrateurs Tier-1 puis Tier-2</strong>.</p>
<p style="text-align: justify;">Dès l’obtention de privilèges d’administration acquis sur des postes de travail (Tier-2), une phase de collecte ciblée s&rsquo;est amorcée dans le but d’identifier des secrets applicatifs.</p>
<p style="text-align: justify;">Sur plusieurs postes d’utilisateurs à profil technique (équipes DevOps, Cloud, etc.), des scripts PowerShell sont découverts. Certains contiennent des <strong>identifiants liés à des App Registrations</strong>, avec un <em>AppId</em>, un <em>AppSecret</em>, ainsi que l&rsquo;identifiant du tenant Azure auquel ils sont associés :</p>
<p style="text-align: justify;"> </p>
<figure id="attachment_27940" aria-describedby="caption-attachment-27940" style="width: 1570px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27940 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5.png" alt="Script PowerShell contenant les identifiants de l'App Registration" width="1570" height="1066" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5.png 1570w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5-281x191.png 281w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5-57x39.png 57w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5-768x521.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/5-1536x1043.png 1536w" sizes="auto, (max-width: 1570px) 100vw, 1570px" /><figcaption id="caption-attachment-27940" class="wp-caption-text"><em>Script PowerShell contenant les identifiants de l&rsquo;App Registration</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">L’exploitation de ces secrets permet à l’attaquant de <strong>se connecter directement à la </strong><em>Microsoft Graph API</em>, avec les autorisations déjà consenties définies dans l’<em>App Registration</em> compromise.</p>
<p style="text-align: justify;">L’<em>App Registration</em> identifiée dans ce contexte contient des droits d’application étendus sur O365, notamment :</p>
<ul style="text-align: justify;">
<li><em>User.ReadWrite.All</em>: Lire et modifier tous les profils utilisateurs.</li>
<li><em>Directory.Read.All</em>: Lire les données du répertoire.</li>
<li><em>Directory.ReadWrite.All</em>: Lire et écrire les données du répertoire.</li>
<li><em>Group.ReadWrite.All</em>: Lire et écrire toutes les informations des groupes.</li>
<li><span style="color: #ff0000;"><em>Files.ReadWrite.All</em>:</span> Lire et écrire tous les fichiers.</li>
<li><em>Mail.ReadWrite</em>: Lire, créer, supprimer des mails en toutes les boîtes mails.</li>
<li><em>Calendars.ReadWrite</em>: Lire et écrire tous les calendriers.</li>
<li><em>Contacts.ReadWrite</em>: Lire et écrire tous les contacts.</li>
<li><em>Tasks.ReadWrite</em>: Lire et écrire toutes les tâches.</li>
</ul>
<p style="text-align: justify;">Parmi cet ensemble de permissions d’application, le droit <em>Files.ReadWrite.All</em> s’avère <strong>particulièrement critique et intéressant pour un attaquant</strong>, autorisant un accès complet à tous les fichiers stockés sur <em>SharePoint</em> et <em>OneDrive</em>.</p>
<p style="text-align: justify;"><em><strong><span style="text-decoration: underline;">Note :</span></strong> Ces permissions peuvent être « déléguées » et dans ce cas ne s’appliquent que dans le contexte de ce que peut faire l’utilisateur.</em></p>
<p style="text-align: justify;">Un script PowerShell a été développé par l&rsquo;équipe Red Team Wavestone <span style="color: #000080;">(<a style="color: #000080;" href="https://github.com/Ethical-Kaizoku/SharePwned">SharePwned</a>)</span> afin d&rsquo;effectuer des recherches sur SharePoint et OneDrive basées sur des mots-clefs, et télécharger les fichiers souhaités.</p>
<p style="text-align: justify;">Par le biais de ce script et via une <strong>recherche sur le nom de domaine de la forêt d&rsquo;administration Active Directory</strong> (<em>admin.xx.xxxx.net</em>), plusieurs fichiers ont été identifiés au sein d&rsquo;espaces OneDrive d&rsquo;utilisateurs, puis téléchargés :</p>
<p style="text-align: justify;"> </p>
<figure id="attachment_27942" aria-describedby="caption-attachment-27942" style="width: 1988px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27942 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR.png" alt="Identification dans OneDrive de fichiers contenant des secrets" width="1988" height="361" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR.png 1988w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR-437x79.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR-71x13.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR-768x139.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/6-FR-1536x279.png 1536w" sizes="auto, (max-width: 1988px) 100vw, 1988px" /><figcaption id="caption-attachment-27942" class="wp-caption-text"><em>Identification dans OneDrive de fichiers contenant des secrets</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<figure id="attachment_27944" aria-describedby="caption-attachment-27944" style="width: 635px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27944 " src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/7.png" alt="Récupération de comptes sur la forêt d’administration AD" width="635" height="414" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/7.png 1398w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/7-293x191.png 293w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/7-60x39.png 60w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/7-768x500.png 768w" sizes="auto, (max-width: 635px) 100vw, 635px" /><figcaption id="caption-attachment-27944" class="wp-caption-text"><em>Récupération de comptes sur la forêt d’administration AD</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Ces fichiers, stockés sur l&rsquo;espace OneDrive d&rsquo;utilisateurs à privilèges, permettent d&rsquo;identifier les <strong>serveurs de rebond utilisés pour accéder à la forêt Active Directory d&rsquo;administration du SI</strong>.</p>
<p style="text-align: justify;">Le <strong>stockage non sécurisé des secrets</strong> sur les postes de travail et espaces Cloud représente une faille de sécurité majeure. Pour autant, l&rsquo;absence de sécurité et de supervision autour de cette <em>App Registration</em> liée à d’importants privilèges représente une vulnérabilité critique dès lors qu’une <em>Enterprise Application</em> associée est instanciée dans le tenant.</p>
<p style="text-align: justify;">Dans le cas présent, la compromission du Tier-2, puis l&rsquo;accès en lecture aux fichiers stockés sur les espaces OneDrive des collaborateurs a permis d&rsquo;<strong>identifier rapidement les secrets et rebonds réseaux nécessaires à la compromission du Tier-0 de l&rsquo;entreprise</strong>.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Cas n°2 : Accès distant au réseau d&rsquo;entreprise du Groupe à partir de la compromission d&rsquo;une filiale</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Ce second cas présente une opération Red Team ciblant une entreprise disposant de nombreuses filiales et dont les réseaux ne communiquent pas entre eux.</p>
<p style="text-align: justify;">Tout d&rsquo;abord, le SI d&rsquo;une <strong>première filiale a été compromis</strong>, ainsi que son tenant Azure.</p>
<p style="text-align: justify;">A des fins de persistances et de recherches, une <em>App Registration</em> a alors été créée par la Red Team, tout en ajoutant l’autorisation d’application <em>Files.Read.All.</em></p>
<p style="text-align: justify;">En téléchargeant les secrets de l&rsquo;application lors de sa création, il est une nouvelle fois possible d&rsquo;utiliser l&rsquo;outil développé par la RT Wavestone pour effectuer des recherches SharePoint et OneDrive :</p>
<p style="text-align: justify;"> </p>
<figure id="attachment_27946" aria-describedby="caption-attachment-27946" style="width: 1920px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27946 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR.png" alt="Découverte de secrets dans les espaces OneDrive d’utilisateurs" width="1920" height="344" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR.png 1920w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR-437x78.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR-71x13.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR-768x138.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/8-FR-1536x275.png 1536w" sizes="auto, (max-width: 1920px) 100vw, 1920px" /><figcaption id="caption-attachment-27946" class="wp-caption-text"><em>Découverte de secrets dans les espaces OneDrive d’utilisateurs</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">En effectuant des recherches de mots de passe, des <strong>comptes associés à des solutions d’accès distants</strong> à l&rsquo;entreprise cible du Red Team sont identifiés. En effet, certains membres des équipes Finance de la filiale compromise disposent d’<strong>accès à la solution de bureau distant du groupe</strong>, et stockent leur mot de passe en clair sur leur espace OneDrive.</p>
<p style="text-align: justify;">Bien qu&rsquo;un MFA soit configuré pour l&rsquo;ensemble des utilisateurs de cette solution, seule une approbation de la notification est requise, et aucun code n&rsquo;est demandé. En noyant les utilisateurs de notifications MFA, l’un d’eux a finalement validé l’authentification, permettant aux opérateurs Red Team <strong>d’accéder temporairement à la solution de bureau distant.</strong></p>
<p style="text-align: justify;">Finalement, en accédant à l&rsquo;application de Finance hébergée sur une machine virtuelle Windows, un <strong>accès au réseau interne du groupe</strong> est récupéré.</p>
<p style="text-align: justify;">Ainsi, à partir d&rsquo;une compromission de filiale sans interconnexion directe avec le réseau groupe, l&rsquo;usage d&rsquo;<em>App Registrations</em> a permis une fois encore de <strong>découvrir des secrets et rebondir sur le SI groupe</strong>.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Cas n°3 : Compromission de l&rsquo;EDR déployé sur les contrôleurs de domaine à partir de la chaîne CICD</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">La compromission de l’environnement CICD du client (hébergé sur AWS) a mené à la compromission de son serveur <em>GitLab</em>. Avec les droits <em>root</em> sur le serveur <em>GitLab</em>, il est possible d&rsquo;accéder à sa base de données, et aux secrets qui y sont stockés. Bien que ceux-ci soient chiffrés, il est possible de les déchiffrer via la console <em>GitLab Rails</em>.</p>
<p style="text-align: justify;">Parmi ces secrets, des <em>clientID</em> et <em>clientSecrets</em> Azure d’une App Registration sont récupérés. Ces identifiants d&rsquo;accès permettent de se connecter à Azure sous l’identité de l’application associée, dans le cas présent sous l’identité de l’application <em>GitLab</em>.</p>
<p style="text-align: justify;">Sur le tenant client, l’application <em>GitLab</em> dispose d’un rôle de <strong>contributeur</strong> sur les ressources d’une souscription Azure. Cela signifie qu’elle peut <strong>gérer les accès</strong> aux ressources, et en <strong>lire le contenu</strong>.</p>
<p style="text-align: justify;">Parmi les ressources accessibles, des secrets sont stockés (et accessibles en lecture) dans un coffre-fort Azure Vault. En particulier, des <em>clientId</em> et <em>clientSecret</em> y sont présents :</p>
<p style="text-align: justify;"> </p>
<figure id="attachment_27948" aria-describedby="caption-attachment-27948" style="width: 1931px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27948 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9.png" alt="Exfiltration des secrets d’une App Registration dans un Vault" width="1931" height="809" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9.png 1931w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9-437x183.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9-71x30.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9-768x322.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/9-1536x644.png 1536w" sizes="auto, (max-width: 1931px) 100vw, 1931px" /><figcaption id="caption-attachment-27948" class="wp-caption-text"><em>Exfiltration des secrets d’une App Registration dans un Vault</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Une nouvelle application Azure, nommée <em>xxxxx-NettoyageSharePoint</em>, est ainsi obtenue. Celle-ci possède les permissions nécessaires pour <strong>lire l’intégralité de SharePoint et OneDrive</strong>.</p>
<p style="text-align: justify;">En utilisant une première version de l&rsquo;outil <em>SharePwned</em>, une recherche de secrets est effectuée au sein des espaces OneDrive des collaborateurs. Des secrets stockés de manière non sécurisée sont découverts dans des fichiers de configuration d’outils d’administration, tels que <em>mRemoteNg</em>. Ces fichiers de configuration contiennent généralement des mots de passe <strong>chiffrés avec une clé publique connue</strong>. Ainsi, il est possible de les <strong>déchiffrer et obtenir les mots de passe en clair</strong> des utilisateurs :</p>
<p style="text-align: justify;"> </p>
<figure id="attachment_27950" aria-describedby="caption-attachment-27950" style="width: 1927px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="wp-image-27950 size-full" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10.png" alt="Obtention de secrets stockés de manière non sécurisée dans OneDrive" width="1927" height="165" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10.png 1927w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10-437x37.png 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10-71x6.png 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10-768x66.png 768w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10-1536x132.png 1536w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/10/10-1920x165.png 1920w" sizes="auto, (max-width: 1927px) 100vw, 1927px" /><figcaption id="caption-attachment-27950" class="wp-caption-text"><em>Obtention de secrets stockés de manière non sécurisée dans OneDrive</em></figcaption></figure>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Le compte récupéré ici dispose de <strong>privilèges d&rsquo;administration sur l&rsquo;application IAM</strong> de l&rsquo;entreprise.</p>
<p style="text-align: justify;">Après de multiples <strong>recherches de documentations</strong> sur SharePoint, toujours en utilisant l&rsquo;outil <em>SharePwned</em> afin de cibler les recherches, l&rsquo;équipe Red Team a pu comprendre les moyens d’intervention de l’équipe SOC sur le Système d’Information, les coffres-forts où sont stockés leurs secrets, et les droits nécessaires pour y accéder.</p>
<p style="text-align: justify;">Alors, en utilisant le compte administrateur de l’IAM récupéré dans OneDrive, une attaque se basant sur les procédures d’intervention du SOC a été réalisée pour <strong>compromettre </strong><strong>intégralement le Système d&rsquo;Information</strong> on-premise du client.</p>
<p style="text-align: justify;">Dans ce cas de figure également, des recherches ciblées sur SharePoint et OneDrive ont permis de <strong>récupérer de l&rsquo;information technique très intéressante pour un attaquant</strong>, notamment l&rsquo;agent EDR déployé sur les DC, les secrets nécessaires à son utilisation, les droits à s&rsquo;attribuer pour y accéder.</p>
<p style="text-align: justify;">Au-delà des mots de passe récupérés (chiffrés ou non) dans l’ensemble des scénarios précédemment décrits, SharePoint et OneDrive représentent un <strong>accès à la connaissance du SI</strong> pour l’attaquant. Lorsque l’attaquant se veut discret, il doit <strong>reproduire au mieux les flux métiers et d’administrations légitimes de l’entreprise</strong>. Le prérequis à cela est tout d’abord de les connaître, pour ensuite les comprendre et les appliquer.</p>
<p style="text-align: justify;"> </p>
<h2 style="text-align: justify;">Protéger et détecter les usages malveillants des App Registrations</h2>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Comme énoncé précédemment, SharePoint et OneDrive ont permis l’obtention de secrets relativement sensibles et compromettants pour les SI clients. Il reste donc primordial de <strong>sensibiliser les collaborateurs</strong> au stockage sécurisé des secrets et de les outiller à ces mêmes fins.</p>
<p style="text-align: justify;">Malgré cela, il convient d’appliquer des processus et des mesures de sécurité à ces applications afin de leur faire respecter les <strong>principes de moindre privilège</strong> et de <strong>défense en profondeur</strong>. Ci-dessous sont listées des recommandations à appliquer à ces App Registrations.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Revue régulière et principe de moindre privilège</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Il convient d’<strong>inventorier</strong> les applications disposant des permissions sur SharePoint et <strong>restreindre ces applications au strict minimum</strong>. Les permissions en question sont les suivantes :</p>
<ul style="text-align: justify;">
<li>Sites.Read.All;</li>
<li>Sites.ReadWrite.All;</li>
<li>Sites.FullControl;</li>
<li>Files.Read.All;</li>
<li>Files.ReadWrite.All.</li>
</ul>
<p style="text-align: justify;">Au même titre que pour les utilisateurs et groupes à privilèges, une <strong>revue régulière</strong> de ces <em>App</em> <em>Registrations</em> est nécessaire.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Gestion et supervision des secrets</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Afin d&rsquo;éviter que des <em>App Secret</em> ne se retrouvent stockés de manière non sécurisée (au sein de scripts, documentations, mails, etc.), il est recommandé de <strong>préférer l&rsquo;usage de certificats de connexion</strong>.</p>
<p style="text-align: justify;">De manière générale, <strong>les secrets</strong> de connexion doivent faire l&rsquo;objet d&rsquo;un<strong> renouvellement régulier et automatisé</strong>.</p>
<p style="text-align: justify;">La création d’une <em>App Registration</em> génère automatiquement la création d’une <em>Enterprise Application</em>. Lorsque celle-ci se voit attribuer des permissions de lecture sur SharePoint, un consentement de la part d&rsquo;un <em>Global Administrator</em> est nécessaire. Il n&rsquo;est ainsi pas trivial pour un attaquant de créer ce type d&rsquo;applications privilégiées et l&rsquo;ajout d&rsquo;un secret à une application existante à privilèges sera souvent préférée par l’attaquant.</p>
<p style="text-align: justify;">Il convient donc de <strong>superviser la création de nouveaux secrets de connexion sur les applications à privilèges</strong>.</p>
<p style="text-align: justify;"> </p>
<h3 style="text-align: justify;">Réduire la surface d’exposition</h3>
<p style="text-align: justify;"> </p>
<p style="text-align: justify;">Enfin, il est recommandé de <strong>limiter les capacités d&rsquo;utilisation de ces applications</strong>. Il peut s&rsquo;agir de <strong>restrictions sur l&rsquo;adresse IP</strong> source ou encore sur les <strong>plages horaires</strong> d&rsquo;utilisation de l&rsquo;application.</p>
<p style="text-align: justify;"><em><span style="text-decoration: underline;"><strong>Note :</strong></span> Il n’est pas toujours nécessaire d’appliquer ces mesures en mode « bloquant ». En effet, une détection sans blocage peut déjà permettre à la Blue Team de prendre connaissance de l’attaque et amorcer sa réponse.</em></p>






<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/10/sharepoint-app-registrations-vecteur-de-compromission-du-si-et-retex-red-team/">SharePoint &amp; App Registrations : Vecteur de compromission du SI et RETEX Red Team</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/2025/10/sharepoint-app-registrations-vecteur-de-compromission-du-si-et-retex-red-team/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Enterprise Access Model (2/2) : Quelles solutions pour sécuriser un Control Plane ? </title>
		<link>https://www.riskinsight-wavestone.com/2025/01/enterprise-access-model-2-2-quelles-solutions-pour-securiser-un-control-plane/</link>
					<comments>https://www.riskinsight-wavestone.com/2025/01/enterprise-access-model-2-2-quelles-solutions-pour-securiser-un-control-plane/#respond</comments>
		
		<dc:creator><![CDATA[Etienne Lafore]]></dc:creator>
		<pubDate>Fri, 31 Jan 2025 15:07:04 +0000</pubDate>
				<category><![CDATA[Eclairage]]></category>
		<category><![CDATA[CICD]]></category>
		<category><![CDATA[Cloud security]]></category>
		<category><![CDATA[compromission]]></category>
		<category><![CDATA[control plane]]></category>
		<guid isPermaLink="false">https://www.riskinsight-wavestone.com/?p=25217</guid>

					<description><![CDATA[<p>Dans le premier article de cette série, nous avons étudié les fondements de l’Enterprise Access Model (EAM) de Microsoft, en nous concentrant sur la définition de la portée du Control Plane pour protéger l&#8217;administration du cloud. Face à l&#8217;évolution de...</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/01/enterprise-access-model-2-2-quelles-solutions-pour-securiser-un-control-plane/">Enterprise Access Model (2/2) : Quelles solutions pour sécuriser un Control Plane ? </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;"><span data-contrast="auto">Dans le premier article de cette série, nous avons étudié les fondements de l’Enterprise Access Model (EAM) de Microsoft, en nous concentrant sur la définition de la portée du Control Plane pour protéger l&rsquo;administration du cloud. Face à l&rsquo;évolution de la sécurité, le modèle traditionnel AD 3-tiers n&rsquo;est plus suffisant pour les complexités et les dépendances des environnements cloud. Le passage au cloud a introduit de nouveaux risques, notamment la compromission globale provenant d&rsquo;un point faible unique du Control Plane. Nous avons ensuite souligné l&rsquo;importance d&rsquo;identifier et d&rsquo;isoler les composants clés dont la compromission pourrait entraîner une compromission globale de l&rsquo;Entra ID.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">Dans ce deuxième article, nous analyserons des scénarios d&rsquo;attaque pratiques qui menacent le Control Plane, et fournirons des recommandations concrètes pour atténuer ces risques. Plus précisément, nous explorerons trois scénarios d&rsquo;attaque courants qui menacent significativement le Control Plane : la compromission du support IT, du poste de travail de l&rsquo;administrateur du Control Plane et du CI/CD. En comprenant ces vecteurs d&rsquo;attaque et en mettant en œuvre des mesures de sécurité robustes, il est possible d’améliorer considérablement la résilience de son environnement cloud contre les compromissions potentielles.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<h2><b><span data-contrast="auto">La compromission du support IT </span></b><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></h2>
<p style="text-align: justify;"><span data-contrast="auto">Prenons un scénario où le compte d&rsquo;un membre du support IT est compromis. Cela peut découler d’une attaque par hameçonnage, d&rsquo;une opération d&rsquo;ingénierie sociale ou même d&rsquo;une tentative d&rsquo;usurpation d&rsquo;identité. Ces comptes peuvent souvent réinitialiser des mots de passe, y compris ceux des utilisateurs ayant des privilèges très élevés, tels que l&rsquo;administrateur d&rsquo;application ou le </span><i><span data-contrast="auto">Owner</span></i><span data-contrast="auto"> Azure au niveau </span><i><span data-contrast="auto">root</span></i><span data-contrast="auto">, obtenant ainsi un accès non autorisé à des ressources critiques, allant de l&rsquo;Entra ID au cloud, en passant par les environnements sur site et les services SaaS.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> <img loading="lazy" decoding="async" class="aligncenter size-full wp-image-25219" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/1-IT-support-compromise-scenario.jpg" alt="1-IT-support-compromise-scenario" width="930" height="417" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/1-IT-support-compromise-scenario.jpg 930w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/1-IT-support-compromise-scenario-426x191.jpg 426w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/1-IT-support-compromise-scenario-71x32.jpg 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/1-IT-support-compromise-scenario-768x344.jpg 768w" sizes="auto, (max-width: 930px) 100vw, 930px" /></span></p>
<p style="text-align: justify;"><span data-contrast="auto">Ce type d&rsquo;attaque illustre un point crucial que nous avons abordé dans le premier article : la nécessité de délimiter et d&rsquo;isoler efficacement le Control Plane. Le service d&rsquo;assistance, bien qu&rsquo;essentiel pour les opérations quotidiennes, doit être rigoureusement séparé des fonctions administratives à haut privilège. L&rsquo;absence d&rsquo;une telle séparation peut permettre à un attaquant de passer d&rsquo;un compte de service d&rsquo;assistance compromis à un rôle d&rsquo;administrateur global.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">Pour réduire ce risque, les organisations doivent mettre en œuvre une série de défenses stratégiques : </span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<ul style="text-align: justify;">
<li data-leveltext="-" data-font="Calibri" data-listid="2" data-list-defn-props="{&quot;335551671&quot;:0,&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Calibri&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;-&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" aria-setsize="-1" data-aria-posinset="0" data-aria-level="1"><span data-contrast="auto">Dans un premier temps, isoler les comptes du Control Plane de ceux gérés par le support IT est essentiel. De cette façon, même si un compte du service d’assistance est compromis, il ne pourra pas accéder ou manipuler des comptes à haut privilège. Ainsi, la compromission d’un compte de service d’assistance ne permettrait pas d’accéder à des comptes à privilèges élevés ou de les manipuler.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
<li data-leveltext="-" data-font="Calibri" data-listid="2" data-list-defn-props="{&quot;335551671&quot;:0,&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Calibri&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;-&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" aria-setsize="-1" data-aria-posinset="0" data-aria-level="1"><span data-contrast="auto">Dans un second temps, utiliser exclusivement des comptes cloud dédiés aux tâches du Control Plane réduit la probabilité d’exploitation des systèmes hérités comme point d’entrée. </span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
<li data-leveltext="-" data-font="Calibri" data-listid="2" data-list-defn-props="{&quot;335551671&quot;:0,&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Calibri&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;-&quot;,&quot;469777815&quot;:&quot;hybridMultilevel&quot;}" aria-setsize="-1" data-aria-posinset="0" data-aria-level="1"><span data-contrast="auto">Finalement, associer ces comptes à une authentification multi-facteurs (MFA) résistante au phishing, à une administration Just-In-Time (JIT), à une gouvernance d’identité robuste et à des politiques d’accès conditionnel, ainsi qu’à une conformité stricte des postes de travail, crée une défense en couches qui diminue considérablement le risque d’une telle attaque.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
</ul>
<p style="text-align: justify;"><span data-contrast="auto">Ce scénario souligne l’importance de considérer chaque compte comme un vecteur de menace potentiel. Mettre en place une isolation stricte et des contrôles rigoureux permet de garantir la sécurité de votre Control Plane en cas de compromission d’un compte de niveau inférieur.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<h2><b><span data-contrast="auto">Compromission d’un poste administrateur du Control Plane </span></b><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></h2>
<p style="text-align: justify;"><span data-contrast="auto">Considérons maintenant une situation où un attaquant parvient à compromettre le compte administrateur de l’Intune Mobile Device Manager (MDM). Avec cet accès, l&rsquo;attaquant obtient le contrôle du portail d&rsquo;administration d&rsquo;Intune, lui permettant de manipuler le poste de travail d&rsquo;un administrateur du Control Plane. Il peut déployer des configurations malveillantes, installer des portes dérobées ou se connecter directement à l&rsquo;ordinateur de l&rsquo;administrateur (Remote help. Cet accès transforme le poste de l&rsquo;administrateur en un outil puissant pour une exploitation ultérieure, offrant à l&rsquo;attaquant la capacité d&rsquo;exécuter des commandes, d&rsquo;exfiltrer des données sensibles et de manipuler des ressources cloud sans recourir à des techniques de piratage supplémentaires.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> <img loading="lazy" decoding="async" class="aligncenter size-full wp-image-25221" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/2-Control-plane-administration-workstation-compromise-scenario.jpg" alt="2-Control-plane-administration-workstation-compromise-scenario." width="925" height="414" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/2-Control-plane-administration-workstation-compromise-scenario.jpg 925w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/2-Control-plane-administration-workstation-compromise-scenario-427x191.jpg 427w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/2-Control-plane-administration-workstation-compromise-scenario-71x32.jpg 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/2-Control-plane-administration-workstation-compromise-scenario-768x344.jpg 768w" sizes="auto, (max-width: 925px) 100vw, 925px" /></span></p>
<p style="text-align: justify;"><span data-contrast="auto">Ce scénario nous rappelle un principe clé du premier article : la sécurité du cloud doit être abordée de manière holistique. Il ne s&rsquo;agit pas seulement de sécuriser les identités, mais aussi de garantir que les appareils utilisés pour accéder au Control Plane sont sécurisés. Dans ce cas, le poste de l&rsquo;administrateur du Control Plane devient un atout critique qui, s&rsquo;il est compromis, pourrait compromettre les défenses cloud les plus sophistiquées.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<h2><b><span data-contrast="auto">Compromission du CI/CD</span></b><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></h2>
<p style="text-align: justify;"><span data-contrast="auto">Les environnements Cloud reposant fortement sur l’automatisation, les pipelines CI/CD pour la gestion de l&rsquo;infrastructure deviennent des cibles privilégiées pour les attaquants. Imaginons un scénario où un attaquant parvient à accéder au compte d&rsquo;un ingénieur DevOps par le biais d&rsquo;une attaque de phishing ou d&rsquo;un vol d&rsquo;identifiants. Avec cet accès, il introduit un changement malveillant d&rsquo;Infrastructure as Code (IaC) dans un dépôt Git, sachant que cela déclenchera un pipeline Azure automatisé. Le pipeline valide, planifie et déploie l&rsquo;infrastructure sur Azure, entraînant la destruction ou l&rsquo;altération de ressources clés d&rsquo;Azure, c&rsquo;est-à-dire les fondations de la </span><i><span data-contrast="auto">Landing Zone</span></i><span data-contrast="auto">. De plus, l&rsquo;attaquant modifie la configuration YAML du pipeline Azure. Ce faisant, il provoque la fuite d&rsquo;un secret </span><i><span data-contrast="auto">Service Principal </span></i><span data-contrast="auto">dans les journaux ou la console de débogage, qui est ensuite utilisé pour effectuer des appels non autorisés à l&rsquo;API Graph. En exploitant cette identité sur-privilégiée, l&rsquo;attaquant peut escalader ses privilèges, compromettant ainsi les identités Entra ID ou les comptes Office 365.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">Les </span><i><span data-contrast="auto">runners</span></i><span data-contrast="auto"> jouent également un rôle crucial dans le pipeline CI/CD. Ces agents sont responsables de l&rsquo;exécution des tâches dans le pipeline et peuvent être hébergés et maintenus par le fournisseur cloud ou sur site. Comme pour tout serveur, leur compromission peut être utilisée comme point de pivot pour rebondir vers la </span><i><span data-contrast="auto">Landing Zone</span></i><span data-contrast="auto"> (par exemple : vol de </span><i><span data-contrast="auto">token</span></i><span data-contrast="auto">) ou d&rsquo;autres services associés.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> <img loading="lazy" decoding="async" class="aligncenter size-full wp-image-25223" src="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/3-CICD-compromise-scenario.jpg" alt="3-CICD-compromise-scenario." width="932" height="387" srcset="https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/3-CICD-compromise-scenario.jpg 932w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/3-CICD-compromise-scenario-437x181.jpg 437w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/3-CICD-compromise-scenario-71x29.jpg 71w, https://www.riskinsight-wavestone.com/wp-content/uploads/2025/01/3-CICD-compromise-scenario-768x319.jpg 768w" sizes="auto, (max-width: 932px) 100vw, 932px" /></span></p>
<p style="text-align: justify;"><span data-contrast="auto">Ce scénario illustre l&rsquo;interconnexion de la sécurité du cloud. Le pipeline CI/CD, souvent perçu comme une fonction de back-office, est en réalité profondément intégré au Control Plane. Sa compromission peut entraîner des conséquences dévastatrices et généralisées pour les fondations mêmes de vos opérations cloud.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">Pour se protéger contre une telle menace, il est crucial d&rsquo;isoler le pipeline du Control Plane, dont le but est de construire la </span><i><span data-contrast="auto">Landing Zone</span></i><span data-contrast="auto">, des pipelines de projet. Ensuite, il convient d&rsquo;appliquer le principe du moindre privilège, en veillant à ce que les comptes et les </span><i><span data-contrast="auto">runners</span></i><span data-contrast="auto"> au sein du pipeline n&rsquo;aient que les permissions nécessaires pour accomplir leurs tâches. Par exemple, pour limiter les permissions des </span><i><span data-contrast="auto">runners</span></i><span data-contrast="auto">, nous pouvons utiliser l&rsquo;identité fédérée et demander des </span><i><span data-contrast="auto">token</span></i><span data-contrast="auto"> OpenID Connect (OIDC), qui fournissent un accès limité et temporaire aux services cloud comme Azure. De plus, l&rsquo;adoption de pratiques de sécurité automatisées telles que </span><i><span data-contrast="auto">Configuration as Code</span></i><span data-contrast="auto"> (CaC) ou </span><i><span data-contrast="auto">Policy as Code</span></i><span data-contrast="auto"> (PaC) peut aider à réduire les erreurs humaines et à garantir une sécurité cohérente dans vos déploiements.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">En matière de sécurité cloud, chaque processus et chaque outil doit être considéré sous l&rsquo;angle du risque. Le pipeline CI/CD ne fait pas exception. En sécurisant ce composant critique, vous protégez non seulement votre Control Plane, mais vous assurez également la stabilité et la sécurité de l&rsquo;ensemble de votre infrastructure cloud. Cette approche holistique de la sécurité du cloud est ce qui permettra finalement à vos opérations de fonctionner correctement, même face à des attaques sophistiquées.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<h2>Synthèse</h2>
<p style="text-align: justify;"><span data-contrast="auto">Dans cet article, nous avons examiné trois scénarios d&rsquo;attaque qui menacent la sécurité du Control Plane dans les environnements cloud : la compromission du support IT, la compromission du poste de travail de l&rsquo;administrateur du Control Plane et la compromission du pipeline CI/CD.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-contrast="auto">Chacun de ces scénarios met en évidence l&rsquo;importance d&rsquo;une approche de sécurité à plusieurs niveaux, incluant des mesures techniques et organisationnelles. Nous proposons une stratégie en quatre étapes pour concevoir votre Control Plane et le sécuriser contre les attaques potentielles :</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<ul style="text-align: justify;">
<li data-leveltext="" data-font="Symbol" data-listid="3" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" aria-setsize="-1" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="auto">Étape 1 : Définir ce qui est systémique pour votre infrastructure</span></b><span data-contrast="auto"> : identifier les composants et comptes critiques au sein de votre Control Plane qui, s&rsquo;ils sont compromis, pourraient entraîner une perturbation globale.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
<li data-leveltext="" data-font="Symbol" data-listid="3" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" aria-setsize="-1" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="auto">Étape 2 : Evaluer votre risque actuel avec un audit de sécurité</span></b><span data-contrast="auto"> : réaliser des audits de sécurité réguliers pour évaluer l&rsquo;état actuel de la sécurité de votre Control Plane. Cela vous aidera à identifier les vulnérabilités et à prioriser les efforts de remédiation.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
<li data-leveltext="" data-font="Symbol" data-listid="3" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" aria-setsize="-1" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="auto">Étape 3 : Définir une feuille de route pour isoler et sécuriser les actifs les plus à risque</span></b><span data-contrast="auto"> : sur la base des résultats de votre audit, élaborer une feuille de route claire pour sécuriser les actifs les plus critiques. Cela devrait inclure des échéanciers, l&rsquo;allocation des ressources et des actions spécifiques pour atténuer les risques identifiés.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
<li data-leveltext="" data-font="Symbol" data-listid="3" data-list-defn-props="{&quot;335552541&quot;:1,&quot;335559685&quot;:720,&quot;335559991&quot;:360,&quot;469769226&quot;:&quot;Symbol&quot;,&quot;469769242&quot;:[8226],&quot;469777803&quot;:&quot;left&quot;,&quot;469777804&quot;:&quot;&quot;,&quot;469777815&quot;:&quot;multilevel&quot;}" aria-setsize="-1" data-aria-posinset="1" data-aria-level="1"><b><span data-contrast="auto">Étape 4 : Se préparer aux scénarios de suppression du cloud</span></b><span data-contrast="auto"> : envisager les pires scénarios où des sections entières de votre infrastructure cloud pourraient être compromises ou désactivées. Élaborer des plans de contingence et s&rsquo;assurer que les processus de sauvegarde et de reprise après sinistre sont en place.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></li>
</ul>
<p style="text-align: justify;"><span data-contrast="auto">En suivant ces recommandations, vous pouvez construire une défense robuste contre les menaces potentielles à votre Control Plane, garantissant que votre environnement cloud reste sécurisé et résilient.</span><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p style="text-align: justify;"><span data-ccp-props="{&quot;335551550&quot;:6,&quot;335551620&quot;:6}"> </span></p>
<p> </p>
<p>Merci à <strong>Louis CLAVERO</strong> pour sa contribution à cet article.</p>
<p>Cet article <a href="https://www.riskinsight-wavestone.com/2025/01/enterprise-access-model-2-2-quelles-solutions-pour-securiser-un-control-plane/">Enterprise Access Model (2/2) : Quelles solutions pour sécuriser un Control Plane ? </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/2025/01/enterprise-access-model-2-2-quelles-solutions-pour-securiser-un-control-plane/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
