Windows SmartScreen Registry Key for Execution Blocks
Windows Defender SmartScreen protects systems by flagging and restricting the execution of unrecognized or malicious applications. Administrators can manage whether SmartScreen displays a bypassable warning, enforces a strict block, or remains disabled by modifying specific keys in the Windows Registry (Regedit). This guide details the exact registry location, value names, and configuration settings required to control SmartScreen execution behavior across Windows.
The Primary Registry Key for SmartScreen Execution Behavior
The core registry path responsible for system-wide SmartScreen execution behavior and warning blocks is located under the policy settings for Windows Explorer:
Registry Path:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System
Key Configuration Values
Within this key, the primary string value that dictates execution block behavior is:
- Value Name:
ShellSmartScreenLevel - Value Type:
REG_SZ(String Value)
The behavior of the execution prompt depends on the string data
assigned to ShellSmartScreenLevel:
Block: Strictly prevents users from bypassing the SmartScreen prompt. Users will not see the “Run anyway” option for unrecognized or untrusted software.Warn: Displays the standard SmartScreen warning dialog, but allows users to manually bypass the block by clicking “More info” followed by “Run anyway”.Off: Disables SmartScreen evaluation entirely for file execution in Windows Explorer.
Additional Related Setting: EnableSmartScreen
To ensure the policy takes effect, some versions of Windows also reference the following DWORD value in the same registry path:
- Value Name:
EnableSmartScreen - Value Type:
REG_DWORD - Values:
1= SmartScreen is enabled.0= SmartScreen is disabled.
How to Apply the Settings in Regedit
- Press
Win + R, typeregedit, and press Enter to launch the Registry Editor. - Navigate to
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System. If theSystemkey does not exist underWindows, right-clickWindows, select New > Key, and name itSystem. - Right-click in the right pane, select New > String
Value, and name it
ShellSmartScreenLevel. - Double-click
ShellSmartScreenLeveland set the Value data toBlock(to prevent overrides) orWarn(to allow execution overrides). - Click OK and restart the computer or restart the Windows Explorer process to apply the changes.