2013
08.28

En fait sous windows, l’administrateur n’a pas tout les droits comme l’utilisateur root chez UNIX.

Même en tant qu’admin, le renommage ou la modification d’un fichier requière les bons droits. Pour pouvoir attribuer des droits, il faut soit être propriétaire, soit avoir les droits d’écriture.

Toutes les manipulations sont faites en tant qu’administrateur. Si votre explorer est planté, vous pouvez voir le billet précédent. Sinon trouvez cmd.exe (c:\windows\system32\cmd.exe), cliquez le avec le bouton droit et cliquez lancer en tant qu’administrateur.
Essayons de renommer la calculatrice:

C:\Windows\system32>ren calc.exe calc2.exe
Accès refusé.

On n’y arrive pas. Regardons de plus près.

C:\Windows\system32>dir /Q calc*
Le volume dans le lecteur C n'a pas de nom.
Le numéro de série du volume est 8C90-057B
Répertoire de C:\Windows\system32
20/11/2010 23:29 776 192 NT SERVICE\TrustedInstacalc.exe
1 fichier(s) 776 192 octets
0 Rép(s) 3 083 681 792 octets libres
C:\Windows\system32>icacls calc*
calc.exe BUILTIN\Administrateurs:(RX)
AUTORITE NT\Système:(RX)
BUILTIN\Utilisateurs:(RX)
NT SERVICE\TrustedInstaller:(F)
1 fichiers correctement traités ; échec du traitement de 0 fichiers

On a le droit de lecture et d’exécution et le propriétaire est TrustedInstaller. Oui microsoft a plus de droit que vous.

Donc on devient propriétaire du fichier.

C:\Windows\system32>takeown /F calc.exe

Du coup, on a le droit de changer les droits :

C:\Windows\system32>icacls calc.exe /grant:r Administrateurs:(F)

Maintenant, on a le droit de déplacer/renommer ce fichier.

C:\Windows\system32>ren calc.exe calc2.exe

Observons le résultat :

C:\Windows\system32>dir /Q calc*
Le volume dans le lecteur C n'a pas de nom.
Le numéro de série du volume est 8C90-057B
Répertoire de C:\Windows\system32
20/11/2010 23:29 776 192 toto-PC\toto calc2.exe
1 fichier(s) 776 192 octets
0 Rép(s) 3 083 681 792 octets libres
C:\Windows\system32>icacls calc*
calc2.exe BUILTIN\Administrateurs:(F)
AUTORITE NT\Système:(RX)
BUILTIN\Utilisateurs:(RX)
NT SERVICE\TrustedInstaller:(F)
1 fichiers correctement traités ; échec du traitement de 0 fichiers

Maintenant, je vous montre comment faire machine arrière :

C:\Windows\system32>ren calc2.exe calc.exe
C:\Windows\system32>icacls calc.exe /setowner "NT Service\TrustedInstaller"
C:\Windows\system32>icacls calc.exe /grant:r Administrateurs:(RX)

On retrouve l’état de départ.

C:\Windows\system32>dir /Q calc*
Le volume dans le lecteur C n'a pas de nom.
Le numéro de série du volume est 8C90-057B
Répertoire de C:\Windows\system32
20/11/2010 23:29 776 192 NT SERVICE\TrustedInstacalc.exe
1 fichier(s) 776 192 octets
0 Rép(s) 3 083 681 792 octets libres
C:\Windows\system32>icacls calc*
calc.exe BUILTIN\Administrateurs:(RX)
AUTORITE NT\Système:(RX)
BUILTIN\Utilisateurs:(RX)
NT SERVICE\TrustedInstaller:(F)
1 fichiers correctement traités ; échec du traitement de 0 fichiers

right2

Toute cette manipulation cumulée avec celle du billet précédent est équivalente à la commande UNIX suivante.

sudo mv calc.exe calc2.exe

Qui a dit que windows était simple d’utilisation ?