Vue normale

Il y a de nouveaux articles disponibles, cliquez pour rafraîchir la page.
À partir d’avant-hierIT

Microsoft prêt à abandonner le protocole d’authentification NTLM !

4 juin 2024 à 18:26

Microsoft semble enfin prêt à abandonner le protocole d'authentification NTLM dans Windows et Windows Server. L'entreprise américaine estime que ce protocole est obsolète et que les développeurs doivent entamer une transition vers Kerberos. Voici ce qu'il faut savoir.

Le protocole NTLM est très utilisé par les différentes versions de Windows et Windows Server, et pour cause, il a été introduit en 1993 au sein de Windows NT et il est toujours très utilisé aujourd'hui. Néanmoins, ce n'est pas un secret : le protocole d'authentification NTLM est exploitable au sein différents scénarios d'attaques, notamment en environnement Active Directory, et il représente un véritable point faible dans le SI des organisations.

Microsoft a conscience de ces problèmes de sécurité et va abandonner progressivement le protocole NTLM au profit d'alternatives plus sécurisées, notamment Kerberos. "Toutes les versions de NTLM, y compris LANMAN, NTLMv1 et NTLMv2, ne font plus l'objet d'un développement actif et sont obsolètes.", peut-on lire sur le site de Microsoft.

Remarque : l'authentification NTLM est vulnérable à plusieurs attaques telles que "NTLM Relay" et "Pass-the-hash".

Après l'annonce récente de la fin de VBScript dans Windows, Microsoft semble bien décidé à faire du ménage dans ses systèmes d'exploitation pour en améliorer la sécurité.

Est-ce que Windows Server 2025 prendra toujours en charge NTLM ?

C'est peut-être une question que vous vous posez en lisant cet article. Elle est légitime puisqu'il n'est pas aussi simple de se séparer du protocole NTLM... Rassurez-vous, l'abandon de NTLM sera effectué en plusieurs étapes et Windows Server 2025 va supporter NTLM, tout comme la prochaine version majeure de Windows.

"L'utilisation de NTLM continuera à fonctionner dans la prochaine version de Windows Server et dans la prochaine version annuelle de Windows.", précise l'entreprise américaine. Malgré tout, il y a du changement.

Dans un autre article publié récemment au sujet de la sécurité de Windows 11, Microsoft évoque aussi la fin à venir de NTLM : "La dépréciation de NTLM a été une demande importante de notre communauté de sécurité, car elle renforcera l'authentification des utilisateurs, et la dépréciation est prévue pour la seconde moitié de 2024."

NTLM et Kerberos : le passage au mode "Negotiate"

Microsoft souhaite que l'authentification Kerberos soit prioritaire vis-à-vis de NTLM. Autrement dit, lorsqu'il n'y a pas le choix, notamment si le périphérique ou l'application source ne supporte pas NTLM.

Cela signifie qu'il ne doit plus y avoir d'appels en direct vers NTLM, mais des appels de type "Negotiate" afin que le protocole Kerberos soit utilisé s'il est disponible. Si ce n'est pas le cas, le NTLM est utilisé en guise de solution de replis. C'est le principe de l'authentication fallback. L'objectif étant de permettre aux entreprises d'effectuer une transition en douceur.

Ceci signifie également que les développeurs vont devoir adapter leurs applications, peut-être en s'intéressant à la fonction "AcquireCredentialsHandle" qui intègre plusieurs modes (NTLM, Negotiate, Kerberos, etc.).

Enfin, si vous souhaitez vous débarrasser de NTLM dans votre organisation et préparer ces futurs changements, vous pouvez consulter le tutoriel mentionné ci-dessous. La première phase d'audit vous permettra d'identifier les équipements et applications faisant encore usage du protocole NTLM.

The post Microsoft prêt à abandonner le protocole d’authentification NTLM ! first appeared on IT-Connect.

Deploy Windows 11 with the free PowerShell framework OSDCloud

30 mai 2024 à 17:58
OSDCloud is a free PowerShell framework for deploying Windows 10 and Windows 11. The tool provides simple methods for adding drivers and configuring settings in an image. After booting from a customized WinPE, either the OSDCloudGUI or an automated script initiates the installation.

Comment vérifier l’authenticité d’une image ISO : Windows, Office, etc…?

30 mai 2024 à 11:00

I. Présentation

Cet article a pour but de vous sensibiliser à l'importance de la vérification de l'intégrité des sources d'installation pour vos images ISO. Nous verrons également comment répondre à la question suivante : comment vérifier l'authenticité d'une image ISO ?

Nous allons parler d'un principe fondamental de la cybersécurité qui est la préservation de l'intégrité des sources. Que ce soit dans un contexte professionnel ou personnel, il est fréquent de rencontrer des sources historiques ou des versions obsolètes de logiciels, souvent sans un suivi approprié.

Il n'est pas rare de trouver des fichiers ISO de SQL Server ou de Windows téléchargés ou modifiés sans une référence adéquate au hash ou à la source de téléchargement correspondante.

Nous allons voir comment grâce à l'outil Check-ISO ou PowerShell et des sources fiables, qu'il sera possible de vérifier nos sources pour les images ISO de produits Microsoft.

II. Rappel sur l'intégrité des sources

A. Téléchargement de source Microsoft

Microsoft propose de télécharger les sources pour les particuliers et professionnels n'ayant pas d'abonnement à partir du centre de téléchargement disponible à l'adresse suivante : https://www.microsoft.com/fr-fr/download

Ce centre permet de télécharger les sources pour divers produits comme SQL Server, Windows Server, et Office. Malheureusement, seules les dernières versions mises à jour ou supportées sont disponibles. Pour Windows 11 où Microsoft propose la dernière version en encourageant à vérifier le hash une fois le téléchargement terminé.

Microsoft fourni un tableau des hash correspondant aux différentes langues disponibles.

Pour les entreprises, le même principe est proposé de partir du centre de gestion des licences en volume, le portail professionnel.

B. Problématique

Malgré les consignes de Microsoft, la charge de travail et le temps que cela requiert peuvent être importants et faire que la vérification de l'intégrité des sources n'est pas effectuée. Nous avons remarqué que régulièrement, tant dans les entreprises que chez les particuliers, ces actions ne sont pas respectées.

Peu de personnes téléchargent à partir du portail officiel ou gardent des traces de hash. D'autant plus que les prestataires infogérants n'ont souvent pas accès à ce dernier et utilisent parfois des sources partagées ou provenant d'autres endroits. Passer une après-midi à récupérer ou chercher les hash d'une version qui n'est plus supportée ou absente du portail n'est pas pratique...

Nous verrons ensemble comment apporter une réponse à cette problématique.

Remarque : le hash d'une image ISO sera identique entre deux fichiers, même s'il ne porte le même nom, mais que leur contenu est identique. Ainsi, nous pouvons vérifier l'authenticité d'une image à partir de son hash. Si elle est altérée, son hash sera modifié donc elle n'est plus authentique.

C. Risque de sécurité

Le grand risque réside dans les sources ISO modifiées par un tiers qui pourrait y injecter un malware ou un crack, pouvant endommager le système informatique.

L'image montre comment une source récupérée sur Internet non conforme ou à partir d'un partage manipulé par une personne malveillante, peut contenir un outil espion ou un dispositif capable de contourner la surveillance de sécurité.

Afin de remédier à cela, il est nécessaire de vérifier le hash de la source avant de l'installer. Nous allons voir comment effectuer cette vérification manuellement ou de manière automatisée avec un outil.

III. Vérifier l'intégrité d'une image ISO avec PowerShell

Il est possible d'obtenir le hash d'une image ISO ou d'un quelconque fichier à l'aide de PowerShell en utilisant la commande "Get-FileHash".

Voici un exemple pour vérifier l'intégrité du fichier "J:\ISO\WINDOWS\Windows\win_10.iso" :

Get-FileHash -Path "J:\ISO\WINDOWS\Windows\win_10.iso" -Algorithm SHA256

Vous trouverez plus d'informations sur la commande dans l'article suivant :

Une fois le hash obtenu, vous devriez le comparer avec une base de données fiable. En cas d'absence du hash dans le centre de téléchargement Microsoft, il est possible d'utiliser le site suivant :

C'est un projet initié par des membres du staff de Microsoft et des MVP, intégrant les hash de toutes les distributions Microsoft officielles.

Le site contient une base de données riche, avec 380 téraoctets d'informations et d'images ISO, sous réserve de Microsoft. Il demeure ainsi l'une des sources les plus fiables à ce jour, recommandée sur plusieurs forums et blogs, y compris dans les Q&A de Microsoft.

Il suffit de coller le hash obtenu dans la barre de recherche, numérotée 1, située dans l'onglet "Recherche", puis d'appuyer sur Entrée.

Cette tâche peut s'avérer lente ou contraignante pour un grand nombre d'images ISO à vérifier, surtout pour les utilisateurs non avertis. De plus, le lien du site peut être amené à changer.

Pour répondre à ce besoin, l'outil Check-ISO a été développé.

IV. Le projet Check-ISO

Suite à plusieurs demandes des membres de la communauté IT-Connect et afin d'automatiser et de faciliter les actions précédentes, le projet Check-ISO a vu le jour. Cela permettra de gagner en temps et en maniabilité dans le processus de vérification d'intégrité. L'outil est open source, disponible en français et en anglais, et développé par Dakhama Mehdi.

Cet outil est essentiel pour toute personne effectuant fréquemment des installations, qu'il s'agisse de techniciens, d'administrateurs système ou même de responsables de la sécurité des systèmes d'information (RSSI). Ceci vous permet de vérifier si votre image ISO correspond bien à une image officielle de Microsoft, et à quelle version elle correspond.

A. Utilisation

Il n'y a rien de plus simple pour l'utilisation de l'outil ; il suffit de le lancer sous les différents formats et de sélectionner votre fichier ISO. Il est disponible au format exécutable, PS1 (script PowerShell) et dans le Microsoft Store.

Indiquez ensuite le chemin de la source Microsoft à vérifier.

Vous avez la possibilité de sélectionner l'algorithme de hachage à utiliser pour la vérification.

Cliquez ensuite sur "Vérifier ISO" et patientez jusqu'à ce que la vérification soit complète. Notez que le temps de calcul dépend de l'algorithme utilisé ainsi que de la taille de l'ISO.

Une fois la vérification terminée, le nom de la source sera listé en vert, si cette dernière est authentique. Dans le cas contraire, un message en rouge sera affiché indiquant que la source n'a pas été trouvée, et n'a pas pu être vérifiée.

B. Téléchargement

Check-ISO peut être obtenu de deux manières. Tout d'abord, en passant par le Microsoft Store intégré à Windows.

Entrez le nom "Check ISO" dans la barre de recherche et installez l'outil, cette méthode offre les avantages suivants :

  • Ne nécessite pas de droit admin
  • La source est vérifiée par l'équipe Microsoft
  • Cela garantira une mise à jour automatique des versions (pour régler les éventuels bugs)

La seconde méthode de téléchargement consiste à utiliser GitHub.

Accédez à la page du projet :

Copiez le code PowerShell disponible directement dans votre éditeur PowerShell ISE et enregistrez le projet. Vous avez également la possibilité de télécharger le code source au format ".ps1". La page du projet propose également une version portable de l'outil (.exe) signée pour en simplifier l'utilisation.

V. Conclusion

