NewSID v 4.10

Par Mark Russinovich

Publication : 1er novembre 2006

Remarque : NewSID a été mis hors service et n’est plus disponible au téléchargement. Consultez le billet de blog de Mark Russinovich : mise hors service de NewSID et mythe de duplication de SID de machine

IMPORTANT

En ce qui concerne les SID, Microsoft ne prend pas en charge les images préparées à l’aide de NewSID, nous ne prenons en charge que les images préparées à l’aide de SysPrep. Microsoft n’a pas testé NewSID pour toutes les options de clonage de déploiement.

Pour plus d’informations sur la politique officielle de Microsoft, consultez l’article suivant de la base de connaissances :

Introduction

De nombreuses organisations utilisent le clonage d’image de disque pour effectuer des déploiements en masse de Windows. cette technique implique la copie des disques d’un ordinateur Windows entièrement installé et configuré sur les lecteurs de disque d’autres ordinateurs. Ces autres ordinateurs semblent avoir été traités par le même processus d’installation et peuvent être utilisés immédiatement.

Bien que cette méthode permette de gagner des heures de travail et de tracas sur d’autres approches de mise en œuvre, elle pose le problème majeur que chaque système cloné possède un identificateur de sécurité (SID) d’ordinateur identique. Ce fait compromet la sécurité dans les environnements de groupe de travail, et la sécurité des supports amovibles peut également être compromise dans les réseaux avec plusieurs SID d’ordinateur identiques.

la demande de la communauté Windows a poussé plusieurs entreprises à développer des programmes capables de modifier le SID d’un ordinateur après le clonage d’un système. Toutefois, Ghost Walker de logiciels changeur de SID de Symantec n’est vendu que dans le cadre du produit haut de gamme de chaque société. En outre, ils s’exécutent à partir d’une invite de commandes DOS (le changeur Altiris est similaire à NewSID).

NewSID est un programme que nous avons développé et qui modifie le SID d’un ordinateur. Il est gratuit et est un programme Win32, ce qui signifie qu’il peut être facilement exécuté sur des systèmes précédemment clonés.

Veuillez lire cet article entier avant d’utiliser ce programme.

Informations sur la version :

  • la Version 4,0 introduit la prise en charge de Windows XP et du serveur .net, une interface de style assistant, vous permet de spécifier le SID que vous souhaitez appliquer, le compactage du registre, ainsi que la possibilité de renommer un ordinateur (ce qui entraîne une modification des noms NetBIOS et DNS).
  • La version 3,02 corrige un bogue dans lequel NewSid ne copie pas correctement les valeurs par défaut avec des types de valeur non valides lors du changement de nom d’une clé avec un ancien SID en nouveau SID. NT utilise en fait ces valeurs non valides à certains moments du SAM. Le symptôme de ce bogue est lié à des messages d’erreur indiquant que l’accès a été refusé lorsque les informations de compte ont été mises à jour par un utilisateur autorisé.
  • La version 3,01 ajoute une solution de contournement pour une clé de Registre inaccessible qui est créée par Microsoft Transaction Server. Si la solution NewSID est fermée prématurément.
  • La version 3,0 introduit une fonctionnalité de synchronisation SID qui indique à NewSID d’obtenir un SID à appliquer à partir d’un autre ordinateur.
  • La version 2,0 a une option de mode automatique et vous permet également de modifier le nom de l’ordinateur.
  • La version 1,2 corrige un bogue dans, qui a été introduit dans 1,1 où certains descripteurs de sécurité du système de fichiers n’ont pas été mis à jour.
  • La version 1,1 corrige un bogue relativement mineur qui affectait uniquement certaines installations. Elle a également été mise à jour pour modifier les SID associés aux paramètres d’autorisation des partages de fichiers et d’imprimantes.

Clonage et autres méthodes de déploiement

