Outils pour utilisateurs

Outils du site


command-line:windows:registry

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
command-line:windows:registry [le 15/05/2020 à 13:01] – SID Yoskocommand-line:windows:registry [le 19/05/2020 à 08:40] (Version actuelle) – [Lecture de clé] Yosko
Ligne 49: Ligne 49:
 Les SID de tous les utilisateurs existants sur cette machine sont renseigné dans ''HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\''. Cela peut permettre de remonter à l'utilisateur à partir d'un SID lu dans ''HKU''. Les SID de tous les utilisateurs existants sur cette machine sont renseigné dans ''HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\''. Cela peut permettre de remonter à l'utilisateur à partir d'un SID lu dans ''HKU''.
  
 +=== TODO ===
 +FIXME
 +
 +HKLM\Software et HKCU\Software
 +
 +HKLM\Software\Microsoft\Windows\CurrentVersion et 
 +HKLM\Software\Microsoft\Windows NT\CurrentVersion
 ===== Manipulation en ligne de commande ===== ===== Manipulation en ligne de commande =====
 +Documentation officielle des commandes reg : https://docs.microsoft.com/fr-fr/windows-server/administration/windows-commands/reg
 +
 +==== Types de données ====
 +On appelle **clé** un dossier du registre. Une donnée, stockée sous forme d'association qu'on aurait d'habitude tendance à appeler "clé-valeur" est appelée ici "nom de valeur - données de valeur" (name-data).
 +
 +Voici les types de valeurs les plus courrants (pour une liste exhaustive, voir [[https://docs.microsoft.com/en-us/windows/win32/sysinfo/registry-value-types|la doc]]) :
 +
 +^ Désignation ^ Type ^ Exemples de valeurs ^
 +| REG_BINARY | données binaires |  |
 +| REG_DWORD | nombre (32 bits) | (en hexa) 0, 1, f2e |
 +| REG_QWORD | nombre (64 bits) | ::: |
 +| REG_SZ | texte | val1 |
 +| REG_MULTI_SZ | tableau de chaines | val1 \\ val2 \\ val3 |
 +| REG_LINK | chemin vers fichier |  |
 +
 +==== Lecture de clé/valeur ====
 +<code winbatch>
 +reg query HKLM\Software\Chemin\vers\la\clé
 +</code>
 +
 +==== Création/mise à jour de valeur ====
 +Base de la commande pour ajouter une nouvelle clé :
 +<code batch>
 +reg add HKLM\Software\chemin /v <valueName> /t <valueType> /d <valueData>
 +</code>
 +
 +Base de la commande pour forcer l'écrasement si elle existe déjà (= mettre à jour)
 +<code batch>
 +reg add HKLM\Software\chemin /v <valueName> /t <valueType> /d <valueData> /f
 +</code>
 +
 +Exemples :
 +<code batch>
 +reg add HKLM\Software\chemin /v maValeur /t REG_DWORD /d 2f /f
 +reg add HKLM\Software\chemin /v maValeur /t REG_SZ /d "valeur" /f
 +reg add HKLM\Software\chemin /v maValeur /t REG_MULTI_SZ /d "val1\0val2\0val3" /f
 +</code>
 +
 +==== Suppression de clé/valeur ====
 +Pour supprimer une clé (et toutes ses valeurs) :
 +<code batch>
 +reg delete HKLM\Software\chemin
 +</code>
 +Pour supprimer une valeur en particulier :
 +<code batch>
 +reg delete HKLM\Software\chemin /v maValeur
 +</code>
 +==== Charger la ruche d'un utilisateur ====
 +
 +<code winbatch>
 +reg load HKU\<user SID> C:\Users\<user name>\ntuser.dat
 +</code>
 +
 +Une fois les actions terminées, pour retirer cette clé "temporaire" du registre :
 +
 +<code winbatch>
 +reg unload HKU\<user SID>
 +</code>
 +
 +En soi, rien ne nous oblige d'utiliser le SID de l'utilisateur dans cet exemple, mais ça permet de rester sur le même schéma que ce que fait Windows lorsqu'un utilisateur est connecté.
 +
 +==== SID utilisateur ====
 +
 +Pour récupérer le SID d'un utilisateur :
 +<code winbatch>
 +WMIC useraccount where name="<user name>" get sid
 +</code>
command-line/windows/registry.1589547700.txt.gz · Dernière modification : le 15/05/2020 à 13:01 de Yosko