The Windows Registry tab controls how SQLmap accesses and manipulates the Windows registry on target systems, enabling registry key reading, writing, and system configuration changes.
The Windows Registry tab contains three main sections:
Parameter: --reg-read
Description: Read a Windows registry key value
Behavior: Retrieves registry key data from the target system
Examples:
--reg-read="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
--reg-read="HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer"
--reg-read="HKLM\SYSTEM\CurrentControlSet\Services"
Use Cases:
Parameter: --reg-key=KEY_PATH
Description: Specify the registry key path to read
Format: HKEY\Path\To\Key
Examples:
--reg-key="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion"
--reg-key="HKCU\Software\Classes"
--reg-key="HKLM\SYSTEM\CurrentControlSet\Control"
Use Cases:
Parameter: --reg-val=VALUE_NAME
Description: Specify the registry value name to read
Examples:
--reg-val="ProductName"
--reg-val="InstallDate"
--reg-val="SystemRoot"
--reg-val="ProgramFilesDir"
Use Cases:
Parameter: --reg-write
Description: Write a value to a Windows registry key
Behavior: Modifies or creates registry entries
Examples:
--reg-write --reg-key="HKCU\Software\MyApp" --reg-val="Setting" --reg-data="Value"
--reg-write --reg-key="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" --reg-val="MyProgram" --reg-data="C:\program.exe"
Use Cases:
Parameter: --reg-data=DATA
Description: Data to write to the registry value
Examples:
--reg-data="C:\Windows\System32\cmd.exe"
--reg-data="1"
--reg-data="Enabled"
--reg-data="192.168.1.100"
Use Cases:
Parameter: --reg-type=TYPE
Description: Data type for the registry value
Supported Types:
Examples:
--reg-type=REG_SZ --reg-data="Hello World"
--reg-type=REG_DWORD --reg-data="1"
--reg-type=REG_BINARY --reg-data="DEADBEEF"
Use Cases:
Parameter: --reg-add
Description: Add a new registry key
Behavior: Creates new registry keys
Examples:
--reg-add --reg-key="HKCU\Software\NewApp"
--reg-add --reg-key="HKLM\SOFTWARE\Company\Product"
Use Cases:
Parameter: --reg-del
Description: Delete a registry key or value
Behavior: Removes registry entries
Examples:
--reg-del --reg-key="HKCU\Software\OldApp"
--reg-del --reg-key="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" --reg-val="Malware"
Use Cases:
Parameter: --reg-enum
Description: Enumerate registry keys and subkeys
Behavior: Lists registry key contents
Examples:
--reg-enum --reg-key="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
--reg-enum --reg-key="HKCU\Software"
Use Cases:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
HKLM\HARDWARE\DESCRIPTION\System
HKLM\SYSTEM\CurrentControlSet\Control
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall
HKLM\SOFTWARE\Classes\Installer\Products
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKCU\Software\Microsoft\Windows\CurrentVersion\Run
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies
HKCU\Software\Microsoft\Windows\CurrentVersion\Policies
HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy
HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer
HKCU\Software\Classes
HKCU\Software\Microsoft\Internet Explorer
Registry Key: HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion
Registry Value: ProductName
Generated Command:
sqlmap -u "http://example.com/page.php?id=1" --reg-read --reg-key="HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion" --reg-val="ProductName"
Registry Key: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall
Enumerate: ✓ Enabled
Generated Command:
sqlmap -u "http://example.com/admin.php?id=1" --reg-enum --reg-key="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall"
Registry Key: HKCU\Software\Microsoft\Windows\CurrentVersion\Run
Registry Value: MyApp
Registry Data: C:\Program Files\MyApp\app.exe
Registry Type: REG_SZ
Generated Command:
sqlmap -u "http://example.com/startup.php?id=1" --reg-write --reg-key="HKCU\Software\Microsoft\Windows\CurrentVersion\Run" --reg-val="MyApp" --reg-data="C:\Program Files\MyApp\app.exe" --reg-type=REG_SZ
Registry Key: HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile
Registry Value: EnableFirewall
Generated Command:
sqlmap -u "http://example.com/firewall.php?id=1" --reg-read --reg-key="HKLM\SYSTEM\CurrentControlSet\Services\SharedAccess\Parameters\FirewallPolicy\DomainProfile" --reg-val="EnableFirewall"
Registry Key: HKCU\Software\MyCompany\MyApp
Add Key: ✓ Enabled
Generated Command:
sqlmap -u "http://example.com/create.php?id=1" --reg-add --reg-key="HKCU\Software\MyCompany\MyApp"
Registry Key: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
Registry Value: OldProgram
Delete: ✓ Enabled
Generated Command:
sqlmap -u "http://example.com/cleanup.php?id=1" --reg-del --reg-key="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" --reg-val="OldProgram"
Registry Key: HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall
Enumerate: ✓ Enabled
Generated Command:
sqlmap -u "http://example.com/software.php?id=1" --reg-enum --reg-key="HKCU\Software\Microsoft\Windows\CurrentVersion\Uninstall"
Problem: Registry operations failing due to permissions Solutions:
Problem: Specified registry key doesn’t exist Solutions:
Problem: Registry data type mismatch Solutions:
Problem: Registry changes causing system issues Solutions:
Problem: Remote registry access not working Solutions:
Problem: Registry operations taking too long Solutions: