Enquête : échec d'authentification SMB entre VM clonées (workgroup)
Enquête sur SMB distant impossible après clonage sans OOBE
Contexte — TP SupportLab (Mission 4, jalon 3-4). Symptôme initial rencontré par toute la classe (17 postes) : impossible de se connecter à un partage SMB entre deux VM Windows 11 clonées, « mot de passe réseau incorrect » (erreur 86), alors que les mêmes comptes/mots de passe fonctionnent en session locale. Environnement reproduit sur deux VM : CLIENT (192.168.10.144) et SERVER (192.168.10.143), clonées de la même image, sans sysprep.
1. Tests réalisés et résultats#
# | Test | Commande / méthode | Résultat | Enseignement |
|---|---|---|---|---|
1 | Identité des machines |
| Hostnames et IP distincts, SID machine identique ( | Clonage sans généralisation confirmé |
2 | Session locale avec chaque compte | Ouverture de session interactive | OK sur les deux VM | SAM, LSASS et mots de passe sains |
3 | Accès SMB par nom |
| Erreur 86 | Échec d'authentification réseau |
4 | Résolution de nom |
| Résout la bonne IP (192.168.10.143, via mDNS) | Résolution innocentée |
5 | Accès SMB par IP |
| Erreur 86 aussi | Confirme : pas un problème de résolution |
6 | Journal serveur, échecs |
|
| Refus AVANT comparaison du mot de passe |
7 | Contrôle du sous-état | Faute de frappe | Sous-état | Le serveur SAIT produire des sous-codes précis → le 0x0 est significatif |
8 | Mot de passe vide ? |
| Toujours erreur 86, sous-état 0x0 | Théorie « mot de passe vide + LimitBlankPasswordUse » réfutée |
9 | Compte témoin |
| Erreur 86, sous-état 0x0 | Blocage machine-niveau, indépendant des comptes |
10 | Bouclage SERVER→SERVER |
| Erreur 5 (accès refusé = authentification RÉUSSIE, refus d'autorisation C$) | Le serveur valide sa propre auth : NTLM local sain |
11 | Stratégies LSA/NTLM |
| Identiques et par défaut des deux côtés | Aucun durcissement hérité de l'image ; les « resets » suggérés par une IA ne visaient rien |
12 | Configuration SMB |
| Signature exigée des deux côtés, SMB1 off, invité off — symétrique | Négociation SMB hors de cause |
13 | Capture réseau (échec) |
| Négociation OK → CHALLENGE émis → AUTHENTICATE rejeté | Le rejet tombe au traitement du 3e message NTLM, message pourtant irréprochable |
14 | Comparaison MachineID NTLM | Extraction du champ | CLIENT | Théorie « réflexion NTLM par MachineID dupliqué » réfutée — le MachineID n'est pas cloné |
15 | Pare-feu CLIENT | Capture des SYN sans réponse sur 445 entrant | Règle | Cause de l'erreur 67 dans le sens SERVER→CLIENT (problème annexe, corrigé) |
16 | Contre-épreuve : sysprep |
| 4624 : ouverture de session RÉUSSIE (NTLM V2, clé 128 bits, support.tech depuis CLIENT), nouveau SID machine | Une seule variable changée (identité machine régénérée) → authentification rétablie |
2. Théories éliminées (avec la preuve qui les tue)#
- SAM/LSASS corrompus — réfuté par les sessions locales fonctionnelles (test 2) et le bouclage réussi (test 10).
- Résolution de nom / mauvaise machine jointe — réfuté par le test par IP (test 5) et les 4625 bien générés côté SERVER (test 6).
LmCompatibilityLevelincompatible — réfuté : valeur par défaut, identique, jamais déviée (test 11).- Mot de passe vide bloqué en réseau — réfuté par le retest avec mot de passe frais horodaté (test 8).
- Problème lié à un compte précis — réfuté par le compte témoin post-clonage (test 9).
- Réflexion NTLM via MachineID dupliqué — réfuté par la capture : MachineID différents avant sysprep (test 14).
3. Conclusion#
Cause racine : identité machine dupliquée par le clonage des VM sans sysprep /generalize — dont le marqueur observable est le SID machine identique. En workgroup, l'authentification NTLM entre deux clones échoue côté serveur avec STATUS_LOGON_FAILURE (0xC000006D) et un sous-état vide (0x0), avant toute comparaison de mot de passe, quel que soit le compte utilisé. Les sessions locales et le bouclage restent fonctionnels, ce qui rend le symptôme trompeur (« mot de passe incorrect » alors que le mot de passe n'est jamais évalué).
Correctif validé : sysprep /generalize sur une seule des deux machines suffit à rétablir l'authentification (démontré par le 4624 post-sysprep). Prévention : toujours généraliser une image avant de la cloner.
Réserve d'honnêteté : sysprep régénère le SID machine et d'autres secrets d'identité locale en un seul geste ; la formulation rigoureuse est donc « identité machine clonée », le SID identique en étant le marqueur de détection fiable (whoami /user).
4. Réflexes à retenir (transposables en entreprise)#
- Un droit/un accès ne se lit pas, il se teste — et un échec d'authentification se diagnostique par le sous-état du 4625 côté serveur :
0xC000006A= mot de passe comparé et rejeté ;0xC0000064= compte inconnu ;0x0= refus hors comparaison (stratégie/identité machine). - Erreur 5 ≠ erreur 86 : la 86 est un échec d'authentification, la 5 un refus d'autorisation — donc une authentification réussie. Savoir situer l'étage qui rejette évite d'élargir des droits au hasard.
whoami /userdétecte le clonage en 5 secondes (SID machine identique = image non généralisée).- Souder
hostname;aux commandes sur des machines jumelles : cinq erreurs de fenêtre dans cette seule enquête. Astuce :function prompt { "[$env:COMPUTERNAME] PS $($pwd)> " }dans$PROFILE. - Chaque modification doit produire sa preuve immédiate (
PasswordLastSet,Get-LocalGroup, « 1 fichiers traités ») avant le test suivant — trois « commandes fantômes » ont pollué cette enquête. - Un correctif qui échoue ne se rejoue pas à l'identique (boucle des « resets » de LmCompatibilityLevel) : exiger un critère de vérification avant toute modification, y compris quand c'est une IA qui la propose.
- Méfiance envers les variables confondantes : sysprep corrige plusieurs choses à la fois ; c'est la capture réseau (MachineID différents) qui a permis d'isoler la bonne.
Commentaires (0)
Aucun commentaire pour l'instant. Ouvrez le bal.
Laisser un commentaire