You are on page 1of 16

Monsieur Mohamed EL KASSIMI

TROUVER LE MOT DE PASSE SOUS MICROSOFT WINDOWS SAM OU ACTIVE DIRECTORY


Ce qui suit concerne :

Windows NT4 (station et serveur), Windows 2000 (professionnel et serveur), Windows XP (familial et professionnel), Windows 2003 en ce qui concerne l'effacement de mots de passe de comptes locaux

Windows 2000 (serveur) Windows 2003 en ce qui concerne l'effacement de mots de passe de comptes de domaine Ce n'est en aucune faon une incitation l'utilisation frauduleuse d'ordinateur, mais seulement la description de mthodes permettant un administrateur authentique de recouvrer la maitrise d'une machine aprs l'oubli de son mot de passe. Toutefois cela met en vidence la vulnrabilit d'un poste de travail ou serveur sous Windows (NT, 2000, XP, 2003). Donc, dans le cas o un ordinateur prsente un caractre "sensible", il faut avant toute chose le protger physiquement :

en l'enfermant dans un local protg en dfinissant un mot de passe suffisamment solide pour la configuration du BIOS en dsactivant le lecteur de disquette et de CDROM au niveau du BIOS

Introduction Compte local o Cration de la disquette

o o o

Cration du CDROM Mise en oeuvre

Compte de domaine (serveur de domaine) o Mthode applicable sous Windows 2000 et Windows 2003 Mthode applicable sous Windows 2000 uniquement

