Category:Architecture/Windows/Registry
Jump to navigation
Jump to search
You are here: | Registry
|
Description
The registry database is the place where Windows stores information about the OS and the configuration. It is also used by applications, and by extension, malware, to store configuration information, and ensure persistence.
Structure
Root Keys and associated files
Root keys
The Windows Registry is split into 5 root keys:
- HKEY_LOCAL_MACHINE (a.k.a. HKLM)
- Stores settings that are global to the local machine
- HKEY_CURRENT_USER (a.k.a. HKCU)
- Stores settings specific to the current user
- HKEY_CLASSES_ROOT
- Stores information defining types
- HKEY_CURRENT_CONFIG
- Stores settings about the current hardware configuration, specifically differences beHKEY_LOCAL_MACHINE \SYSTEM : \system32\config\system
- HKEY_USERS
- Defines settings for the default user, new users, and current users
Note
Notice that HKEY_CURRENT_USER is actually a virtual key pointing to HKEY_USERS\SID, where SID is the security identifier of the user currently logged in.
Note
Some hives (e.g. HKLM\HARDWARE and HKLM\SYSTEM\Clone) are volatile and don't have associated files. The system creates and manages these hives entirely in memory; the hives are therefore temporary in nature. The system creates volatile hives every time the system boots.
Files
The Windows registry is stored as files, broken down as follows:
Root key | Subkey | File |
---|---|---|
HKEY_LOCAL_MACHINE | SYSTEM | \system32\config\system |
SAM | \system32\config\sam | |
SECURITY | \system32\config\security | |
SOFTWARE | \system32\config\software | |
HKEY_USERS | UserProfile | \winnt\profiles\username |
.DEFAULT | \system32\config\default |
Tools
Access the registry database
Windows uses the regedit.exe tool to manage the registry database.
On Linux, you can use FRED to open registry files or regshell to remotely request a registry database.
List autorun keys
Pages in category "Architecture/Windows/Registry"
The following 7 pages are in this category, out of 7 total.