<?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>ADDS &#8211; erwan.guillemard</title>
	<atom:link href="https://erwanguillemard.com/tag/adds/feed/" rel="self" type="application/rss+xml" />
	<link>https://erwanguillemard.com</link>
	<description>Blog personnel</description>
	<lastBuildDate>Thu, 12 Mar 2026 08:28:08 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://erwanguillemard.com/wp-content/uploads/2024/02/cropped-Logo-sans-baseline-32x32.png</url>
	<title>ADDS &#8211; erwan.guillemard</title>
	<link>https://erwanguillemard.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>WIN &#8211; ADDS &#038; Temporary Group Membership</title>
		<link>https://erwanguillemard.com/win-adds-temporary-group-membership/</link>
		
		<dc:creator><![CDATA[Erwan Guillemard]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 14:50:00 +0000</pubDate>
				<category><![CDATA[Sécurité]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[ADDS]]></category>
		<category><![CDATA[Securité]]></category>
		<guid isPermaLink="false">https://erwanguillemard.com/?p=3327</guid>

					<description><![CDATA[Il n&#8217;est jamais trop tard pour parler de sécurité et de découvrir des fonctionnalités existantes sur lesquelles je suis passé allégrement à côté et ce depuis 2016&#8230; Comme quoi, il n&#8217;est jamais trop tard. Alors de quel mécanisme de sécurité vais-je aborder ? Dans l&#8217;ère du temps, nous parlons sans cesse de PAM, PIM, ZTNA,...]]></description>
										<content:encoded><![CDATA[
<p>Il n&rsquo;est jamais trop tard pour parler de sécurité et de découvrir des fonctionnalités existantes sur lesquelles je suis passé allégrement à côté et ce depuis 2016&#8230; Comme quoi, il n&rsquo;est jamais trop tard.</p>



<p class="has-text-align-center"><strong>Alors de quel mécanisme de sécurité vais-je aborder ? </strong></p>



<p>Dans l&rsquo;ère du temps, nous parlons sans cesse de PAM<sup data-fn="ec10b2ae-5ea1-491a-a70e-30a705e606ba" class="fn"><a href="#ec10b2ae-5ea1-491a-a70e-30a705e606ba" id="ec10b2ae-5ea1-491a-a70e-30a705e606ba-link">1</a></sup>, PIM<sup data-fn="44bed6e4-dd83-4e4d-a36d-3d5b0d5e1df7" class="fn"><a href="#44bed6e4-dd83-4e4d-a36d-3d5b0d5e1df7" id="44bed6e4-dd83-4e4d-a36d-3d5b0d5e1df7-link">2</a></sup>, ZTNA<sup data-fn="a7f26285-202f-4abc-8fbe-495c821aa98b" class="fn"><a href="#a7f26285-202f-4abc-8fbe-495c821aa98b" id="a7f26285-202f-4abc-8fbe-495c821aa98b-link">3</a></sup>, termes qui jusqu&rsquo;il y a quelques années étaient obscurs et commençaient tous justes à émerger. Si aujourd&rsquo;hui ces termes sont incontournables, je m&rsquo;interroge à implémenter ces derniers dans un environnement OnPremise (pour ne pas dire mon environnement) en tenant compte :</p>



<ul class="wp-block-list">
<li>Du modèle de tiering de l&rsquo;infrastructure</li>



<li>De la segmentation en place des rôles et permissions</li>



<li>Du durcissement de sécurité</li>
</ul>



<p>Toutefois et encore une fois, comme le disait un ancien collègue la sécurité ce n&rsquo;est pas pratique et je souhaite mettre en place une certaine souplesse à certains comptes utilisateurs bien identifiés.</p>



<p class="has-text-align-center"><a href="https://www.youtube.com/watch?v=IOtfbXAGKG4&amp;list=RDIOtfbXAGKG4&amp;start_radio=1">Pif, PAM, Pouf, Je suis informaticien ; Pif, PAM, Pouf ça c&rsquo;est vraiment trop bien !</a></p>



<p>Donc me voilà parti pour l&rsquo;étude et l&rsquo;implémentation d&rsquo;une des fonctionnalités PAM fournit par Windows, l&rsquo;appartenance temporaire à un groupe ou Temporary Group Membership (TGM<sup data-fn="8172a65b-8801-4743-896d-7be205dc4dea" class="fn"><a href="#8172a65b-8801-4743-896d-7be205dc4dea" id="8172a65b-8801-4743-896d-7be205dc4dea-link">4</a></sup>).</p>





<h2 class="wp-block-heading">Avant-Propos</h2>



<p>Je pars du principe que nous avons un environnement Windows avec un contrôleur ADDS<sup data-fn="329a3ad9-bad6-4ee9-8018-4f04b6a0ce09" class="fn"><a href="#329a3ad9-bad6-4ee9-8018-4f04b6a0ce09" id="329a3ad9-bad6-4ee9-8018-4f04b6a0ce09-link">5</a></sup>. Ce dernier est OnPremise est non hybride (pas de jonction avec AAD<sup data-fn="66200fbf-59c4-4470-8c5f-4a5d63bd91a8" class="fn"><a href="#66200fbf-59c4-4470-8c5f-4a5d63bd91a8" id="66200fbf-59c4-4470-8c5f-4a5d63bd91a8-link">6</a></sup>).</p>



<p>Notre architecture se base sur la segmentation en tiering de notre SI<sup data-fn="b2c40b43-9f6f-4d0d-9f38-135df62b4c9b" class="fn"><a href="#b2c40b43-9f6f-4d0d-9f38-135df62b4c9b" id="b2c40b43-9f6f-4d0d-9f38-135df62b4c9b-link">7</a></sup> et notre ADDS est durci selon les préconisations de l&rsquo;ANSSI<sup data-fn="1b7dbd0d-2d64-4802-83f8-a9c929f472c5" class="fn"><a href="#1b7dbd0d-2d64-4802-83f8-a9c929f472c5" id="1b7dbd0d-2d64-4802-83f8-a9c929f472c5-link">8</a></sup>.</p>



<p>L&rsquo;objectif que je me fixe est donc de mettre en place la fonctionnalité d&rsquo;attribution de droit d&rsquo;administration temporairement à un utilisateur sans à avoir de :</p>



<ul class="wp-block-list">
<li>Créer un compte d&rsquo;administration dédié à un usage ponctuel</li>



<li>D&rsquo;attribuer les droits d&rsquo;administration (domaine ou local) permanent</li>
</ul>



<p>Comme d&rsquo;accoutumé (car nous ne changeons pas les bonnes vieilles habitudes) l&rsquo;environnement Windows sera durci selon les bonnes pratiques et j&rsquo;utiliserai mes deux contrôleurs de domaine 2025 en CORE.</p>



<h2 class="wp-block-heading">Prérequis</h2>



<ul class="wp-block-list">
<li><strong>SE :</strong>
<ul class="wp-block-list">
<li>Windows Server : 2k16 et version ultérieures</li>
</ul>
</li>



<li><strong>Apps :</strong>
<ul class="wp-block-list">
<li>ADDS</li>
</ul>
</li>



<li><strong>Autres :</strong>
<ul class="wp-block-list">
<li>Non applicable</li>
</ul>
</li>
</ul>



<h2 class="wp-block-heading">Théorie</h2>



<p>Il est important de comprendre comment fonctionne et ce qu&rsquo;apporte l&rsquo;ajout de la fonctionnalité « Privileged Access Management Feature ».</p>



<p>Il est impératif et primordial que l&rsquo;ensemble des serveurs AD soit <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color"><span style="text-decoration: underline;">au minima en version WS 2k16</span></mark> et donc que le schéma de la forêt soit en version 2016.</p>



<p>Au vu des derniers propos énoncés, nous pouvons nous douter que nous allons altérer le schéma de notre AD. Ce qui est implicite (mais enfonçons une porte ouverte), l&rsquo;installation de cette fonctionnalité sera irréversible (oui c&rsquo;est une extension du schéma&#8230; La base j&rsquo;en encore envie d&rsquo;écrire. Oups c&rsquo;est fait).</p>



<h3 class="wp-block-heading">Extension du schéma Active Directory</h3>



<p>Je juge important de savoir ce qui va être ajouté. C&rsquo;est pourquoi une sous partie va être nécessaire pour regarder plus en détail la liste des nouveaux objets et attributs.</p>



<p>La liste n&rsquo;est pas longue. Toutefois il convient de rappeler que « ce n&rsquo;est pas le nombre d&rsquo;objet qui fait la force » mais leur usage.</p>



<div class="wp-block-kadence-accordion alignnone"><div class="kt-accordion-wrap kt-accordion-id3327_85f65d-fd kt-accordion-has-4-panes kt-active-pane-0 kt-accordion-block kt-pane-header-alignment-left kt-accodion-icon-style-basic kt-accodion-icon-side-right" style="max-width:none"><div class="kt-accordion-inner-wrap" data-allow-multiple-open="false" data-start-open="none">
<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-1 kt-pane3327_72b917-7f"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Objets</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>L&rsquo;un des objets centraux de PAM est l&rsquo;object <strong>msDS-ShadowPrincipal</strong>. Son rôle représente un principal de sécurité fantôme qui sert notamment de jonction temporaire entre un utilisateur ou groupe à un groupe privilégié.</p>



<p>Le second objet est un container <strong>msDS-ShadowPrincipalContainer</strong>. Ce dernier va contenir les objets de type msDS-ShadowPrincipal et garantir une organisation de la configuration PAM.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-2 kt-pane3327_bbbea9-ea"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Attributs</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Nous distinguons deux types d&rsquo;attributs. Les attributs spécifiques propres à PAM et les attributs étendus.</p>



<ul class="wp-block-list">
<li><strong><span style="text-decoration: underline;">msDS-ShadowPrincipalSid :</span></strong> De type SID, ce dernier permet de prendre le SID<sup data-fn="4efd3a4f-04e4-49de-8f24-1f8166178ee7" class="fn"><a href="#4efd3a4f-04e4-49de-8f24-1f8166178ee7" id="4efd3a4f-04e4-49de-8f24-1f8166178ee7-link">9</a></sup> du compte utilisateur ou du groupe (externe ou interne) et de créer la jonction d&rsquo;appartenance temporaire. En plus simple, c&rsquo;est ce qui va permettre à notre AD<sup data-fn="190798aa-1ac2-44b6-be35-e16ee5e894f0" class="fn"><a href="#190798aa-1ac2-44b6-be35-e16ee5e894f0" id="190798aa-1ac2-44b6-be35-e16ee5e894f0-link">10</a></sup> de traiter l&rsquo;appartenance temporaire (fantôme) comme un groupe de sécurité à part entière.</li>



<li><strong><span style="text-decoration: underline;">memberTimeToLive : </span></strong>De type integer, ce dernier va prendre en compte la durée du TTL<sup data-fn="e6bbd41f-636e-49b9-ac13-b18007210b46" class="fn"><a href="#e6bbd41f-636e-49b9-ac13-b18007210b46" id="e6bbd41f-636e-49b9-ac13-b18007210b46-link">11</a></sup> en secondes de l&rsquo;appartenance de notre compte utilisateur ou groupe à un autre groupe. Cet attribut fonctionne avec les groupes member et memberOf. Une fois la durée expiré, la suppression est automatique.</li>
</ul>



<p>Dans le cas des attributs étendus ces derniers sont déjà présents dans le schéma initial. Néanmoins, ces derniers deviennent d&rsquo;une haute criticité avec l&rsquo;ajout de la fonctionnalité PAM. Pourquoi ? Simplement parce qu&rsquo;il va avoir la capacité de prendre en comptes des valeurs avec TTL.</p>



<p>Ceci est vrai pour l&rsquo;attribut member.</p>



<p class="has-text-align-center">member;TTL=3600</p>



<p>L&rsquo;attribut memberOf quant à lui va gérer les appartenances temp</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-3 kt-pane3327_89f519-6c"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Droits étendus</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Du côté des droits étendus (où <em>Extended Rights</em> pour nos amis anglophones) liés au Shadow Principal sont à noter les droits suivants :</p>



<ul class="wp-block-list">
<li><strong>Create msDS-ShadowPrincipal objects</strong></li>



<li><strong>Manage Shadow Principal Membership</strong></li>
</ul>



<p>Ces deux extensions sont relativement importantes puisqu&rsquo;elles permettent de générer des flux d&rsquo;approbation (Approbation Workflows), les scripts d&rsquo;automatisations et le MIM<sup data-fn="e9681cdd-0dac-4c25-a6dd-b2b28e9fe052" class="fn"><a href="#e9681cdd-0dac-4c25-a6dd-b2b28e9fe052" id="e9681cdd-0dac-4c25-a6dd-b2b28e9fe052-link">12</a></sup> PAM.</p>



<p class="has-text-align-center"><a href="https://www.youtube.com/watch?v=arXrc2UqHFM">Barrez vous ! Cons de mimes !</a></p>



<p>Attention, il est important de dissocier deux points bien précis concernant MIM et PIM<sup data-fn="504a3fd7-1971-42ff-a3b1-99c39c72cfbc" class="fn"><a href="#504a3fd7-1971-42ff-a3b1-99c39c72cfbc" id="504a3fd7-1971-42ff-a3b1-99c39c72cfbc-link">13</a></sup>. MIM pour Microsoft Identity Manager et un composant OnPremise qui n&rsquo;a absolument rien à voir avec PIM du cloud Azure.</p>



<p></p>
</div></div></div>
</div></div></div>



<p></p>



<p class="has-text-align-center">Et avec tous les points, quand est-il des risques ? Oh quasi rien (#MDR)</p>



<h3 class="wp-block-heading">Risques</h3>



<div class="wp-block-kadence-accordion alignnone"><div class="kt-accordion-wrap kt-accordion-id3327_47471e-43 kt-accordion-has-6-panes kt-active-pane-0 kt-accordion-block kt-pane-header-alignment-left kt-accodion-icon-style-basic kt-accodion-icon-side-right" style="max-width:none"><div class="kt-accordion-inner-wrap" data-allow-multiple-open="false" data-start-open="none">
<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-1 kt-pane3327_88f8c1-db"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Structurels</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>L&rsquo;un des premiers risques seraient lors du déploiement de la fonctionnalité. Il est important de bien prendre en compte le côté irréversible de l&rsquo;opération. Je recommanderai de vérifier en amont l&rsquo;état de santé des DCs et de la topologie souhaitée. L&rsquo;objectif étant de ne pas se coltiner une dette technique des familles à la suite d&rsquo;une mauvaise conception.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-2 kt-pane3327_20140b-43"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Délégations</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<figure class="wp-block-table aligncenter"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>Attention à la délégation sur notre container (CN=Shadow Principal Configuration). Si ces derniers sont trop larges un type comme Waldo peut se définir Admin du Domain en créant un ShadowPrincipal. Et hop ! Une escalade invisible&#8230;</td><td><img fetchpriority="high" decoding="async" width="850" height="1801" class="wp-image-3380" style="width: 850px;" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_000_Odlaw.jpg" alt="" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_000_Odlaw.jpg 253w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_000_Odlaw-142x300.jpg 142w" sizes="(max-width: 850px) 100vw, 850px" /></td></tr></tbody></table></figure>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-3 kt-pane3327_39200c-8b"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Sécurités</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Continuons de parler d&rsquo;escalade (<a href="https://youtube.com/shorts/wSKFuIuek_o?feature=share">perso, moi c&rsquo;est le bloc jusqu&rsquo;à ce que je ni**e deux ménisques</a>), le risque d&rsquo;une escalade furtive et temporaire&#8230; </p>



<p>Les mécanismes PAM octroyant des droits temporaires, l&rsquo;usage d&rsquo;un compte admin temporaire serait peu visibles dans les journaux d&rsquo;audit et sont souvent peu, voire mal surveillés. Ainsi, un attaquant peut devenir Admin du Domain pour 1 heure réaliser une opération de type DCsync plus la création d&rsquo;une backdoor et ce je la jouer à la <a href="https://www.youtube.com/watch?v=DGpYL-0hyic">David Copperfield</a>&#8230;</p>



<p>Une attaque directe par ShadowPrincipals à travers un compte compromis ayant les droits PAM. De cette manière, notre Charlie ou Waldo peut créer un ShadowPrincipal ajoutant un TTL à un groupe d&rsquo;administration (Tiers 0) sans à avoir besoin de modifier directement le groupe. Cette méthode permettrait de contourner un grand nombre de mécanisme de sécurité en place.</p>



<p>L&rsquo;attaque par SID, le classique des classiques. Comme vu précédemment, l&rsquo;attribut msDS-ShadowPrincipalSid accepte des SID internes et externes (dans le cas de forêt approuvé). Ainsi, une mauvaise gestion des relations d&rsquo;approbations ou la compromission d&rsquo;une forêt externe donnerait automatiquement un accès privilégié au SI local.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-4 kt-pane3327_a9f58a-e2"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Opérationnels</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>La perte d&rsquo;un accès administrateur qui aurait été délégué sur une mauvaise évaluation de la durée du TTL pourrait être lourd de conséquence. Risque de ne plus être administrateur durant une opération critique nécessitant les droits d&rsquo;administrations par exemple et donc de se retrouver totalement bloqué.</p>



<p>Une complexité trop élevée peut également relever d&rsquo;un frein. Cela peut rendre les débogages longs et fastidieux (un peu comme ma b**e&#8230; Très très drôle M&rsquo;sieur&#8230;) ainsi que des comportements inattendus. La pire chose possible reste la mauvaise formation des équipes et le risque d&rsquo;erreurs fréquentes par les équipes de Niveau 0 ou 1.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-5 kt-pane3327_52f57d-da"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Gouvernances et Humains</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>De la mauvaise formation des équipes relèvent souvent de processus non définis ou totalement ignoré. Ainsi il ne serait pas rare d&rsquo;assigner des TTLs trop longs dans le temps pour avoir la paix (qu&rsquo;est-ce que la sécurité peut être pénible) ou de définir des TTLs trop courts et d&rsquo;enchainer les élévations temporaires.</p>



<p class="has-text-align-center"><strong>Se pose alors la question de « Mais à quoi sert le PAM finalement ? »</strong></p>



<p>L&rsquo;excès de confiance et son mauvais usage peut entrainer un faux sentiment de sécurité. Le PAM a été implémenté, nous ne risquons rien. Sauf que les comptes d&rsquo;administrations ne sont pas protégés correctement et dans le cas de compromission d&rsquo;un poste admin&#8230; Je ne fais pas de dessin hein ?</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-6 kt-pane3327_3ee10b-e2"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Audits et Conformités</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Comme inscrit précédemment, les journaux d&rsquo;évènements sont assez difficiles à identifier et à corréler dans le cadre d&rsquo;attribution temporaire des droits. Ainsi, l&rsquo;expiration d&rsquo;un TTL n&rsquo;est pas un évènement clair pour l&rsquo;audit. Ce qui peut facilement limiter l&rsquo;analyse et le diagnostic de la part des équipes.</p>



<p>C&rsquo;est pourquoi il va être nécessaire de porter une vigilance particulière sur les événements suivants :</p>



<figure class="wp-block-table aligncenter"><table class="has-fixed-layout"><tbody><tr><td class="has-text-align-center" data-align="center"><strong>Event ID</strong></td><td><strong>Description / Rôles / Types</strong></td></tr><tr><td class="has-text-align-center" data-align="center">4728</td><td>Ajout à un groupe global</td></tr><tr><td class="has-text-align-center" data-align="center">4732</td><td>Ajout à un groupe local</td></tr><tr><td class="has-text-align-center" data-align="center">4756</td><td>Ajout à un groupe universel</td></tr><tr><td class="has-text-align-center" data-align="center">4729</td><td>Expiration ou Suppression à un groupe global</td></tr><tr><td class="has-text-align-center" data-align="center">4733</td><td>Expiration ou Suppression à un groupe local</td></tr><tr><td class="has-text-align-center" data-align="center">4757</td><td>Expiration ou Suppression à un groupe universel</td></tr><tr><td class="has-text-align-center" data-align="center">5137</td><td>Création d&rsquo;un objet</td></tr><tr><td class="has-text-align-center" data-align="center">5136</td><td>Modification d&rsquo;un objet</td></tr><tr><td class="has-text-align-center" data-align="center">5141</td><td>Suppression d&rsquo;un objet</td></tr><tr><td class="has-text-align-center" data-align="center">4672</td><td>Attribution de privilège élevés</td></tr><tr><td class="has-text-align-center" data-align="center">4624</td><td>Logon d&rsquo;un compte ayant des droits d&rsquo;administration</td></tr><tr><td class="has-text-align-center" data-align="center">4634</td><td>Logoff d&rsquo;un compte ayant des droits d&rsquo;administration</td></tr><tr><td class="has-text-align-center" data-align="center">4648</td><td>Logon explicite d&rsquo;un compte ayant des droits d&rsquo;administration</td></tr><tr><td class="has-text-align-center" data-align="center">4662</td><td>Accès d&rsquo;objets AD sensibles</td></tr><tr><td class="has-text-align-center" data-align="center">4719</td><td>Modification audit policy</td></tr><tr><td class="has-text-align-center" data-align="center">1102</td><td>Effacement des journaux</td></tr><tr><td class="has-text-align-center" data-align="center">4768/4769</td><td>Kerberos (corrélation des TTLs)</td></tr></tbody></table></figure>



<p>A cela s&rsquo;ajoute les diverses solutions du marché qui viennent auditer la santé des SIs et notamment celui des AD. Ces derniers ne prennent pas en compte l&rsquo;attribut <strong>member;TTL</strong> et ShadowPrincipal. Les SIEMs<sup data-fn="a7416798-8244-4996-ba17-b6cb7ce255a7" class="fn"><a href="#a7416798-8244-4996-ba17-b6cb7ce255a7" id="a7416798-8244-4996-ba17-b6cb7ce255a7-link">14</a></sup> valant paroles d&rsquo;évangiles pour les SOCs<sup data-fn="8aee950a-5f95-41a2-9837-c95f7eddccdb" class="fn"><a href="#8aee950a-5f95-41a2-9837-c95f7eddccdb" id="8aee950a-5f95-41a2-9837-c95f7eddccdb-link">15</a></sup>, hop ni une ni deux l&rsquo;informations passent à la trappe.</p>
</div></div></div>
</div></div></div>



<h3 class="wp-block-heading">Recommandations</h3>



<p>Les objectifs sont de pouvoir garantir <mark style="background-color:rgba(0, 0, 0, 0);color:#ff0000" class="has-inline-color">AUCUN</mark> accès administrateur permanent afin d&rsquo;obtenir une élévation <em><strong>temporaire</strong></em>, <strong><em>traçable</em></strong> et <strong><em>approuvé</em></strong><em><strong>e</strong></em> (je reviendrai sur ces points dans la partie pratique). Tout cela afin de contenir et maitrisé en cas de compromission l&rsquo;impact ainsi que la surface d&rsquo;exposition.</p>



<p>Il est également primordial de comprendre que l&rsquo;usage du PAM au sens windows du terme ne doit servir que pour :</p>



<ul class="wp-block-list">
<li>Admin du Domaine</li>



<li>Administrateur de l&rsquo;entreprise</li>



<li>Administrateur du schéma</li>



<li>Administrateurs DC<sup data-fn="ddad7c45-1971-48e1-9703-8ed11530de1c" class="fn"><a href="#ddad7c45-1971-48e1-9703-8ed11530de1c" id="ddad7c45-1971-48e1-9703-8ed11530de1c-link">16</a></sup></li>



<li>Autres (Comptes ADCS<sup data-fn="fb1718ee-484f-4432-9238-67b667dc952c" class="fn"><a href="#fb1718ee-484f-4432-9238-67b667dc952c" id="fb1718ee-484f-4432-9238-67b667dc952c-link">17</a></sup>, ADFS<sup data-fn="0ec485fd-eeb7-4b54-9765-4384bec2f735" class="fn"><a href="#0ec485fd-eeb7-4b54-9765-4384bec2f735" id="0ec485fd-eeb7-4b54-9765-4384bec2f735-link">18</a></sup>, AAD Connect)</li>
</ul>



<p>L&rsquo;usage pour du helpdesk ou pour des serveurs applicatifs doit être proscrit. Ce qui est logique car il revient à Services Informatiques d&rsquo;arbitrer sur les demandes utilisateurs. Néanmoins, pour octroyer des droits d&rsquo;administrateur à un stagiaire ou prestataire ça fonctionne très bien mais encore une fois sous réserve DE certains mécanismes.</p>



<p>Cela passe donc par plusieurs axes.</p>



<div class="wp-block-kadence-accordion alignnone"><div class="kt-accordion-wrap kt-accordion-id3327_db657d-6d kt-accordion-has-4-panes kt-active-pane-0 kt-accordion-block kt-pane-header-alignment-left kt-accodion-icon-style-basic kt-accodion-icon-side-right" style="max-width:none"><div class="kt-accordion-inner-wrap" data-allow-multiple-open="false" data-start-open="none">
<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-1 kt-pane3327_d6db93-58"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Architecture</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Il est important de noter qu&rsquo;avant toutes choses, les serveurs en Tiers 0 ne doivent pas avoir accès à internet en dehors des URLs approuvés (et c&rsquo;est non négociable) et ne doivent contenir QUE les logicielles d&rsquo;architecture et de sécurité (donc vous me virez vos salop***ies de NinjaRMM, LogMeIn, TeamViewer et compagnie).</p>



<ul class="wp-block-list">
<li><strong>URLs des serveurs antivirus (genre TrendMicro etc)</strong></li>



<li><strong>URLs des serveurs de mises à jour Microsoft</strong></li>
</ul>



<p>Il va de soi qu&rsquo;étant en Tiers 0, le réseau est isolé et filtré en entrée et sortie. Il n&rsquo;y a pas d&rsquo;administration direct depuis une ressources de Tiers 1 ou 2.</p>



<figure class="wp-block-table aligncenter"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>Ci-contre, la topologie comme cette dernière devrait l&rsquo;être avec MIM et PAM.<br><br>Le fait d&rsquo;intercaler un server MIM-PAM entre notre ADDS et nos postes clients permettent d&rsquo;user comme dit précédemment des mécanismes d&rsquo;approbations de workflow et d&rsquo;automatisation.<br><br>Le serveur PAM doit être vu comme un bastion dans un réseau isolé de niveau T0.<br></td><td><img decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_005_001_Topologie_MIM.jpg" alt="https://learn.microsoft.com/fr-fr/microsoft-identity-manager/media/mim-topo-multitier.png"></td></tr></tbody></table></figure>



<p>La mise place d&rsquo;une telle architecture va être relativement complexe pour moi au vu des ressources disponibles niveau homelab. Je vais donc me passer du serveur intermédiaire MIM PAM.</p>



<p>Cette topologie est compatible et valide bien qui moins recommandée quant aux risques accrus relatif à l&rsquo;audit et d&rsquo;un contrôle moins efficace. Cela nous demandera donc en contrepartie d&rsquo;être irréprochable sur les groupes, droits et permissions lié à la délégation. Il sera nécessaire d&rsquo;avoir un regard et contrôle réguliers des scripts Powershell.</p>



<p>Donc me concernant je resterai sur mon modèle en place de tiering T0-T1-T2 avec segmentation et contrôle des flux.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-2 kt-pane3327_d09745-38"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Comptes &amp; IDs</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Cela me semble logique, mais important de le répéter il ne faut en aucun cas user d&rsquo;authentification interactif et de ne pas utiliser de compte administrateur. Et cherry on the cake, les comptes sont <strong><span style="text-decoration: underline;">TOUJOURS nominatifs</span></strong> (oui même pour vous les éditeurs).</p>



<p class="has-text-align-center">Ainsi, pas de compte admin permanent. 🙂</p>



<p>Néanmoins, il est important d&rsquo;avoir des comptes <strong><em>brises-glaces</em></strong> afin de ne pas se couper l&rsquo;herbe sous le pied. Dans la logique il en faudrait minimum deux et selon l&rsquo;ANSSI maximum deux (Décidemment la sécurité c&rsquo;est borderline). Naturellement ces comptes doivent être utilisés en cas d&rsquo;extrême urgence et lors de leurs usages une alerte doit être notifiée.</p>



<p>Ce qu&rsquo;il faut comprendre avec PAM, nous ne mettons pas tous nos œufs dans le même panier.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-3 kt-pane3327_88c420-62"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Nomenclatures des groupes</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Après ce qui a été dit dans le volet ci-haut, il est nécessaire de définir des GGS<sup data-fn="cd2a7bfd-1365-4cfa-876f-ba0c2c749e01" class="fn"><a href="#cd2a7bfd-1365-4cfa-876f-ba0c2c749e01" id="cd2a7bfd-1365-4cfa-876f-ba0c2c749e01-link">19</a></sup> propres au PAM et d&rsquo;ajouter ces derniers en tant que membre des groupes adéquates.</p>



<p>Ainsi pour ma part j&rsquo;userai de la nomenclature suivante :</p>



<p class="has-text-align-center"><strong><em>GGS_PAM_NOM_Elevation</em></strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><img decoding="async" width="883" height="58" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_005_002_GGS-1.jpg" alt="" class="wp-image-3383" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_005_002_GGS-1.jpg 883w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_005_002_GGS-1-300x20.jpg 300w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_005_002_GGS-1-768x50.jpg 768w" sizes="(max-width: 883px) 100vw, 883px" /></figure>
</div>


<p>Simple et efficace.</p>
</div></div></div>



<div class="wp-block-kadence-pane kt-accordion-pane kt-accordion-pane-4 kt-pane3327_747b32-20"><div class="kt-accordion-header-wrap"><button class="kt-blocks-accordion-header kt-acccordion-button-label-show" type="button"><span class="kt-blocks-accordion-title-wrap"><span class="kt-blocks-accordion-title"><strong>Durée de vie</strong></span></span><span class="kt-blocks-accordion-icon-trigger"></span></button></div><div class="kt-accordion-panel kt-accordion-panel-hidden"><div class="kt-accordion-panel-inner">
<p>Crucial dilemme de la définition de la durée de l&rsquo;élévation de droit temporaire&#8230; Dans la logique une intervention standard est de 30 à 60 minutes en cas de crise nous pourrions définir 120 minutes maximum. Toute durée supérieure à 2 heures et donc interdit.</p>



<p class="has-text-align-center"><strong>Oui mais voilà, je dois faire une opération sensible en tant que SysAdmin sur un SI sur la journée comment je fais ?</strong></p>



<p>Excellente question à laquelle je répondrai, nous sommes SysAdmin et donc nous avons l&rsquo;accréditation pour intervenir sur notre SI. Donc je n&rsquo;utiliserai pas PAM mais le système classique de mon compte utilisateur avec élévation de droit avec mon compte administrateur délégué ou super administrateur.</p>



<p class="has-text-align-center"><strong>Mon presta doit faire une montée de version de la solution applicative sur l&rsquo;un de nos serveurs pour la journée soit 7 heures de boulot. Comment tu réponds à ça Monsieur jesaistout ?</strong></p>



<p>J&rsquo;ai pour habitude de ne jamais laissé un prestataire intervenir seul sur mon SI ou un SI sous ma responsabilité. Donc je passe ma journée à surveiller d&rsquo;un coin de l&rsquo;œil ces actions. Et dans son cas, je me note de renouveler personnellement toutes les deux heures ça durée de vie. Généralement il n&rsquo;y a pas trop besoin car le prestataire est administrateur local du serveur mais certaines fois il est nécessaire de lui octroyer les droits d&rsquo;administrations du domaine (et ça, ça fait froid dans le dos et en dit long sur la topologie de la solution applicative&#8230;).</p>



<p>En complément, il en va de soi mais la tacite reconduction des renouvellements des TTLs et à bannir et encore une fois pas de TTL trop long par ne pas être emme**é toutes les deux minutes.</p>
</div></div></div>
</div></div></div>



<p></p>



<p>Bien je pense qu&rsquo;avec tout ça nous en savons assez pour passer à la pratique non ?</p>



<h2 class="wp-block-heading">Pratique</h2>



<h3 class="wp-block-heading">Installation</h3>



<p>Commençons par vérifier le niveau fonctionnel de notre forêt. Nous retrouvons la commande qui devient normalement un automatisme maintenant 🙂</p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-9307cdc13f0dcaa88fb837c1ea2d0a1c"><code><strong>&gt; Get-ADForest</strong></code></pre>



<figure class="wp-block-table"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>La preuve à l&rsquo;appui, ci-contre la preuve que pour l&rsquo;attribut ForestMode la valeur Windows2016Forest est présente.<br><br>Donc les prérequis sont atteints.<br><br>Néanmoins, je recommande un petit contrôle de santé de l&rsquo;AD par précaution et actions avant de poursuivre.</td><td><img decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_001_ADForestCheck.jpg" alt=""></td></tr></tbody></table></figure>



<p></p>



<p>Vérifions maintenant si la fonctionnalité est déjà présente ou non sur notre SI.</p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-8778877ba943af528e8366a29ae16896"><code><strong>&gt; Get-ADOptionalFeature -Filter "name -eq 'Privileged Access Management Feature'"</strong></code></pre>



<figure class="wp-block-table"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>Si la valeur de l&rsquo;attribut EnabledScopes est vide, la fonctionnalité n&rsquo;est pas déployée sur le système. Sinon ba elle l&rsquo;est déjà.<br>Evident Cap&rsquo;taine Obvious !</td><td><img decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_002_CheckFonctionnality-1024x174.jpg" alt=""></td></tr></tbody></table></figure>



<p></p>



<p>Activons alors cette fonctionnalité.</p>



<p class="has-text-align-center"><strong><span style="text-decoration: underline;"><mark style="background-color:rgba(0, 0, 0, 0);color:#fe0000" class="has-inline-color">/!\</mark></span>Attention :</strong> C&rsquo;est à ce moment que l&rsquo;opération devient irréversible. Et deuxième point de vigilance il faut que nous soyons administrateur du schéma temporairement</p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color has-small-font-size wp-elements-78803b1ab0a9692af268118c413ff224"><code><strong>&gt; Enable-ADOptionalFeature 'Privileged Access Management Feature' -Scope ForestOrConfigurationSet -Target ronelab.lan</strong></code></pre>



<figure class="wp-block-table"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td><img decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_003_AddFonctionnality-1024x89.jpg" alt=""></td><td>Il suffira de valider le déploiement en activant la touche <strong>T</strong> pour <strong>oui pour tout</strong>. Et quelques secondes plus tard, c&rsquo;est terminé.<br><br>Oui tous ces mots pour ça&#8230; Il faut bien faire durer le plaisir non ? &lt;3</td></tr></tbody></table></figure>



<p></p>



<p>Si nous voulons vraiment valider le bon déploiement de notre fonctionnalité, nous pouvons rappeler la seconde commande ci-haut pour vérifier les paramètres d&rsquo;activation de notre scope.</p>



<figure class="wp-block-image size-large"><img decoding="async" width="1024" height="160" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_004_EnabledFonctionnality-1024x160.jpg" alt="" class="wp-image-3346" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_004_EnabledFonctionnality-1024x160.jpg 1024w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_004_EnabledFonctionnality-300x47.jpg 300w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_004_EnabledFonctionnality-768x120.jpg 768w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_004_EnabledFonctionnality.jpg 1252w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure>



<p>Nous constatons donc que cette dernière n&rsquo;est plus vide ou $null. Nous pourrions également aller nous balader dans la configuration de notre AD pour trouver notre container.</p>



<p>Place à l&rsquo;assignation temporaire des droits 🙂</p>



<h3 class="wp-block-heading">Attribution temporaire</h3>



<p class="has-text-align-center"><strong>Bhin alors comment qui font qu&rsquo;on fait pour assigner des droits temporaires ? </strong></p>



<p>De la manière la plus simple du monde gazier, même si au passage il faudrait parler un langage au minima courant plutôt que familier.</p>



<p>Pour se faire, un compte admin et un accès à l&rsquo;un de nos DCs en powershell (où au DC en lui même). Je proscris volontairement les RSATs. Pourquoi ? Parce qu&rsquo;un DC doit être le plus isolé possible.</p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color wp-elements-1c923a27fe61de6a2dc967008764a833"><code><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-theme-palette-1-color"># Définir notre TTL en secondes en tant que variable de type Timespan</mark>
&gt; $ttl=New-TimeSpan -Hours 1 -Minutes 15
<mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-theme-palette-1-color"># Ajouter notre utilisateur temporairement au groupe</mark>
&gt; Add-ADGroupMember -Identity "GGS_PAM_AdminDomain_Elevation" -Members "john.doe" -MemberTimeToLive $ttl</strong></code></pre>



<figure class="wp-block-table"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>Et c&rsquo;est tout. Je vous l&rsquo;avais dit, rien de bien difficile. Un peu de RTFM et de ligne de commande&#8230;<br><br>Ce qui est intéressant c&rsquo;est de s&rsquo;attarder sur les événements de sécurité. Nous retrouvons avec exactitude ce que nous avons énoncé dans la partie théorie concernant le périmètre d&rsquo;audit.</td><td><img loading="lazy" decoding="async" width="550" height="261" class="wp-image-3359" style="width: 550px;" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers.jpg" alt="" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers.jpg 1882w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers-300x142.jpg 300w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers-1024x485.jpg 1024w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers-768x364.jpg 768w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_006_addMembers-1536x728.jpg 1536w" sizes="auto, (max-width: 550px) 100vw, 550px" /></td></tr></tbody></table></figure>



<p></p>



<p>Ouai mais alors comment vérifier que notre utilisateur à bien des droits qui court dans le temps ?</p>



<h3 class="wp-block-heading">Vérifications et Analyses</h3>



<p>Soyons un peu curieux et penchons nous dans les attributs de notre objets utilisateurs, groupe d&rsquo;élévation (auquel appartient notre utilisateur) et notre groupe final.</p>



<p class="has-text-align-center"><strong><a href="https://www.youtube.com/results?search_query=surprise">No Surprise ! Il n&rsquo;y a rien ! </a></strong></p>



<p>Etonnant non ? 🙂 J&rsquo;ai été surpris et j&rsquo;ai donc reparcouru la documentation en long, large diagonale&#8230; Pourquoi pouvons nous obtenir l&rsquo;information en powershell (oups j&rsquo;ai divulgâché la suite) et pas en GUI ?</p>



<p>C&rsquo;est là que c&rsquo;est malin. La durée de vie se trouve sur le lien entre l&rsquo;objet utilisateur et le groupe d&rsquo;appartenance (rien sur le groupe cible ce qui est logique). </p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color wp-elements-f4169ec1ae36bdfa3fe430d3a55bfd0a"><code><strong>&gt; Get-ADGroup -Filter * -Properties members -ShowMemberTimeToLive | Where-Object {$_.members -match "TTL*"}</strong></code></pre>



<figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="873" height="198" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_008_checkAdd.jpg" alt="" class="wp-image-3361" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_008_checkAdd.jpg 873w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_008_checkAdd-300x68.jpg 300w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_008_checkAdd-768x174.jpg 768w" sizes="auto, (max-width: 873px) 100vw, 873px" /></figure>



<p>Et donc côté Kerberos qu&rsquo;est ce qui se passe ? La documentation en parle et nous invite à être vigilant sur ces événements (4768 et 4769). Naturellement comme tout ajout à un groupe, il est nécessaire de fermer et d&rsquo;ouvrir de nouveau la session pour prendre en compte le changement.</p>



<pre class="wp-block-code has-theme-palette-9-color has-theme-palette-4-background-color has-text-color has-background has-link-color wp-elements-bf6cc03e4a8c61ccf265ca581bcd015c"><code><strong><mark style="background-color:rgba(0, 0, 0, 0)" class="has-inline-color has-theme-palette-1-color">#Dans le contexte de l'utilisateur</mark>
&gt; klist</strong></code></pre>



<figure class="wp-block-table"><table class="has-fixed-layout" style="border-style:none;border-width:0px"><tbody><tr><td>Nous pouvons donc constater (modulo mon temps d&rsquo;ouverture de session) que notre TGT<sup data-fn="4e769c23-6a40-4b39-bca0-bf97eef5f8f9" class="fn"><a href="#4e769c23-6a40-4b39-bca0-bf97eef5f8f9" id="4e769c23-6a40-4b39-bca0-bf97eef5f8f9-link">20</a></sup> à une durée de 1h11 / 1h15. Ce qui correspond à la durée définit dans notre délégation.<br>Une fois le temps imparti passé, le ticket sera renouvelé et donc les droits temporaires d&rsquo;administrations retirés.</td><td><img decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_009_klistTGT.jpg" alt="" style="width: 550px;"></td></tr></tbody></table></figure>



<p></p>



<p class="has-text-align-center"><strong>Et alors côté journaux d&rsquo;événements qu&rsquo;elles sont les nouvelles ma sœur Anne (#BARBEBLEU) ?</strong></p>


<div class="wp-block-image">
<figure class="aligncenter size-large is-resized"><img decoding="async" src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/84/Barbebleue.jpg/500px-Barbebleue.jpg" alt="" style="width:252px;height:auto"/></figure>
</div>


<p>J&rsquo;ai envie de dire il suffit de parcourir les journaux d&rsquo;évènement de sécurité.</p>


<div class="kb-gallery-wrap-id-3327_481d40-e1 alignnone wp-block-kadence-advancedgallery"><div class="kb-gallery-ul kb-gallery-non-static kb-gallery-type-slider kb-gallery-id-3327_481d40-e1 kb-gallery-caption-style-bottom-hover kb-gallery-filter-none" data-image-filter="none" data-lightbox-caption="true"><div class="kt-blocks-carousel splide kt-carousel-container-dotstyle-dark kt-carousel-arrowstyle-whiteondark kt-carousel-dotstyle-dark kb-slider-group-arrow kb-slider-arrow-position-center" data-slider-anim-speed="400" data-slider-scroll="1" data-slider-arrows="true" data-slider-fade="true" data-slider-dots="true" data-slider-type="slider" data-slider-hover-pause="false" data-slider-auto="" data-slider-speed="7000" data-show-pause-button="false"><div class="splide__track"><ul class="kt-blocks-carousel-init kb-blocks-slider splide__list"><li class="kb-slide-item kb-gallery-slide-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain kadence-blocks-gallery-intrinsic kb-gallery-image-ratio-inherit kb-has-image-ratio-inherit" ><img loading="lazy" decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_1_AddGroupe.jpg" width="565" height="599" alt="" data-full-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_1_AddGroupe.jpg" data-light-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_1_AddGroupe.jpg" data-id="3367" class="wp-image-3367 skip-lazy" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_1_AddGroupe.jpg 565w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_1_AddGroupe-283x300.jpg 283w" sizes="auto, (max-width: 565px) 100vw, 565px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-slide-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain kadence-blocks-gallery-intrinsic kb-gallery-image-ratio-inherit kb-has-image-ratio-inherit" ><img loading="lazy" decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_2_PrivilegeSpeciaux.jpg" width="575" height="566" alt="" data-full-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_2_PrivilegeSpeciaux.jpg" data-light-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_2_PrivilegeSpeciaux.jpg" data-id="3368" class="wp-image-3368 skip-lazy" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_2_PrivilegeSpeciaux.jpg 575w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_2_PrivilegeSpeciaux-300x295.jpg 300w" sizes="auto, (max-width: 575px) 100vw, 575px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-slide-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain kadence-blocks-gallery-intrinsic kb-gallery-image-ratio-inherit kb-has-image-ratio-inherit" ><img loading="lazy" decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_3_TGT.jpg" width="566" height="653" alt="" data-full-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_3_TGT.jpg" data-light-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_3_TGT.jpg" data-id="3369" class="wp-image-3369 skip-lazy" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_3_TGT.jpg 566w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_3_TGT-260x300.jpg 260w" sizes="auto, (max-width: 566px) 100vw, 566px" /></div></div></figure></div></div></li><li class="kb-slide-item kb-gallery-slide-item splide__slide"><div class="kadence-blocks-gallery-item"><div class="kadence-blocks-gallery-item-inner"><figure class="kb-gallery-figure kadence-blocks-gallery-item-hide-caption"><div class="kb-gal-image-radius"><div class="kb-gallery-image-contain kadence-blocks-gallery-intrinsic kb-gallery-image-ratio-inherit kb-has-image-ratio-inherit" ><img loading="lazy" decoding="async" src="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_4_opensession.jpg" width="570" height="653" alt="" data-full-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_4_opensession.jpg" data-light-image="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_4_opensession.jpg" data-id="3370" class="wp-image-3370 skip-lazy" srcset="https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_4_opensession.jpg 570w, https://erwanguillemard.com/wp-content/uploads/2026/01/WIN_011_010_4_opensession-262x300.jpg 262w" sizes="auto, (max-width: 570px) 100vw, 570px" /></div></div></figure></div></div></li></ul></div></div></div></div>


<p></p>



<p>Bon par contre ne nous cachons pas c&rsquo;est un peu pénible pour ne pas dire casse-cou***e de taper les requêtes powershell. Il faut définir le TTL, connaitre les SAMs des utilisateurs, connaitre les groupes. Bref, source d&rsquo;erreur à gogo. Alors à votre avis en tant que fainéant qu&rsquo;ais je bien pu faire ? 🙂</p>



<h2 class="wp-block-heading">Applications</h2>



<p>Oui, cela peut paraitre étrange, mais j&rsquo;ai réalisé une application GRAPHIQUE. Un jour à marquer dans les calendriers <a href="https://www.youtube.com/shorts/VaZ8991q4kY">FOR SURE</a> d&rsquo;une bière blanche !</p>



<p>J&rsquo;ai commencé à faire l&rsquo;outil en PS CLI, mais j&rsquo;ai vite trouvé que cela n&rsquo;était pas ergonomique. Alors je me suis demandé pourquoi ne pas réaliser une application en VB.NET ? Flemme monstrueuse. Puis pourquoi pas reprendre une frustration passé du GUI en powershell ?</p>



<p>Hé bien voilà, que je réouvre une vieille blessure et alors quel pied put**n ! Je me suis éclaté.</p>



<p>Bon il reste quelques points à améliorer :</p>



<ul class="wp-block-list">
<li>Multitâche pour retourner les valeurs de l&rsquo;AD</li>



<li>Ajouter des petites icones sympas</li>



<li>Ajouter un petit About (j&rsquo;ai droit à mes droits d&rsquo;auteur)</li>



<li>Publier l&rsquo;application en certifiant cette dernière</li>



<li>Quelques contrôles d&rsquo;erreurs ? :p</li>
</ul>



<p>Bref pas mal de petite chose mais rien de bien méchant.</p>



<h3 class="wp-block-heading">Démonstration</h3>



<p class="has-text-align-center">Rien de telle qu&rsquo;une petite démonstration en images successives pour comprendre, aussi appelé vidéo.</p>



<figure class="wp-block-embed aligncenter is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio"><div class="wp-block-embed__wrapper">
<iframe loading="lazy" title="WIN   ADDS &amp; Temporary Group Membership" width="720" height="405" src="https://www.youtube.com/embed/oaW9DOBak-w?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen></iframe>
</div></figure>



<h3 class="wp-block-heading">Github</h3>



<p class="has-text-align-center"><a href="https://github.com/EGuillemard/GS_001-WIN_ADDS_TGM.git">Miaou</a></p>



<h2 class="wp-block-heading">Conclusion</h2>



<p>Je mettais attaqué à ce morceau en ne pensant à la base ne pas y consacrer autant de temps. Je me suis rendu compte une nouvelle fois que ce sont les choses les plus simples qui requiert davantage de recul et de réflexion.</p>



<p>Je lutte encore entre les bonnes pratiques et recommandations contre mon usage et le périmètre d&rsquo;applicabilité. Dans un certaine mesure <a href="https://www.youtube.com/watch?v=9K-T6h84F7k&amp;list=RD9K-T6h84F7k&amp;start_radio=1">PAM, PAM, PAM je me mettrai bien une cartouche</a> pour ne pas avoir connu plus tôt cette fonctionnalité. Bref, il est nécessaire d&rsquo;étudier avec sérieux son implémentation et son usage.</p>



<p>Je n&rsquo;ai volontairement pas abordé le système de délégation des droits AD et sur les GPOs. Mais cela reste un impondérable car tout va reposer sur cette base. Ouvrir d&rsquo;un côté pour mieux fermer de l&rsquo;autre, dilemme cornélien que la sécurité. Et honnêtement si j&rsquo;avais traité ce point, l&rsquo;article serait insoutenable (comme la poitrine de <a href="https://www.youtube.com/watch?v=KjxVQZ-3upU&amp;list=RDKjxVQZ-3upU&amp;start_radio=1">PAMELA dans Alerte à Malibu</a> ; Franchement tu devais la faire celle-là espèce de 90tard, tu ne pouvais pas t&rsquo;en empêcher ?).</p>



<p>Je suis conscient qu&rsquo;il reste des axes d&rsquo;améliorations (notamment sur le code). Toutefois, je pense que si suite il doit y avoir cela plus sur PIM ce qui ouvrira la voie vers l&rsquo;environnement Azure.</p>



<p>Le mot de la fin :</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow">
<p><em>Si je PAM sur PAMELLA ? J&rsquo;offre un CADEAU en infogérance ? Malheureusement vous ne pouvez pas Jean-Pat il y a une « couille dehors » en diagonale. Vous retournez en case magouille. Un partout PAM au centre&#8230;</em></p>
<cite>Erwan GUILLEMARD</cite></blockquote>



<h2 class="wp-block-heading">Sources</h2>



<ul class="wp-block-list">
<li><a href="https://learn.microsoft.com/fr-fr/windows-server/get-started/whats-new-in-windows-server-2016#security-and-assurance">Microsoft : Fonctionnalités WS 2k16</a></li>



<li><a href="https://learn.microsoft.com/fr-fr/microsoft-identity-manager/pam/privileged-identity-management-for-active-directory-domain-services">Microsoft : PAM</a></li>



<li><a href="https://learn.microsoft.com/fr-fr/openspecs/windows_protocols/ms-adsc/5e4a3007-10de-479e-b0a4-3a96271e2640">Microsoft : Class ShadowPrincipal</a></li>



<li><a href="https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-adsc/3ebfa3c1-ad62-4930-852d-2fdc26f72de2">Microsoft : Class Container ShadowPrincipal</a></li>
</ul>


<ol class="wp-block-footnotes"><li id="ec10b2ae-5ea1-491a-a70e-30a705e606ba"><strong>PAM :</strong> Privilege Access Manager <a href="#ec10b2ae-5ea1-491a-a70e-30a705e606ba-link" aria-label="Aller à la note de bas de page 1">↩︎</a></li><li id="44bed6e4-dd83-4e4d-a36d-3d5b0d5e1df7"><strong>PIM :</strong> Privilege Identity Manager <a href="#44bed6e4-dd83-4e4d-a36d-3d5b0d5e1df7-link" aria-label="Aller à la note de bas de page 2">↩︎</a></li><li id="a7f26285-202f-4abc-8fbe-495c821aa98b"><strong>ZTNA :</strong> Zero Trust Network Access <a href="#a7f26285-202f-4abc-8fbe-495c821aa98b-link" aria-label="Aller à la note de bas de page 3">↩︎</a></li><li id="8172a65b-8801-4743-896d-7be205dc4dea"><strong>TGM :</strong> Temporary Group Membership <a href="#8172a65b-8801-4743-896d-7be205dc4dea-link" aria-label="Aller à la note de bas de page 4">↩︎</a></li><li id="329a3ad9-bad6-4ee9-8018-4f04b6a0ce09"><strong>ADDS :</strong> Active Directory Domain Service <a href="#329a3ad9-bad6-4ee9-8018-4f04b6a0ce09-link" aria-label="Aller à la note de bas de page 5">↩︎</a></li><li id="66200fbf-59c4-4470-8c5f-4a5d63bd91a8"><strong>AAD :</strong> Azure Active Directory <a href="#66200fbf-59c4-4470-8c5f-4a5d63bd91a8-link" aria-label="Aller à la note de bas de page 6">↩︎</a></li><li id="b2c40b43-9f6f-4d0d-9f38-135df62b4c9b"><strong>SI :</strong> Système d&rsquo;Information <a href="#b2c40b43-9f6f-4d0d-9f38-135df62b4c9b-link" aria-label="Aller à la note de bas de page 7">↩︎</a></li><li id="1b7dbd0d-2d64-4802-83f8-a9c929f472c5"><strong>ANSSI :</strong> Agence Nationale de Sécurité des Systèmes d&rsquo;Informations <a href="#1b7dbd0d-2d64-4802-83f8-a9c929f472c5-link" aria-label="Aller à la note de bas de page 8">↩︎</a></li><li id="4efd3a4f-04e4-49de-8f24-1f8166178ee7"><strong>SID :</strong> Security IDentifier <a href="#4efd3a4f-04e4-49de-8f24-1f8166178ee7-link" aria-label="Aller à la note de bas de page 9">↩︎</a></li><li id="190798aa-1ac2-44b6-be35-e16ee5e894f0"><strong>AD :</strong> Active Directory <a href="#190798aa-1ac2-44b6-be35-e16ee5e894f0-link" aria-label="Aller à la note de bas de page 10">↩︎</a></li><li id="e6bbd41f-636e-49b9-ac13-b18007210b46"><strong>TTL :</strong> TimeToLive <a href="#e6bbd41f-636e-49b9-ac13-b18007210b46-link" aria-label="Aller à la note de bas de page 11">↩︎</a></li><li id="e9681cdd-0dac-4c25-a6dd-b2b28e9fe052"><strong>MIM :</strong> Microsoft Inditity Manager <a href="#e9681cdd-0dac-4c25-a6dd-b2b28e9fe052-link" aria-label="Aller à la note de bas de page 12">↩︎</a></li><li id="504a3fd7-1971-42ff-a3b1-99c39c72cfbc"><strong>PIM :</strong> Privileged Identity Manager <a href="#504a3fd7-1971-42ff-a3b1-99c39c72cfbc-link" aria-label="Aller à la note de bas de page 13">↩︎</a></li><li id="a7416798-8244-4996-ba17-b6cb7ce255a7"><strong>SIEM :</strong> Security Information Event Management <a href="#a7416798-8244-4996-ba17-b6cb7ce255a7-link" aria-label="Aller à la note de bas de page 14">↩︎</a></li><li id="8aee950a-5f95-41a2-9837-c95f7eddccdb"><strong>SOC :</strong> Security Operation Center  <a href="#8aee950a-5f95-41a2-9837-c95f7eddccdb-link" aria-label="Aller à la note de bas de page 15">↩︎</a></li><li id="ddad7c45-1971-48e1-9703-8ed11530de1c"><strong>DC :</strong> Domain Controler <a href="#ddad7c45-1971-48e1-9703-8ed11530de1c-link" aria-label="Aller à la note de bas de page 16">↩︎</a></li><li id="fb1718ee-484f-4432-9238-67b667dc952c"><strong>ADCS :</strong> Active Directory Certificates Services <a href="#fb1718ee-484f-4432-9238-67b667dc952c-link" aria-label="Aller à la note de bas de page 17">↩︎</a></li><li id="0ec485fd-eeb7-4b54-9765-4384bec2f735"><strong>ADFS :</strong> Active Directory Federation Services <a href="#0ec485fd-eeb7-4b54-9765-4384bec2f735-link" aria-label="Aller à la note de bas de page 18">↩︎</a></li><li id="cd2a7bfd-1365-4cfa-876f-ba0c2c749e01"><strong>GGS :</strong> Groupe Global de Sécurité <a href="#cd2a7bfd-1365-4cfa-876f-ba0c2c749e01-link" aria-label="Aller à la note de bas de page 19">↩︎</a></li><li id="4e769c23-6a40-4b39-bca0-bf97eef5f8f9"><strong>TGT :</strong> Ticket Granting Ticket <a href="#4e769c23-6a40-4b39-bca0-bf97eef5f8f9-link" aria-label="Aller à la note de bas de page 20">↩︎</a></li></ol>]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