l’une des méthodes les plus populaires pour effectuer des déploiements de masse Windows (généralement des centaines d’ordinateurs) dans les environnements d’entreprise est basée sur la technique de clonage de disque. Un administrateur système installe le système d’exploitation de base et le logiciel complémentaire utilisé dans l’entreprise sur un ordinateur modèle. Après la configuration de l’ordinateur pour le fonctionnement dans le réseau d’entreprise, les outils de duplication de disque ou de système automatisés (tels queGhostde Symantec,lecteur d’imagesde PowerQuestet Altiris «RapiDeploy») sont utilisés pour copier les lecteurs de l’ordinateur de modèle sur des dizaines ou des centaines d’ordinateurs. Ces clones reçoivent ensuite des modifications finales, telles que l’affectation de noms uniques, puis sont utilisés par les employés de la société.

une autre méthode de déploiement courante consiste à utiliser l’utilitaire Microsoft sysdiff (qui fait partie du Kit de ressources Windows). Cet outil requiert que l’administrateur système effectue une installation complète (généralement une installation sans assistance avec script) sur chaque ordinateur, puis Sysdiff automatise l’application des images d’installation du logiciel complémentaire.

Étant donné que l’installation est ignorée et que la copie sur le secteur des disques est plus efficace que la copie de fichiers, un déploiement cloné peut économiser des dizaines d’heures sur une installation Sysdiff comparable. En outre, l’administrateur système n’a pas besoin d’apprendre à utiliser une installation sans assistance ou Sysdiff, ou de créer et déboguer des scripts d’installation. Ce seul économise les heures de travail.

Problème de duplication de SID

Le problème de clonage est qu’il n’est pris en charge par Microsoft que dans un sens très limité. Microsoft a déclaré que le clonage de systèmes est pris en charge uniquement s’il est terminé avant que la partie GUI de installation de Windows soit atteinte. Lorsque l’installation atteint ce point, l’ordinateur reçoit un nom et un SID d’ordinateur unique. Si un système est cloné après cette étape, les machines clonées auront toutes des SID d’ordinateurs identiques. Notez que la simple modification du nom de l’ordinateur ou de l’ajout de l’ordinateur à un domaine différent ne modifie pas le SID de l’ordinateur. La modification du nom ou du domaine modifie uniquement le SID du domaine si l’ordinateur a été précédemment associé à un domaine.

Pour comprendre le problème que le clonage peut provoquer, il est tout d’abord nécessaire de comprendre comment les SID sont attribués à des comptes locaux individuels sur un ordinateur. Les SID des comptes locaux se composent du SID de l’ordinateur et d’un RID ajouté (identificateur relatif). Le RID commence à une valeur fixe et est augmenté d’une unité pour chaque compte créé. Cela signifie que le deuxième compte sur un ordinateur, par exemple, se voit attribuer le même RID que le deuxième compte d’un clone. Le résultat est que les deux comptes ont le même SID.

Les SID dupliqués ne sont pas un problème dans un environnement basé sur un domaine dans la mesure où les comptes de domaine ont des SID basés sur le SID de domaine. Toutefois, selon l’article de la base de connaissances Microsoft Q162001, « ne pas dupliquer le disque des versions installées de Windows NT », dans un environnement de groupe de travail, la sécurité est basée sur les SID des comptes locaux. Ainsi, si deux ordinateurs ont des utilisateurs avec le même SID, le groupe de travail ne peut pas faire la distinction entre les utilisateurs. Toutes les ressources, y compris les fichiers et les clés de Registre, auxquelles un utilisateur a accès, le reste également.

Une autre instance où des SID dupliqués peuvent provoquer des problèmes est l’endroit où se trouvent des supports amovibles au format NTFS, et les attributs de sécurité de compte local sont appliqués aux fichiers et aux répertoires. Si un tel support est déplacé vers un autre ordinateur ayant le même SID, les comptes locaux qui ne sont pas en mesure d’accéder aux fichiers peuvent être en mesure de faire en sorte que leurs ID de compte correspondent à ceux des attributs de sécurité. Cela n’est pas possible si les ordinateurs ont des SID différents.

Une marque d’article, intitulée «options de déploiement NT » , a été publiée dans le numéro de juin de Windows NT Magazine. Il aborde le problème de SID en double plus en détail et présente l’attitude officielle de Microsoft en matière de clonage. Pour voir si vous avez un problème de SID dupliqué sur votre réseau, utilisez PsGetSid pour afficher les SID de l’ordinateur.