Désormais, vous êtes capable de vérifier l'authenticité d'une image d'un produit ou système d'exploitation Microsoft ! Vous n'avez plus d'excuses pour ne pas le faire ! La logique est la même pour d'autres images ISO ou fichiers, à condition de connaître le hash du fichier d'origine.

The post Comment vérifier l’authenticité d’une image ISO : Windows, Office, etc…? first appeared on IT-Connect.

Créer, modifier, effacer des clés du registre Windows en PowerShell

Par : malekalmorte
30 mai 2024 à 09:56

PowerShell est le nouveau shell de Windows qui permet aux administrateurs de passer toutes sortes de commandes sur Windows 10 et Windows 11.
Il possède aussi des cmdlet pour gérer la base de registre Windows.
Ainsi vous pouvez sans problème manipuler le registre Windows en PowerShell.

Grâce à ce tutoriel, vous allez comprendre comment créer, modifier, effacer des clés du registre Windows en PowerShell et bien plus.

Créer, modifier, effacer des clés du registre Windows en Powershell

Créer, modifier, effacer des clés du registre Windows en PowerShell

Afin de ne pas rencontrer des problèmes d’autorisations et permissions sous la forme de message d’accès refusé lors de la modification du registre Windows en Powershell, ouvrez ce dernier en administrateur.
Pour cela :

Plus d’informations : Comment ouvrir PowerShell

  • Prenez l’habitude d’encadrer les clés du registre Windows avec des apostrophes car lorsqu’il y a un espace dedans, c’est obligatoire
  • Elle fonctionne avec les chemins HKLM, HCKU, etc

Lister une clé du registre Windows

Voici comment lister une clé du registre Windows en PowerShell.
On utilise Get-Item avec le caractère * pour lister en récursif.

Get-Item -Path 'HKCU:\SOFTWARE\SysInternals\*'
Comment lister une clé du registre Windows en PowerShell

Une autre méthode pour lister le contenu du registre Windows en PowerShell consiste à utiliser Get-childitem.
Tout d’abord on se positionne sur la clé à lister avec Set-location :

Set-location -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\

Puis on utilise Get-childitem :

Get-childitem
Comment lister une clé du registre Windows en PowerShell

Faire une recherche dans le registre Windows

Pour recherche une clé dans le registre Windows PowerShell, on utilise Get-childitem.
Ici on recherche des valeurs Chrome dans HCKU (HKEY_CURRENT_USER) :

Get-childitem -path hkcu:\ -recurse -ErrorAction SilentlyContinue | Where-Object {$_.Name -like "*chrome*"}
Faire une recherche dans le registre Windows en Powershell

Créer une clé du registre Windows

Voici comment créer une nouvelle clé dans le registre Windows en PowerShell :

Get-Item -Path 'HKLM:\Software\Policies\Microsoft\Windows' | New-Item -Name 'Windows Search' -Force

Par exemple pour créer une valeur DWord en PowerShell, ici une clé AllowIndexingEncryptedStoresOrItems :

New-ItemProperty -Path 'HKLM:\Software\Policies\Microsoft\Windows\Windows Search' -Name 'AllowIndexingEncryptedStoresOrItems' -Value "1" -PropertyType DWORD -Force

Par exemple pour ajouter un programme au démarrage de Windows en modifiant la clé Run :

Set-Itemproperty -path 'HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run' -Name 'MonProgramme' -value 'C:\Program Files\MonProgramme\monprogramme.exe'

Modifier une clé du registre Windows

Voici comment modifier une valeur de clé du registre Windows en PowerShell.
Ici on passe la valeur HideSCAVolume à 0 :

Set-ItemProperty -Path HKCU:\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer -Name HideSCAVolume -Value 0 -Force

Effacer une clé du registre Windows

Par exemple pour supprimer la clé CleASupprimer du registre Windows en PowerShell :

Remove-Item -Path HKCU:\Software\CleASupprimer -Force -Verbose

Pour supprimer une valeur du registre Windows, on utilise le cmdlet Remove-ItemProperty :

Remove-ItemProperty -Path 'HKCU:\Software\CleASupprimer' -Name "ValeurASupprimer"

Renommer une clé du registre Windows

Le cmdlet Rename-Item permet de renommer une clé du registre Windows en Powershell :

Rename-Item -Path "HKCU:\test\cle1"  cle2

Pour modifier une valeur avec Rename-ItemProperty :

Rename-ItemProperty -Path "HKCU:\dummy\cle1" -Name "valeur1" -NewName "valeur2"

Lister des valeurs de clé de registre à distance avec PowerShell

Pour lister des valeurs du registre Windows sur le PC distant “NomduPC” en PowerShell, on utilise Invoke-Command :

Invoke-Command -ComputerName NomDuPC -ScriptBlock { Get-ItemProperty -Path 'HKCU:\Software\System' -Name WorkingDirectory}

L’article Créer, modifier, effacer des clés du registre Windows en PowerShell est apparu en premier sur malekal.com.

Docker Desktop for Windows Subsystem for Linux 2 (WSL 2)

30 mai 2024 à 08:45
Docker Desktop provides a user-friendly graphical user interface (GUI) for developing, building, testing, and running containerized applications on Linux, Windows, and macOS. Docker Desktop 4.30 introduces an experimental phase to simplify the Windows Subsystem for Linux 2 (WSL 2) configuration by reducing the previously required two Docker Desktop WSL distributions (docker-desktop and docker-desktop-data) into one, aiming to improve startup time and simplify the codebase.

Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur de votre organisation (0x8007007B)

Par : malekalmorte
29 mai 2024 à 09:47

Les erreurs d’activation de Windows figurent parmi les problèmes les plus fréquents rencontrés par les utilisateurs. Ce problème est généralement lié au serveur d’activation de Windows, qui ne parvient pas à valider ou reconnaître la licence associée au compte numérique.
Une erreur courante à laquelle les utilisateurs peuvent être confrontés : “Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur d’activation de votre organisation. Assurez-vous d’être connecté au réseau de votre organisation et réessayez. Si les problèmes d’activation persistent, contactez le service d’assistance de votre organisation. Code d’erreur 0x8007007B.”.
Ce tutoriel fournit plusieurs solutions de dépannage afin de vous expliquer l’origine de ce problème et vous aider à résoudre cette erreur d’activation des produits Windows.

Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur de votre organisation (0x8007007B)

Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur de votre organisation

Le “serveur de votre organisation” dans le contexte de l’activation de Windows fait référence à un serveur de gestion de clés (KMS, Key Management Service) utilisé principalement par les grandes entreprises et les institutions pour activer en masse les copies de Windows sur leur réseau.
Key Management Service (KMS) est une technologie d’activation de volume développée par Microsoft. Elle permet aux organisations d’activer les systèmes d’exploitation Windows et les produits Microsoft Office en interne, sans avoir besoin de contacter directement les serveurs d’activation de Microsoft pour chaque installation.

Lorsque vous voyez une erreur indiquant que Windows ne peut pas se connecter au serveur de votre organisation, cela signifie généralement que le système d’exploitation tente de contacter un serveur KMS d’entreprise pour l’activation, mais ne parvient pas à établir la connexion.
Ce message d’erreur rencontré par un particulier peut se produire dans les cas suivants :

  • Vous tentez d’activer Windows illégalement à l’aide d’un utilitaire de crack tel que KMSPico / KMSAuto
  • Vous avez installé Windows Entreprise sur votre PC personnel et tenter d’activer avec une clé produit provenant d’une entreprise
  • Vous avez acheté une licence pas chère sur internet lié à des licences de volume. La référence à un serveur d’organisation signifie qu’il dispose d’une licence de volume qui n’est pas valable pour un utilisateur personnel et qui est souvent utilisée par un vendeur suspect pour activer Windows illégalement.

Comment résoudre le problème “Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur de votre organisation”

Enregistrer à nouveau la clé produit de Windows

Vous pouvez tenter à nouveau d’enregistrer la clé produit de Windows.
Assurez-vous que vous disposez d’une connexion internet stable puis suivez ces étapes :

  • Sur votre clavier, appuyez sur les touches + R
  • Puis dans le champs exécuter, saisissez cmd et OK
Ouvrir cmd (invite de commandes) sur Windows
  • Puis saisissez les commandes suivantes où #####-#####-#####-#####-##### est la clé produit
slmgr /upk
slmgr /cpky
slmgr /ipk #####-#####-#####-#####-#####

Si le message d’erreur à l’activation de Windows persiste, il est probable que votre clé produit ne soit pas valide.

Réparer le service d’activation

  • Ouvrez à nouveau une invite de commandes en administrateur
  • Copiez/collez les commandes suivantes :
net stop sppsvc
cd %windir%\ServiceProfiles\LocalService\AppData\Local\Microsoft\WSLicense
ren tokens.dat tokens.bar
net start sppsvc
cscript.exe %windir%\system32\slmgr.vbs /rilc
  • Puis redémarrez l’ordinateur et ré-enregistrer la clé produit Windows

Activer Windows par téléphone

Une autre solution est d’essayer d’activer Windows par téléphone car cela ne requiert aucune connexion au serveur d’activation.

  • Sur votre clavier, appuyez sur les touches + R
  • Puis saisissez la commande suivante :
slui.exe 4
  • Puis dans la liste, sélectionnez France (ou autre pays)
  • Ensuite cliquez sur Suivant
Comment activer Windows 11 par téléphone
  • Téléphonez au centre d’activation de Microsoft avec le numéro indiqué gratuit ou pays
  • Puis indiquez l’ID d’installation (IID)
  • Puis saisissez le code retourné par le centre d’activation de Microsoft
Comment activer Windows 11 par téléphone
  • Si tout va bien, Windows est activé

Autres méthodes :

Contacter le vendeur

Toujours impossible d’activer Windows ?
Si vous avez acheté une licence pas chère sur internet, il est probable que celle-ci ne soit pas valide ou blacklistée par Microsoft.
Contactez le vendeur pour lui demander une nouvelle clé produit.
Si aucune réponse de sa part, il s’agit d’une arnaque.

Dans le cas d’un achat sur des plateformes telles qu’Amazon ou CDiscount, laissez un commentaire pour prévenir d’autres internautes.
Tentez aussi de dénoncer le vendeur auprès de la plateforme.

Liens

L’article Nous ne pouvons pas activer Windows sur cet appareil car nous ne pouvons pas nous connecter au serveur de votre organisation (0x8007007B) est apparu en premier sur malekal.com.

Apply a custom Windows image using DISM or PowerShell

28 mai 2024 à 20:31
After capturing an image from a reference installation, you can deploy it to as many computers as needed. Multiple methods are available for this task. A common approach involves booting the target PCs from WinPE using a USB drive or PXE, and then applying the image with DISM or PowerShell.

Impossible de monter le fichier ISO sous Windows : 4 solutions

Par : malekalmorte
28 mai 2024 à 09:42

Depuis Windows 10 et donc sur Windows 11, il est possible de monter un fichier ISO depuis l’Explorateur de fichiers.
Malheureusement, dans certains cas, cela ne fonctionne pas. Le message d’erreur le plus courant est le suivant :

Impossible de monter le fichier
Désolé, il y a eu un problème pour monter le fichier

Si vous rencontrez ces problèmes pour monter le fichier ISO, suivez les étapes de ce guide complet pour résoudre les problèmes d’accès au fichier ISO sur Windows.