Introduction
La situation est assez classique : un poste de travail ou un serveur, sous Windows NT4, 2000, XP ou 2003, est reconfigurer (par exemple modification d'adresse IP), mais son utilisateur habituel a des droits insuffisants pour le faire. Naturellement (loi de Murphy!), cela arrive juste le jour o l'administrateur est absent, et l'utilisateur doit absolument pouvoir utiliser son PC en urgence! Deux cas seront distinguer, suivant qu'il s'agit de compte local (serveur ou station de travail) ou de compte de domaine (serveur de domaine).

Compte local
Les mots de passe des comptes locaux de tous les utilisateurs sont stocks, sous forme chiffre, dans une "ruche" de la Base de Registres, en l'occurrence le fichier SAM (Security Accounts Manager), et plus prcisment la branche HKEY_LOCAL_MACHINE\SAM\SAM\Domains\Account\Users Il faut donc pouvoir accder au fichier SAM (rpertoire %systemroot%\system32\config), mais dans le cas de partition NTFS, c'est impossible sous DOS ( moins d'utiliser des outils spcialiss payants, tels que ceux fournis par Winternals). On peut ventuellement accder une partition NTFS en installant un autre exemplaire de NT, ce qui est assez lourd et requiert de l'espace disque libre. Pas de panique! Il va suffire de dmarrer le PC sur une version (rduite) de LINUX (mais oui!), contenant un programme (chntpwd) qui sait accder la base de donnes SAM (Security Account Manager) situe dans la partition systme de NT, et

Administration Rseau

Page 1

Monsieur Mohamed EL KASSIMI


permettre ainsi de dfinir un nouveau mot de passe pour l'administrateur (ou n'importe quel autre utilisateur). Cette mthode diffre de celle employe dans des intentions "moins louables", qui consiste essayer de deviner le mot de passe, par essais successifs de mots prtablis (dictionnaires, lexiques,...) ou alatoires (technique dite "attaque en force brute").

Cette petite merveille, due Petter NORDHAL-HAGEN, est disponible gratuitement (sous licence GNU GPL) l'adresse suivante : http://home.eunet.no/~pnordahl/ntpasswd/

Depuis le 13/12/02, il est possible de dmarrer le PC sur CDROM, et non plus seulement sur disquette! On utilisera donc soit la version disquette, soit la version CDROM, suivant les priphriques disponibles sur le PC, tant donn que la version CDROM est plus pratique utiliser. Cette procdure fonctionne avec :

Windows NT4 (Station de travail et Serveur) Windows 2000 (Professionnel et Serveur) Windows XP (Edition Familiale et Professionnel) Windows 2003

Dans le cas des serveurs sous Windows 2000 et Windows 2003, la procdure s'applique :

aux serveurs autonomes (hors domaine) ou simples membres d'un domaine (non contrleurs de domaine) aux serveurs de domaine, mais dmarrs uniquement en mode de restauration Active Directory

Cration de la disquette
les versions (et noms) des fichiers tlcharger sont susceptibles d'voluer au cours du temps. Consulter le site de Petter Nordhal pour s'informer de la dernire version disponible. Le site http://ntpass.blaa.net/ permet aussi de tlcharger des versions prcdentes

1.

Tlcharger les fichiers suivants : o bd050303.zip (1.4 Mo) (sur ce site : bd050303.zip)

et ventuellement, en cas de disques SCSI ou SATA sc050303.zip (1.4 Mo) (sur ce site : sc050303.zip)

2.

Les dcompresser (avec Winzip, Winrar,...) , ce qui donne les fichiers suivants : o bd050303.bin (ou ventuellement une autre extension suivant les versions) le nom du fichier et son extension n'ont AUCUNE importance! Ce fichier est une image (binaire) de disquette bootable 1.44 Mo

rawrite2.exe C'est un utilitaire DOS (16 bits) servant copier secteur par secteur l'image sur une disquette. Il fonctionne sous DOS et toute version de Windows (9x, NT4, 2000, XP, 2003) install.bat C'est un script qui lance rawrite2 avec les paramtres appropris. un ensemble de fichiers xxxxx.o.gz (49 drivers SCSI dans la version actuelle)

o o

3.

Crer la disquette de boot Linux en excutant la commande install (depuis le dossier o on a install les fichiers) (sous DOS, Windows 9x , NT4, 2000, XP) :

Administration Rseau

Page 2

Monsieur Mohamed EL KASSIMI

R:\pwdnt\>install ########################################################## #### ## # Offline NT Password and Registry Editor Installation # # Version: bd050303 # # This installation creates a bootable floppy disk. # ## # Offline NT Password and Registry Editor must be booted # # from a floppy disk. # ## ########################################################## #### . RaWrite 2.0 - Write disk file to raw floppy diskette Enter target diskette drive: a Please insert a formatted diskette into drive A: and press -ENTER- : Number of sectors per track for this disk is 18 Writing image to drive A:. Press ^C to abort. Track: 05 Head: 0 quand c'es t f i n i , on peut l i r e :

Track: 79 Head: 1 Done. Done To run Offline NT Password and Registry Editor, leave the floppy in the drive an d reboot. Appuyez sur une touche pour continuer...

4.

(si "A" est la lettre du lecteur de disquette) cette disquette est au format FAT, donc accessible sous DOS ou Windows R:\PWDNT>dir a: Le volume dans le lecteur A n'a pas de nom. Le numro de srie du volume est 4227-71B9 Rpertoire de A:\ 03/03/2005 21:21 03/03/2005 21:21 03/03/2005 21:21 13/01/2005 21:43 26/02/2005 22:54 5 fichier(s) 0 Rp(s) 8 104 ldlinux.sys 1 724 boot.msg 423 051 initrd.gz 152 syslinux.cfg 949 300 vmlinuz 1 382 331 octets 73 728 octets libres

5.

Copier le cas chant le driver SCSI appropri xxxx.o.gz dans le rpertoire \scsi de la disquette

Cration du CDROM
le nom du fichier tlcharger est susceptible de changement au cours du temps. En cas de problme, soit se reporter au site de Petter Nordhal, soit tlcharger le fichier sur ce site.

1.

Tlcharger le fichier suivant : o cd060203.zip (2.7 Mo) (sur ce site : cd060203.zip) la version CDROM contient tous les fichiers ncessaires, SCSI et SATA compris. Elle est plus rcente que la disquette, en particulier au niveau des drivers.

2.

Le dcompresser (avec Winzip, Winrar,...), ce qui donne le fichier suivant : o cd060203.iso Ce fichier est une image ISO de CD bootable (norme "El Torito") Graver le CDROM partir du fichier .ISO l'aide d'un outil quelconque (NERO, CDRWIN,...) Exemple (ralis avec Nero Express) :

3.

Administration Rseau

Page 3

Monsieur Mohamed EL KASSIMI


o
Slectionner "Image de disque ou projet sauvegard"

Slectionner le type : Fichiers image (*.nrg,*.iso,*.cue) Slectionner le fichier image, ici cd040116.iso (suivant l'arrive de nouvelles versions, le nom de ce fichier est susceptible de varier)

Administration Rseau

Page 4

Monsieur Mohamed EL KASSIMI


Si tout est correct, insrer un CD vierge dans le graveur et appuyer sur Suivant

La gravure va s'effectuer Vu la taille rduite de l'image, cela est fait trs rapidement.

Mise en oeuvre
Cette version de LINUX est cense fonctionner avec un clavier de type QWERTY. Si on utilise un clavier AZERTY, il faudra penser modifier certaines frappes : Pour obtenir le caractre Il faut appuyer sur

IMPORTANT !

/ . !

! : <MAJ>&

Redmarrer le PC avec la disquette ou le CDROM obtenu prcdemment. Les messages de dmarrage de Linux apparaissent alors : Les rponses aux questions qui vont suivre sont prdfinies par dfaut. La plupart du temps, une action sur la touche <ENTRER> suffira.

Administration Rseau

Page 5

Monsieur Mohamed EL KASSIMI


Il est demand ensuite si on utilise des disques SCSI. Rpondre en consquence .

Puis la liste de toutes les partitions est affiche, suivie (ventuellem ent) de la liste des partitions NTFS. A l'invite de commande, la 1re des partitions NTFS bootable est prslection ne. Il est p.ex. : /dev/hdc1 , /dev/sda2, ... sachant que le nom est dfini ainsi : possible d'en changer 1er et 2me caractres : hd (disque IDE) ou sd (disque SCSI) (aussi bien NTFS que 3me caractre : a (1er disque), b (2me disque), ... (d est la limite pour les disques IDE) FAT) en donnant son nom complet 4me caractre : 1, 2, 3, 4, ... = le n de la partition sur le disque, en sachant que : : - les partitions primaires sont numrotes de 1 4 - les partions logiques sont numrotes partir de 5 (mme s'il n'y a qu'une seule partition primaire) Le programme essaie alors de monter la partition choisie, en essayant FAT puis NTFS comme type (ne pas tenir des messages d'erreurs ventuels). La liste des ruches s'affiche ensuite : Par dfaut, c'est la ruche SAM qui sera

Administration Rseau

Page 6

Monsieur Mohamed EL KASSIMI

concerne Une copie de la SAM est effectue. Il est alors demand ce que l'on veut faire. Par dfaut, le choix 1 permet d'diter les mots de passe.

La liste des comptes s'affiche : Il est demand de choisir le compte modifier (par dfaut le compte Administra teur) Des messages indiquant un verrouillage du compte peuvent apparatre. Rpondre y le cas chant afin que le compte soit dverrouill. Il est ensuite demand le nouveau de passe. Il est recommand de taper * afin de fixer un mot de passe vide.

Administration Rseau

Page 7

Monsieur Mohamed EL KASSIMI


Le programme demande confirmation . Taper y Taper ! si on n'a pas d'autre compte modifier Si on a termin les oprations, taper q Une nouvelle confirmation est demande (criture de la ruche) Taper y On peut demander l'criture d'un backup, (Taper y ) mais cela ne fonctionne pas toujours!

Aprs avoir retir le CD ou la disquette, redmarrer le PC en appuyant sur CTRL-ALT-DEL Windows redmarre, et on peut constater que le mot de passe a bien t modifi (ici aucun mot de passe)

J'ai test avec SUCCS cette procdure sous Windows 2000 Professionnel et Serveur, Windows XP , Windows 2003 sur plusieurs machines (et avec SYSKEY activ !)
Compte de domaine (serveur de domaine)

Administration Rseau

Page 8

Monsieur Mohamed EL KASSIMI


La procdure est un peu plus complexe. Les mots de passe des comptes de domaine ne sont plus stocks dans la base SAM (%systemroot%\system32\config\SAM), mais dans la base de donnes constitue par Active Directory (%systemroot%\NTFS\ntds.dit). En effet, la mthode de Petter NORDHAL expose prcdemment, qui ne concerne que le fichier SAM, ne peut pas s'appliquer sur cette base AD. Par contre, elle va servir mettre en place un outil qui lui va pouvoir redfinir le mot de passe d'un administrateur du domaine! Dans un 1er temps, on va l'utiliser pour rinitialiser le mot de passe du compte administrateur local de l'ordinateur. Se reporter aux paragraphes prcdents. Une fois que le mot de passe du compte administrateur local a t effac, on va utiliser ce compte pour dmarrer l'ordinateur. Mais un serveur ne permet pas, comme dans le cas d'une station de travail, lors de l'ouverture de session, de choisir une session locale. Dans cet exemple (sous XP PRO), on voit que l'utilisateur peut au choix ouvrir une session :

dans le domai ne "JCB" (AD) dans le domai ne JCBNT 4 (NT4) ou encore locale ment sur l'ordin ateur luimme.

Cette dernire option n'existe pas dans le cas d'un serveur de domaine : NT4

Administration Rseau

Page 9

Monsieur Mohamed EL KASSIMI


2000 2003

Mthode applicable sous Windows 2000 et Windows 2003

Cette mthode est inspire de celle de Daniel PETRI (MVP Windows Server System - Exchange Server) Je l'ai rendue automatique l'aide de scripts VBS et BAT

Dans le cas d'un serveur de domaine Windows 2000 ou Windows 2003, il faut le dmarrer en mode de rparation Active Directory (appuyer sur F8 pour faire apparaitre la liste complte des modes de dmarrage) :

On peut vrifier le mode de dmarrage :

Administration Rseau

Page 10

Monsieur Mohamed EL KASSIMI

On ouvre une session sous le compte administrateu r (local) dont le mot de passe a t effac par la mthode dcrite plus haut.

On peut vrifier que l'on est bien en session locale, et non pas dans le domaine :

En particulier, la variable d'environnemen t USERDOMAIN contient le nom NetBIOS de l'ordinateur et non pas le nom du domaine.

Administration Rseau

Page 11

Monsieur Mohamed EL KASSIMI


Il faut ensuite excuter l'excutable auto extractible setpwdadm.exe :

Le dossier de destination importe peu.

Aprs setpwdadm.vbs excution de ce fichier, on rcupre les fichiers suivants :

script VBS servant :

crer et installer automatiquement un service pwdadm (excut sous le compte SYSTEM) destin redfinir le mot de passe d'un compte administrateur. Ce service entrera en action lors du prochain redmarrage normal. crer un script stoppwdadm.bat destin arrter et dsinstaller le service prcdent. Ce script sera excut manuellement par l'administrateur au cours de la session ouverte aprs le prochain redmarrage normal.

inststrv.exe srvany.exe

utilitaire Microsoft d'installation d'une application quelconque en tant que service. utilitaire Microsoft rellement excut en tant que service

Pour plus de dtails sur le couple instsrv et srvany, se reporter au paragraphe qui leur est consacr la commande suivante est excute par le service pwdadm : cmd /k net user <account> <newpwd> /domain le service avec : pwdadm tant nom du compte administrateur dont on veut dfinir le mot de <account> lanc sous le passe compte <newpwd> nouveau mot de passe du compte SYSTEM, les privilges sont suffisants pour excuter la commande de modification de mot de passe ! Le script setpwdadm.vb s doit tre excut avec en paramtres le nom du compte et le nouveau mot de passe. Dans l'exemple, on dsire affecter le mot de passe "toto" au compte "Superadmin" On excute donc la commande : setpwdadm.vbs Superadmin toto

Administration Rseau

Page 12

Monsieur Mohamed EL KASSIMI

Ensuite on redmarre normalement le serveur, puis on ouvre une session sur le domaine, sous le compte SuperAdmin, avec le mot de passe toto prcdemment dfini

On constate que la session s'ouvre sans problme !


On peut vrifier que l'on est bien en session de domaine :

En particulier, la variable d'environnemen t USERDOMAIN contient le nom du domaine.

Administration Rseau

Page 13

Monsieur Mohamed EL KASSIMI


A l'aide de la MMC "Services.msc" , on peut vrifier aussi l'existence du service pwdadm et son tat dmarr.

On termine la procdure en excutant le script StopPwdAdm. bat, qui a t cr prcdemment par le script setpwdadm.vb s

Mthode applicable sous Windows 2000 uniquement


Comme dans la mthode prcdente, on dmarre Windows en mode Restauration Active Directory

Administration Rseau

Page 14

Monsieur Mohamed EL KASSIMI


Puis on ouvre une session sous le compte administrateur dont on aura effac le mot de passe. On ouvre Valeur REGEDIT afin Clef/entre de modifier dfinir certains cmd.exe paramtres du HKEY_USERS\.DEFAULT\Control Panel\Desktop\SCRNSAVE.EXE compte par HKEY_USERS\.DEFAULT\Control Panel\Desktop\ScreenSaveTimeOut 10 dfaut : Ainsi, lorsqu'aucune session n'est ouverte, l'conomiseur d'cran qui se dclenche au bout de 10 secondes d'inactivit est la console (fentre de commandes), et le compte en cours n'est autre que SYSTEM ! On redmarre normalement Windows, en s'abstenant d'ouvrir toute session ! On attend une dizaine de secondes, afin que l'conomiseur d'cran se dclenche, sous la forme d'une fentre console.

Cette console est ouverte sous le compte SYSTEM !

Depuis la fentre console, on excute alors la MMC dsa.msc (Utilisateurs et ordinateurs Active Directory) On a le droit de le faire, tant sous le compte SYSTEM

Administration Rseau

Page 15

Monsieur Mohamed EL KASSIMI


On peut alors modifier le mot de passe de n'importe quel compte de l'Active Directory, en particulier celui d'un compte administrate ur.

Cette mthode n'est pas utilisable sous Windows 2003 En effet, de nouveaux comptes "de service" sont apparus, en plus de SYSTEM :

LocalService NetworkService

Et c'est Localservice ( la place de System sous Windows 2000) qui est utilis lorsqu'aucune session n'est ouverte. Or Localservice n'a pas les privilges suffisants pour ouvrir la MMC dsa.msc

Administration Rseau

Page 16

You might also like