Dans ce tutoriel, nous allons voir comment créer une stratégie Intune pour désactiver l'option "Interrompre les mises à jour" de Windows Update et qui est disponible sur Windows 10 et Windows 11.
Sans cette action de notre part, un utilisateur peut décider de suspendre les mises à jour pendant 1 semaine ou plusieurs semaines (maximum 5 semaines) sur sa machine Windows. Ce n'est pas souhaitable, car les administrateurs doivent garder le contrôle sur le comportement des appareils. Ainsi, grâce à cette GPO, un utilisateur ne pourra pas prendre la décision de désactiver temporairement les mises à jour.
Au sein du système d'exploitation, cette option se situe à l'emplacement suivant : Paramètres > Windows Update.
Si vous souhaitez désactiver cette option de Windows Update avec une GPO Active Directory, suivez ce tutoriel :
Cliquez sur "Appareils" dans le menu latéral, puis sur "Profils de configuration" afin de créer une nouvelle stratégie. Pour cela, cliquez sur "Créer" puis "Nouvelle stratégie".
Un panneau latéral apparaît sur la droite, choisissez "Windows 10 et ultérieur" comme plateforme puis choisissez "Catalogue des paramètres".
Commencez par donner un nom à ce profil de configuration, par exemple "Windows Update - Désactiver option "Interrompre les mises à jour". Vous pouvez en profiter pour ajouter une description avant de passer à la suite.
Ensuite, cliquez sur le lien "Ajouter des paramètres" (1), afin de rechercher le terme "pause" et valider avec le bouton "Recherche" (2). Ceci devrait vous permettre de sélectionner plus facilement la catégorie "Windows Update pour Entreprise" (3).
Sélectionnez le paramètre "Bloquer la fonctionnalité "Suspendre les mises à jour"" dans la liste des paramètres (4).
Sur la gauche, il ne vous reste plus qu'à activer ce paramètre pour qu'il passe sur le statut "Bloc" comme sur l'image ci-dessous.
Poursuivez la configuration... Dans cet exemple, la stratégie est affectée à tous les appareils mais vous pouvez sélectionner un groupe d'appareils.
Finalisez la création de la stratégie : le plus dur est fait !
III. Tester la configuration
Pour finir, connectez-vous sur une machine sur laquelle s'applique la stratégie afin de réaliser un test. Après avoir effectué la synchronisation, l'option "Interrompre les mises à jour" devrait être bloquée dans les paramètres de Windows Update.
Du côté du centre d'administration Intune, vous pouvez suivre le déploiement de cette stratégie en cliquant sur son nom. Ici, nous voyons bien que la stratégie s'est correctement appliquée sur un appareil.
IV. Conclusion
Voilà, grâce à ce paramètre de stratégie Intune, vous pouvez bloquer l'option "Interrompre les mises à jour" de Windows Update en quelques clics de souris.
L'éditeur Teclib a mis en ligne une nouvelle version de GLPI dans le but d'apporter de légères améliorations, de corriger certains bugs, mais également deux failles de sécurité. Si vous utilisez GLPI 10, l'installation de cette nouvelle mise à jour mineure est recommandée.
GLPI 10.0.12 est disponible depuis le 1er février 2024 et cette version corrige deux failles de sécurité associée à un niveau de sévérité intermédiaire :
CVE-2024-23645 : faille de sécurité de type XSS sur la page de génération des rapports
CVE-2023-51446 : faille de sécurité de type injection LDAP pendant le processus d'authentification
GLPI 10.0.10, 10.0.11 et 10.0.12 : des mises à jour de sécurité !
En octobre dernier, Teclib avait mis en ligne GLPI 10.0.10 pour corriger 10 vulnérabilités, dont une faille de sécurité critique permettant d'exécuter du code PHP : CVE-2023-42802. Plus récemment, en décembre 2023, Teclib a publié GLPI 10.0.11, dans le but de corriger 3 vulnérabilités, dont deux failles de sécurité de type "injection SQL". L'une d'elles est considérée comme importante : CVE-2023-43813, tout comme la vulnérabilité CVE-2023-46726 pour les configurations basées sur PHP 7.4.
En résumé, si vous utilisez GLPI 10 antérieure à la version de 10.0.10, il est urgent de passer sur la toute dernière mise à jour pour vous protéger contre diverses failles de sécurité. Avant l'installation d'une mise à jour, pensez à vérifier vos sauvegardes.
Retrouvez nos tutoriels sur l'installation de GLPI :
43 secondes. C'est le temps qu'il faut pour casser le chiffrement BitLocker de Windows à l'aide d'un simple Raspberry Pi Pico. Comment est-ce possible ? Réponse dans cet article !
Sur Windows, les utilisateurs peuvent chiffrer le disque de leur machine grâce à BitLocker, un système de chiffrement mis au point par Microsoft et qui a plutôt une bonne réputation. Sur les machines récentes, BitLocker s'appuie sur la puce TPM pour le chiffrement des données. Toutefois, le Youtuber stacksmashing, chercheur en sécurité, est parvenu à casser le chiffrement de BitLocker en moins d'une minute.
Il a exploité une faiblesse dans le fonctionnement de certains ordinateurs, notamment au niveau de la voie de communication entre le processeur et la puce TPM. En effet, celle-ci n'est pas protégée ! Ce qui n'arrange pas les choses, c'est que sur certaines cartes mères, un connecteur donne accès à la lecture de ces informations.
Le Youtuber stacksmashing a mis au point une technique basée sur un Raspberry Pi Pico, vendu moins de 6 euros en France, et un circuit imprimé. Au total, il y en a pour 10 dollars de matériel, d'après lui. Grâce à son équipement, il a pu se connecter sur le fameux connecteur de la carte mère afin de voler la clé de chiffrement de BitLocker.
43 secondes, c'est le temps qu'il lui faut pour démonter le châssis du laptop qu'il utilise pour la démo et connecter son Raspberry Pi Pico à la carte mère afin de récupérer la master key de BitLocker via la lecture des bits. Il n'y a pas besoin de soudure ou de modifier le matériel de l'ordinateur. Une fois que l'on est en possession de cette clé BitLocker, il est possible de déchiffrer les données sur un autre ordinateur.
Voici une vidéo de démonstration :
Cette attaque ne fonctionnera pas sur tous les ordinateurs. En fait, sur les ordinateurs récents, la puce TPM est intégrée dans le CPU, donc ce canal de communication, même s'il n'est pas suffisamment protégé, n'est pas accessible de cette façon. Ici, c'est une faiblesse dans la conception matérielle qui met à mal le chiffrement BitLocker, bien que la machine dispose d'une puce TPM.
Si vous jetez un vieil ordinateur où le disque est chiffré par BitLocker, pensez à prendre vos précautions malgré tout... Car cette attaque montre que les données pourraient être récupérées.
Une faille de sécurité critique a été découverte dans le bootloader Shim utilisé par des distributions Linux populaires telles que Debian, Ubuntu et Red Hat. En l'exploitant, un attaquant peut exécuter du code sur la machine avant même que les fonctions de sécurité du système soient chargées. Faisons le point.
Qu'est-ce que Shim ?
Shim est un bootloader open source, ou un chargeur d'amorçage en français. Il a pour objectif d'être initialisé par le firmware pour servir d'intermédiaire entre le matériel et le système d'exploitation. Autrement dit, il est chargé avant le système d'exploitation lui-même. Dans le cas d'une machine sous Linux, Shim intervient avant le chargement de GRUB2.
Maintenu par Red Hat et signé avec une clé Microsoft, Shim sert à ajouter la prise en charge du Secure Boot sur les machines avec de l'UEFI. En principe, le Secure Boot est là pour renforcer la sécurité de la machine en évitant que du code malveillant puisse être exécuté pendant le processus de démarrage.
La vulnérabilité CVE-2023-40547 dans Shim
Bill Demirkapi, un chercheur en sécurité de chez Microsoft, a fait la découverte d'une faille de sécurité critique dans Shim. Associée à la référence CVE-2023-40547, elle a été divulguée pour la première fois le 24 janvier 2024.
La faille de sécurité de type "out-of-bounds write" se situe dans le composant "httpboot.c" qui est utilisé par Shim pour charger une image réseau via le protocole HTTP. A partir d'une requête HTTP spécialement conçue pour exploiter cette vulnérabilité, un attaquant peut compromettre une machine via l'exécution de code privilégié avant même que le système d'exploitation soit chargé. Ainsi, le code malveillant peut agir avant que les fonctions de sécurité du système soient activées.
Une attaque à distance basée sur un scénario man-in-the-middle, où l'attaquant va se positionner entre la machine qui effectue un boot réseau et le serveur HTTP où la machine doit récupérer l'image.
Une attaque en local basée sur l'utilisation d'un live CD Linux (ou d'une clé USB bootable) pour modifier les variables EFI ou la partition EFI de la machine.
Une attaque via le réseau local où le pirate s'appuie sur un serveur PXE malveillant
Comment se protéger ?
Le 5 décembre 2023, Red Hat a mis à jour Shim pour corriger la faille de sécurité découverte par Bill Demirkapi. La version 15.8 de Shim permet de se protéger.
Désormais, il faut que cette modification soit prise en charge dans les différentes distributions où Shim est utilisée. Il y a déjà plusieurs bulletins de sécurité disponibles du côté de Red Hat, SUSE, Debian et Ubuntu.
Enfin, Eclypsium explique qu'en plus de la mise à jour Shim, les utilisateurs doivent mettre à jour la liste de récovation DBX du Secure Boot UEFI. Cette opération peut être effectuée via l'interface graphique de Linux, ou en ligne de commande via "fwupdmgr update" qui s'appuie sur le paquet fwupd.
Dans ce tutoriel, nous allons utiliser le module PowerShell Koans, appelé aussi PSKoans, afin de s'exercer au scripting PowerShell ! En effet, PowerShell Koans est un module que l'on peut utiliser soi-même pour progresser, mais qui peut être intéressant également pour les formateurs dans le but d'exercer les étudiants en phase d'apprentissage du langage PowerShell.
Le module PowerShell Koans s'appuie sur un autre module : Pester. Pour ceux qui ne connaissent pas Pester, il s'agit d'un module PowerShell permettant d'effectuer des tests unitaires pour valider le bon fonctionnement d'un script.
Ainsi, PowerShell Koans se présente comme une suite d'exercices qu'il va falloir résoudre, un peu sur le principe des textes à trou, sauf qu'ici il s'agit d'extrait de code PowerShell. Au total, PSKoans contient 682 exercices répartis dans plusieurs catégories, dont :
Les booléens, les chaines de caractères (string) et les nombres
Les tableaux et les hashtables
Les opérateurs de comparaison
Les structures conditionnelles
Les fonctions
La structure ForEach
Les boucles
Le tri des objets
Les objets personnalisés
La gestion de fichiers CSV
Etc...
Bien que PSKoans n'ait pas été mis à jour depuis quelques années, il fonctionne toujours très bien et il est pertinent en phase d'apprentissage du langage PowerShell.
"Chaque kōan (chaque question) est représenté par un test Pester qui échoue. Votre but est de réussir ces tests en remplissant la bonne réponse ou en écrivant le bon code. Les koans sont d'abord très simples pour vous familiariser avec les concepts de base, puis ils deviennent de plus en plus difficiles. Vous apprendrez ainsi de nombreux aspects de PowerShell pour les débutants, les intermédiaires et les avancés.", peut-on lire sur le GitHub officiel.
II. Comment installer PSKoans ?
Le module PSKoans a besoin du module Pester pour fonctionner. En principe, Pester est inclus nativement avec Windows, donc vous ne devriez pas avoir besoin de l'installer. Mais, si vous avez besoin de le faire, voici la commande à exécuter :
# Installer le module Pester :
Install-Module -Name Pester
# Vérifier la présence de ce module :
Get-Module Pester -ListAvailable
Ensuite, vous devez installer le module "PSKoans" sur votre PC. Celui-ci étant disponible via la PowerShell Gallery, nous pouvons l'installer facilement à l'aide de cette commande :
Install-Module -Name PSKoans
Une fois que c'est fait, vous pouvez lister toutes les commandes disponibles dans ce module pour avoir un aperçu :
Get-Command -Module PSKoans
III. Comment utiliser PSKoans ?
A. Compléter son premier exercice
Pour avoir un aperçu de sa progression globale et effectuer un premier exercice, nous devons exécuter l'une de ces deux commandes (la première étant un alias de la deuxième) :
Measure-Karma
# ou
Show-Karma
Nous pouvons voir une sortie avec du texte en différentes couleurs. Ce premier module sert avant tout à prendre en main PSKoans. Nous pouvons lire "Veuillez méditer sur le code suivant", et dans le troisième bloc de code en rouge, nous pouvons voir : "$____". Nous allons devoir compléter le code à cet endroit de façon à répondre à la problématique suivante : "On s'attendait à $true, mais on a obtenu $null" (Expected $true, but got $null).
À la fin, nous avons également notre progression :
Sur le module en cours : "AboutAssertions : 0/4"
Au total, tout module confondu : "Total : 0/682"
Pour "méditer sur le code" correspondant à ce premier exercice, nous allons exécuter cette commande :
Measure-Karma -Meditate
Cette commande va ouvrir automatiquement Visual Studio Code s'il est détecté sur votre machine. Sinon, PowerShell ISE sera sélectionné.
Ceci va nous permettre de modifier directement le fichier PS1 correspondant au module "AboutAssertions" de PSKoans.
Pour rappel, la consigne est la suivante : "On s'attendait à $true, mais on a obtenu $null", donc nous allons tout simplement remplacer "$____" par "$true" comme ceci :
Une fois que c'est fait, nous pouvons sauvegarder le fichier et relancer la commande permettant de calculer le score. Nous pouvons voir que nous avons correctement complété le premier exercice :
Ensuite, nous devons poursuivre en complétant chaque partie "___" présente dans le fichier afin de trouver la bonne solution. Vu que les exercices sont écrits sous la forme de tests Pester, ce n'est pas toujours facile pour un novice de comprendre le résultat attendu.
Il faut vraiment se concentrer sur bloc de code compris dans l'instruction "It{ }" et se référer à l'instruction "Should -Be" pour voir le résultat attendu.
Une fois que le premier module "AboutAssertions" est complété, PSKoans passe sur le module sur les booléens. Ici, l'objectif est d'indiquer "$true" ou "$false" (vrai ou faux) pour chaque exercice. Ces tests vont vous permettre de vous exercer à la lecture de comparaisons avec différents opérateurs.
À chaque fois, pensez à enregistrer et à vérifier votre score au fur et à mesure pour voir si vous avez indiqué la bonne réponse (ou pas).
B. S'exercer sur un module spécifique
Si vous maitrisez déjà certaines notions en PowerShell, vous n'avez peut-être pas envie de faire tous les modules de PSKoans dans l'ordre. Sachez que vous pouvez choisir le module de votre choix.
Tout d'abord, pour lister tous les modules, utilisez cette commande :
Get-PSKoan
Voici la liste complète :
Si l'on souhaite s'exercer sur la notion de variables, nous allons exécuter cette commande :
Measure-Karma -Topic <nom du module>
Measure-Karma -Topic AboutVariables
Cette première commande va permettre d'afficher notre score actuel sur le module en question et de le sélectionner en quelque sorte. Ensuite, pour effectuer les exercices, il suffira d'exécuter cette commande :
Measure-Karma -Meditate
Visual Studio Code va s'ouvrir et afficher les exercices correspondants. Dans l'exemple ci-dessous, nous pouvons voir trois premières zones à compléter. Je vous encourage également à lire les commentaires (blocs en vert) car ils fournissent des explications intéressantes.
Puis, sauvegardez et vérifiez votre score sur ce module :
Measure-Karma -Topic AboutVariables
Voici ce que l'on nous demande pour ces trois exercices (en vérité, les deux premières zones à compléter font partie du même exercice) :
1 - On nous dit "$Value -eq $Fifty | Should -BeTrue" : $Value doit être égale à $Fifty (-BeTrue). On sait que $Fifty = 50, donc $Valeur doit être égal à 50 aussi.
2 - On nous dit "___ | Should -Be $Greeting", donc la valeur à trouver doit être également à la valeur de la variable $Greeting. La variable $Greeting est définie via la commande Set-Variable et sa valeur est "Hello!" : c'est donc la solution à cet exercice.
3 - On nous dit "$Number | Should -BeOfType [__]", donc on doit déterminer le type de la variable $Number. On sait que cette variable est égale au nombre "10", donc en principe il doit s'agir d'une variable de type "int" pour Integer. La solution à cet exercice est "int".
Il s'agit bien des bonnes réponses :
J'espère que vous avez bien compris la logique de fonctionnement de PowerShell Koans afin de pouvoir vous exercer sur les modules de votre choix.
C. La sauvegarde de la progression
Sachez que la progression est sauvegardée au fur et à mesure dans les fichiers PS1 que vous modifiez. Pour savoir où est stockée votre progression actuelle, exécutez cette commande :
Get-PSKoanLocation
Ceci vous retournera le chemin vers les fichiers de PSKoans, soit par défaut à la racine du répertoire de la session de l'utilisateur.
IV. Conclusion
Si vous souhaitez utiliser PowerShell Koans avec des étudiants, sachez que vous pouvez créer vos propres koans (exercices/questions) ! Ceci est expliqué dans la documentation officielle, notamment à cet endroit.
En tant que Maitre PowerShell, je vous souhaite bon courage pour accomplir un maximum de kōans !