Impossible de monter le fichier ISO sous Windows

Impossible de monter le fichier ISO sous Windows

Désactiver votre antivirus

Si votre antivirus détecte un fichier malveillant dans le fichier ISO, il va verrouiller ce dernier.
A partir de là, Windows sera incapable de monter le fichier ISO.
Pour vérifier cette hypothèse désactivez votre antivirus.
En général, un clic droit sur l’icône depuis la zone de notification et désactiver la protection en temps réel ou désactiver l’agent de protection.

Pour désactiver la protection Windows Defender :

  • Ouvrez Sécurité en double-cliquant sur l’icône bouclier en bas à droite de l’écran, dans la zone de notification
  • Allez dans Protection contre les virus et les menaces
  • Sous Paramètres de protection contre les virus et les menaces, choisissez Gérer les paramètres,
  • Puis désactivez la case à cocher Protection en temps réel
Activer la protection de Windows Defender de Windows 10

Plus d’aide : Comment désactiver la protection en temps réel de Windows Defender

Pour désactiver Windows Defender Firewall :

  • Ouvrez l’application Sécurité de Windows
  • A gauche, choisissez Pare-feu et protection du réseau
  • Allez dans réseau Privé
  • Puis désactivez la bascule sous Microsoft Defender Firewall
  • Répétez l’opération sur le réseau Public
Comment désactiver Windows Defender Firewall

Plus d’aide : Comment désactiver Windows Defender Firewall

Réinitialiser les attributs du fichier image

Si le fichier ISO possède de mauvais attributs, cela peut être la source de problème pour accéder au contenu.
Cela peut générer un message d’erreur d’accès refusé.
Réinitialiser les attributs des fichiers ISO peut aider à corriger le problème.

Copier le chemin du fichier ISO sur Windows
  • Sur votre clavier, appuyez sur les touches + R
  • Puis dans le champs exécuter, saisissez cmd et OK
Ouvrir cmd (invite de commandes) sur Windows
  • Puis passez les commandes suivantes en remplaçant le chemin du fichier ISO. faites un clic droit coller pour insérer le chemin précédemment copié
fsutil sparse setflag "C:\Users\maill\Downloads\ubuntu-24.04-desktop-amd64.iso" 0
attrib -r "C:\Users\maill\Downloads\ubuntu-24.04-desktop-amd64.iso"

Si vous rencontrez le message : Ce fichier provient d’un autre ordinateur et peut être bloqué pour protéger cet ordinateur.
Débloquer le fichier comme ceci :

  • Faites un clic droit sur le fichier ISO
  • Puis Propriétés
  • En bas à droite, décochez l’option Débloquer

Copier le fichier ISO dans un autre emplacement

Dans certains cas, la solution la plus simple consiste à copier le fichier ISO à un autre endroit, puis à monter l’image. Si un fichier image ISO se trouve dans un dossier réseau partagé accessible par un chemin UNC, essayez de le copier sur votre ordinateur local.

Réinitialiser les paramètres du lecteur de CD/DVD dans le registre

Dans certains cas, les problèmes de montage des fichiers ISO dans Windows peuvent être dus à des paramètres incorrects pour le lecteur de CD/DVD (physique et virtuel). Vous pouvez réinitialiser les paramètres du périphérique CD dans le registre :

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E965-E325-11CE-BFC1-08002BE10318} 
  • Supprimez les valeurs UpperFilters et LowerFilters.réinitialiser les paramètres du lecteur cd/dvd dans le registre
  • Redémarrez votre ordinateur. Windows réinitialisera les paramètres du lecteur de CD/DVD aux valeurs par défaut

L’article Impossible de monter le fichier ISO sous Windows : 4 solutions est apparu en premier sur malekal.com.

Cybersécurité : installer et configurer Sysmon sur Windows avec une GPO

27 mai 2024 à 18:00

I. Présentation

Dans ce tutoriel, nous allons évoquer l'installation et la configuration de Sysmon sur Windows par l'intermédiaire d'une stratégie de groupe (GPO), en environnement Active Directory. Ceci va nous permettre d'automatiser le déploiement de Sysmon et de gérer sa configuration de façon centralisée.

Outil gratuit présent dans la suite SysInternals de Microsoft, Sysmon est un outil très intéressant pour enrichir les journaux Windows et tracer les activités suspectes sur un poste de travail ou un serveur.

Pour en savoir plus sur son fonctionnement et son utilisation, consultez notre précédent article :

II. Méthodologie de déploiement

A. Sysmon et le fichier de configuration XML

Pour appliquer une nouvelle configuration à Sysmon, nous devons utiliser un fichier de configuration au format XML. Ce fichier de configuration contient un ensemble de règles permettant d'indiquer à Sysmon quelles sont les actions qu'il doit surveiller et journaliser. Ce fichier permet aussi de gérer les exceptions, de façon à éviter les faux positifs.

Lorsqu'une nouvelle configuration est chargée, le driver de Sysmon récupère les données du fichier XML afin de les stocker dans le Registre Windows, après avoir converti les données. Cela signifie qu'il n'y a aucune dépendance de Sysmon vis-à-vis de son fichier de configuration.

Notre premier réflexe pourrait-être d'héberger le fichier de configuration XML sur un partage puis de faire en sorte qu'il soit lu par nos "agents" Sysmon déployés sur les machines Windows. Effectivement, cela pourrait fonctionner. Le problème, c'est que ce fichier de configuration pourrait être accessible par un potentiel attaquant. Il pourrait prendre connaissance de notre configuration Sysmon, ce qui lui permettrait de savoir comment agir pour ne pas être détecté et il pourrait essayer de la contourner.

Comment faire alors ?

A. Injecter la configuration Sysmon dans le Registre

La réponse se trouve dans cette phrase de l'article : "Lorsqu'une nouvelle configuration est chargée, le driver de Sysmon récupère les données du fichier XML afin de les stocker dans le Registre Windows, après avoir converti les données." - Nous allons directement injecter la configuration dans le Registre ! Ceci va nécessiter quelques manipulations, mais l'avantage, c'est que la configuration sera difficilement accessible, lisible et interprétable par un attaquant.

Sachez que cette méthode, qui est celle que nous allons déployer, est également recommandée par l'ANSSI dans son guide "Recommandations de sécurité pour la journalisation des systèmes Microsoft Windows en environnement Active Directory".

Nous allons devoir procéder de la façon suivante :

1 - Créer une stratégie de groupe pour installer Sysmon, sans configuration personnalisée.

2 - Créer une configuration personnalisée à partir d'une machine de référence.

3 - Exporter la configuration Sysmon, à partir du Registre.

4 - Créer une stratégie de groupe pour injecter les valeurs de Registre sur les machines où Sysmon doit être configuré.

Installer et configurer Sysmon par GPO

Désormais, nous allons voir comment mettre en œuvre cette méthode fondée sur 4 grandes étapes.

Si malgré tout, vous souhaitez utiliser un fichier XML pour gérer votre configuration Sysmon, je vous recommande de masquer le partage sur lequel le fichier est hébergé et de brider les droits autant que possible. Autorisez seulement les objets ordinateurs où Sysmon est déployé à venir lire la configuration.

III. GPO - Déploiement de Sysmon sur Windows

Intéressons-nous à l'installation de Sysmon sur Windows. Nous allons partir du principe que seule la version 64 bits est utilisée et notre script PowerShell va permettre déployer cette version. Une fois que le script sera prêt, il sera exécuté au travers d'une stratégie de groupe.

A. Script PowerShell pour installer Sysmon

Pour rappel, lorsque Sysmon est installé sur une machine, il crée différentes clés de Registre dont celles-ci (une seule selon la version) :

Sysmon - 32 bits
HKLM\SYSTEM\CurrentControlSet\Services\sysmon
Sysmon - 64 bits
HKLM\SYSTEM\CurrentControlSet\Services\sysmon64

Nous allons utiliser un script PowerShell pour réaliser l'installation de Sysmon64. Si l'application est déjà installée, le script ne cherchera pas à la réinstaller. Dans le script ci-dessous, vous devez adapter la valeur de la variable "$SysmonShare" car elle contient le chemin vers l'exécutable de Sysmon. Vous pouvez stocker cet exécutable dans le partage "SYSVOL" de votre domaine Active Directory ou dans un autre partage correctement configuré.

# Partage - Chemin réseau vers l'exécutable de SYSMON
$SysmonShare = "\\it-connect.local\SYSVOL\it-connect.local\scripts\Sysmon64.exe"

# Avant de poursuivre, on vérifie que le chemin vers l'exécutable est correct
if(Test-Path -Path $SysmonShare -PathType Leaf)
{
    # Chemin vers la clé de Registre de Sysmon (version 64 bits)
    $SysmonRegKey = "HKLM:\SYSTEM\CurrentControlSet\Services\Sysmon64"

    # Chemin vers le fichier exécutable de Sysmon64 via lecture du Registre
    $SysmonRegImagePath = (Get-ItemProperty -Path $SysmonRegKey -Name ImagePath -ErrorAction SilentlyContinue).ImagePath

    # Si $SysmonRegImagePath n'est pas nul, c'est que Sysmon est installé
    if ($SysmonRegImagePath)
    {
        Write-Output "Sysmon64 est déjà installé sur cette machine"

    }
    # Sinon, Sysmon doit être installé à partir de l'exécutable présent dans le partage
    else
    {
       Write-Output "Sysmon64 va être installé sur cette machine"
       & $SysmonShare -i -accepteula
    }
}

Si vous avez besoin d'un script PowerShell plus complet, vous pouvez utiliser celui de l'ANSSI accessible via le lien ci-dessous. Ce script est capable de gérer les versions 32 bits et 64 bits, mais aussi la mise à jour de Sysmon, ainsi que les configurations particulières basées sur un pilote Sysmon renommé (ce qui influence le nom de la clé de Registre liée au service).

Plutôt que d'utiliser un script PowerShell, nous pourrions utiliser un script Batch. En revanche, il n'existe pas de paquet MSI pour Sysmon.

B. Exécuter le script dans une GPO

Désormais, nous allons exécuter ce script PowerShell à l'aide d'une stratégie de groupe que l'on va créer avec la console "Gestion de stratégie de groupe". Dans cet exemple, la GPO est nommée "Installer Sysmon (PS1)" et elle est liée à l'OU "Serveurs" de l'annuaire Active Directory.

Modifiez la GPO et suivez la procédure suivante :

1 - Accédez à : Configuration ordinateur > Stratégies > Paramètres Windows > Scripts (démarrage / arrêt).

2 - Double-cliquez sur "Démarrage".

3 - Cliquez sur "Afficher les fichiers" pour accéder au répertoire des scripts de la GPO et collez le fichier PS1 à cet emplacement. Vous pouvez aussi stocker le script à la racine du SYSVOL.

4 - Cliquez sur "Ajouter" puis sur "Parcourir".

5 - Sélectionnez le script, ici, il s'appelle simplement "Sysmon.ps1".

6 - Cliquez sur "OK" à deux reprises.

Pour information, voici où est stocké le script sur mon environnement de démo :

Voilà, la GPO pour installer Sysmon est prête !

Il ne reste plus qu'à tester son bon fonctionnement sur une machine. Pour rappel, Sysmon sera déployé dans sa configuration par défaut, c'est-à-dire sans aucune règle personnalisée. Sur une machine où Sysmon a été installée, vous pouvez voir le service "Sysmon64", comme ceci :

Installation de Sysmon par GPO sur Windows Server

Remarque : si vous utilisez un script PowerShell pour déployer Sysmon, il est recommandé de le signer à l'aide d'un certificat de signature de code. À ce sujet, vous pouvez lire les deux articles suivants :

IV. Configuration centralisée de Sysmon

A. Créer un modèle de configuration de Sysmon

Vous allez devoir définir un modèle de configuration Sysmon correspondant à vos besoins et aux spécificités de votre infrastructure. Vous pouvez utiliser comme base la configuration Sysmon de SwiftOnSecurity déjà évoquée dans notre précédent tutoriel sur Sysmon.

Dans cet exemple, c'est ce fichier que nous allons utiliser. Voici le lien :

Vous devez utiliser une machine sur laquelle Sysmon est installé afin de mettre à jour la configuration. Je vous rappelle que l'objectif est d'utiliser cette machine comme "machine de référence" pour la configuration de Sysmon. Le fichier XML de Sysmon doit être présent uniquement sur cette machine.

Voici la commande à exécuter pour mettre à jour la configuration de Sysmon à partir d'un fichier XML :

.\Sysmon64.exe -c sysmonconfig-export.xml

Remarque : en modifiant les paramètres, vous pouvez aussi installer Sysmon et lui associer directement cette configuration.

La prise en compte de cette configuration est immédiate. Désormais, nous allons devoir l'exporter à partir des valeurs présentes dans le Registre Windows.

B. Exporter la configuration Sysmon à partir du Registre

La configuration Sysmon est stockée dans la clé de Registre correspondante au pilote Sysmon : "SysmonDrv" (nom par défaut). Ceci correspond à cet emplacement du Registre :

Nous allons devoir exporter les données des valeurs de Registre suivantes :

  • DnsLookup
  • HashingAlgorithm
  • Options
  • Rules

La configuration de notre fichier XML est stockée dans "Rules" mais nous devons également prendre en compte les autres valeurs. Certaines valeurs étant en binaire, il n'est pas possible d'exporter les données dans un format interprétable par l'éditeur de GPO à partir de "regedit.exe".

Nous avons deux options :

  • Utiliser PowerShell pour lire les données et exporter les données de chaque valeur dans un fichier texte. Ensuite, nous pourrons copier-coller le contenu de chaque fichier texte dans notre GPO.
  • Utiliser l'Assistant Registre de la console de Gestion des stratégies de groupe pour aller lire les données dans le Registre directement et les ajouter à la GPO. C'est sans aucun doute la façon la plus simple, mais cela implique d'avoir les outils RSAT sur le serveur de référence ou de pouvoir s'y connecter à distance via la console de Gestion des stratégies de groupe (connexion RPC).

Dans la suite de ce tutoriel, nous allons appliquer la méthode via l'Assistant Registre, mais voici des instructions pour effectuer la manipulation via PowerShell.

La commande ci-dessous permet d'exporter les données de la valeur "Rules" dans le fichier texte "C:\TEMP\Export_Sysmon_Rules.txt". Nous utilisons la méthode "ToString" associée au format "X2" pour que les données soient converties au format hexadécimal. Ce format est pris en charge par l'éditeur de GPO, ce qui nous permettra de préciser les valeurs dans un format accepté.

((Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\sysmonDrv\Parameters").Rules | ForEach-Object { $_.ToString("X2") }) -join '' > "C:\TEMP\Export_Sysmon_Rules.txt"

Ce qui donnera un fichier similaire à celui-ci :

L'opération doit être répétée pour chaque valeur du Registre.

Pour vous aider, voici un bout de code pour générer un fichier texte pour chaque valeur. Vous pouvez changer la valeur de la variable "$SysmonSvcOutput" pour modifier le chemin du dossier de sortie.

$SysmonSvcOutput = "C:\TEMP"
$SysmonSvcReg = "HKLM:\SYSTEM\CurrentControlSet\Services\SysmonDrv\Parameters"
$SysmonSvcRegValueBinary = @("DnsLookup","Rules")
$SysmonSvcRegValueDword = @("HashingAlgorithm","Options")

foreach($value in $SysmonSvcRegValueBinary){

    ((Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\sysmonDrv\Parameters").$value | ForEach-Object { $_.ToString("X2") }) -join '' > "$SysmonSvcOutput\Sysmon_Export_$value.txt"
}


foreach($value in $SysmonSvcRegValueDword){

    (Get-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\sysmonDrv\Parameters").$value > "$SysmonSvcOutput\Sysmon_Export_$value.txt"
}

Désormais, nous allons voir comment ajouter ces informations à une GPO.

C. Configurer Sysmon par GPO

Pour configurer Sysmon, nous allons créer une nouvelle GPO. Pour ma part, elle s'appelle "Configurer Sysmon (GPP)".

1 - Modifiez la GPO et accédez à l'emplacement suivant : Configuration ordinateur > Préférences > Paramètres Windows > Registre.

2 - Effectuez un clic droit puis sous "Nouveau", choisissez "Assistant Registre". Attention, si vous avez exporté les données via PowerShell, choisissez "Élément Registre" et configurez chaque valeur de Registre.

Un assistant s'exécute. Si votre machine de référence correspond à la machine locale, choisissez "Ordinateur local", sinon prenez la seconde option et recherchez votre machine.

Ensuite, parcourez l'arborescence du Registre jusqu'à pouvoir cocher les 4 valeurs que nous souhaitons importer. Cliquez sur "Terminer".

Voilà, les valeurs et les données associées sont immédiatement importées dans la GPO. Pratique.

Voici le résultat obtenu :

Si vous avez besoin de différencier Sysmon 32 bits et Sysmon 64, utilisez une règle de "Ciblage au niveau de l'élément" sur chaque règle de la GPO. Cette règle devra aller vérifier la présence de la clé de Registre "Sysmon" ou "Sysmon64" pour déterminer la version de l'application.

De plus, sachez que le schéma du fichier XML de Sysmon peut évoluer au fil des versions, donc nous devons en tenir compte. Sinon, la configuration peut devenir "illisible" par l'outil. C'est pour cette raison que nous allons ajouter une condition de ciblage sur chaque règle de la GPO. Pour connaître la version de Sysmon, il suffit de regarder dans les propriétés de l'exécutable Sysmon. Ici, il s'agit de la version "15.14.0.0".

Ensuite, nous allons créer une condition de cette façon :

1 - Modifiez une première valeur dans la GPO, cliquez sur "Commun", puis cochez "Ciblage au niveau de l'élément" et cliquez sur le bouton "Ciblage".

2 - Cliquez sur "Nouvel élément" et choisissez "Correspondance fichier".

3 - Choisissez le type de correspondance nommé "Faire correspondre la version de fichier".

4 - Indiquez le chemin d'accès en version 64 bits (si vous gérez les deux versions, vous devez créer plusieurs conditions et utiliser l'opérateur "OU").

%WinDir%\Sysmon64.exe

5 - Indiquez votre version comme valeur maximale, en indiquant la valeur complète (y compris les zéros). Choisissez l'opérateur "<=" à la place de "<" sinon la règle ne s'appliquera pas. Si besoin, nous pourrions aussi ajuster la version minimale (valeur de gauche).

Validez et répétez l'opération pour les autres règles de la GPO.

V. Tester la configuration

Désormais, il ne reste plus qu'à tester la GPO sur une machine ciblée par celle-ci. Voici l'état d'une machine sur laquelle Sysmon a été installé par GPO mais qui n'a pas appliqué de fichier de configuration. Nous voyons que la valeur "Rules" n'est même pas présente.

Après application de la GPO, les valeurs de Registre sont bien actualisées et nous pouvons le confirmer en regardant le Registre :

Il faut savoir qu'il n'y a pas besoin de redémarrer le service Sysmon. Il va détecter de lui-même la modification de la configuration (valeur "Rules") et l'appliquer immédiatement.

Nous venons de déployer une configuration de Sysmon par GPO sans l'exposer dans un fichier XML ! Ainsi, notre configuration est protégée des regards indiscrets.

VI. Conclusion

En suivant ce tutoriel sur Sysmon, vous devriez être en mesure de l'installer et de le configurer de façon automatique sur vos machines Windows ! La prochaine étape consistera à collecter ses événements dans le but de pouvoir les analyser.

The post Cybersécurité : installer et configurer Sysmon sur Windows avec une GPO first appeared on IT-Connect.

Le ransomware ShrinkLocker utilise BitLocker pour chiffrer les machines Windows

27 mai 2024 à 08:54

Un nouveau ransomware baptisé ShrinkLocker présente la particularité de s'appuyer sur BitLocker, un composant intégré par défaut à Windows, pour chiffrer les données d'un ordinateur. Faisons le point sur cette menace.

Le ransomware ShrinkLocker s'appuie sur BitLocker pour chiffrer les données et les disques des machines Windows compromises, après avoir effectué des modifications sur le disque afin de créer son propre volume d'amorçage. Il a été utilisé pour cibler des organisations dans le secteur du médical, des industries ainsi qu'une entité gouvernementale.

Les chercheurs en sécurité de Kaspersky ont mis en ligne un rapport détaillé au sujet du ransomware ShrinkLocker, que vous pouvez retrouver sur cette page.

ShrinkLocker s'appuie sur VBScript, WMI et diskpart

Il est intéressant de noter que ShrinkLocker est écrit en VBScript (Visual Basic Scripting), un langage qui est en fin de vie et que Microsoft va supprimer de Windows d'ici quelques années. Mais, en attendant, VBScript est parfaitement utilisable sur Windows, même s'il devrait pouvoir être désinstallé facilement à partir de Windows 11 24H2.

Par ailleurs, pour détecter la version de Windows exécutée sur la machine ciblée, le ransomware ShrinkLocker s'appuie WMI afin de solliciter la classe "Win32_OperatingSystem", bien connue des administrateurs systèmes. Ceci permet au ransomware d'effectuer quelques vérifications, notamment de s'assurer que le domaine de la machine correspond bien à la cible et que l'OS est plus récent que Windows Vista.

Si la cible répond à différents critères, l'attaque se poursuit grâce à l'utilisation de l'outil diskpart intégré à Windows. Il est utilisé pour réduire de 100 Mo toutes les partitions qui ne sont pas des partitions de démarrage. L'espace non alloué est utilisé pour créer de nouveaux volumes primaires sur le disque de la machine.

Enfin, le Registre Windows est modifié pour configurer le système afin de désactiver les connexions Bureau à distance et pour activer BitLocker sans utiliser de puce TPM. Les clés de Registre "EnableBDEWithNoTPM" et "fDenyTSConnections" sont évoquées.

Une machine piégée avec BitLocker

Le ransomware ShrinkLocker fait en sorte d'activer et de configurer BitLocker de façon à ce que la victime ne puisse plus lancer sa machine. Nous pourrions presque dire que la machine a été sabotée par l'intermédiaire de BitLocker.

La clé BitLocker générée est transmise aux cybercriminels, tandis qu'à la fin de l'opération, ShrinkLocker force le système à s'éteindre pour appliquer toutes les modifications. Ainsi, l'utilisateur se retrouve avec une machine avec des disques verrouillés et sans aucune option de récupération BitLocker...

Ransomware ShrinkLocker - Recovery BitLocker

"Après avoir supprimé les protecteurs BitLocker et configuré le chiffrement du disque, le script suit les étapes suivantes pour effacer ses traces.", précise Kaspersky. En effet, le ransomware effectue différentes actions de nettoyage sur la machine, telle que la suppression du journal "Microsoft-Windows-PowerShell/Operational".

Il pourrait s'agir d'attaques dont l'objectif est de détruire les données puisque le ransomware ne laisse aucune note de rançon. La seule information fournie est une adresse e-mail indiquée en tant que label sur la nouvelle partition créée par le logiciel malveillant.

Source

The post Le ransomware ShrinkLocker utilise BitLocker pour chiffrer les machines Windows first appeared on IT-Connect.

Upgrade from Ubuntu 22.04 to 24.04 LTS on Windows Subsystem for Linux (WSL2)

Par : Edem Afenyo
24 mai 2024 à 17:13
The latest version of Ubuntu, 24.04, is out with new features for multiple platforms. This article specifically guides you through upgrading to 24.04 on the Windows Subsystem for Linux (WSL2) platform. Check out this article for a general upgrade guide for other platforms.

PowerShell : comment calculer le hash d’un fichier ?

23 mai 2024 à 17:55

I. Présentation

Dans ce tutoriel, nous allons voir comment calculer le hash d'un fichier avec PowerShell ! Depuis PowerShell 4.0, le cmdlet nommé "Get-FileHash" est présent et il permet de calculer le hash d'un ou de plusieurs fichiers selon plusieurs algorithmes.

PowerShell 4.0 est disponible nativement depuis Windows 8.1 et Windows Server 2012 R2, ce qui en fait une version très largement répandue aujourd'hui.

Le hash d'un fichier est souvent utilisé pour vérifier l'intégrité du fichier. Les algorithmes de hachage couramment utilisés comprennent MD5, SHA-1, SHA-256, etc. Chacun de ces algorithmes produit un hash de longueur différente.

Par exemple, si vous téléchargez un fichier à partir d'Internet, vous pouvez comparer le hash du fichier téléchargé avec le hash fourni par le site web pour vous assurer que le fichier n'a pas été altéré pendant le téléchargement. Si les deux valeurs sont égales, vous pouvez affirmer que le fichier est authentique (vis-à-vis de la version d'origine). Ceci peut s'avérer utile aussi pour de l'échange de données.

Vous pouvez calculer le hash des différents types de fichiers : images ISO, packages d'installation d'applications (EXE, MSI, etc.), et tout autre fichier selon vos besoins.

Version originale de l'article : 11 décembre 2013.

II. Utilisation de Get-FileHash

Intéressons-nous au cmdlet évoqué en introduction de cet article.

Voici la syntaxe à utiliser :

Get-FileHash -Algorithm <Nom-algorithme> -Path <Chemin-vers-fichier>

Concernant les algorithmes, voici ceux disponibles avec Windows PowerShell 5.1 :

  • MAC Triple DES
  • MD5
  • RIPEMD160
  • SHA1
  • SHA256
  • SHA384
  • SHA512

Attention, avec PowerShell 7, le nombre d'algorithmes pris en charge est différent et plus limité : MD5, SHA1, SHA256, SHA384 et SHA512. Dans les deux cas, SHA256 est la valeur par défaut du paramètre "-Algorithm".

Ouvrez une console pour essayer la commande. Par exemple, pour calculer le hash SHA1 du fichier "it-connect.txt" situé dans "C:\files\" :

Get-FileHash -Algorithm SHA1 -Path "C:\files\it-connect.txt"

Cela donnera un résultat de ce type où l'on voit le hash :

getfilehash2

Que faire de cette information ? La valeur du hash retournée ici peut être comparée avec la valeur de hash fournie sur le site depuis lequel vous avez téléchargé le fichier. Sinon, vous pouvez aussi calculer le hash et au moment de transmettre le fichier à quelqu'un, vous lui fournissez aussi le hash. Ceci lui permettra de vérifier l'authenticité du fichier reçu.

Vous pouvez aussi calculer le hash d'un ensemble de fichiers. Voici un exemple :

Get-FileHash -Algorithm SHA256 -Path *.* | Format-List Path,Hash

Ci-dessous, le résultat en image. Le résultat est identique à chaque fois, car il s'agit d'un même fichier dupliqué : d'ailleurs le hash identique permet de l'affirmer.

Calculer hash SHA256 en PowerShell

III. Conclusion

Vous êtes désormais en mesure de calculer un hash facilement sous Windows, avec une commande simplissime mais à connaître : Get-FileHash.

The post PowerShell : comment calculer le hash d’un fichier ? first appeared on IT-Connect.

Les pirates exploitent la fonction Quick Assist de Windows pour déployer le ransomware Black Basta

22 mai 2024 à 13:34

Quick Assist, l'outil de contrôle à distance intégré à Windows, est exploité par les cybercriminels dans le cadre d'une campagne malveillante visant à déployer le ransomware Black Basta. Faisons le point.

Quick Assist, ou en français "Assistance rapide", est une fonctionnalité présente dans Windows 10 et Windows 11 permettant d'offrir un contrôle à distance à son ordinateur. Ceci peut être utile pour une intervention de support informatique, par exemple.

Depuis la mi-avril, les cybercriminels du groupe Storm-1811, un gang financé par le gang de ransomware Black Basta, ont lancé une campagne d'attaques par ingénierie sociale.

"Les cybercriminels abusent des fonctions d'assistance rapide pour mener des attaques d'ingénierie sociale en se faisant passer, par exemple, pour un contact de confiance comme le support technique de Microsoft ou un professionnel de l'informatique de l'entreprise de l'utilisateur cible afin d'obtenir un accès initial à un appareil cible.", peut-on lire sur le site de Microsoft.

Quick Assist Windows - Ransomware Black Basta

Un mode opératoire élaboré sur fond de phishing vocal

Tout commence par l'identification des utilisateurs qui seront pris pour cible par l'intermédiaire de leur adresse e-mail. Les pirates vont inscrire ces adresses e-mails sur des listes d'abonnements afin que les utilisateurs reçoivent beaucoup de spams. Ensuite, les pirates vont contacter l'utilisateur en prétextant vouloir corriger ce problème de réception de nombreux spams.

C'est à partir de là qu'une prise de contact pourra être établie par l'intermédiaire d'un appel téléphonique. Pour piéger l'utilisateur, le pirate se fait passer pour un technicien de l'entreprise ou une personne du support de Microsoft.

Grâce à Quick Assist, ils obtiennent un accès distant à la machine et vont pouvoir demander à prendre le contrôle à distance, dans le but de résoudre ce fameux "problème" de spams.

"L'utilisateur cible n'a qu'à appuyer sur CTRL + Windows + Q et à saisir le code de sécurité fourni par le cybercriminel", précise Microsoft. En effet, ce raccourci lance immédiatement Quick Assist sur la machine. Mais, leur objectif est bel et bien de déployer un logiciel malveillant sur la machine. Un très bel exemple de phishing vocal.

Sur la machine compromise, plusieurs outils sont déployés, notamment ScreenConnect pour avoir la main à distance sur la machine (sans surveillance), Cobalt Strike, ainsi que QakBot, un Cheval de Troie bancaire très utile pour déployer d'autres logiciels malveillants. La dernière étape consiste à déployer le ransomware Black Basta sur le réseau de l'entreprise.

Microsoft vous recommande de désinstaller ou bloquer Quick Assist sur vos appareils si vous n'utilisez pas cette fonctionnalité. Bien entendu, il est également important de sensibiliser les utilisateurs et de les informer.

Source : Microsoft

The post Les pirates exploitent la fonction Quick Assist de Windows pour déployer le ransomware Black Basta first appeared on IT-Connect.

Remove store apps from a Windows image

21 mai 2024 à 19:22
In professional environments, most store apps delivered with Windows are of little value, prompting admins to remove them from the image before deployment. However, you should avoid indiscriminately deleting them, as some system-relevant apps may be among them. PowerShell can be used to remove the crapware selectively.

Comment collecter les identifiants mémorisés sur Windows avec LaZagne ?

21 mai 2024 à 10:00

I. Présentation

Dans cet article, nous allons évoquer l'outil open source LaZagne dont l'objectif est de collecter les identifiants et mots de passe mémorisés sur un ordinateur local, en allant lire les informations stockées dans différentes applications.

LaZagne est un outil de sécurité offensive qui peut être utilisé dans le cadre d'une mission de test d'intrusion (pentest), lors de la phase de post-exploitation, ou sur son propre ordinateur personnel pour effectuer de la collecte d'identifiants (si vous avez oublié un identifiant et un mot de passe enregistré, par exemple). Vous l'aurez surement compris, compte tenu de ses fonctionnalités, il peut être utilisé également à des fins malveillantes.

L'objectif de cet article de sensibilisation est de mettre en lumière les risques associés à la mémorisation des identifiants au sein d'applications diverses et variées et qui ne sont pas des gestionnaires de mots de passe. Aujourd'hui, de nombreuses applications sont capables de mémoriser les noms d'utilisateur et les mots de passe pour nous faire gagner du temps.

En tant qu'administrateur système et réseau, technicien, DevOps, développeur ou simple utilisateur, vous pourriez être tenté d'enregistrer vos identifiants dans des applications telles que WinSCP, FileZilla, OpenVPN, etc... et même dans les navigateurs Web. Pourtant, elles ne sont pas conçues dans ce but et ne protègent pas suffisamment vos mots de passe. Espérons que l'outil LaZagne vous dissuade de le faire.

WinSCP - Option pour enregistrer le mot de passe

Attention - Disclaimer : si vous décidez d'utiliser cet outil, vous en prenez l'entière responsabilité. IT-Connect et l'ensemble de ses auteurs ne seront pas responsables des actions que vous effectuerez. Soyez vigilant à exploiter cet outil uniquement si vous y êtes autorisé. Pour rappel : Code pénal : Chapitre III : Des atteintes aux systèmes de traitement automatisé de données.

II. Les fonctionnalités de LaZagne

LaZagne est un outil open source codé en Python concocté par Alessandro Zanni, compatible avec Windows et Linux, mais aussi macOS, même si son champ d'action est plus limité. Dans cet article, LaZagne est pris comme exemple, car cet outil de sécurité est capable de collecter des identifiants, au même titre qu'un logiciel malveillant de type "infostealer" pourrait le faire sur votre machine. Néanmoins, LaZagne ne va pas exfiltrer les identifiants collectés vers un serveur contrôlé par un attaquant et il n'effectue pas de collecte de cookies.

Voici le lien vers le projet :

LaZagne est capable de collecter les noms d'utilisateur et mots de passe enregistrés dans différentes catégories d'applications :

  • Les navigateurs : Brave, Chrome, Edge, Opera, Vivaldi, Firefox, etc.
  • Les applications de gestion de bases de données : DBVisualizer, PostgreSQL, SQLdevelopper, etc.)
  • Git for Windows
  • Les clients de messagerie : Outlook, Thunderbird
  • Les mots de passe Wi-Fi
  • Les applications appréciées par les administrateurs systèmes : FileZilla, FileZilla Server, OpenSSH, OpenVPN, Rclone, VNC, WinSCP, RDPManager, etc.
  • Les gestionnaires d'identification internes au système

La liste complète est disponible sur le GitHub, avec un tableau des applications et "stores" prises en charge par OS :

III. Utilisation de Lazagne

Pour cette démonstration, une machine sous Windows 11 23H2 est utilisée. Il y a plusieurs applications installées sur cette machine, dont WinSCP et FileZilla au sein desquelles il y a plusieurs connexions enregistrées. À chaque fois, le mot de passe a été enregistré dans l'application (pour gagner du temps au quotidien, vous comprenez...). De plus, quelques mots de passe sont enregistrés dans le navigateur Microsoft Edge.

A. Télécharger l'outil

Pour Windows, il y a une version au format EXE de LaZagne, ce qui évite de devoir installer Python indépendamment. Pour télécharger cette version, rendez-vous sur le GitHub officiel :

Avant cela, sachez que le filtre SmartScreen et Microsoft Defender ne vont pas apprécier du tout ce téléchargement. Le premier essaiera de vous dissuader, tandis que le second va tout simplement bloquer le fichier, car il est considéré comme un virus ("Trojan"). C'est normal, compte tenu des fonctionnalités de l'outil. Mais, grâce à une intervention manuelle, vous pourrez débloquer l'exécutable dans Defender.

B. Exécuter une recherche d'identifiants

Nous devons ouvrir une console PowerShell ou une invite de commande afin d'exécuter l'outil. Il n'est pas nécessaire de l'installer, c'est un exécutable portable ! Sans les droits Administrateur, l'outil pourra collecter des identifiants, mais il sera plus limité (pour les mots de passe Wi-Fi, par exemple, il faut une élévation de privilèges).

Si l'outil est placé dans le répertoire "C:\tools", voici la commande à exécuter (en se positionnant en amont dans ce répertoire au niveau du shell) pour effectuer une recherche globale sur la machine locale :

PS C:\tools> .\LaZagne.exe all

Remarque : ici, le test est effectué avec un utilisateur nommé "Administrateur" mais avec une console PowerShell ouverte sans élévation de privilèges.

Quelques secondes plus tard, LaZagne nous retourne ce qu'il a trouvé. Ici, nous pouvons voir qu'il a collecté des identifiants dans FileZilla et WinSCP parce qu'il s'agit d'informations mémorisées dans les applications.

Pour WinSCP, cela correspond bien aux deux entrées présentes dans l'application. Le mot de passe n'est pas visible et accessible en clair à partir de l'interface graphique de l'application WinSCP, ce qui est plutôt trompeur au final.

Cela ne s'arrête pas là, car LaZagne est parvenu à collecter les identifiants mémorisés dans Microsoft Edge ! À l'inverse, il n'est pas parvenu à collecter le mot de passe enregistré dans le "Gestionnaire d'identification" de Windows.

Sachez qu'il existe un ensemble d'options pour personnaliser l'exécution de LaZagne. Voici un exemple pour générer deux fichiers de sortie avec les résultats (option "-oA"), dans le répertoire "C:\temp". Il y aura un premier fichier au format texte et un second fichier au format JSON. Utilisez l'option "-oN" pour un fichier texte seulement et l'option "-oJ" pour un fichier JSON uniquement.

.\LaZagne.exe all -oA -output C:\temp\

Ce fichier contient les informations visibles dans la console :

Vous pouvez également effectuer une recherche ciblée sur une catégorie précise d'applications.

  • Toutes les applications de la catégorie "sysadmin" :
.\LaZagne.exe sysadmin
  • Toutes les applications de la catégorie "navigateurs Web" :
.\LaZagne.exe browser

Pour obtenir la liste complète des possibilités, vous pouvez consulter l'aide :

.\LaZagne.exe --help

Finalement, tous les identifiants collectés par LaZagne sont bien ceux enregistrés dans de diverses applications installées sur cette machine de test.

IV. Que faut-il en tirer ?

L'utilisation de LaZagne met en lumière l'importance de ne pas enregistrer les mots de passe dans les navigateurs et dans d'autres applications que nous sommes susceptibles d'utiliser au quotidien. Pourtant, parfois, cela peut être tentant de le faire, car c'est plus pratique, et les applications peuvent nous le proposer. Malheureusement, la fuite des identifiants de connexion SSH d'un serveur peut être préjudiciable et lourd de conséquences pour une organisation.

Les identifiants doivent être stockés dans un gestionnaire de mots de passe digne de ce nom et ne pas être éparpillé en mémoire dans d'autres applications. Par ailleurs, c'est l'occasion de rappeler l'importance d'activer l'authentification multifacteurs (MFA) à chaque fois que cela est possible pour se protéger contre la fuite d'identifiants (à ne pas confondre avec le vol de cookies de sessions).

Voici quelques-uns de nos articles sur le sujet des gestionnaires de mots de passe :

V. Conclusion

Comme nous venons de le voir, LaZagne est un outil puissant et redoutable qui peut rendre bien des services aux professionnels de la cybersécurité dans le cadre d'une mission de pentest. Il est apprécié par la communauté et comptabilise plus de 9 000 Stars sur GitHub : maintenant, vous comprenez mieux pourquoi.

The post Comment collecter les identifiants mémorisés sur Windows avec LaZagne ? first appeared on IT-Connect.

Malvertising : un gang de ransomware cible les administrateurs systèmes sous Windows, grâce à PuTTY et WinSCP

20 mai 2024 à 09:03

Un gang de ransomware cible les professionnels de l'informatique sous Windows grâce à des résultats sponsorisés dans les moteurs de recherche utilisés pour promouvoir de faux sites pour télécharger PuTTY et WinSCP. Faisons le point.

Le client PuTTY (récemment affecté par une vulnérabilité) est une application très populaire sur Windows, notamment pour se connecter à des serveurs ou des équipements réseaux à distance via les protocoles SSH et Telnet. WinSCP quant à lui est une application de transfert de fichiers compatibles avec plusieurs protocoles dont le SFTP, le SCP et le FTP.

Cela en fait des logiciels appréciés par les professionnels de l'informatique, en particulier les administrateurs systèmes avec une machine sous Windows. Ces mêmes administrateurs systèmes, qui, bien souvent, ont des privilèges élevés sur l'infrastructure de l'organisation.

Pour les pirates, ils représentent une cible de choix, comme le montre le rapport mis en ligne par Rapid7 au sein duquel nous pouvons lire : "Début mars 2024, Rapid7 a observé la distribution d'installateurs trojanisés pour les utilitaires open source WinSCP et PuTTy."

D'une simple recherche Internet à l'exécution d'un ransomware

Tout commence par une recherche dans un moteur de recherche tel que Bing ou Google (même si ce dernier n'est pas précisé) avec les mots clés "download winscp" ou "download putty". La liste des résultats contient des résultats sponsorisés correspondants à des publicités malveillantes menant vers des copies des sites officiels de WinSCP ou PuTTY, ou de simples pages de téléchargement. "Dans les deux cas, un lien permettant de télécharger une archive zip contenant le cheval de Troie à partir d'un domaine secondaire était intégré à la page web.", précise Rapid7.

Comme le montre l'image ci-dessous, l'archive ZIP contient un fichier "setup.exe" correspondant à un exécutable Python ("pythonw.exe", renommé) qui va charger une bibliothèque DLL sur la machine dans le but de l'infecter ou d'exécuter une charge malveillante. Il est important de noter que l'application recherchée par l'utilisateur, à savoir PuTTY ou WinSCP, sera bien installée sur la machine.

Malvertising PuTTY et WinSCP sur Windows
Source : Rapid7

Lors d'un incident récent, Rapid7 a observé qu'un attaquant tentait d'exfiltrer des données à l'aide de l'utilitaire de sauvegarde Restic, puis de déployer un ransomware, une tentative qui a finalement été bloquée pendant l'exécution", peut-on lire.

Même si Rapid7 ne sait pas précisément quel est le gang de ransomware à l'origine de cette campagne malveillante, les techniques (TTP) utilisées rappellent les anciennes campagnes BlackCat/ALPHV.

Source

The post Malvertising : un gang de ransomware cible les administrateurs systèmes sous Windows, grâce à PuTTY et WinSCP first appeared on IT-Connect.

Generalize and capture a custom Windows 11 image

16 mai 2024 à 17:32
Many admins prefer to use a customized image rather than Microsoft's standard image for deploying Windows 11. This involves creating a reference installation of the OS tailored to their specific needs. After generalizing it with Sysprep, the image is written to a WIM archive using DISM or PowerShell.

Patchez Windows pour vous protéger de cette faille zero-day exploitée par le malware QakBot

15 mai 2024 à 16:25

À l'occasion de son Patch Tuesday de Mai 2024, Microsoft a corrigé la faille de sécurité zero-day CVE-2024-30051. Sa particularité : elle est déjà exploitée par le malware QakBot ! Faisons le point sur cette menace.

Associée à la référence CVE-2024-30051, la faille de sécurité zero-day présente dans la bibliothèque "Desktop Window Manager" (DWM) du système d'exploitation Windows mérite une attention particulière. En charge de la gestion des fenêtres et introduit lors de la sortie de Windows Vista, il s'agit d'un composant central sur Windows.

Comme le précise Microsoft sur son site, cette vulnérabilité de type "heap-based buffer overflow" permet d'exécuter du code avec les privilèges SYSTEM sur la machine ciblée : "Un attaquant qui parviendrait à exploiter cette vulnérabilité pourrait obtenir les privilèges SYSTEM."

Une faille de sécurité zero-day exploitée par plusieurs malwares

Plusieurs chercheurs en sécurité sont à l'origine de la découverte de cette vulnérabilité, dont deux personnes de chez Kaspersky, qui ont mis en ligne un rapport au sujet de cette vulnérabilité et de la menace QakBot.

Tout a commencé par l'identification d'un fichier suspect sur VirusTotal, le 1er avril 2024. Ensuite, un suivi a été effectué par Kaspersky, ce qui a permis de découvrir l'existence d'un exploit pour cette vulnérabilité à la mi-avril.

"Nous l'avons vu utilisé avec QakBot et d'autres logiciels malveillants, et nous pensons que plusieurs acteurs de la menace y ont accès.", peut-on lire. Pour le moment, Kaspersky n'a pas donné de détails techniques supplémentaires afin de laisser le temps aux utilisateurs de Windows de se protéger.

QakBot, appelé aussi Qbot, est un Cheval de Troie bancaire identifié pour la première en 2008. Il est utilisé par les cybercriminels pour voler des numéros de cartes bancaires, des identifiants d'accès aux comptes bancaires, ainsi que des cookies de session. QakBot est aussi utilisé dans des attaques plus complexes où il sert à fournir un accès initial en vue d'exécuter un ransomware ou un autre logiciel malveillant.

Comment se protéger ?

La seule façon de se protéger, c'est d'installer la mise à jour de mai 2024 sur ses postes de travail Windows et ses serveurs sous Windows Server, car les deux OS sont vulnérables. Parmi les systèmes vulnérables, nous pouvons citer Windows 10, Windows 11, ainsi que Windows Server 2016 et les versions supérieures.

D'après la documentation de Microsoft, Windows Server est impacté même lorsqu'il est installé en mode "Core", c'est-à-dire sans interface graphique.

Les mises à jour viennent de sortir, donc pensez à les tester avant de les diffuser largement sur vos machines.

Source

The post Patchez Windows pour vous protéger de cette faille zero-day exploitée par le malware QakBot first appeared on IT-Connect.

Comment effectuer une investigation numérique sur les journaux d’évènements Windows avec Zircolite ?

14 mai 2024 à 10:00

I. Présentation

Dans cet article, nous allons découvrir Zircolite, un outil d'investigation numérique simple d'utilisation capable de détecter des évènements de sécurité suspects dans différents formats de journaux d'évènements (logs), dont le format .evtx (Windows), les logs Auditd Linux, le format JSON, etc.

Cet outil peut être utilisé lors d'une suspicion d'intrusion sur un composant du système d'information, lors d'un contrôle de routine (threat hunting) sur les journaux ou lors d'une investigation numérique en bonne et due forme. L'intérêt de Zircolite est qu'il est standalone, il ne nécessite pas de serveur web ou base de donnée. Il peut être exécuté sur n'importe quel système Linux munit de Python3, ou sous Windows en tant que simple exécutable. Également, il est très simple d'utilisation et repose sur un standard pour la détection des évènements suspects : les règles Sigma.

II. Détection, investigation numérique et règles Sigma

A. Sigma : règles de détection pour les journaux d'évènements

À l'instar des règles Yara (pour les fichiers) et des règles Snort (pour les trames réseaux), les règles Sigma sont un format unifié de règles de détection orienté sur les journaux d'évènements. Ce format propose une manière uniforme de définition d'un évènement de sécurité à rechercher dans les journaux à l'aide de conditions qui seront utilisées comme critères de recherche et de catégorisation d'un évènement.

Les règles Sigma sont donc prises en compte par un grand nombre d'outils et disposent d'un autre avantage très important : la conversion.

L'écosystème des règles Sigma est, en effet, très intéressant, car il intègre des outils capables de convertir les règles Sigma en requêtes ou commandes spécifiques à certains produits. Par exemple, une requête KQL (pour ELK), Splunk, ou même une requête PowerShell en utilisant le cmdlet "Get-WinEvent". Bref, un sujet très intéressant là aussi. Voici un exemple :

$ sigma-cli convert --target splunk --pipeline splunk_windows /opt/sigma/rules/windows/sysmon/sysmon_file_block_executable.yml
Parsing Sigma rules [####################################] 100%
source="WinEventLog:Microsoft-Windows-Sysmon/Operational" EventCode=27

Je viens de convertir la règle de détection Sigma "sysmon_file_block_executable.yml" en requête Splunk. Dans les faits, Zircolite utilise activement cette possibilité afin de convertir les évènements et les règles de recherche au format SQL/SQLite :

Fonctionnement interne de Zircolite. Source : https://github.com/wagga40/Zircolite/blob/master/docs/Internals.md
Fonctionnement interne de Zircolite. Source : https://github.com/wagga40/Zircolite/blob/master/docs/Internals.md

L'occasion ici de rappeler l'importance des journaux d'évènements, tant dans leur configuration, journaliser les bons évènements, notamment ceux de sécurité, que dans leur centralisation/externalisation : ne pas laisser les journaux sur le système qui les a générés, en faire une copie, une sauvegarde, dans un endroit sûr. En cas d'attaque, une équipe d'investigation numérique ou de remédiation aura du mal à vous aider si les journaux permettant de retracer le dérouler d'une cyberattaque ne sont pas complets et à disposition, voire n'ont jamais été produits.

Pour en apprendre plus, je vous recommande notre article sur le sujet de la centralisation des logs :

B. Exemple de règle SIGMA

Pour l'exemple, voici une règle Sigma issue du Github SigmaHQ/Sigma, l'une des places centrales de la collaboration autour des règles de détection Sigma :

title: Suspicious PowerShell Download
id: 3236fcd0-b7e3-4433-b4f8-86ad61a9af2d
related:
  - id: 65531a81-a694-4e31-ae04-f8ba5bc33759
type: derived
status: test
description: Detects suspicious PowerShell download command
references:
  - https://www.trendmicro.com/en_us/research/22/j/lv-ransomware-exploits-proxyshell-in-attack.html
author: Florian Roth (Nextron Systems)
date: 2017/03/05
modified: 2023/10/27
tags:
  - attack.execution
  - attack.t1059.001
logsource:
  product: windows
  category: ps_classic_start
detection:
  selection_webclient:
    Data|contains: 'Net.WebClient'
  selection_download:
    Data|contains:
      - '.DownloadFile('
      - '.DownloadString('
  condition: all of selection_*
falsepositives:
  - PowerShell scripts that download content from the Internet
level: medium

Une explication détaillée des règles Sigma, de leur fonctionnement et de leur utilisation pourrait faire l'objet d'un cours entier, mais nous pouvons au moins nous intéresser aux points suivants :

logsource:
  product: windows
  category: ps_classic_start

Ces instructions permettent de spécifier dans quel type de logs, nous allons chercher notre information, ici pour les produits Windows et la catégorie "ps_classic_start", c'est-à-dire les journaux PowerShell. Une liste complète des logsource et catégories utilisables peut être trouvées sur la documentation officielle Sigma.

Viennent ensuite les conditions de notre recherche :

detection:
  selection_webclient:
    Data|contains: 'Net.WebClient'
  selection_download:
    Data|contains:
      - '.DownloadFile('
      - '.DownloadString('
  condition: all of selection_*

Nous pouvons noter deux conditions ("selection_webclient" et "selection_download") qui doivent toutes deux être remplies ("condition: all of selection_*"). La première indique que le champ "Data" (le contenu de la commande PowerShell analysée) doit contenir "Net.WebClient" et la seconde qu'il doit contenir ".DownloadFile(" ou ".DownloadString('".

Les nombreuses autres instructions de cette règle permettent de spécifier son auteur, son niveau de criticité, d'obtenir des références externes, etc.

Zircolite propose ses propres règles Sigma, mais n'importe quel jeu de règle utilisant ce format peut être utilisé, c'est ce qui fait la grande puissance de l'outil. Vous pouvez retrouver les règles inclus dans Zircolite ici : Github - Zircolite-Rules et localement dans le sous-répertoire d'installation de Zircolite "rules" :

┌──(mdo㉿purple-it-connect)-[/opt/Zircolite]
└─$ ls rules/ -l
total 31172
-rw-r--r-- 1 mdo mdo    2880 Apr  7 10:53 README.md
-rw-r--r-- 1 mdo mdo  155135 Apr  7 10:53 rules_linux.json
-rw-r--r-- 1 mdo mdo 2323097 Apr  7 10:53 rules_windows_generic.json
-rw-r--r-- 1 mdo mdo 3826967 Apr  7 10:53 rules_windows_generic_full.json
-rw-r--r-- 1 mdo mdo 2323097 Apr  7 10:53 rules_windows_generic_high.json
-rw-r--r-- 1 mdo mdo 3617269 Apr  7 10:53 rules_windows_generic_medium.json
-rw-r--r-- 1 mdo mdo 3748878 Apr  7 10:53 rules_windows_generic_pysigma.json
-rw-r--r-- 1 mdo mdo 2329413 Apr  7 10:53 rules_windows_sysmon.json
-rw-r--r-- 1 mdo mdo 3837588 Apr  7 10:53 rules_windows_sysmon_full.json
-rw-r--r-- 1 mdo mdo 2329413 Apr  7 10:53 rules_windows_sysmon_high.json
-rw-r--r-- 1 mdo mdo 3627164 Apr  7 10:53 rules_windows_sysmon_medium.json
-rw-r--r-- 1 mdo mdo 3773777 Apr  7 10:53 rules_windows_sysmon_pysigma.json 

Je vous propose également d'autres sources intéressantes de règles Sigma :

Ces deux sources vous donneront largement de quoi faire, utilisez les notamment pour comprendre le format des règles Sigma et commencer à jouer avec. Gardez en tête cependant que même en utilisant comme base un jeu de règles à jour et éprouvé, les règles les plus efficaces sont celles qui ont été adaptées à votre contexte métier et technique.

Maintenant que nous avons une idée légèrement meilleure de ce que sont les règles Sigma, largement utilisées par les blue teams (équipe de défense et détection) et par Zircolite, passons à l'action.

III. Zircolite : détection d'évènements suspects

A. Installation de Zircolite

Si vous souhaitez utiliser Zircolite depuis un système Windows, il suffit de télécharger l'archive Release du projet et de la décompresser sur votre système :

L'utilisation depuis Windows peut sembler la plus simple si vous souhaitez analyser des journaux Windows. Cependant, Zircolite peut aussi être utilisé en tant que script Python de la même façon. Dès lors, il faut télécharger le code source depuis Github et installer les dépendances Python :

cd /opt
git clone https://github.com/wagga40/Zircolite.git
cd Zircolite
pip install -r requirements.full.txt

Dans le cadre de l'article, je l'installe sur un système Kali Linux Purple, basé sur Debian.

B. Exporter ses logs Windows

Nous sommes prêts à analyser nos journaux d'évènements, mais commençons par les récupérer depuis un système qui nous intéresse. Sur un système Windows, les journaux d'évènements sont nativement stockés dans des fichiers ".evtx". Ceux-ci sont situés dans le répertoire "C:\Windows\System32\winevt\Logs" :

Répertoire par défaut d'un système Windows contenant les journaux d'évènements.
Répertoire par défaut d'un système Windows contenant les journaux d'évènements.

Si l'on souhaite analyser seulement une partie nos journaux, par exemple, d'une date à une autre ou certains évènements ID, nous pouvons effectuer les filtres qui nous intéressent dans l'Observateur d'évènements, puis exporter le résultat. Il faut pour cela se positionner dans le journal à exporter, puis cliquer sur "Enregistrer tous les évènements sous…" dans le panneau droit :

Export des journaux d'évènement "Sécurité" depuis l'Observateur d'évènements.
Export des journaux d'évènements "Sécurité" depuis l'Observateur d'évènements.

Il est également possible d'exporter les journaux d'évènements dans un fichier ".evtx" via la ligne de commande grâce à l'utilitaire "wevtutil.exe", présent nativement sous Windows. Voici un exemple pour exporter le journal "Sécurité" :

wevtutil export-log Security Z:\Security.evtx

Dans ces deux derniers cas, nous aurons en résultat un fichier ".evtx" à analyser.

Si vous ne souhaitez pas analyser vos propres journaux Windows ou que vous n'en avez pas sous la main, pas de panique. Voici une source qui propose des journaux Windows contenant des évènements de sécurité, des traces d'attaques, etc. :

Enfin, certains challenges Sherlocks de Hack The Box proposent également des fichiers ".evtx" contenant des traces de cyberattaque. Il s'agit là aussi d'un très bon moyen de s’entraîner.

C. Analyse les logs Windows avec Zircolite

Maintenant que nous avons tout à notre disposition, nous pouvons utiliser Zircolite pour mener une analyse sur ces journaux à l'aide de règles de détection Sigma :

python3 zircolite.py --evtx XXXX.evtx

Sous Windows, le format de la commande est le même :

Z:\zircolite_win> .\zircolite_win_x64_2.20.0.exe --evtx Z:\Windows_SecurityLog.evtx

Il est possible de fournir en entrée à Zircolite un fichier ".evtx," ou un dossier complet contenant un ensemble de fichiers ".evtx". Par exemple, si vous ne savez pas très bien où et quoi chercher et que vous avez copié tout le contenu du répertoire "C:\Windows\System32\winevt\Logs" :

python3 zircolite.py --evtx monRepertoire\

Voici le résultat obtenu lors de l'exécution de Zircolite sous Linux :

Résultat de l'exécution de Zircolite sur des journaux d'évènements Windows.
Résultat de l'exécution de Zircolite sur des journaux d'évènements Windows.

Zircolite nous indique ici dans un premier temps le jeu de règles Sigma qu'il va utiliser ("rules/rules_windows_generic_py_sigma.json"). Puis, il va analyser les journaux d'évènements fournit en entrées avec ces règles Sigma et nous afficher les évènements découverts, leur sévérité (High, Medium, Low), et leur nombre d’occurrences.

Parmi les éléments notables de l'exemple ci-dessus, on peut noter l'utilisation de "mimikatz", la réalisation d'une attaque DCSync, une opération de suppression des journaux d'évènements... Pas de doute ici, un attaquant est passé par là !

Si l'on souhaite utiliser un autre jeu de règles (des règles personnalisées par exemple), il est possible de le spécifier avec l'option "-r" :

python3 zircolite.py --evtx /tmp/EVTX-ATTACK-SAMPLES/Persistence/ -r /opt/Zircolite/rules/rules_windows_sysmon_full.json

Ce second jeu de règle utilisé me remonte par exemple 155 évènement suspects contre 47 avec le jeu de règle "par défaut". Une différence assez nette qui montre l'importance de disposer d'un jeu de règles complet et adapté à son contexte et aux évènements recherchés.

Vous remarquerez ici que j'ai utilisé les règles Sigma spécifiques aux évènements Sysmon, je vous invite à consulter notre article dédié pour en savoir plus sur ce qu'est Sysmon et son apport en termes de sécurité :

L'avant-dernière ligne nous indique qu'un fichier de sortie au format JSON a été créé : "detected_events.json". Ce fichier au format JSON est intéressant si l'on souhaite aller plus loin dans l'investigation des évènements découverts :

Extrait du fichier JSON d'évènements suspect généré par Zircolite.
Extrait du fichier JSON d'évènements suspect généré par Zircolite.

Le contenu de cette sortie contient de nombreux détails techniques qui permettent d'en savoir plus sur les évènements suspects. Tous ne peuvent être affichés dans la sortie terminale de Zircolite pour des raisons de lisibilité. Dans ce fichier, vous n'aurez donc que des évènements suspects qui méritent une investigation. Zircolite a fait le tri parmi vos milliers de journaux pour n'en sortir que les évènements suspects d'après un ensemble de règle de détection Sigma.

Si vous n'êtes pas familier de la cybersécurité, l'élément principal sur lequel vous pourrez vous baser pour mieux comprendre les évènements suspectés relevés et les règles de détection sont le contenu des champs "references" (souvent des liens vers des blogposts) et les "tags". Ce dernier champ utilise les identifiants TTP du framework MITRE ATT&CK qui contient beaucoup d'informations sur les différents types d'attaques et modes opératoires des attaquants.

N'hésitez pas à utiliser un moteur de recherche ou le site du framework MITRE ATT&CK pour en apprendre plus sur une attaque identifiée par son TTP. Par exemple T1548 - Abuse Elevation Control Mechanism.

Il est aussi possible de ne s'intéresser qu'aux journaux d'évènements au-delà ("--after" ou "-A") ou avant ("--before" ou "-B") une certaine date, ce qui permet de filtrer ces derniers et d'améliorer les performances de recherche :

python3 zircolite.py --evtx /tmp/EVTX-ATTACK-SAMPLES/ -r /opt/Zircolite/rules/rules_windows_sysmon_full.json -A 2019-05-11T17:58:00 -B 2021-06-02T23:00:00

Le format à respecter pour spécifier une date est le suivant "<AAA-MM-DD>T<HH:MM:SS>", le "T" étant une valeur fixe. C'est notamment utile lorsque nous disposons de premières informations temporelles nous permettant d'orienter nos recherches.

D. Traiter la sortie JSON de Zircolite

Le format JSON étant un standard pris en charge par de nombreux outils, cela permet de faciliter la lecture et le traitement de ces données. Pour une utilisation et investigation immédiate sur ces évènements, nous pouvons, par exemple, utiliser la commande "jq", qui permet de parser, trier et filtrer les données JSON :

  • Lister tous les évènements suspects, les tags associés (TTP), ainsi que l'heure et l'hôte pour chaque occurrence :
jq '.[] | {title: .title, tags: .tags, matches: [.matches[] | {Time:.UtcTime, Computer:.Computer}]}' /tmp/zircolite_persistence.json

Voici un résultat possible de ce filtre "jq" :

Résultat d'une requête "jq" sur le fichier de sortie de Zircolite.
Résultat d'une requête "jq" sur le fichier de sortie de Zircolite.
  • Obtenir tous les évènements qui concernent un système précis :
jq '.[] | {title: .title, tags: .tags, matches: [.matches[] | select( .Computer == "PC01.example.corp")]}' /tmp/zircolite_persistence.json
  • Afficher les évènements avec un tri par date, pour tenter d'établir un séquençage des évènements :
jq '[.[].matches[]] | sort_by(.SystemTime) ' /tmp/zircolite_persistence.json
  • Même chose avec un filtre sur le nom d'un système précis :
jq '[.[].matches[]| select( .Computer == "PC01.example.corp")] | sort_by(.SystemTime)' /tmp/zircolite_persistence.json

Cette dernière commande est la plus parlante, puisque l'on commence à avoir un ordonnancement dans le temps des évènements suspects sur un système précis. Comme vous le voyez, connaître les subtilités du format JSON et manier "jq" est nécessaire ici. Sachez également que Zircolite peut directement envoyer les journaux obtenus par son analyse à différents composants comme un serveur Splunk ou ELK.

III. Utiliser le rapport web de Zircolite

Un dernier point important qu'il faut mentionner lorsque l'on parle de Zircolite est son interface web (autonome, elle aussi). Celle-ci peut être générée pour chaque analyse et contient une présentation graphique des évènements de sécurité relevés. Pour générer ce rapport au format web, il faut utiliser l'option "--package" :

python3 zircolite.py --evtx /tmp/EVTX-ATTACK-SAMPLES/ -r /opt/Zircolite/rules/rules_windows_sysmon_full.json --package
[...]
[+] Results written in : detected_events.json
[+] Generating ZircoGui package to : zircogui-output-6QYQ.zip
[+] Cleaning 

Zircolite crée alors une archive contenant des fichiers .css, .js, et .html, qu'il faut décompresser :

unzip zircogui-output-6QYQ.zip -d /tmp/Z1
firefox /tmp/Z1/index.html

Dès lors, la page web peut-être ouverte avec n'importe quel navigateur. La première vue que nous obtenons est une synthèse des évènements suspects identifiés par Zircolite dans les journaux analysés. On y trouve notamment une catégorisation de ces évènements basée sur le framework MITRE ATT&CK et par niveau de criticité :

Synthèse des évènements suspects relevés par Zircolite dans sa vue web.
Synthèse des évènements suspects relevés par Zircolite dans sa vue web.

Plus bas dans cette même page, nous pouvons obtenir une timeline des évènements relevés. Cette vue est très intéressante pour obtenir rapidement une vue d'ensemble de l'attaque (si l'on dispose de tous les journaux et des bonnes règles Sigma bien sûr) :

Vue timeline des évènements de sécurité suspects identifiés par Zircolite dans son rapport web.
Vue timeline des évènements de sécurité suspects identifiés par Zircolite dans son rapport web.

Chaque évènement est positionné dans le temps par rapport aux autres (grâce à l'horodatage de chacun) et catégorisé en fonction de sa typologie avec les catégories du framework MITRE ATT&CK.

Dans le cadre d'une investigation numérique, l'établissement d'une timeline de l'attaque est l'un des objectifs principaux de l'équipe forensic. L'idée de pouvoir identifier très rapidement le séquençage des évènements pour mieux comprendre l'objectif de l'attaquant et son mode opératoire, ce qui permet de prendre les bonnes décisions concernant la suite des évènements.

Nous pouvons alors sélectionner n'importe lequel de ces évènements pour avoir des informations plus précises sur celui-ci (cliquez sur l'image pour zoomer) :

Tableau "Sigma alerts" du rapport web Zircolite concernant un évènement sélectionné.
Tableau "Sigma alerts" du rapport web Zircolite concernant un évènement sélectionné.

Ce tableau contient de nombreuses colonnes et vous avez la possibilité de les étudier en utilisant la barre de défilement horizontale. Ces colonnes contiennent l'ensemble des informations de l'évènement sélectionné et initialement stocké dans le fichier ".evtx". Il s'agit des mêmes informations que celles présentes dans le fichier JSON étudié précédemment, mais affichées de manière plus lisible dans une page web (cliquez sur l'image pour zoomer) :

Vue en tableau filtrable des évènements suspects dans le rapport web Zircolite.
Vue en tableau filtrable des évènements suspects dans le rapport web Zircolite.

Cette simple vue nous permet, par exemple, de savoir que le processus "MSSQL" a exécuté un script via "cmd.exe" avec les droits de l'utilisateur "sqlsvc" sur le poste "MSEDGEWIN10". Cette vue par tableau permet également d'effectuer de nombreux filtres, à l'instar de ce que nous avons fait via "jq" sur le fichier JSON généré par Zircolite.

Le dernier élément notable de ce rapport web est la matrice du framework MITRE ATT&CK, qui montre tous les TTP détectés dans l'ensemble de journaux fournis en entrées (cliquez sur l'image pour zoomer) :

Vue d'ensemble des TTP identifiés par Zircolite dans son rapport web.
Vue d'ensemble des TTP identifiés par Zircolite dans son rapport web.

Là aussi, cette vue d'ensemble aide à se faire très rapidement une idée de la portée de l'attaque et des différentes opérations de l'attaquant sur les systèmes concernés.

IV. Conclusion

Dans cet article, nous avons fait le tour de Zircolite au travers des cas concrets sur des journaux d'évènements Windows. Nous avons notamment vu que Zircolite peut être utilisé de façon très simple en ligne de commande afin d'identifier des évènements suspects, d'étudier les détails de ces évènements et d'offrir une vue d'ensemble avec timeline d'une cyberattaque.

Il reste naturellement beaucoup de choses à découvrir au sujet de l'investigation numérique (forensic), des règles Sigma et de Zircolite. Néanmoins, le contenu de l'article devrait vous donner les bases de son utilisation, utiles pour l'étudier plus en profondeur et l'utiliser quotidiennement ou occasionnellement. Également, n'oubliez pas que Zircolite permet de traiter d'autres formats de journaux comme les journaux Sysmon for Linux, auditd, JSON, JSONL, etc... Même si cela n'a pas été traité dans l'article.

Au-delà de l'outil, cet article a permis de rappeler un grand nombre d'éléments concernant la sécurité d'un système unique ou de tout un système d'information : le durcissement des configurations pour permettre la journalisation des évènements importants de sécurité, la sauvegarde et centralisation de ces évènements, la capacité à pouvoir intervenir rapidement suite à une cyberattaque et commencer les premières investigations, etc.

N'hésitez pas à donner votre avis dans les commentaires ou sur notre Discord !

The post Comment effectuer une investigation numérique sur les journaux d’évènements Windows avec Zircolite ? first appeared on IT-Connect.

❌
❌