NewSID

NewSID est un programme que nous avons développé pour modifier le SID d’un ordinateur. Il génère tout d’abord un SID aléatoire pour l’ordinateur et poursuit la mise à jour des instances du SID d’ordinateur existant qu’il trouve dans le registre et dans les descripteurs de sécurité de fichiers, en remplaçant les occurrences par le nouveau SID. NewSID requiert des privilèges d’administrateur pour s’exécuter. Il a deux fonctions : la modification du SID et la modification du nom de l’ordinateur.

Pour utiliser l’option d’auto-exécution de NewSID , spécifiez « /a » sur la ligne de commande. Vous pouvez également lui demander de modifier automatiquement le nom de l’ordinateur en incluant le nouveau nom après le commutateur « /a ». Exemple :

NewSID/a [NouveauNom]

Si vous souhaitez que NewSID s’exécute sans invite, changez le nom de l’ordinateur en « NEWNAME » et redémarrez l’ordinateur si tout se passe bien.

Remarque : Si le système sur lequel vous souhaitez exécuter NewSID exécute IISADMIN, vous devez arrêter le service IISAdmin avant d’exécuter NewSID. Utilisez cette commande pour arrêter le service IISAdmin : net stop iisadmin/y

La fonctionnalité de synchronisation SID de NewSIDvous permet de spécifier que, au lieu de générer de manière aléatoire une, le nouveau SID doit être obtenu à partir d’un autre ordinateur. Cette fonctionnalité permet de déplacer un contrôleur de domaine secondaire (BDC) vers un nouveau domaine, dans la mesure où la relation entre un BDC et un domaine est identifiée par le même SID d’ordinateur que les autres contrôleurs de domaine (DC). Il vous suffit de choisir le bouton « synchroniser les SID » et d’entrer le nom de l’ordinateur cible. Vous devez disposer d’autorisations pour modifier les paramètres de sécurité des clés de registre de l’ordinateur cible, ce qui signifie généralement que vous devez être connecté en tant qu’administrateur de domaine pour utiliser cette fonctionnalité.

Notez que lorsque vous exécutez NewSID pour augmenter la taille du Registre, assurez-vous que la taille maximale du Registre peut s’adapter à la croissance. Nous avons constaté que cette croissance n’a aucun impact perceptible sur les performances du système. La raison pour laquelle le registre augmente est qu’il est fragmenté, car les paramètres de sécurité temporaires sont appliqués par NewSID. Lorsque les paramètres sont supprimés, le registre n’est pas compacté.

Important : Notez que bien que nous ayons entièrement testé NewSID, vous devez l’utiliser à vos propres risques. Comme pour tout logiciel qui modifie les paramètres de fichier et de Registre, il est vivement recommandé de sauvegarder complètement votre ordinateur avant d’exécuter NewSID.

Déplacement d’un BDC

Voici les étapes à suivre lorsque vous souhaitez déplacer un BDC d’un domaine à un autre :

  1. Démarrez le BDC que vous souhaitez déplacer et connectez-vous. Utilisez NewSID pour synchroniser le SID du BDC avec le contrôleur de domaine principal du domaine vers lequel vous souhaitez déplacer le BDC.
  2. Redémarrez le système pour lequel vous avez modifié le SID (le BDC). Étant donné que le domaine auquel le BDC est maintenant associé a déjà un contrôleur de domaine principal actif, il démarre en tant que contrôleur secondaire dans son nouveau domaine.
  3. le bdc s’affichera en tant que station de travail dans Gestionnaire de serveur. utilisez le bouton « ajouter au domaine » pour ajouter le bdc à son nouveau domaine. Veillez à spécifier la case d’option BDC lors de l’ajout.

Fonctionnement

NewSID commence par lire le SID de l’ordinateur existant. Le SID d’un ordinateur est stocké dans la ruche sécurité du Registre sous SECURITY\SAM\Domains\Account. Cette clé a une valeur nommée F et une valeur nommée V. La valeur V est une valeur binaire pour laquelle le SID d’ordinateur est incorporé à la fin de ses données. NewSID s’assure que ce SID est dans un format standard (sous-autorités de 3 32 bits précédées de champs d’autorité 3 32 bits).

Ensuite, NewSID génère un nouveau SID aléatoire pour l’ordinateur. La génération de NewSIDprend de bonnes difficultés pour créer une valeur de 96 bits véritablement aléatoire, qui remplace les 96 bits des 3 valeurs de sous-autorité qui composent un SID d’ordinateur.

Trois phases de remplacement du SID de l’ordinateur suivent. Dans la première phase, les ruches de Registre Security et Sam sont analysées pour rechercher les occurrences de l’ancien SID de l’ordinateur dans les valeurs de clés, ainsi que les noms des clés. Lorsque le SID est trouvé dans une valeur, il est remplacé par le nouveau SID de l’ordinateur et, lorsque le SID est trouvé dans un nom, la clé et ses sous-clés sont copiées dans une nouvelle sous-clé portant le même nom, sauf si le nouveau SID remplace l’ancien.

Les deux dernières phases impliquent la mise à jour des descripteurs de sécurité. Les clés de Registre et les fichiers NTFS sont associés à la sécurité. les descripteurs de sécurité se composent d’une entrée identifiant le compte propriétaire de la ressource, quel groupe est le propriétaire du groupe principal, une liste facultative d’entrées qui spécifient les actions autorisées par les utilisateurs ou les groupes (appelé liste de Access Control discrétionnaire-DACL) et une liste facultative d’entrées qui spécifient les actions effectuées par certains utilisateurs ou groupes pour générer des entrées Access Control List-SACL). Un utilisateur ou un groupe est identifié dans ces descripteurs de sécurité par son SID, et comme je l’ai dit précédemment, les SID des comptes d’utilisateur locaux (autres que les comptes intégrés tels qu’administrateur, invité, etc.) sont composés du SID de l’ordinateur plus un RID.

La première partie des mises à jour de descripteur de sécurité se produit sur tous les fichiers du système de fichiers NTFS sur l’ordinateur. Chaque descripteur de sécurité est analysé pour rechercher les occurrences du SID de l’ordinateur. Lorsque NewSID en trouve un, il le remplace par le nouveau SID de l’ordinateur.

La deuxième partie des mises à jour de descripteur de sécurité est effectuée sur le registre. Tout d’abord, NewSID doit s’assurer qu’il analyse toutes les ruches, pas seulement celles qui sont chargées. Chaque compte d’utilisateur dispose d’une ruche de Registre qui est chargée en tant que HKEY_CURRENT_USER lorsque l’utilisateur est connecté, mais reste sur le disque dans le répertoire de profil de l’utilisateur quand ce n’est pas le cas. NewSID identifie les emplacements de tous les emplacements des ruches utilisateur en énumérant la clé de HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProfileList , qui pointe vers les répertoires dans lesquels ils sont stockés. Il les charge ensuite dans le registre à l’aide de RegLoadKey sous HKEY_LOCAL_MACHINE et analyse l’intégralité du Registre, en examinant chaque descripteur de sécurité dans la recherche de l’ancien SID de l’ordinateur. Les mises à jour sont effectuées de la même façon que pour les fichiers et, lorsque l’utilisateur a terminé, il décharge les ruches utilisateur qu’il a chargées. Comme dernière étape, NewSID analyse la clé de HKEY_USERS , qui contient la ruche de l’utilisateur actuellement connecté, ainsi que le. Hive par défaut. Cela est nécessaire, car une ruche ne peut pas être chargée à deux reprises. par conséquent, la ruche de l’utilisateur connecté n’est pas chargée dans HKEY_LOCAL_MACHINE lorsque NewSID charge d’autres ruches utilisateur.

Enfin, NewSID doit mettre à jour les sous-clés ProfileList pour faire référence aux nouveaux SID de compte. Cette étape est nécessaire pour que Windows NT associe correctement les profils aux comptes d’utilisateur une fois les SID de compte modifiés pour refléter le nouveau SID de l’ordinateur.

NewSID s’assure qu’il peut accéder à tous les fichiers et à toutes les clés de Registre du système et les modifier en lui accordant les privilèges suivants : système, sauvegarde, restauration et appropriation.