====== WINDOWS ====== ---- ==== WDS ==== {{ :wds.pdf |DOC WDS}} ---- ==== WSL MEMO ==== wsl --export Debian "%userprofile%\Documents\wsl-debian-$today.tar.gz" wsl --import Debian12 wsl.localhost "%userprofile%\Documents\wsl-debian180825.tar" PS> wsl -l Distributions du Sous-système Windows pour Linux : Debian (par défaut) Debian12 wsl -u user -d Debian12 wsl --set-default Debian12 wsl --unregister Debian ---- ==== ERREUR D'APPROBATION ==== === La méthode manuelle === La méthode manuelle est connue de beaucoup d'administrateur système. Elle fonctionne, mais elle n'est pas pratique, car elle nécessite de déconnecter la machine du réseau. Elle consiste à réaliser les actions suivantes sachant que l'objectif est de retirer la machine du domaine et de la réintégrer : 1 - Déconnecter l'ordinateur du réseau 2 - Se connecter en administrateur local 3 - Retirer l'ordinateur du domaine #Remove-Computer -UnjoinDomaincredential IT-Connect\Admin -PassThru -Verbose -Restart 4 - Réinitialiser l'objet ordinateur dans l'Active Directory 5 - Redémarrer l'ordinateur 6 - Reconnecter le câble réseau 7 - Ajouter l'ordinateur au domaine #Add-Computer -DomainName it-connect.local -Restart Le principal inconvénient de cette méthode, c'est qu'elle implique une présence physique. === La méthode PowerShell : Test-ComputerSecureChannel === Sur une machine où la relation d'approbation est cassée, il faut se connecter et exécuter simplement cette commande dans une console PowerShell : #Test-ComputerSecureChannel Il est également possible de cibler un contrôleur de domaine spécifique: #Test-ComputerSecureChannel -Server "SRV-ADDS.it-connect.local" Cette commande retourne simplement true (vrai) ou false (faux) pour indiquer l'état de la relation d'approbation entre l'ordinateur et l'annuaire (avec le paramètre -Verbose). Dans le cas où vous avez l'erreur de relation d'approbation, la commande retournera "false". De ce fait, il faudra ajouter le paramètre -Repair qui permet de réparer la relation d'approbation ainsi que les identifiants. #Test-ComputerSecureChannel -Repair -Credential florian@it-connect.local On peut aussi faire : #Test-ComputerSecureChannel -Repair -Credential (Get-Credential) En ce qui concerne le compte utilisateur, il peut s'agir d'un compte Administrateur ou tout simplement d'un compte qui a le droit d'ajouter des machines au domaine Active Directory. Puisque c'est du PowerShell, on peut aussi agir à distance sur une ou plusieurs machines avec Invoke-Command: #Invoke-Command -ComputerName PC-01 -ScriptBlock { Test-ComputerSecureChannel } Note : que ce soit avec cette méthode ou la méthode qui va suivre, si l'objet ordinateur n'existe pas dans l'Active Directory, il vaut mieux le créer avant. Avec la console "Utilisateurs et ordinateurs Active Directory" (ou une autre méthode), effectuez un clic droit "Nouveau" puis "Ordinateur". Attribuez le même nom. #Microsoft Learn - Test-ComputerSecureChannel === La méthode PowerShell bis : Reset-ComputerMachinePassword === Cette commande permet de réinitialiser le mot de passe du compte ordinateur de la machine locale. Là encore, cette commande s'exécute depuis l'ordinateur où se situe l'erreur. Voici comment s'utilise cette commande : #Reset-ComputerMachinePassword -Credential florian@it-connect.local On peut également préciser le nom du contrôleur de domaine cible : #Reset-ComputerMachinePassword -Credential florian@it-connect.local -Server "SRV-ADDS.it-connect.local" L'opération sera automatique, ce n'est pas à vous de définir le mot de passe. Cette méthode permet aussi de corriger l'erreur d'approbation. #Microsoft Learn - Reset-ComputerMachinePassword ---- ==== DESACTIVATION SERVICE MAPSBROCKER POWERSHELL ==== Désactivation service MapsBroker dans powershell: #Get-Service -Name MapsBroker | Set-Service -StartupType Disabled -Confirm:$false ---- ==== Check liste VSS ==== Dans une cmd, éxécutez la commande suivante : #vssadmin list writers Pour qu'une sauvegarde VSS fonctionne correctement, toutes les étapes suivantes doivent être effectuées. * Les services VSS Windows doivent être en cours d'exécution. Allez dans services.msc. Les services Windows suivants doivent être configurés sur Démarrage manuel : Fournisseur de cliché instantané de logiciel Microsoft Copie instantanée de volume * Le service Windows suivant doit être configuré sur Démarrage automatique et exécuté : Service système d'événements COM+ ---- ===== CMD IMPRIMANTE ===== rundll32 printui.dll, PrintUIEntry /il [[https://www.it-connect.fr/windows-comment-installer-une-imprimante-par-gpo/|GPO déployement imprimante]] Script Powershell pour vider spooler impression: Stop-Service Spooler Remove-Item "C:\Windows\System32\spool\PRINTERS\*.*" -Force Start-Service Spooler ---- ===== ISO WINDOWS SERVER ROCKDELL DANS VMWARE ===== Ajouter la ligne suivante dans fichier VMX de la VM: smbios.reflectHost = TRUE ---- ===== PROBLEME MISE A JOUR ===== #sfc /scannow #DISM /Online /Cleanup-Image /RestoreHealth #reboot services Windows update (WUAUSERV) #voir suppression dossier => C:\$WinREAgent ---- ===== MYSQL WINDOWS/XAMPP ===== voir: https://www.it-connect.fr/wamp-sauvegarder-une-base-de-donnees-avec-mysqldump/ Pour vérifier si MYSQL tourne: net start | findstr mysql => sinon services.msc Pour se connecter avec CMD: C:\Users\Administrateur>c:\xampp\mysql\bin\mysql.exe -u root -p Enter password: ********* Pour voir les différentes bases: MariaDB [(none)]> show databases; +--------------------+ | Database | +--------------------+ | glpi | | grr | | information_schema | | mysql | | performance_schema | | phpmyadmin | | test | +--------------------+ 7 rows in set (0.00 sec) Pour un dump dans une CMD: C:\Users\Administrateur>c:\xampp\mysql\bin\mysqldump.exe -u root -p glpi > e:\glpidump.sql Enter password: ********* Pour plusieurs db: C:\xampp\mysql\bin\mysqldump.exe -u root -p --databases database_name_a database_name_b > databases_a_b.sql Pour toutes les db: C:\xampp\mysql\bin\mysqldump.exe -u root -p --all-databases > exported_dbs.sql Pour sortir du prompt: exit ou quit ou \c Pour backup plusieurs fichiers en cmd: "C:\Program Files\7-Zip\7z.exe" a -ttar -so -an "e:\glpidumptest.sql" | "C:\Program Files\7-Zip\7z.exe" a -si e:\"glpi_%DATE:~0,2%.%DATE:~3,2%.%DATE:~6,4%_%time:~0,2%.%time:~3,2%.tar.gz" Pour un seul fichier: "C:\Program Files\7-Zip\7z.exe" a e:\"glpi_%DATE:~0,2%.%DATE:~3,2%.%DATE:~6,4%_%time:~0,2%.%time:~3,2%.tgz" "e:\glpidumptest.sql" ---- ===== VERIF HASH DONWLOAD ===== Dans une cmd: certutil -hashfile fichier_à_vérifier.iso md5 Pour comparer les hash: if "hash1" == "hash2" echo true Si le résultat=true => le hash est ok ---- ===== FICHIER HOSTS ===== Pour accéder au fichier hosts (service DNS en local) : C:\windows\system32\drivers\etc\hosts Script changement fichier hosts: @echo off set nom1=nom_d_hote set ip1=IP_HOTE set nom2=nom_d_hote set ip2=IP_HOTE set nom3=nom_d_hote set ip3=IP_HOTE set chem="C:\Windows\System32\drivers\etc\hosts" for /f %%i in ('findstr /c:"%nom1%" %chem%') do (exit) copy %chem% "C:\Windows\System32\drivers\etc\hosts.bak" /y attrib -r %chem% echo. >> %chem% echo. >> %chem% echo %ip1% %nom1% >> %chem% echo. >> %chem% echo %ip2% %nom2% >> %chem% echo. >> %chem% echo %ip3% %nom3% >> %chem% attrib +r %chem% ---- ===== LECTEUR RESEAU ===== Se connecter à un partage réseau en cmd: #net use \\UNC /USER: => net use \\Mac-PC\test /USER:demo toto Par défaut la connexion est persistante, le paramètre /persistent peut-être utilisé à no pour la rendre non persistance. Ce paramètre existe aussi en raccourci avec /p ce qui nous donne: #net use \\Mac-PC\test /USER:demo toto /p:no Comment créer un lecteur réseau avec net use: #net use lettre: \\UNC /USER: => net use Z: \\Mac-PC\test /USER:demo toto Lister les connexions et lecteurs réseaux: #net use Déconnecter un lecteur réseau: #net use z: /delete Par défaut, le lecteur réseau n’est pas persistant ainsi au prochain redémarrage de la session utilisateur, il ne sera pas monté. Il est tout à fait possible de créer un lecteur réseau qui se monte automatiquement au démarrage de la session utilisateur. Pour cela, il faut utiliser le paramètre /p mais aussi enregistré les informations de connexion avec le paramètre /savecred. Ce qui nous donne : #net use Z: \\Mac-PC\test /USER:demo toto /p:yes /savecred Terminer une connexion à un partage: #net use \\Mac-PC\test /delete ou pour tout supprimer => net use * /delete ---- ===== TEST D'UNE CONNEXION AVEC POWERSHELL / CMD ===== Dans PS: #Test-Netconnection -Computername 10.210.64.30 -Port 1556 ou #tnc 10.210.64.30 -p 443 Dans CMD: #telnet 192.9.200.86 2222 De plus, exemple d'analyse de packet SMB avec "pktmon" dans PS ou CMD: [[https://rickardnobel.se/pktmon-the-native-windows-packet-capture-tool-part-1/|tuto pktmon]] pktmon filter add -p 445 pktmon filter list pktmon start --etw -m real-time control + c => pour stopper capture pktmon filter remove Vérifier ports ouverts: #netstat -bafon|findstr LISTENING ou ESTABLISHED ---- ===== EQUIVALENT WHEREIS DANS PS ===== PS C:\Users\k.laurancy> gcm appli_cherchée.exe {{ :ps_gcm.png |}} ---- ===== GODMOD ===== Pour afficher godmod, créer nouveau dossier sur bureau et copier: GodMode.{ED7BA470-8E54-465E-825C-99712043E01C} ---- ===== TABLE DE ROUTAGE / NETSTAT ===== Pour afficher la table de routage : route print ou netstat -r Pour ajouter une route valable jusqu'au reboot: route add 192.168.25.0 MASK 255.255.255.0 gateway_IP Pour ajouter une route permanente: route -p add 192.168.25.0 MASK 255.255.255.0 gateway_IP Pour effacer une route : route delete destination_network Statistiques interface réseau: netstat -e La ligne erreur est intéressante, car elle indique, si l’interface rencontre des erreurs. Si c’est le cas, cela est anormale, surtout si le nombre est élevé. La liste des connexions en attente: netstat -ano|find /i "LISTENING" Fonctionne avec: LISTENING, ESTABLISHED, CLOSE_WAIT, TIME_WAIT, FIN_WAIT Pour visualiser les statistiques par protocole, vous devez utiliser la commande : netstat -s La partie fragmentation, si trop nombreuses ou avec des erreurs, peut indiquer un mauvais réglage MTU. __Le moniteur de ressources de Windows offre les mêmes informations et même bien plus.__ ---- ===== NSLOOKUP DNS ===== Les enregistrements SOA (Start of Authority) et NS donnent des informations importantes sur un domaine, notamment le serveur DNS faisant autorité sur la zone, mais aussi le contact, le TTL par défaut, etc... #nslookup -type=soa kenny.ovh Serveur : one.one.one.one Address: 1.1.1.1 C:\Windows\System32>nslookup -type=soa kenny.ovh Serveur : halley.saint-aubin.fr Address: 192.9.200.201 Réponse ne faisant pas autorité : kenny.ovh primary name server = dns102.ovh.net responsible mail addr = tech.ovh.net serial = 2025021400 refresh = 86400 (1 day) retry = 3600 (1 hour) expire = 3600000 (41 days 16 hours) default TTL = 60 (1 min) dns102.ovh.net internet address = 213.251.188.146 dns102.ovh.net AAAA IPv6 address = 2001:41d0:1:4a92::1 Nous pouvons obtenir une information similaire avec la lecture de l'enregistrement NS : #nslookup -type=ns it-connect.tech Serveur : one.one.one.one Address: 1.1.1.1 Réponse ne faisant pas autorité : kenny.ovh nameserver = ns102.ovh.net kenny.ovh nameserver = dns102.ovh.net Différents types d'enregistrement: A,CNAME,MX,NS,PTR,TXT... lister tous les contrôleurs de domaine d'un domaine AD avec nslookup: #nslookup domain.local Pour aller plus loin et obtenir des informations plus précises, notamment avec les noms, il faut consulter un enregistrement de type SRV plus spécifique et stocké dans la zone DNS de votre domaine Active Directory : #nslookup -type=SRV _ldap._tcp.domain.local ---- ===== GPO ===== [[https://www.dell.com/support/kbdoc/fr-be/000135060/procedures-de-depannage-des-erreurs-de-traitement-des-strategies-de-groupe-dans-un-domaine-active-directory|dépannage GPO]] Pour actualiser une GPO sur un client : gpupdate /force Pour visualiser les GPO actives sur un client : rsop.msc pour les GPO utilisateur et rsop.msc en admin pour les GPO ordinateur Après avoir installer LGPO.EXE: Pour backup conf GPO => LGPO.exe /b path [/n GPO-name] Pour importer conf GPO => LGPO.exe /g path_of_backup ---- ===== CMD ===== [[https://www.sos-informatique13.com/astuces/informatique/liste-de-commandes-executer-windows-10|COMMANDES]] Utiliser avec CMD puis #start "commande" [[https://www.malekal.com/liste-commandes-invite-de-commandes-windows/|COMMANDES MALEKAL]] [[https://ss64.com/nt/syntax-settings.html|AUTRES COMMANDES]] | Pour accéder à ancien panneau de contrôle | control | | Pour accéder aux cartes réseaux | ncpa.cpl | | Pour connaitre add MAC | getmac /V | | Pour accéder aux users | lusrmgr.msc ou netplwiz | | Pour accéder aux users | net user | | Pour déverrouiller users | net user "user name" /active:yes | | Pour ajouter un user | net user name_user passwd_user /add ( ou * pour aucun mdp) | | Pour ajouter un user ds groupe admin | net localgroup Administrateurs [Utilisateur] /add | | Pour effacer user | net user /del name_user | | Pour accéder à la config système | msconfig | | Pour accéder aux certif | certmgr.msc | | Pour accéder aux GPO | gpedit.msc | | Pour accéder au registre | regedit | | Pour créer une console gestion de serveur | mmc.exe | | Pour une connexion distante | mstsc.exe ou dans une console cmd: mstsc /v:nom_du_serveur /f | | Pour la gestion des services | services.msc | | Pour accéder aux journaux d’évenements | Eventvwr.exe ou eventvwr.msc | | Pour voir le cache DNS | ipconfig /displaydns | | Pour le vider | ipconfig /flushdns | | Pour renouveller l’ip en DHCP | ipconfig /release puis ipconfig /renew | | Pour se connecter en local lors d’une invite de log dans un domaine | .\”nom d’utilisateur” | | Pour afficher un lecteur caché ($) | \\chemin_lecteur\C$ | | Pour obtenir la date du dernier reboot d’un serveur windows taper dans une cmd | net statistics workstation | | Pour afficher info CPU | wmic cpu get caption, deviceid, name, numberofcores, maxclockspeed, status | | Pour break/pause ds script | timeout /nobreak /T 15 | ---- ===== CMD TACHE PLANIFIEE ===== Pour créer une tache: #SCHTASKS.EXE /CREATE /SC ONLOGON /TN "PB reseau" /TR "%userprofile%\Desktop\ethernet.bat" /RU "NT AUTHORITY\SYSTEM" Pour en exécuter une: #SCHTASKS /RUN /TN "Backup" === OPTIONS: === | Option | Description | | /CREATE | Crée une nouvelle tâche planifiée. | | /DELETE | Supprime une tâche planifiée. | | /QUERY | Affiche les tâches planifiées sur un ordinateur. | | /CHANGE | Modifie une tâche planifiée existante. | | /RUN | Exécute une tâche planifiée immédiatement. | | /END | Arrête une tâche en cours d’exécution. | | /ENABLE | Active une tâche planifiée désactivée. | | /DISABLE | Désactive une tâche planifiée. | | /S | Spécifie un ordinateur distant. | | /U | Spécifie le nom d’utilisateur pour l’ordinateur distant. | | /P | Spécifie le mot de passe pour l’ordinateur distant. | | /SC | Spécifie le type de planification (MINUTE, HOURLY, DAILY, WEEKLY, MONTHLY, ONCE, ONSTART, etc.) | | /TN | Spécifie le nom de la tâche. | | /TR | Spécifie le programme ou le script à exécuter. | | /ST | Spécifie l’heure de début de la tâche au format HH. | | /RI | Spécifie l’intervalle de répétition en minutes. | | /I | Spécifie le délai d’inactivité en minutes après lequel la tâche doit s’exécuter. | ---- ===== PSEXEC ===== [[https://www.it-connect.fr/psexec-un-outil-incontournable-pour-les-sysadmins/|psexec_IT-CONNECT]] [[https://download.sysinternals.com/files/PSTools.zip|Download pstools]] exemple commande: #psexec \\ #PsExec \\srv-adds-01,srv-apps ipconfig #psexec -s -i regedit on peut élever ses privilèges pour utiliser le compte SYSTEM : #psexec -s \\srv-adds-01 powershell.exe ou #psexec \\srv-adds-01 hostname -u it-connect.local\administrateur -p MonSuperMotDePasse Exécuter un programme en mode interactif sur une machine, c'est-à-dire que l'interface du programme sera visible par l'utilisateur final. Pour cela, on peut utiliser l'option "-i"; #psexec \\srv-adds-01 -i notepad.exe PsExec est capable d'exécuter des programmes et d'ouvrir une console PowerShell sur une machine distante: #psexec \\srv-adds-01 powershell -Command Get-ChildItem C:\Partage\ Pour exécuter un script, c'est le même principe que l'exemple précédent sauf que l'on va remplacer -Command par -File: #psexec \\srv-adds-01 powershell -File "\\PC-01\c$\Partage\script.ps1" -ExecutionPolicy Bypass ---- ===== GESTION CARTE RESEAU CMD ===== Lister les interfaces réseau disponible: netsh int show int netsh interface ip show config Activer carte réseau ou wifi: #netsh int set int name="NomCarteReseau" admin=enable Conf static: netsh interface ip set address "Wi-Fi" static 192.168.5.50 255.255.255.0 192.168.5.254 Définir le DNS primaire 8.8.8.8 sur l'interface réseau connexion au réseau local: netsh int ip set dnsservers "Connexion au réseau local" static 1.1.1.3 primary (Remplacer connexion au réseau local par le nom de l'interface que vous souhaitez modifier 1.1.1.3 par l’adresse IP du dns voulut) Définit le DNS secondaire sur l'ip 1.0.0.3: netsh int ip add dns "Connexion au réseau local" 1.0.0.3 2 (Le 2 à la fin veut dire 2éme dns et il est possible d'en définir un 3éme 4éme dns...) Récupérer l'ip dynamique fourni par votre DHCP: netsh int ip set dnsservers "Wi-Fi" dhcp Réinitialiser la configuration réseau: netsh int ip reset ---- ===== CLE WINDOWS ===== Pour afficher la clè: wmic path softwarelicensingservice get OA3xOriginalProductKey Pour obtenir les infos: slmgr /dli OU: slmgr /dlv Supprimer la clé: slmgr /upk Supprimer du registre: slmgr /cpky Insérer ou changer la clé: slmgr /ipk #####-#####-#####-#####-##### Activer la licence en ligne: slmgr.vbs /ato Activer hors-ligne: slmgr.vbs /dti puis appeler service microsoft Puis: slmgr.vbs /atp ACTIVATIONID Pour vérif: slmgr.vbs /dlv Pour Office: cscript "C:\Program Files\Microsoft Office\Office15\OSPP.VBS" /dstatus cscript "C:\Program Files\Microsoft Office\Office15\OSPP.VBS" /unpkey:XXXXX cscript "C:\Program Files\Microsoft Office\Office15\OSPP.VBS" /inpkey:XXXXX ---- ===== ACTIVATION VM WINDOWS ===== === Activation VM SRV2016 avec ISO évaluation === Etape 1 : Machine arrêté, faites un clic droit dessus  modifier les paramètres  Onglet Options VM Déployer « Avancé » et appuyer sur « Modifier la configuration » Cliquer sur ajouter un paramètre. Dans la colonne « clé » renseignez : SMBIOS.reflectHost Dans la colonne « Valeur » renseignez : TRUE Etape 2 : Dans la VM, avec une commande administrateur, lancez la commande : DISM /online /Set-Edition:ServerStandard /ProductKey:XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /AcceptEula Cela passe l’os de la version evaluation à la version standard en l’activant avec la clé renseigné à la place des XXXXX. === Installation+Activation VM SRV2016 avec ISO DELL ROK === L’installation de l’OS ne fonctionnera pas sans cette modification. Machine arrêté, faites un clic droit dessus  modifier les paramètres  Onglet Options VM Déployer « Avancé » et appuyer sur « Modifier la configuration » Cliquer sur ajouter un paramètre. Dans la colonne « clé » renseignez : SMBIOS.reflectHost Dans la colonne « Valeur » renseignez : TRUE Vous pouvez désormais lancer l’installation normalement, la VM s’activera correctement ---- ==== BYPASS CLOUD ACCOUNT ==== Pour bypasser le compte cloud à l'instal de windows: FAIRE shift+F10 puis, #reg add HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\OOBE /v BypassNRO /t REG_DWORD /d 1 /f #shutdown /r /t 0 Ou: #oobe\bypassnro.cmd Ou: #start ms-cxh:localonly ---- ===== Comment résoudre les problèmes de verrouillage de compte/Réplication dans Active Directory ===== | [[https://serverspace.io/fr/support/help/how-to-troubleshoot-account-lockout-issues-in-active-directory/|account-lockout-issues-directory]] | [[https://www.manageengine.com/products/active-directory-audit/how-to/how-to-enable-netlogon-logging.html|netlogon]] | | [[https://www.tutos.eu/6618|heure + poste connexion user]] | [[https://hichamkadiri.wordpress.com/tag/ad-replication-status-tools/|Réplication]] | | [[https://learn.microsoft.com/fr-fr/troubleshoot/windows-client/windows-tss/gather-information-using-tss-ad-replication|Réplication 2]] | [[https://www.virtualizationhowto.com/2023/06/ad-replication-status-tool-new-open-source-alternative/|Réplication 3]] | {{ :code_ad_connexion.png?nolink&600 |{{ :code_ad_connexion.png?nolink&400 |}} === Causes possibles du verrouillage de l'utilisateur dans Active Directory === Cette situation existe dans les entreprises qui ont une politique de verrouillage de compte lorsqu'un certain nombre de mots de passe incorrects sont entrés, c'est correct du point de vue de la cybersécurité car cela aide à se protéger contre les attaques par force brute. Certaines des principales causes de blocage sont : • Mappage constant des lecteurs avec d'anciennes informations d'identification • Appareils mobiles utilisant des services d'entreprise avec d'anciennes informations d'identification • Comptes de service utilisant des mots de passe mis en cache qui ont été modifiés lors de la maintenance • Tâches planifiées avec des mots de passe obsolètes • Programs en utilisant des mots de passe mis en cache qui ont été modifiés • Sessions Terminal Server déconnectées • Problèmes avec la réplication Active Directory • Paramètres de stratégie de domaine mal configurés • Activité malveillante, telle qu'une attaque par force brute de mot de passe. === Où configurer la stratégie de verrouillage de compte === Ouvrez l'éditeur de stratégie de groupe et créez une nouvelle stratégie, nommez-la, par exemple Stratégie de verrouillage de compte, à droite cliCochez-le et sélectionnez "Modifier". • Réglez le temps jusqu'à ce que le compteur de verrouillage se réinitialise à 30 minutes • Le seuil de verrouillage est de 5 erreurs de connexion • Durée du verrouillage du compte - 30 minutes. Fermer, appliquer la politique et exécuter gpupdate /force sur la machine cible === Comment savoir pourquoi le compte a été verrouillé === Maintenant que la politique est activée, nous devons déterminer la cause du verrouillage du compte et de quel ordinateur ou appareil il provient. Afin de répondre à cette question, vous devez configurer une stratégie d'audit spéciale pour suivre les événements pertinents à partir desquels vous pourrez déterminer la cause du verrouillage. Ce type d'audit n'est pas configuré par défaut. Ouvrez à nouveau l'éditeur de stratégie de groupe (gpmc.exe), créez une stratégie d'audit, ouvrez-la et suivez : Configuration ordinateur -> Stratégies -> Windows Configuration -> Paramètres de sécurité -> Stratégie locale -> Stratégie d'audit Nous devons activer l'audit de connexion, cette stratégie génère les événements 4771 et 4624. Définissons-le sur "Succès et échec". Nous devons également définir la stratégie d'audit des événements de connexion sur "Succès et échec" ainsi que sur "Audit de gestion de compte" pour voir les événements 4740. Forcer une mise à jour de la politique et exécuter gpudate /force sur la machine cible. Quels événements suivre dans le journal de sécurité Une entrée d'informations d'identification incorrecte génère l'événement 4740, sur tous les contrôleurs de domaine. Avec les codes d'échec Kerberos : • - 6 - Le nom d'utilisateur n'existe pas • - 12 - Limite de temps de connexion • - 18 - Compte désactivé, désactivé ou expiré • - 23 - Mot de passe utilisateur expiré • - 24 - Échec de la pré-authentification (mot de passe erroné) • - 32 - Billet expiré • - 37 - L'heure de l'ordinateur n'était pas synchronisée avec l'heure du domaine Codes d'erreur NTLM : • - 3221225572 - C0000064 - Ce nom d'utilisateur n'existe pas • - 3221225578 - C000006A - Nom d'utilisateur correct, mais mot de passe incorrect • - 3221226036 - С0000234 - Ce compte utilisateur est bloqué • - 3221225586 - C0000072 - Compte désactivé • - 3221225583 - C000006E - L'utilisateur tente de se connecter en dehors de la période spécifiée • - 3221225584 - С0000070 - Limitation du poste de travail • - 3221225875 - С0000193 - Compte expiré • - 3221225585 - 0000071 - Mot de passe expiré • - 3221226020 - C0000224 - L'utilisateur doit changer de mot de passe lors de sa prochaine connexion === Comment enquêter sur la cause du verrouillage du compte === Ouvrez le journal des événements et accédez à "Sécurité", c'est là que les ID d'événement sont collectés, ce qui peut aider à déterminer la raison du verrouillage. Il y a beaucoup d'événements, alors filtrez-les avec "Filtrer le journal actuel", cela nous permettra de sélectionner uniquement les événements que nous voulons. Dans le champ "Enregistré", spécifiez la période de temps, dans le champ ID d'événement, spécifiez 4740 et clicochez "Ok" Utilisez la recherche (Rechercher) pour trouver le nom du compte recherché, dans les enregistrements filtrés. Enfin, les événements doivent être filtrés par le login spécifié avec le code 4740, où l'on peut trouver la raison du verrouillage. Par exemple, le champ "Nom de l'ordinateur de l'appelant" contient le nom de l'ordinateur d'où proviennent les échecs de connexion qui provoquent le blocage.natéd. Ensuite, vous devez vous rendre sur l'ordinateur cible et y inspecter les journaux d'événements pour déterminer pourquoi cette machine tente de se connecter avec des informations d'identification non valides. Il existe d'autres raisons pour le verrouillage qui peuvent être trouvées dans les événements 4740 tels que le nom du serveur Exchange dans le "Nom de l'ordinateur de l'appelant" - cela signifie que le problème vient d'Outlook, le courrier mobile client ou son calendrier. Pour enquêter sur ce verrouillage, vous devez examiner le IIS se connecte au serveur Exchange. Ou vous pouvez également utiliser la commande Get-ActiveSyncDeviceStatistics dans PowerShell pour voir le problème avec les appareils mobiles. === Microsoft ALTools === Microsoft dispose de son propre outil pour vous aider à résoudre les problèmes de verrouillage de compte - Microsoft Account Lockout and Management Tool (AlTools.exe). Télécharger l'état de verrouillage du compte (LockoutStatus.exe) à partir du centre de téléchargement officiel Microsoft Cet outil affiche des informations sur un compte verrouillé avec son état d'utilisateur et le temps de verrouillage sur chaque contrôleur de domaine et vous permet de le déverrouiller par droit-clisur le compte correspondant. Exécutez LockoutStatus.exe> Fichier> Sélectionner la cible> Entrez le nom du compte et le domaine> OK Il vous montrera tous les statuts liés au verrouillage pour ce compte. === Outil EventCombMT === L'outil EventCombMT collecte des événements spécifiques de plusieurs serveurs différents dans un emplacement central. Exécutez EventCombMT.exe> Droite-click Sélectionnez pour rechercher > Sélectionnez Obtenir les contrôleurs de domaine dans le domaine > Sélectionnez les contrôleurs de domaine à rechercher. - Click Recherches > Recherches intégrées > Verrouillages de compte. === Autres causes de verrouillage de compte d'utilisateur === Si le problème de verrouillage est causé par Google Workspaces services (Gmail, Gdrive...), les journaux indiqueront que les échecs de connexion proviennent de l'ordinateur WORKSTATION. Des détails sur le verrou peuvent également être consultés dans l'événement 4771. Vous y trouverez les codes Kerberos décrits ci-dessus et l'adresse IP de l'appareil d'où proviennent les échecs de connexion. Si le "Nom de l'ordinateur de l'appelant" de l'événement 4770 et Client Adresse 4771 sont vides, cela signifie que vous êtes très probablement brutalisé ! Pour connaître la source des échecs de connexion dans ce cas, vous devez activer le débogage "netlogon" et consulter ses journaux. Netlogon est un Windows Server processus qui authentifie les utilisateurs et les autres services du domaine. Activez la journalisation Netlogon : Démarrer > Exécuter > saisissez : nltest /dbflag:2080ffffff net stop netlogon net start netlogon Après le redémarrage du service Netlogon, l'activité correspondante peut être enregistrée dans %windir%/debug/netlogon.log ou voir %SYSTEMROOT%\debug\netlogon.log {{ :netlogon_code.png?nolink&600 |}} Vous pouvez également analyser les journaux Netlogon à l'aide d'un script : cd %SYSTEMROOT%\debug\ type netlogon.log |find /i "0xC000006A" > failedpw.txt type netlogon.log |find /i "0xC0000234" > lockedusr.txt Avertissement! N'oubliez pas de désactiver Netlogon après avoir enregistré les événements, car les performances du système peuvent être un peu lentes en raison du processus de débogage et il utilisera un disque supplémentaire. space. Désactiver la journalisation Netlogon : Démarrer > Exécuter > tapez : nltest /dbflag:0 Dans les journaux, vous pouvez trouver les adresses IP des ordinateurs qui ne sont pas affichées dans les journaux d'événements, il peut s'agir de serveurs de terminaux ou RDP postes de travail soumis à une attaque brutale par mot de passe. Revenons au journal des événements de sécurité. Un autre événement utile avec le code d'événement 4776 est également l'endroit où vous pouvez trouver le poste de travail auquel vous essayez de vous connecter. Si l'adresse IP dans vos journaux est inconnue, vous pouvez rechercher l'adresse mac sur le serveur DHCP ou sur votre équipement réseau et découvrir le fabricant de l'adresse mac avec des services spéciaux, qui peuvent être facilement trouvés sur Internet. Ceci est utile lorsque les connexions échouées proviennent d'un smartphone ou d'une tablette. Une autre chose utile serait d'examiner l'événement 4625, vous y trouverez le processus qui provoque le verrouillage du compte. Utilisez Process Hacker ou Process Monitor pour voir les informations d'identification des processus actifs. Windows Le planificateur de tâches peut être le problème du verrouillage - il peut y avoir une tâche configurée pour s'exécuter à l'aide d'un compte dont le mot de passe a changé. Il peut y avoir des informations d'identification stockées sur la machine locale, qui peuvent être trouvées comme ceci : Démarrer > Exécuter > rundll32 keymgr.dll, KRShowKeyMgr Ou Netplwiz : Démarrer > Exécuter > tapez : netplwiz > OK Click l'onglet Avancé, puis click Gestion des mots de passe. Une session Terminal Server avec des informations d'identification obsolètes peut entraîner un verrouillage. Pour désactiver un RDP session, exécutez les commandes suivantes sur la ligne de commande (Win+R > "cmd"), en remplaçant "server_ip", "name" et "password" par les informations d'identification requises net use \\server_ip /USER:name password Cela vous permet de vous connecter à un serveur distant sans utiliser RDP. query session /server:servername/IP OU BIEN query user /server:servername/IP Remplacez "nom" par le nom du serveur. Ici, vous obtenez l'identifiant de session. reset session id /server:server_ip OU BIEN logoff IDsession /server:server_IP Cela met fin à la session active sur le serveur distant. Pour envoyer un message au user (obtenu avec query session /server:servername) connecté: msg "user" /server:servername coucou Le blocage de compte peut être causé par la réplication AD lorsqu'une mise à jour de mot de passe n'a pas été répliquée sur tous les contrôleurs de domaine. Pour forcer la réplication, exécutez la commande suivante sur votre DC : repadmin /syncall /AdeP ---- ===== RECHERCHE EXPLORATEUR WINDOWS ===== {{ :recherche_windows.png?direct&600 |}}