Cis Win2019.yml
Cis Win2019.yml
policy:
id: "cis_win2019"
file: "cis_win2019.yml"
name: "CIS Benchmark for Windows Server 2019 RTM "
description: "This document provides prescriptive guidance for establishing a
secure configuration posture for Microsoft Windows Server 2019."
references:
- https://www.cisecurity.org/cis-benchmarks/
requirements:
title: "Check that the Windows platform is Windows Server 2019 RTM"
description: "Requirements for running the CIS benchmark under Windows Server
2019 RTM"
condition: all
rules:
- 'r:HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion -> ProductName ->
r:^Windows Server 2019'
checks:
###############################################
# 1 Account Policies
###############################################
###############################################
# 1.1 Password Policy
###############################################
###############################################
# 2 Local Policies
###############################################
###############################################
# 2.3 Security Options
###############################################
# 2.3.1.4 Accounts: Limit local account use of blank passwords to console logon
only (Scored)
- id: 16502
title: "Ensure 'Accounts: Limit local account use of blank passwords to console
logon only' is set to 'Enabled'"
description: "This policy setting determines whether local accounts that are
not password protected can be used to log on from locations other than the physical
computer console. If you enable this policy setting, local accounts that have blank
passwords will not be able to log on to the network from remote client computers.
Such accounts will only be able to log on at the keyboard of the computer. The
recommended state for this setting is: Enabled."
rationale: "Blank passwords are a serious threat to computer security and
should be forbidden through both organizational policy and suitable technical
measures. In fact, the default settings for Active Directory domains require
complex passwords of at least seven characters. However, if users with the ability
to create new accounts bypass your domainbased password policies, they could create
accounts with blank passwords. For example, a user could build a stand-alone
computer, create one or more accounts with blank passwords, and then join the
computer to the domain. The local accounts with blank passwords would still
function. Anyone who knows the name of one of these unprotected accounts could then
use it to log on."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Accounts: Limit local account
use of blank passwords to console logon only."
compliance:
- cis: ["2.3.1.4"]
- cis_csc: ["16"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
references:
- 'CCE-37615-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ->
LimitBlankPasswordUse -> 1'
# 2.3.2.1 Audit: Force audit policy subcategory settings (Windows Vista or later)
to override audit policy category settings (Scored)
- id: 16503
title: "Ensure 'Audit: Force audit policy subcategory settings (Windows Vista
or later) to override audit policy category settings' is set to 'Enabled'"
description: "This policy setting allows administrators to enable the more
precise auditing capabilities present in Windows Vista. The Audit Policy settings
available in Windows Server 2003 Active Directory do not yet contain settings for
managing the new auditing subcategories. To properly apply the auditing policies
prescribed in this baseline, the Audit: Force audit policy subcategory settings
(Windows Vista or later) to override audit policy category settings setting needs
to be configured to Enabled. The recommended state for this setting is: Enabled.
*Important*: Be very cautious about audit settings that can generate a large volume
of traffic. For example, if you enable either success or failure auditing for all
of the Privilege Use subcategories, the high volume of audit events generated can
make it difficult to find other types of entries in the Security log. Such a
configuration could also have a significant impact on system performance."
rationale: "Prior to the introduction of auditing subcategories in Windows
Vista, it was difficult to track events at a per-system or per-user level. The
larger event categories created too many events and the key information that needed
to be audited was difficult to find."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Audit: Force audit policy
subcategory settings (Windows Vista or later) to override audit policy category
settings."
compliance:
- cis: ["2.3.2.1"]
- cis_csc: ["6.2"]
- pci_dss: ["2.2.3"]
- nist_800_53: ["CM.1"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["CC5.2"]
references:
- 'CCE-37850-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ->
SCENoApplyLegacyAuditPolicy -> 1'
# 2.3.2.2 Audit: Shut down system immediately if unable to log security audits
(Scored)
- id: 16504
title: "Ensure 'Audit: Shut down system immediately if unable to log security
audits' is set to 'Disabled'"
description: "This policy setting determines whether the system shuts down if
it is unable to log Security events. It is a requirement for Trusted Computer
System Evaluation Criteria (TCSEC)-C2 and Common Criteria certification to prevent
auditable events from occurring if the audit system is unable to log them.
Microsoft has chosen to meet this requirement by halting the system and displaying
a stop message if the auditing system experiences a failure. When this policy
setting is enabled, the system will be shut down if a security audit cannot be
logged for any reason. The recommended state for this setting is: Disabled."
rationale: "If the computer is unable to record events to the Security log,
critical evidence or important troubleshooting information may not be available for
review after a security incident. Also, an attacker could potentially generate a
large volume of Security log events to purposely force a computer shutdown."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Audit: Shut down system
immediately if unable to log security audits."
compliance:
- cis: ["2.3.2.2"]
- cis_csc: ["6"]
- pci_dss: ["10.7"]
references:
- 'CCE-35907-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ->
CrashOnAuditFail -> 0'
# 2.3.6.1 Domain member: Digitally encrypt or sign secure channel data (always)
(Scored)
- id: 16510
title: "Ensure 'Domain member: Digitally encrypt or sign secure channel data
(always)' is set to 'Enabled'"
description: "This policy setting determines whether all secure channel traffic
that is initiated by the domain member must be signed or encrypted. The recommended
state for this setting is: Enabled."
rationale: "When a computer joins a domain, a computer account is created.
After it joins the domain, the computer uses the password for that account to
create a secure channel with the Domain Controller for its domain every time that
it restarts. Requests that are sent on the secure channel are authenticated-and
sensitive information such as passwords are encrypted-but the channel is not
integrity-checked, and not all information is encrypted. Digital encryption and
signing of the secure channel is a good idea where it is supported. The secure
channel protects domain credentials as they are sent to the Domain Controller."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Domain member: Digitally
encrypt or sign secure channel data (always)."
compliance:
- cis: ["2.3.6.1"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-36142-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters
-> RequireSignOrSeal -> 1'
# 2.3.6.2 Domain member: Digitally encrypt secure channel data (when possible)
(Scored)
- id: 16511
title: "Ensure 'Domain member: Digitally encrypt secure channel data (when
possible)' is set to 'Enabled'"
description: "This policy setting determines whether a domain member should
attempt to negotiate encryption for all secure channel traffic that it initiates.
The recommended state for this setting is: Enabled."
rationale: "When a computer joins a domain, a computer account is created.
After it joins the domain, the computer uses the password for that account to
create a secure channel with the Domain Controller for its domain every time that
it restarts. Requests that are sent on the secure channel are authenticated-and
sensitive information such as passwords are encrypted-but the channel is not
integrity-checked, and not all information is encrypted. Digital encryption and
signing of the secure channel is a good idea where it is supported. The secure
channel protects domain credentials as they are sent to the Domain Controller."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Domain member: Digitally
encrypt secure channel data (when possible)."
compliance:
- cis: ["2.3.6.2"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-37130-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters
-> SealSecureChannel -> 1'
# 2.3.6.3 Domain member: Digitally sign secure channel data (when possible)
(Scored)
- id: 16512
title: "Ensure 'Domain member: Digitally sign secure channel data (when
possible)' is set to 'Enabled'"
description: "This policy setting determines whether a domain member should
attempt to negotiate whether all secure channel traffic that it initiates must be
digitally signed. Digital signatures protect the traffic from being modified by
anyone who captures the data as it traverses the network. The recommended state for
this setting is: Enabled."
rationale: "When a computer joins a domain, a computer account is created.
After it joins the domain, the computer uses the password for that account to
create a secure channel with the Domain Controller for its domain every time that
it restarts. Requests that are sent on the secure channel are authenticated-and
sensitive information such as passwords are encrypted-but the channel is not
integrity-checked, and not all information is encrypted. Digital encryption and
signing of the secure channel is a good idea where it is supported. The secure
channel protects domain credentials as they are sent to the Domain Controller."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Domain member: Digitally sign
secure channel data (when possible)."
compliance:
- cis: ["2.3.6.3"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-37222-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters
-> SignSecureChannel -> 1'
# 2.3.6.6 Domain member: Require strong (Windows 2000 or later) session key
(Scored)
- id: 16514
title: "Ensure 'Domain member: Require strong (Windows 2000 or later) session
key' is set to 'Enabled'"
description: "When this policy setting is enabled, a secure channel can only be
established with Domain Controllers that are capable of encrypting secure channel
data with a strong (128-bit) session key. To enable this policy setting, all Domain
Controllers in the domain must be able to encrypt secure channel data with a strong
key, which means all Domain Controllers must be running Microsoft Windows 2000 or
newer. The recommended state for this setting is: Enabled."
rationale: "Session keys that are used to establish secure channel
communications between Domain Controllers and member computers are much stronger in
Windows 2000 than they were in previous Microsoft operating systems. Whenever
possible, you should take advantage of these stronger session keys to help protect
secure channel communications from attacks that attempt to hijack network sessions
and eavesdropping. (Eavesdropping is a form of hacking in which network data is
read or altered in transit. The data can be modified to hide or change the sender,
or be redirected.)"
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Domain member: Require strong
(Windows 2000 or later) session key."
compliance:
- cis: ["2.3.6.6"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-37614-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters
-> RequireStrongKey -> 1'
# 2.3.7.6 - Interactive logon: Number of previous logons to cache (in case domain
controller is not available)' is set to '4 or fewer logon(s)
- id: 16518
title: "Ensure 'Interactive logon: Number of previous logons to cache (in case
domain controller is not available)' is set to '4 or fewer logon(s)'"
description: "This policy setting determines whether a user can log on to a
Windows domain using cached account information."
rationale: "The number that is assigned to this policy setting indicates the
number of users whose logon information the computer will cache locally."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 4 or fewer logon(s): Computer Configuration\\Policies\\Windows
Settings\\Security Settings\\Local Policies\\Security Options\\Interactive logon:
Number of previous logons to cache (in case domain controller is not available)."
compliance:
- cis: ["2.3.7.6"]
- cis_csc: ["16"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
references:
- 'CCE-38240-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
-> CachedLogonsCount -> r:^0$|^1$|^2$|^3$|^4$'
# 2.3.9.1 Ensure 'Microsoft network server: Amount of idle time required before
suspending session' is set to '15 or fewer minute(s), but not 0'
- id: 16525
title: "Ensure 'Microsoft network server: Amount of idle time required before
suspending session' is set to '15 or fewer minute(s), but not 0'"
description: "This policy setting allows you to specify the amount of
continuous idle time that must pass in an SMB session before the session is
suspended because of inactivity. Administrators can use this policy setting to
control when a computer suspends an inactive SMB session. If client activity
resumes, the session is automatically reestablished. A value of 0 appears to allow
sessions to persist indefinitely. The maximum value is 99999, which is over 69
days; in effect, this value disables the setting. The recommended state for this
setting is: 15 or fewer minute(s), but not 0."
rationale: "Each SMB session consumes server resources, and numerous null
sessions will slow the server or possibly cause it to fail. An attacker could
repeatedly establish SMB sessions until the server's SMB services become slow or
unresponsive."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 15 or fewer minute(s), but not 0: Computer Configuration\\
Policies\\Windows Settings\\Security Settings\\Local Policies\\Security Options\\
Microsoft network server: Amount of idle time required before suspending session."
compliance:
- cis: ["2.3.9.1"]
- cis_csc: ["3"]
- pci_dss: ["8.1.8"]
- tsc: ["CC6.1"]
references:
- 'CCE-38046-9'
condition: all
rules:
- 'not r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> AutoDisconnect -> 0'
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> AutoDisconnect -> n:^(\d+) compare <= 15'
# 2.3.9.4 Ensure 'Microsoft network server: Disconnect clients when logon hours
expire' is set to 'Enabled'
- id: 16528
title: "Ensure 'Microsoft network server: Disconnect clients when logon hours
expire' is set to 'Enabled'"
description: "This security setting determines whether to disconnect users who
are connected to the local computer outside their user account's valid logon hours.
This setting affects the Server Message Block (SMB) component. If you enable this
policy setting you should also enable Network security: Force logoff when logon
hours expire (Rule 2.3.11.6). If your organization configures logon hours for
users, this policy setting is necessary to ensure they are effective. The
recommended state for this setting is: Enabled."
rationale: "If your organization configures logon hours for users, then it
makes sense to enable this policy setting. Otherwise, users who should not have
access to network resources outside of their logon hours may actually be able to
continue to use those resources with sessions that were established during allowed
hours."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Microsoft network server:
Disconnect clients when logon hours expire."
compliance:
- cis: ["2.3.9.4"]
- cis_csc: ["16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-37972-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> EnableForcedLogOff -> 1'
# 2.3.9.5 Ensure 'Microsoft network server: Server SPN target name validation
level' is set to 'Accept if provided by client' or higher
- id: 16529
title: "Ensure 'Microsoft network server: Server SPN target name validation
level' is set to 'Accept if provided by client' or higher"
description: "This policy setting controls the level of validation a computer
with shared folders or printers (the server) performs on the service principal name
(SPN) that is provided by the client computer when it establishes a session using
the server message block (SMB) protocol. The server message block (SMB) protocol
provides the basis for file and print sharing and other networking operations, such
as remote Windows administration. The SMB protocol supports validating the SMB
server service principal name (SPN) within the authentication blob provided by a
SMB client to prevent a class of attacks against SMB servers referred to as SMB
relay attacks. This setting will affect both SMB1 and SMB2. The recommended state
for this setting is: Accept if provided by client. Configuring this setting to
Required from client also conforms to the benchmark. Note: Since the release of the
MS KB3161561 security patch, this setting can cause significant issues (such as
replication problems, group policy editing issues and blue screen crashes) on
Domain Controllers when used simultaneously with UNC path hardening (i.e. Rule
18.5.14.1). CIS therefore recommends against deploying this setting on Domain
Controllers."
rationale: "The identity of a computer can be spoofed to gain unauthorized
access to network resources."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Accept if provided by client (configuring to Required from
client also conforms to the benchmark): Computer Configuration\\Policies\\Windows
Settings\\Security Settings\\Local Policies\\Security Options\\Microsoft network
server: Server SPN target name validation level."
compliance:
- cis: ["2.3.9.5"]
- cis_csc: ["14"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- https://support.microsoft.com/en-us/help/3161561/ms16-075-and-ms16-076-
description-of-the-security-update-for-windows-n
- 'CCE-36170-9'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer\
Parameters -> SMBServerNameHardeningLevel -> n:^(\d+) compare >= 1'
# 2.3.10.4 (L2) Ensure 'Network access: Do not allow storage of passwords and
credentials for network authentication' is set to 'Enabled' (Scored)
- id: 16532
title: "Ensure 'Network access: Do not allow storage of passwords and
credentials for network authentication' is set to 'Enabled'"
description: "This policy setting determines whether Credential Manager
(formerly called Stored User Names and Passwords) saves passwords or credentials
for later use when it gains domain authentication. The recommended state for this
setting is: Enabled. Note: Changes to this setting will not take effect until
Windows is restarted."
rationale: "Passwords that are cached can be accessed by the user when logged
on to the computer. Although this information may sound obvious, a problem can
arise if the user unknowingly executes hostile code that reads the passwords and
forwards them to another, unauthorized user."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Network access: Do not allow
storage of passwords and credentials for network authentication."
compliance:
- cis: ["2.3.10.4"]
- cis_csc: ["16.14"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-38119-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ->
DisableDomainCreds -> 1'
# 2.3.10.6 Configure 'Network access: Named Pipes that can be accessed anonymously'
- id: 16534
title: "Configure 'Network access: Named Pipes that can be accessed
anonymously'"
description: "This policy setting determines which communication sessions, or
pipes, will have attributes and permissions that allow anonymous access. The
recommended state for this setting is: (Domain Controller) LSARPC, NETLOGON, SAMR
(Member Server) <blank> (i.e. None), or (when the legacy Computer Browser service
is enabled) BROWSER. Note: A Member Server that holds the Remote Desktop Services
Role with Remote Desktop Licensing Role Service will require a special exception to
this recommendation, to allow the HydraLSPipe and TermServLicensing Named Pipes to
be accessed anonymously."
rationale: "Limiting named pipes that can be accessed anonymously will reduce
the attack surface of the system."
remediation: "To establish the recommended configuration via GP, configure the
following UI path: Computer Configuration\\Policies\\Windows Settings\\Security
Settings\\Local Policies\\Security Options\\Network access: Named Pipes that can be
accessed anonymously."
compliance:
- cis: ["2.3.10.6"]
- cis_csc: ["14.1", "16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-38258-0'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> NullSessionPipes -> r:LSARPC && r:NETLOGON && r:SAMR'
# 2.3.10.9 Configure 'Network access: Remotely accessible registry paths and sub-
paths'
- id: 16536
title: "Configure 'Network access: Remotely accessible registry paths and sub-
paths'"
description: "This policy setting determines which registry paths and sub-paths
will be accessible over the network, regardless of the users or groups listed in
the access control list (ACL) of the winreg registry key. Note: In Windows XP this
setting is called 'Network access: Remotely accessible registry paths,' the setting
with that same name in Windows Vista, Windows Server 2008 (non-R2), and Windows
Server 2003 does not exist in Windows XP. Note #2: When you configure this setting
you specify a list of one or more objects. The delimiter used when entering the
list is a line feed or carriage return, that is, type the first object on the list,
press the Enter button, type the next object, press Enter again, etc. The setting
value is stored as a comma-delimited list in group policy security templates. It is
also rendered as a comma-delimited list in Group Policy Editor's display pane and
the Resultant Set of Policy console. It is recorded in the registry as a line-feed
delimited list in a REG_MULTI_SZ value."
rationale: "The registry contains sensitive computer configuration information
that could be used by an attacker to facilitate unauthorized activities. The fact
that the default ACLs assigned throughout the registry are fairly restrictive and
help to protect the registry from access by unauthorized users reduces the risk of
such an attack."
remediation: "To establish the recommended configuration via GP, set the
following UI path to: System\\CurrentControlSet\\Control\\Print\\Printers |
System\\CurrentControlSet\\Services\\Eventlog Software\\Microsoft\\OLAP Server |
Software\\Microsoft\\Windows NT\\CurrentVersion\\Print Software\\Microsoft\\Windows
| NT\\CurrentVersion\\Windows System\\CurrentControlSet\\Control\\ContentIndex |
System\\CurrentControlSet\\Control\\Terminal Server | System\\CurrentControlSet\\
Control\\Terminal Server\\UserConfig | System\\CurrentControlSet\\Control\\Terminal
Server\\DefaultUserConfiguration | Software\\Microsoft\\Windows NT\\
CurrentVersion\\Perflib | System\\CurrentControlSet\\Services\\SysmonLog | Computer
Configuration\\Policies\\Windows Settings\\Security Settings\\Local | Policies\\
Security Options\\Network access: Remotely accessible registry paths | and sub-
paths. When a server holds the Active Directory Certificate Services Role with
Certification Authority Role Service, the above list should also include: System\\
CurrentControlSet\\Services\\CertSvc. When a server has the WINS Server Feature
installed, the above list should also include: System\\CurrentControlSet\\
Services\\WINS"
compliance:
- cis: ["2.3.10.9"]
- cis_csc: ["14", "16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-36347-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SecurePipeServers\
Winreg\AllowedPaths -> Machine -> r:Software\\Microsoft\\Windows NT\\
CurrentVersion\\Print|Software\\Microsoft\\Windows NT\\CurrentVersion\\Windows|
System\\CurrentControlSet\\Control\\Print\\Printers|System\\CurrentControlSet\\
Services\\Eventlog|Software\\Microsoft\\OLAP Server|System\\CurrentControlSet\\
Control\\ContentIndex|System\\CurrentControlSet\\Control\\Terminal Server|System\\
CurrentControlSet\\Control\\Terminal Server\\UserConfig|System\\CurrentControlSet\\
Control\\Terminal Server\\DefaultUserConfiguration|Software\\Microsoft\\Windows
NT\\CurrentVersion\\Perflib|System\\CurrentControlSet\\Services\\SysmonLog|System\\
CurrentControlSet\\Services\\CertSvc|System\\CurrentControlSet\\Services\\WINS'
# 2.3.10.10 Ensure 'Network access: Restrict anonymous access to Named Pipes and
Shares' is set to 'Enabled'
- id: 16537
title: "Ensure 'Network access: Restrict anonymous access to Named Pipes and
Shares' is set to 'Enabled'"
description: "When enabled, this policy setting restricts anonymous access to
only those shares and pipes that are named in the Network access: Named pipes that
can be accessed anonymously and Network access: Shares that can be accessed
anonymously settings. This policy setting controls null session access to shares on
your computers by adding RestrictNullSessAccess with the value 1 in the
HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\LanManServer\\Parameters
registry key. This registry value toggles null session shares on or off to control
whether the server service restricts unauthenticated clients' access to named
resources. The recommended state for this setting is: Enabled."
rationale: "Null sessions are a weakness that can be exploited through shares
(including the default shares) on computers in your environment."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Network access: Restrict
anonymous access to Named Pipes and Shares."
compliance:
- cis: ["2.3.10.10"]
- cis_csc: ["14", "16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-36021-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> RestrictNullSessAccess -> 1'
# 2.3.10.11 Ensure 'Network access: Restrict clients allowed to make remote calls
to SAM' is set to 'Administrators: Remote Access: Allow' (MS only)
- id: 16538
title: "Ensure 'Network access: Restrict clients allowed to make remote calls
to SAM' is set to 'Administrators: Remote Access: Allow'"
description: "This policy setting allows you to restrict remote RPC connections
to SAM. The recommended state for this setting is: Administrators: Remote Access:
Allow . Note: A Windows 10 R1607, Server 2016 or newer OS is required to access and
set this value in Group Policy."
rationale: "To ensure that an unauthorized user cannot anonymously list local
account names or groups and use the information to attempt to guess passwords or
perform social engineering attacks. (Social engineering attacks try to deceive
users in some way to obtain passwords or some form of security information.)"
remediation: "To establish the recommended configuration via GP, set the
following UI path to Administrators: Remote Access: Allow: Computer Configuration\\
Policies\\Windows Settings\\Security Settings\\Local Policies\\Security Options\\
Network access: Restrict clients allowed to make remote calls to SAM"
compliance:
- cis: ["2.3.10.11"]
- cis_csc: ["5.1", "9.1"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa ->
restrictremotesam -> O:BAG:BAD:(A;;RC;;;BA)'
# 2.3.10.12 Ensure 'Network access: Shares that can be accessed anonymously' is set
to 'None'
- id: 16539
title: "Ensure 'Network access: Shares that can be accessed anonymously' is set
to 'None'"
description: "This policy setting determines which network shares can be
accessed by anonymous users. The default configuration for this policy setting has
little effect because all users have to be authenticated before they can access
shared resources on the server. The recommended state for this setting is: <blank>
(i.e. None)"
rationale: "It is very dangerous to allow any values in this setting. Any
shares that are listed can be accessed by any network user, which could lead to the
exposure or corruption of sensitive data."
remediation: "To establish the recommended configuration via GP, set the
following UI path to <blank> (i.e. None): Computer Configuration\\Policies\\Windows
Settings\\Security Settings\\Local Policies\\Security Options\\Network access:
Shares that can be accessed anonymously."
compliance:
- cis: ["2.3.10.12"]
- cis_csc: ["14", "16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-38095-6'
condition: any
rules:
- 'not r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> NullSessionShares'
- 'not r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\LanManServer\
Parameters -> NullSessionShares -> r:\.'
# 2.3.10.13 Ensure 'Network access: Sharing and security model for local accounts'
is set to 'Classic - local users authenticate as themselves'
- id: 16540
title: "Ensure 'Network access: Sharing and security model for local accounts'
is set to 'Classic - local users authenticate as themselves'"
description: "This policy setting determines how network logons that use local
accounts are authenticated. The Classic option allows precise control over access
to resources, including the ability to assign different types of access to
different users for the same resource. The Guest only option allows you to treat
all users equally. In this context, all users authenticate as Guest only to receive
the same access level to a given resource. The recommended state for this setting
is: Classic - local users authenticate as themselves. Note: This setting does not
affect interactive logons that are performed remotely by using such services as
Telnet or Remote Desktop Services (formerly called Terminal Services)"
rationale: "With the Guest only model, any user who can authenticate to your
computer over the network does so with guest privileges, which probably means that
they will not have write access to shared resources on that computer. Although this
restriction does increase security, it makes it more difficult for authorized users
to access shared resources on those computers because ACLs on those resources must
include access control entries (ACEs) for the Guest account. With the Classic
model, local accounts should be password protected. Otherwise, if Guest access is
enabled, anyone can use those user accounts to access shared system resources."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Classic - local users authenticate as themselves: Computer
Configuration\\Policies\\Windows Settings\\Security Settings\\Local Policies\\
Security Options\\Network access: Sharing and security model for local accounts."
compliance:
- cis: ["2.3.10.13"]
- cis_csc: ["14", "16"]
- pci_dss: ["7.1.3"]
- tsc: ["CC6.4"]
references:
- 'CCE-37623-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa -> ForceGuest ->
0'
# 2.3.11.1 Ensure 'Network security: Allow Local System to use computer identity
for NTLM' is set to 'Enabled'
- id: 16541
title: "Ensure 'Network security: Allow Local System to use computer identity
for NTLM' is set to 'Enabled'"
description: "This policy setting determines whether Local System services that
use Negotiate when reverting to NTLM authentication can use the computer identity.
This policy is supported on at least Windows 7 or Windows Server 2008 R2. The
recommended state for this setting is: Enabled."
rationale: "When connecting to computers running versions of Windows earlier
than Windows Vista or Windows Server 2008 (non-R2), services running as Local
System and using SPNEGO (Negotiate) that revert to NTLM use the computer identity.
In Windows 7, if you are connecting to a computer running Windows Server 2008 or
Windows Vista, then a system service uses either the computer identity or a NULL
session. When connecting with a NULL session, a system-generated session key is
created, which provides no protection but allows applications to sign and encrypt
data without errors. When connecting with the computer identity, both signing and
encryption is supported in order to provide data protection."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Network security: Allow Local
System to use computer identity for NTLM."
compliance:
- cis: ["2.3.11.1"]
- cis_csc: ["14", "16"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-38341-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa -> UseMachineId
-> 1'
# 2.3.11.5 Ensure 'Network security: Do not store LAN Manager hash value on next
password change' is set to 'Enabled'
- id: 16545
title: "Ensure 'Network security: Do not store LAN Manager hash value on next
password change' is set to 'Enabled'"
description: "This policy setting determines whether the LAN Manager (LM) hash
value for the new password is stored when the password is changed. The LM hash is
relatively weak and prone to attack compared to the cryptographically stronger
Microsoft Windows NT hash. Since LM hashes are stored on the local computer in the
security database, passwords can then be easily compromised if the database is
attacked. Note: Older operating systems and some third-party applications may fail
when this policy setting is enabled. Also, note that the password will need to be
changed on all accounts after you enable this setting to gain the proper benefit.
The recommended state for this setting is: Enabled."
rationale: "The SAM file can be targeted by attackers who seek access to
username and password hashes. Such attacks use special tools to crack passwords,
which can then be used to impersonate users and gain access to resources on your
network. These types of attacks will not be prevented if you enable this policy
setting, but it will be much more difficult for these types of attacks to succeed."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Network security: Do not store
LAN Manager hash value on next password change."
compliance:
- cis: ["2.3.11.5"]
- cis_csc: ["16.14"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- 'CCE-36326-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa -> NoLMHash ->
1'
# 2.3.11.6 Ensure 'Network security: Force logoff when logon hours expire' is set
to 'Enabled'
- id: 16546
title: "Ensure 'Network security: Force logoff when logon hours expire' is set
to 'Enabled'"
description: "This policy setting determines whether to disconnect users who
are connected to the local computer outside their user account's valid logon hours.
This setting affects the Server Message Block (SMB) component. If you enable this
policy setting you should also enable Microsoft network server: Disconnect clients
when logon hours expire (Rule 2.3.9.4). The recommended state for this setting is:
Enabled. Note: This recommendation is unscored because there is not a documented
registry value that corresponds to it. We still strongly encourage that it be
configured as Enabled, to ensure that logon hours (when configured) are properly
enforced."
rationale: "If this setting is disabled, a user could remain connected to the
computer outside of their allotted logon hours."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled. Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Network security: Force logoff
when logon hours expire."
compliance:
- cis: ["2.3.11.6"]
- cis_csc: ["16"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-36270-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanManServer\
Parameters -> EnableForcedLogOff -> 1'
# 2.3.11.9 Ensure 'Network security: Minimum session security for NTLM SSP based
(including secure RPC) clients' is set to 'Require NTLMv2 session security, Require
128-bit encryption'
- id: 16549
title: "Ensure 'Network security: Minimum session security for NTLM SSP based
(including secure RPC) clients' is set to 'Require NTLMv2 session security, Require
128-bit encryption'"
description: "This policy setting determines which behaviors are allowed by
clients for applications using the NTLM Security Support Provider (SSP). The SSP
Interface (SSPI) is used by applications that need authentication services. The
setting does not modify how the authentication sequence works but instead require
certain behaviors in applications that use the SSPI. The recommended state for this
setting is: Require NTLMv2 session security, Require 128-bit encryption. Note:
These values are dependent on the Network security: LAN Manager Authentication
Level (Rule 2.3.11.7) security setting value."
rationale: "You can enable both options for this policy setting to help protect
network traffic that uses the NTLM Security Support Provider (NTLM SSP) from being
exposed or tampered with by an attacker who has gained access to the same network.
In other words, these options help protect against man-in-the-middle attacks."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Require NTLMv2 session security, Require 128-bit encryption:
Computer Configuration\\Policies\\Windows Settings\\Security Settings\\Local
Policies\\Security Options\\Network security: Minimum session security for NTLM SSP
based (including secure RPC) clients."
compliance:
- cis: ["2.3.11.9"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-37553-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\MSV1_0 ->
NTLMMinClientSec -> 537395200'
# 2.3.11.10 Ensure 'Network security: Minimum session security for NTLM SSP based
(including secure RPC) servers' is set to 'Require NTLMv2 session security, Require
128-bit encryption'
- id: 16550
title: "Ensure 'Network security: Minimum session security for NTLM SSP based
(including secure RPC) servers' is set to 'Require NTLMv2 session security, Require
128-bit encryption'"
description: "This policy setting determines which behaviors are allowed by
servers for applications using the NTLM Security Support Provider (SSP). The SSP
Interface (SSPI) is used by applications that need authentication services. The
setting does not modify how the authentication sequence works but instead require
certain behaviors in applications that use the SSPI. The recommended state for this
setting is: Require NTLMv2 session security, Require 128-bit encryption. Note:
These values are dependent on the Network security: LAN Manager Authentication
Level (Rule 2.3.11.7) security setting value."
rationale: "You can enable all of the options for this policy setting to help
protect network traffic that uses the NTLM Security Support Provider (NTLM SSP)
from being exposed or tampered with by an attacker who has gained access to the
same network. That is, these options help protect against man-in-the-middle
attacks."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Require NTLMv2 session security, Require 128-bit encryption:
Computer Configuration\\Policies\\Windows Settings\\Security Settings\\Local
Policies\\Security Options\\Network security: Minimum session security for NTLM SSP
based (including secure RPC) servers."
compliance:
- cis: ["2.3.11.10"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- https://workbench.cisecurity.org/benchmarks/288
- 'CCE-37835-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa\MSV1_0 ->
NTLMMinServerSec -> 537395200'
# 2.3.13.1 Ensure 'Shutdown: Allow system to be shut down without having to log on'
is set to 'Disabled'
- id: 16551
title: "Ensure 'Shutdown: Allow system to be shut down without having to log
on' is set to 'Disabled'"
description: "This policy setting determines whether a computer can be shut
down when a user is not logged on. If this policy setting is enabled, the shutdown
command is available on the Windows logon screen. It is recommended to disable this
policy setting to restrict the ability to shut down the computer to users with
credentials on the system. The recommended state for this setting is: Disabled.
Note: In Server 2008 R2 and older versions, this setting had no impact on Remote
Desktop (RDP) / Terminal Services sessions - it only affected the local console.
However, Microsoft changed the behavior in Windows Server 2012 (non-R2) and above,
where if set to Enabled, RDP sessions are also allowed to shut down or restart the
server."
rationale: "Users who can access the console locally could shut down the
computer. Attackers could also walk to the local console and restart the server,
which would cause a temporary DoS condition. Attackers could also shut down the
server and leave all of its applications and services unavailable. As noted in the
Description above, the Denial of Service (DoS) risk of enabling this setting
dramatically increases in Windows Server 2012 (non-R2) and above, as even remote
users could then shut down or restart the server from the logon screen of an RDP
session."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\Shutdown: Allow system to be
shut down without having to log on."
compliance:
- cis: ["2.3.13.1"]
- cis_csc: ["5.1"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36788-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> ShutdownWithoutLogon -> 0'
# 2.3.17.1 Ensure 'User Account Control: Admin Approval Mode for the Built-in
Administrator account' is set to 'Enabled'
- id: 16554
title: "Ensure 'User Account Control: Admin Approval Mode for the Built-in
Administrator account' is set to 'Enabled'"
description: "This policy setting controls the behavior of Admin Approval Mode
for the built-in Administrator account. The recommended state for this setting is:
Enabled."
rationale: "One of the risks that the User Account Control feature introduced
with Windows Vista is trying to mitigate is that of malicious software running
under elevated credentials without the user or administrator being aware of its
activity. An attack vector for these programs was to discover the password of the
account named 'Administrator' because that user account was created for all
installations of Windows. To address this risk, in Windows Vista and newer, the
built-in Administrator account is now disabled by default. In a default
installation of a new computer, accounts with administrative control over the
computer are initially set up in one of two ways: - If the computer is not joined
to a domain, the first user account you create has the equivalent permissions as a
local administrator. - If the computer is joined to a domain, no local
administrator accounts are created. The Enterprise or Domain Administrator must log
on to the computer and create one if a local administrator account is warranted.
Once Windows is installed, the built-in Administrator account may be manually
enabled, but we strongly recommend that this account remain disabled."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\User Account Control: Admin
Approval Mode for the Built-in Administrator account."
compliance:
- cis: ["2.3.17.1"]
- cis_csc: ["5.1"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-36494-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> FilterAdministratorToken -> 1'
# 2.3.17.2 Ensure 'User Account Control: Behavior of the elevation prompt for
administrators in Admin Approval Mode' is set to 'Prompt for consent on the secure
desktop'
- id: 16555
title: "Ensure 'User Account Control: Behavior of the elevation prompt for
administrators in Admin Approval Mode' is set to 'Prompt for consent on the secure
desktop'"
description: "This policy setting controls the behavior of the elevation prompt
for administrators. The recommended state for this setting is: Prompt for consent
on the secure desktop."
rationale: "One of the risks that the UAC feature introduced with Windows Vista
is trying to mitigate is that of malicious software running under elevated
credentials without the user or administrator being aware of its activity. This
setting raises awareness to the administrator of elevated privilege operations and
permits the administrator to prevent a malicious program from elevating its
privilege when the program attempts to do so."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Prompt for consent on the secure desktop: Computer
Configuration\\Policies\\Windows Settings\\Security Settings\\Local Policies\\
Security Options\\User Account Control: Behavior of the elevation prompt for
administrators in Admin Approval Mode."
compliance:
- cis: ["2.3.17.2"]
- cis_csc: ["5.1"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-37029-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> ConsentPromptBehaviorAdmin -> r:^2$'
# 2.3.17.3 Ensure 'User Account Control: Behavior of the elevation prompt for
standard users' is set to 'Automatically deny elevation requests'
- id: 16556
title: "Ensure 'User Account Control: Behavior of the elevation prompt for
standard users' is set to 'Automatically deny elevation requests'"
description: "This policy setting controls the behavior of the elevation prompt
for standard users. The recommended state for this setting is: Automatically deny
elevation requests."
rationale: "One of the risks that the User Account Control feature introduced
with Windows Vista is trying to mitigate is that of malicious programs running
under elevated credentials without the user or administrator being aware of their
activity. This setting raises awareness to the user that a program requires the use
of elevated privilege operations and requires that the user be able to supply
administrative credentials in order for the program to run."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Automatically deny elevation requests: Computer
Configuration\\Policies\\Windows Settings\\Security Settings\\Local Policies\\
Security Options\\User Account Control: Behavior of the elevation prompt for
standard users."
compliance:
- cis: ["2.3.17.3"]
- cis_csc: ["5.1"]
- pci_dss: ["7.1.2"]
- tsc: ["CC6.4"]
references:
- 'CCE-36864-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> ConsentPromptBehaviorUser -> 0'
# 2.3.17.5 Ensure 'User Account Control: Only elevate UIAccess applications that
are installed in secure locations' is set to 'Enabled'
- id: 16558
title: "Ensure 'User Account Control: Only elevate UIAccess applications that
are installed in secure locations' is set to 'Enabled'"
description: "This policy setting controls whether applications that request to
run with a User Interface Accessibility (UIAccess) integrity level must reside in a
secure location in the file system. Secure locations are limited to the
following: ...\\Program Files\\, including subfolders; ...\\Windows\\
system32\\; ...\\Program Files (x86)\\, including subfolders (for 64-bit versions
of Windows). Note: Windows enforces a public key infrastructure (PKI) signature
check on any interactive application that requests to run with a UIAccess integrity
level regardless of the state of this security setting. The recommended state for
this setting is: Enabled."
rationale: "UIAccess Integrity allows an application to bypass User Interface
Privilege Isolation (UIPI) restrictions when an application is elevated in
privilege from a standard user to an administrator. This is required to support
accessibility features such as screen readers that are transmitting user interfaces
to alternative forms. A process that is started with UIAccess rights has the
following abilities: - To set the foreground window. - To drive any application
window using SendInput function. - To use read input for all integrity levels using
low-level hooks, raw input, GetKeyState, GetAsyncKeyState, and GetKeyboardInput. -
To set journal hooks. - To uses AttachThreadInput to attach a thread to a higher
integrity input queue."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\User Account Control: Only
elevate UIAccess applications that are installed in secure locations."
compliance:
- cis: ["2.3.17.5"]
- cis_csc: ["5.1"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-37057-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> EnableSecureUIAPaths -> 1'
# 2.3.17.6 Ensure 'User Account Control: Run all administrators in Admin Approval
Mode' is set to 'Enabled'
- id: 16559
title: "Ensure 'User Account Control: Run all administrators in Admin Approval
Mode' is set to 'Enabled'"
description: "This policy setting controls the behavior of all User Account
Control (UAC) policy settings for the computer. If you change this policy setting,
you must restart your computer. The recommended state for this setting is: Enabled.
Note: If this policy setting is disabled, the Security Center notifies you that the
overall security of the operating system has been reduced."
rationale: "This is the setting that turns on or off UAC. If this setting is
disabled, UAC will not be used and any security benefits and risk mitigations that
are dependent on UAC will not be present on the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\User Account Control: Run all
administrators in Admin Approval Mode."
compliance:
- cis: ["2.3.17.6"]
- cis_csc: ["5.1"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-36869-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> EnableLUA -> 1'
# 2.3.17.7 Ensure 'User Account Control: Switch to the secure desktop when
prompting for elevation' is set to 'Enabled'
- id: 16560
title: "Ensure 'User Account Control: Switch to the secure desktop when
prompting for elevation' is set to 'Enabled'"
description: "This policy setting controls whether the elevation request prompt
is displayed on the interactive user's desktop or the secure desktop. The
recommended state for this setting is: Enabled."
rationale: "Standard elevation prompt dialog boxes can be spoofed, which may
cause users to disclose their passwords to malicious software. The secure desktop
presents a very distinct appearance when prompting for elevation, where the user
desktop dims, and the elevation prompt UI is more prominent. This increases the
likelihood that users who become accustomed to the secure desktop will recognize a
spoofed elevation prompt dialog box and not fall for the trick."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\User Account Control: Switch
to the secure desktop when prompting for elevation."
compliance:
- cis: ["2.3.17.7"]
- cis_csc: ["5.1"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36866-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> PromptOnSecureDesktop -> 1'
# 2.3.17.8 Ensure 'User Account Control: Virtualize file and registry write
failures to per-user locations' is set to 'Enabled'
- id: 16561
title: "Ensure 'User Account Control: Virtualize file and registry write
failures to per-user locations' is set to 'Enabled'"
description: "This policy setting controls whether application write failures
are redirected to defined registry and file system locations. This policy setting
mitigates applications that run as administrator and write run-time application
data to: - %ProgramFiles% - %Windir% - %Windir%\\system32 - HKEY_LOCAL_MACHINE\\
Software. The recommended state for this setting is: Enabled."
rationale: "This setting reduces vulnerabilities by ensuring that legacy
applications only write data to permitted locations."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Local Policies\\Security Options\\User Account Control:
Virtualize file and registry write failures to per-user locations."
compliance:
- cis: ["2.3.17.8"]
- pci_dss: ["6.5.8"]
- tsc: ["CC6.1"]
references:
- 'CCE-37064-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Policies\
System -> EnableVirtualization -> 1'
###############################################
# 9 Windows Firewall with Advanced Security
###############################################
###############################################
# 9.1 Domain Profile
###############################################
# 9.1.6 Ensure 'Windows Firewall: Domain: Logging: Size limit (KB)' is set to
'16384 KB or greater'
- id: 16567
title: "Ensure 'Windows Firewall: Domain: Logging: Size limit (KB)' is set to
'16384 KB or greater'"
description: "Use this option to specify the size limit of the file in which
Windows Firewall will write its log information. The recommended state for this
setting is: 16,384 KB or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 16,384 KB or greater: Computer Configuration\\Policies\\
Windows Settings\\Security Settings\\Windows Firewall with Advanced Security\\
Windows Firewall with Advanced Security\\Windows Firewall Properties\\Domain
Profile\\Logging Customize\\Size limit (KB)."
compliance:
- cis: ["9.1.6"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-36088-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
DomainProfile\Logging -> LogFileSize -> n:^(\d+) compare >= 16384'
# 9.1.7 Ensure 'Windows Firewall: Domain: Logging: Log dropped packets' is set to
'Yes'
- id: 16568
title: "Ensure 'Windows Firewall: Domain: Logging: Log dropped packets' is set
to 'Yes'"
description: "Use this option to log when Windows Firewall with Advanced
Security discards an inbound packet for any reason. The log records why and when
the packet was dropped. Look for entries with the word DROP in the action column of
the log. The recommended state for this setting is: Yes."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Yes: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Windows Firewall with Advanced Security\\Windows Firewall with
Advanced Security\\Windows Firewall Properties\\Domain Profile\\Logging Customize\\
Log dropped packets."
compliance:
- cis: ["9.1.7"]
- cis_csc: ["6.2"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37523-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
DomainProfile\Logging -> LogDroppedPackets -> 1'
###############################################
# 9.2 Private Profile
###############################################
# 9.2.6 Ensure 'Windows Firewall: Private: Logging: Size limit (KB)' is set to
'16384 KB or greater'
- id: 16575
title: "Ensure 'Windows Firewall: Private: Logging: Size limit (KB)' is set to
'16384 KB or greater'"
description: "Use this option to specify the size limit of the file in which
Windows Firewall will write its log information. The recommended state for this
setting is: 16,384 KB or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 16,384 KB or greater: Computer Configuration\\Policies\\
Windows Settings\\Security Settings\\Windows Firewall with Advanced Security\\
Windows Firewall with Advanced Security\\Windows Firewall Properties\\Private
Profile\\Logging Customize\\Size limit (KB)."
compliance:
- cis: ["9.2.6"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-38178-0'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PrivateProfile\Logging -> LogFileSize -> n:^(\d+) compare >= 16384'
# 9.2.7 Ensure 'Windows Firewall: Private: Logging: Log dropped packets' is set to
'Yes'
- id: 16576
title: "Ensure 'Windows Firewall: Private: Logging: Log dropped packets' is set
to 'Yes'"
description: "Use this option to log when Windows Firewall with Advanced
Security discards an inbound packet for any reason. The log records why and when
the packet was dropped. Look for entries with the word DROP in the action column of
the log. The recommended state for this setting is: Yes."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Yes: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Windows Firewall with Advanced Security\\Windows Firewall with
Advanced Security\\Windows Firewall Properties\\Private Profile\\Logging
Customize\\Log dropped packets."
compliance:
- cis: ["9.2.7"]
- cis_csc: ["6.2"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-35972-9'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PrivateProfile\Logging -> LogDroppedPackets -> 1'
###############################################
# 9.3 Public Profile
###############################################
# 9.3.5 Ensure 'Windows Firewall: Public: Settings: Apply local firewall rules' is
set to 'No'
- id: 16582
title: "Ensure 'Windows Firewall: Public: Settings: Apply local firewall rules'
is set to 'No'"
description: "This setting controls whether local administrators are allowed to
create local firewall rules that apply together with firewall rules configured by
Group Policy. The recommended state for this setting is: No. Note: When the Apply
local firewall rules setting is configured to No, it's recommended to also
configure the Display a notification setting to No. Otherwise, users will continue
to receive messages that ask if they want to unblock a restricted inbound
connection, but the user's response will be ignored."
rationale: "iWhen in the Public profile, there should be no special local
firewall exceptions per computer. These settings should be managed by a centralized
policy."
remediation: "To establish the recommended configuration via GP, set the
following UI path to No: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Windows Firewall with Advanced Security\\Windows Firewall with
Advanced Security\\Windows Firewall Properties\\Public Profile\\Settings
Customize\\Apply local firewall rules."
compliance:
- cis: ["9.3.5"]
- cis_csc: ["5.1"]
- pci_dss: ["7.2"]
- tsc: ["CC6.4"]
references:
- 'CCE-37861-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PublicProfile -> AllowLocalPolicyMerge -> 0'
# 9.3.6 Ensure 'Windows Firewall: Public: Settings: Apply local connection security
rules' is set to 'No'
- id: 16583
title: "Ensure 'Windows Firewall: Public: Settings: Apply local connection
security rules' is set to 'No'"
description: "This setting controls whether local administrators are allowed to
create connection security rules that apply together with connection security rules
configured by Group Policy. The recommended state for this setting is: No."
rationale: "Users with administrative privileges might create firewall rules
that expose the system to remote attack."
remediation: "To establish the recommended configuration via GP, set the
following UI path to No: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Windows Firewall with Advanced Security\\Windows Firewall with
Advanced Security\\Windows Firewall Properties\\Public Profile\\Settings
Customize\\Apply local connection security rules."
compliance:
- cis: ["9.3.6"]
- cis_csc: ["5.1"]
- pci_dss: ["7.2"]
- tsc: ["CC6.4"]
references:
- 'CCE-36268-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PublicProfile -> AllowLocalIPsecPolicyMerge -> 0'
# 9.3.8 Ensure 'Windows Firewall: Public: Logging: Size limit (KB)' is set to
'16384 KB or greater'
- id: 16585
title: "Ensure 'Windows Firewall: Public: Logging: Size limit (KB)' is set to
'16384 KB or greater'"
description: "Use this option to specify the size limit of the file in which
Windows Firewall will write its log information. The recommended state for this
setting is: 16,384 KB or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 16,384 KB or greater: Computer Configuration\\Policies\\
Windows Settings\\Security Settings\\Windows Firewall with Advanced Security\\
Windows Firewall with Advanced Security\\Windows Firewall Properties\\Public
Profile\\Logging Customize\\Size limit (KB)."
compliance:
- cis: ["9.3.8"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-36395-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PublicProfile\Logging -> LogFileSize -> n:^(\d+) compare >= 16384'
# 9.3.9 Ensure 'Windows Firewall: Public: Logging: Log dropped packets' is set to
'Yes'
- id: 16586
title: "Ensure 'Windows Firewall: Public: Logging: Log dropped packets' is set
to 'Yes'"
description: "Use this option to log when Windows Firewall with Advanced
Security discards an inbound packet for any reason. The log records why and when
the packet was dropped. Look for entries with the word DROP in the action column of
the log. The recommended state for this setting is: Yes."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Yes: Computer Configuration\\Policies\\Windows Settings\\
Security Settings\\Windows Firewall with Advanced Security\\Windows Firewall with
Advanced Security\\Windows Firewall Properties\\Public Profile\\Logging Customize\\
Log dropped packets."
compliance:
- cis: ["9.3.9"]
- cis_csc: ["6.2"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37265-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsFirewall\
PublicProfile\Logging -> LogDroppedPackets -> 1'
###############################################
# 17 Advanced Audit Policy Configuration
###############################################
###############################################
# 18 Administrative Templates (Computer)
###############################################
###############################################
# 18.1 Control Panel
###############################################
# 18.1.1.1 (L1) Ensure 'Prevent enabling lock screen camera' is set to 'Enabled'
- id: 16588
title: "Ensure 'Prevent enabling lock screen camera' is set to 'Enabled'"
description: "Disables the lock screen camera toggle switch in PC Settings and
prevents a camera from being invoked on the lock screen. The recommended state for
this setting is: Enabled."
rationale: "Disabling the lock screen camera extends the protection afforded by
the lock screen to camera features."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Control Panel\\Personalization\\Prevent enabling lock screen camera.
Note: This Group Policy path may not exist by default. It is provided by the Group
Policy template ControlPanelDisplay.admx/adml that is included with the Microsoft
Windows 8.1 & Server 2012 R2 Administrative Templates (or newer)."
compliance:
- cis: ["18.1.1.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-38347-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Personalization -
> NoLockScreenCamera -> 1'
# 18.1.1.2 Ensure 'Prevent enabling lock screen slide show' is set to 'Enabled'
- id: 16589
title: "Ensure 'Prevent enabling lock screen slide show' is set to 'Enabled'"
description: "Disables the lock screen slide show settings in PC Settings and
prevents a slide show from playing on the lock screen. The recommended state for
this setting is: Enabled."
rationale: "Disabling the lock screen slide show extends the protection
afforded by the lock screen to slide show contents."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Control Panel\\Personalization\\Prevent enabling lock screen slide show.
Note: This Group Policy path may not exist by default. It is provided by the Group
Policy template ControlPanelDisplay.admx/adml that is included with the Microsoft
Windows 8.1 & Server 2012 R2 Administrative Templates (or newer)."
compliance:
- cis: ["18.1.1.2"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-38348-9'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Personalization -
> NoLockScreenSlideshow -> 1'
# 18.1.2.2 Ensure 'Allow input personalization' is set to 'Disabled'
- id: 16590
title: "Ensure 'Allow input personalization' is set to 'Disabled'"
description: "This policy enables the automatic learning component of input
personalization that includes speech, inking, and typing. Automatic learning
enables the collection of speech and handwriting patterns, typing history,
contacts, and recent calendar information. It is required for the use of Cortana.
Some of this collected information may be stored on the user's OneDrive, in the
case of inking and typing; some of the information will be uploaded to Microsoft to
personalize speech. The recommended state for this setting is: Disabled."
rationale: "If this setting is Enabled sensitive information could be stored in
the cloud or sent to Microsoft."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Control Panel\\Regional and Language Options\\Allow input
personalization Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template Globalization.admx/adml that is included with
the Microsoft Windows 10 RTM (Release 1507) Administrative Templates (or newer)."
compliance:
- cis: ["18.1.2.2"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-38347-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\InputPersonalization ->
AllowInputPersonalization -> 0'
###############################################
# Section 18.2 - LAPS
###############################################
# 18.2.1 Ensure LAPS AdmPwd GPO Extension / CSE is installed
- id: 16592
title: "Ensure LAPS AdmPwd GPO Extension / CSE is installed"
description: "In May 2015, Microsoft released the Local Administrator Password
Solution (LAPS) tool, which is free and supported software that allows an
organization to automatically set randomized and unique local Administrator account
passwords on domain-attached workstations and Member Servers. The passwords are
stored in a confidential attribute of the domain computer account and can be
retrieved from Active Directory by approved Sysadmins when needed. The LAPS tool
requires a small Active Directory Schema update in order to implement, as well as
installation of a Group Policy Client Side Extension (CSE) on targeted computers.
Please see the LAPS documentation for details. LAPS supports Windows Vista or newer
workstation OSes, and Server 2003 or newer server OSes. LAPS does not support
standalone computers - they must be joined to a domain. Note: Organizations that
utilize 3rd-party commercial software to manage unique & complex local
Administrator passwords on domain members may opt to disregard these LAPS
recommendations. Note #2: LAPS is only designed to manage local Administrator
passwords, and is therefore not recommended (or supported) for use directly on
Domain Controllers, which do not have a traditional local Administrator account. We
strongly encourage you to only deploy the LAPS CSE and LAPS GPO settings to member
servers and workstations."
rationale: "Due to the difficulty in managing local Administrator passwords,
many organizations choose to use the same password on all workstations and/or
Member Servers when deploying them. This creates a serious attack surface security
risk because if an attacker manages to compromise one system and learn the password
to its local Administrator account, then they can leverage that account to
instantly gain access to all other computers that also use that password for their
local Administrator account."
remediation: "In order to utilize LAPS, a minor Active Directory Schema update
is required, and a Group Policy Client Side Extension (CSE) must be installed on
each managed computer. When LAPS is installed, the file AdmPwd.dll must be present
in the following location and registered in Windows (the LAPS AdmPwd GPO
Extension / CSE installation does this for you): C:\\Program Files\\LAPS\\CSE\\
AdmPwd.dll"
compliance:
- cis: ["18.2.1"]
- cis_csc: ["16.9"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Winlogon\GPExtensions\{D76B9641-3288-4f75-942D-087DE603E3EA}'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\
Winlogon\GPExtensions\{D76B9641-3288-4f75-942D-087DE603E3EA} -> DllName'
# 18.2.2 Ensure 'Do not allow password expiration time longer than required by
policy' is set to 'Enabled'
- id: 16593
title: "Ensure 'Do not allow password expiration time longer than required by
policy' is set to 'Enabled'"
description: "In May 2015, Microsoft released the Local Administrator Password
Solution (LAPS) tool, which is free and supported software that allows an
organization to automatically set randomized and unique local Administrator account
passwords on domain-attached workstations and Member Servers. The passwords are
stored in a confidential attribute of the domain computer account and can be
retrieved from Active Directory by approved Sysadmins when needed. The LAPS tool
requires a small Active Directory Schema update in order to implement, as well as
installation of a Group Policy Client Side Extension (CSE) on targeted computers.
Please see the LAPS documentation for details. LAPS supports Windows Vista or newer
workstation OSes, and Server 2003 or newer server OSes. LAPS does not support
standalone computers - they must be joined to a domain. The recommended state for
this setting is: Enabled. Note: Organizations that utilize 3rd-party commercial
software to manage unique & complex local Administrator passwords on domain members
may opt to disregard these LAPS recommendations. Note #2: LAPS is only designed to
manage local Administrator passwords, and is therefore not recommended (or
supported) for use directly on Domain Controllers, which do not have a traditional
local Administrator account. We strongly encourage you to only deploy the LAPS CSE
and LAPS GPO settings to member servers and workstations. Note #2: LAPS is only
designed to manage local Administrator passwords, and is therefore not recommended
(or supported) for use directly on Domain Controllers, which do not have a
traditional local Administrator account. We strongly encourage you to only deploy
the LAPS CSE and LAPS GPO settings to member servers and workstations."
rationale: "Due to the difficulty in managing local Administrator passwords,
many organizations choose to use the same password on all workstations and/or
Member Servers when deploying them. This creates a serious attack surface security
risk because if an attacker manages to compromise one system and learn the password
to its local Administrator account, then they can leverage that account to
instantly gain access to all other computers that also use that password for their
local Administrator account."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\LAPS\\Do not allow password expiration time longer than required by
policy Note: This Group Policy path does not exist by default. An additional Group
Policy template (AdmPwd.admx/adml) is required - it is included with Microsoft
Local Administrator Password Solution (LAPS)."
compliance:
- cis: ["18.2.2"]
- cis_csc: ["16.2"]
- pci_dss: ["8.2.4"]
- tsc: ["CC6.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft Services\AdmPwd ->
PwdExpirationProtectionEnabled -> 1'
###############################################
# Section 18.3 - MS Security Guide
###############################################
# 18.3.1 Ensure 'Apply UAC restrictions to local accounts on network logons' is set
to 'Enabled'
- id: 16598
title: "Ensure 'Apply UAC restrictions to local accounts on network logons' is
set to 'Enabled'"
description: "This setting controls whether local accounts can be used for
remote administration via network logon (e.g., NET USE, connecting to C$, etc.).
Local accounts are at high risk for credential theft when the same account and
password is configured on multiple systems. Enabling this policy significantly
reduces that risk. Enabled: Applies UAC token-filtering to local accounts on
network logons. Membership in powerful group such as Administrators is disabled and
powerful privileges are removed from the resulting access token. This configures
the LocalAccountTokenFilterPolicy registry value to 0. This is the default behavior
for Windows. Disabled: Allows local accounts to have full administrative rights
when authenticating via network logon, by configuring the
LocalAccountTokenFilterPolicy registry value to 1. For more information about local
accounts and credential theft, review the 'Mitigating Pass-the-Hash (PtH) Attacks
and Other Credential Theft Techniques' documents. For more information about
LocalAccountTokenFilterPolicy, see Microsoft Knowledge Base article 951016:
Description of User Account Control and remote restrictions in Windows Vista. The
recommended state for this setting is: Enabled."
rationale: "Local accounts are at high risk for credential theft when the same
account and password is configured on multiple systems. Ensuring this policy is
Enabled significantly reduces that risk."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\MS Security Guide\\Apply UAC restrictions to local accounts on network
logons Note: This Group Policy path does not exist by default. An additional Group
Policy template (SecGuide.admx/adml) is required - it is available from Microsoft."
compliance:
- cis: ["18.3.1"]
- cis_csc: ["5.8"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- https://www.microsoft.com/en-us/download/details.aspx?id=36036
- https://support.microsoft.com/en-us/help/951016/description-of-user-
account-control-and-remote-restrictions-in-windows
- https://blogs.technet.microsoft.com/secguide/2017/08/30/security-baseline-
for-windows-10-creators-update-v1703-final/
- 'CCE-37069-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System -> LocalAccountTokenFilterPolicy -> 1'
# 18.3.2 (L1) Ensure 'Configure SMB v1 client driver' is set to 'Enabled: Disable
driver'
- id: 16599
title: "Ensure 'Configure SMB v1 client driver' is set to 'Enabled: Disable
driver'"
description: "This setting configures the start type for the Server Message
Block version 1 (SMBv1) client driver service ( MRxSmb10 ), which is recommended to
be disabled. The recommended state for this setting is: Enabled: Disable driver.
Note: Do not, under any circumstances, configure this overall setting as Disabled ,
as doing so will delete the underlying registry entry altogether, which will cause
serious problems."
rationale: "Since September 2016, Microsoft has strongly encouraged that SMBv1
be disabled and no longer used on modern networks, as it is a 30 year old design
that is much more vulnerable to attacks then much newer designs such as SMBv2 and
SMBv3."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Disable driver : Computer Configuration\\Policies\\
Administrative Templates\\MS Security Guide\\Configure SMB v1 client driver Note:
This Group Policy path does not exist by default. An additional Group Policy
template ( SecGuide.admx/adml ) is required"
compliance:
- cis: ["18.3.2"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'https://techcommunity.microsoft.com/t5/storage-at-microsoft/stop-using-
smb1/ba-p/425858'
- 'https://docs.microsoft.com/en-us/archive/blogs/staysafe/disable-smb-v1-in-
managed-environments-with-ad-group-policy'
- 'https://docs.microsoft.com/en-us/archive/blogs/secguide/disabling-smbv1-
through-group-policy'
- 'https://docs.microsoft.com/en-us/archive/blogs/secguide/security-baseline-
for-windows-10-creators-update-v1703-final'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\mrxsmb10 -> Start -
> 1'
###############################################
# 18.4 MSS (Legacy)
###############################################
# 18.4.1 Ensure 'MSS: (AutoAdminLogon) Enable Automatic Logon (not recommended)' is
set to 'Disabled'
- id: 16604
title: "Ensure 'MSS: (AutoAdminLogon) Enable Automatic Logon (not recommended)'
is set to 'Disabled'"
description: "This setting is separate from the Welcome screen feature in
Windows XP and Windows Vista; if that feature is disabled, this setting is not
disabled. If you configure a computer for automatic logon, anyone who can
physically gain access to the computer can also gain access to everything that is
on the computer, including any network or networks to which the computer is
connected. Also, if you enable automatic logon, the password is stored in the
registry in plaintext, and the specific registry key that stores this value is
remotely readable by the Authenticated Users group. The recommended state for this
setting is: Disabled."
rationale: "If you configure a computer for automatic logon, anyone who can
physically gain access to the computer can also gain access to everything that is
on the computer, including any network or networks that the computer is connected
to. Also, if you enable automatic logon, the password is stored in the registry in
plaintext. The specific registry key that stores this setting is remotely readable
by the Authenticated Users group. As a result, this entry is appropriate only if
the computer is physically secured and if you ensure that untrusted users cannot
remotely see the registry."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\MSS (Legacy)\\MSS: (AutoAdminLogon) Enable Automatic Logon (not
recommended) Note: This Group Policy path does not exist by default. An additional
Group Policy template (MSS-legacy.admx/adml) is required - it is available from
this TechNet blog post: The MSS settings - Microsoft Security Guidance blog."
compliance:
- cis: ["18.4.1"]
- cis_csc: ["16"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- https://support.microsoft.com/en-us/help/324737/how-to-turn-on-automatic-
logon-in-windows
- https://blogs.technet.microsoft.com/secguide/2016/10/02/the-mss-settings/
- 'CCE-37067-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
-> AutoAdminLogon -> 0'
# 18.4.5 Ensure 'MSS: (KeepAliveTime) How often keep-alive packets are sent in
milliseconds' is set to 'Enabled: 300,000 or 5 minutes'
- id: 16608
title: "Ensure 'MSS: (KeepAliveTime) How often keep-alive packets are sent in
milliseconds' is set to 'Enabled: 300,000 or 5 minutes (recommended)'"
description: "This value controls how often TCP attempts to verify that an idle
connection is still intact by sending a keep-alive packet."
rationale: "An attacker who is able to connect to network applications could
establish numerous connections to cause a DoS condition."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 300,000 or 5 minutes (recommended): Computer
Configuration\\Policies\\Administrative Templates\\MSS (Legacy)\\MSS:
(KeepAliveTime) How often keep-alive packets are sent in milliseconds."
compliance:
- cis: ["18.4.5"]
- cis_csc: ["9"]
- pci_dss: ["1.3.3"]
- tsc: ["A1.1","CC6.1","CC7.2"]
- nist_800_53: ["SC.5"]
references:
- 'CCE-36868-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters ->
KeepAliveTime -> 300000'
# 18.4.12 Ensure 'MSS: (WarningLevel) Percentage threshold for the security event
log at which the system will generate a warning' is set to 'Enabled: 90% or less'
- id: 16615
title: "Ensure 'MSS: (WarningLevel) Percentage threshold for the security event
log at which the system will generate a warning' is set to 'Enabled: 90% or less'"
description: "This setting can generate a security audit in the Security event
log when the log reaches a user-defined threshold. The recommended state for this
setting is: Enabled: 90% or less. Note: If log settings are configured to Overwrite
events as needed or Overwrite events older than x days, this event will not be
generated."
rationale: "If the Security log reaches 90 percent of its capacity and the
computer has not been configured to overwrite events as needed, more recent events
will not be written to the log. If the log reaches its capacity and the computer
has been configured to shut down when it can no longer record events to the
Security log, the computer will shut down and will no longer be available to
provide network services."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 90% or less: Computer Configuration\\Policies\\
Administrative Templates\\MSS (Legacy)\\MSS: (WarningLevel) Percentage threshold
for the security event log at which the system will generate a warning Note: This
Group Policy path does not exist by default. An additional Group Policy template
(MSS-legacy.admx/adml) is required - it is available from this TechNet blog post:
The MSS settings - Microsoft Security Guidance blog."
compliance:
- cis: ["18.4.12"]
- cis_csc: ["6.3"]
- pci_dss: ["10.7"]
references:
- https://blogs.technet.microsoft.com/secguide/2016/10/02/the-mss-settings/
- 'CCE-36880-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog\Security -
> WarningLevel -> n:^(\d+) compare <= 90'
###############################################
# 18.5 Network
###############################################
# 18.5.4.1 Set 'NetBIOS node type' to 'P-node' (Ensure NetBT Parameter 'NodeType'
is set to '0x2 (2)')
- id: 16616
title: "Set 'NetBIOS node type' to 'P-node' (Ensure NetBT Parameter 'NodeType'
is set to '0x2 (2)')"
description: "This parameter determines which method NetBIOS over TCP/IP
(NetBT) will use to register and resolve names. A B-node (broadcast) system only
uses broadcasts. A P-node (point-to-point) system uses only name queries to a name
server (WINS). An M-node (mixed) system broadcasts first, then queries the name
server (WINS). An H-node (hybrid) system queries the name server (WINS) first, then
broadcasts. The recommended state for this setting is: NodeType - 0x2 (2) (P-node /
point-to-point)."
rationale: "In order to help mitigate the risk of NetBIOS Name Service (NBT-NS)
poisoning attacks, setting the node type to P-node will prevent the system from
sending out NetBIOS broadcasts."
remediation: "To establish the recommended configuration, set the following
Registry value to 0x2 (2) (DWORD) : HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\
Services\\NetBT\\Parameters:NodeType"
compliance:
- cis: ["18.5.4.1"]
- cis_csc: ["9"]
- pci_dss: ["2.2.3"]
- nist_800_53: ["CM.1"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["CC5.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NetBT\Parameters ->
NodeType -> 2'
###############################################
# 18.5.5 Fonts
###############################################
# 18.5.5.1 Ensure 'Enable Font Providers' is set to 'Disabled' (Scored)
- id: 16618
title: "Ensure 'Enable Font Providers' is set to 'Disabled'"
description: "This policy setting determines whether Windows is allowed to
download fonts and font catalog data from an online font provider.The recommended
state for this setting is: Disabled ."
rationale: "In an enterprise managed environment the IT department should be
managing the changes to the system configuration, to ensure all changes are tested
and approved."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\Network\\Fonts\\Enable Font Providers Note: This Group Policy path may
not exist by default. It is provided by the Group Policy template
GroupPolicy.admx/adml that is included with the Microsoft Windows 10 Release 1607 &
Server 2016 Administrative Templates (or newer)."
compliance:
- cis: ["18.5.5.1"]
- cis_csc: ["3", "13"]
- pci_dss: ["6.4.5"]
- tsc: ["CC6.6","CC7.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
EnableFontProviders -> 0'
# 18.5.11.3 (L1) Ensure 'Prohibit use of Internet Connection Sharing on your DNS
domain network' is set to 'Enabled' (Scored)
- id: 16624
title: "Ensure 'Prohibit use of Internet Connection Sharing on your DNS domain
network' is set to 'Enabled'"
description: "Although this \"legacy\" setting traditionally applied to the use
of Internet Connection Sharing (ICS) in Windows 2000, Windows XP & Server 2003,
this setting now freshly applies to the Mobile Hotspot feature in Windows 10 &
Server 2016. The recommended state for this setting is: Enabled ."
rationale: "Non-administrators should not be able to turn on the Mobile Hotspot
feature and open their Internet connectivity up to nearby mobile devices."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\Network\\Network Connections\\Prohibit use of Internet Connection
Sharing on your DNS domain network Note: This Group Policy path is provided by the
Group Policy template NetworkConnections.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.5.11.3"]
- cis_csc: ["9.1"]
- pci_dss: ["1.3.5"]
- tsc: ["CC6.6"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Network
Connections -> NC_ShowSharedAccessUI -> 0'
# 18.5.11.4 (L1) Ensure 'Require domain users to elevate when setting a network's
location' is set to 'Enabled' (Scored)
- id: 16625
title: "Ensure 'Require domain users to elevate when setting a network's
location' is set to 'Enabled'"
description: "This policy setting determines whether to require domain users to
elevate when setting a network's location. The recommended state for this setting
is: Enabled ."
rationale: "Allowing regular users to set a network location increases the risk
and attack surface."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\Network\\Network Connections\\Require domain users to elevate when
setting a network's location Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template NetworkConnections.admx/adml that is
included with the Microsoft Windows 7 & Server 2008 R2 Administrative Templates (or
newer)."
compliance:
- cis: ["18.5.11.4"]
- cis_csc: ["5.1"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-38188-9'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Network
Connections -> NC_StdDomainUserSetLocation -> 1'
# 18.5.14.1 Ensure 'Hardened UNC Paths' is set to 'Enabled, with "Require Mutual
Authentication" and "Require Integrity" set for all NETLOGON and SYSVOL shares'
- id: 16626
title: "Ensure 'Hardened UNC Paths' is set to 'Enabled, with \"Require Mutual
Authentication\" and \"Require Integrity\" set for all NETLOGON and SYSVOL shares'"
description: "This policy setting configures secure access to UNC paths. The
recommended state for this setting is: Enabled, with \"Require Mutual
Authentication\" and \"Require Integrity\" set for all NETLOGON and SYSVOL
shares ."
rationale: "In February 2015, Microsoft released a new control mechanism to
mitigate a security risk in Group Policy as part of the MS15-011 / MSKB 3000483
security update. This mechanism requires both the installation of the new security
update and also the deployment of specific group policy settings to all computers
on the domain from Windows Vista / Server 2008 (non-R2) or newer (the associated
security patch to enable this feature was not released for Server 2003). A new
group policy template ( NetworkProvider.admx/adml ) was also provided with the
security update. Once the new GPO template is in place, the following are the
minimum requirements to remediate the Group Policy security risk: \\\\*\\NETLOGON
RequireMutualAuthentication=1, RequireIntegrity=1 \\\\*\\SYSVOL
RequireMutualAuthentication=1, RequireIntegrity=1"
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled with the following paths configured, at a
minimum: \\\\*\\NETLOGON RequireMutualAuthentication=1, RequireIntegrity=1 \\\\*\\
SYSVOL RequireMutualAuthentication=1, RequireIntegrity=1 Computer Configuration\\
Policies\\Administrative Templates\\Network\\Network Provider\\Hardened UNC Paths
Note: This Group Policy path does not exist by default. An additional Group Policy
template ( NetworkProvider.admx/adml ) is required"
compliance:
- cis: ["18.5.14.1"]
- cis_csc: ["3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\
HardenedPaths -> \\*\NETLOGON -> r:RequireMutualAuthentication=1 &&
r:RequireIntegrity=1'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\NetworkProvider\
HardenedPaths -> \\*\SYSVOL -> r:RequireMutualAuthentication=1 &&
r:RequireIntegrity=1'
# 18.5.20.2 (L2) Ensure 'Prohibit access of the Windows Connect Now wizards' is set
to 'Enabled' (Scored)
- id: 16629
title: "Ensure 'Prohibit access of the Windows Connect Now wizards' is set to
'Enabled'"
description: "This policy setting prohibits access to Windows Connect Now (WCN)
wizards."
rationale: "Allowing standard users to access the Windows Connect Now wizard
increases the risk and attack surface."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\Network\Network\\Windows Connect Now\\Prohibit access of the Windows
Connect Now wizards."
compliance:
- cis: ["18.5.20.2"]
- cis_csc: ["15.4"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36109-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WCN\UI ->
DisableWcnUi -> 1'
###############################################
# 18.7 Start Menu and Taskbar
###############################################
# 18.7.1.1 (L2) Ensure 'Turn off notifications network usage' is set to 'Enabled'
(Scored)
- id: 16632
title: "Ensure 'Turn off notifications network usage' is set to 'Enabled'"
description: "This policy setting blocks applications from using the network to
send notifications to update tiles, tile badges, toast, or raw notifications. This
policy setting turns off the connection between Windows and the Windows Push
Notification Service (WNS). This policy setting also stops applications from being
able to poll application services to update tiles. The recommended state for this
setting is: Enabled ."
rationale: "Windows Push Notification Services (WNS) is a mechanism to receive
3rd-party notifications and updates from the cloud/Internet. In a high security
environment, external systems, especially those hosted outside the organization,
should be prevented from having an impact on the secure workstations."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\Start Menu and Taskbar\\Turn off notifications network usage Note: This
Group Policy path may not exist by default. It is provided by the Group Policy
template WPN.admx/adml that is included with the Microsoft Windows 8.0 & Server
2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.7.1.1"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\
PushNotifications -> NoCloudApplicationNotification -> 1'
###############################################
# 18.8 System
###############################################
######################################
# 18.8.3 Audit Process Creation
######################################
- id: 16633
title: "Ensure 'Include command line in process creation events' is set to
'Disabled'"
description: "This policy setting determines what information is logged in
security audit events when a new process has been created. The recommended state
for this setting is: Disabled."
rationale: "When this policy setting is enabled, any user who has read access
to the security events can read the command-line arguments for any successfully
created process. Command-line arguments may contain sensitive or private
information such as passwords or user data."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Audit Process Creation\\Include command line in process creation
events Note: This Group Policy path may not exist by default. It is provided by the
Group Policy template AuditSettings.admx/adml that is included with the Microsoft
Windows 8.1 & Server 2012 R2 Administrative Templates (or newer)."
compliance:
- cis: ["18.8.3.1"]
- cis_csc: ["16.14"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- 'CCE-36925-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System\Audit -> ProcessCreationIncludeCmdLine_Enabled -> 0'
######################################
# 18.8.4 Credentials Delegation
######################################
# 18.8.4.1 (L1) Ensure 'Encryption Oracle Remediation' is set to 'Enabled: Force
Updated Clients' (Scored)
- id: 16634
title: "Ensure 'Encryption Oracle Remediation' is set to 'Enabled: Force
Updated Clients'"
description: "Some versions of the CredSSP protocol that is used by some
applications (such as Remote Desktop Connection) are vulnerable to an encryption
oracle attack against the client. This policy controls compatibility with
vulnerable clients and servers and allows you to set the level of protection
desired for the encryption oracle vulnerability. The recommended state for this
setting is: Enabled: Force Updated Clients ."
rationale: "This setting is important to mitigate the CredSSP encryption oracle
vulnerability, for which information was published by Microsoft on 03/13/2018 in
CVE-2018-0886 | CredSSP Remote Code Execution Vulnerability. All versions of
Windows Server from Server 2008 (non-R2) onwards are affected by this
vulnerability, and will be compatible with this recommendation provided that they
have been patched up through May 2018 (or later)."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Force Updated Clients : Computer Configuration\\
Policies\\Administrative Templates\\System\\Credentials Delegation\\Encryption
Oracle Remediation Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template CredSsp.admx/adml that is included with the
Microsoft Windows 10 Release 1803 Administrative Templates (or newer)."
compliance:
- cis: ["18.8.4.1"]
- cis_csc: ["16"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System\CredSSP\Parameters -> AllowEncryptionOracle -> 0'
##########################################
# 18.8.14 Early Launch Antimalware
##########################################
# 18.8.14.1 (L1) Ensure 'Boot-Start Driver Initialization Policy' is set to
'Enabled: Good, unknown and bad but critical' (Scored)
- id: 16636
title: "Ensure 'Boot-Start Driver Initialization Policy' is set to 'Enabled:
Good, unknown and bad but critical'"
description: "This policy setting allows you to specify which boot-start
drivers are initialized based on a classification determined by an Early Launch
Antimalware boot-start driver. The Early Launch Antimalware boot-start driver can
return the following classifications for each boot-start driver: - Good: The driver
has been signed and has not been tampered with. - Bad: The driver has been
identified as malware. It is recommended that you do not allow known bad drivers to
be initialized. - Bad, but required for boot: The driver has been identified as
malware, but the computer cannot successfully boot without loading this driver. -
Unknown: This driver has not been attested to by your malware detection application
and has not been classified by the Early Launch Antimalware boot-start driver. If
you enable this policy setting you will be able to choose which boot-start drivers
to initialize the next time the computer is started. If your malware detection
application does not include an Early Launch Antimalware boot- start driver or if
your Early Launch Antimalware boot-start driver has been disabled, this setting has
no effect and all boot-start drivers are initialized. The recommended state for
this setting is: Enabled: Good, unknown and bad but critical."
rationale: "This policy setting helps reduce the impact of malware that has
already infected your system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Good, unknown and bad but critical: Computer
Configuration\\Policies\\Administrative Templates\\System\\Early Launch
Antimalware\\Boot-Start Driver Initialization Policy Note: This Group Policy path
may not exist by default. It is provided by the Group Policy template
EarlyLaunchAM.admx/adml that is included with the Microsoft Windows 8.0 & Server
2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.14.1"]
- cis_csc: ["8"]
- pci_dss: ["5.1.1"]
- nist_800_53: ["SI.3"]
- tsc: ["CC6.8"]
references:
- 'CCE-37912-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Policies\EarlyLaunch ->
DriverLoadPolicy -> 3'
# 18.8.21.2 (L1) Ensure 'Configure registry policy processing: Do not apply during
periodic background processing' is set to 'Enabled: FALSE' (Scored)
- id: 16637
title: "Ensure 'Configure registry policy processing: Do not apply during
periodic background processing' is set to 'Enabled: FALSE'"
description: "The 'Do not apply during periodic background processing' option
prevents the system from updating affected policies in the background while the
computer is in use. When background updates are disabled, policy changes will not
take effect until the next user logon or system restart. The recommended state for
this setting is: Enabled: FALSE (unchecked)."
rationale: "Setting this option to false (unchecked) will ensure that domain
policy changes take effect more quickly, as compared to waiting until the next user
logon or system restart."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled, then set the Do not apply during periodic background
processing option to FALSE (unchecked): Computer Configuration\\Policies\\
Administrative Templates\\System\\Group Policy\\Configure registry policy
processing Note: This Group Policy path may not exist by default. It is provided by
the Group Policy template GroupPolicy.admx/adml that is included with the Microsoft
Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.21.2"]
- cis_csc: ["3.7"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36169-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Group Policy\
{35378EAC-683F-11D2-A89A-00C04FBBCFA2} -> NoBackgroundPolicy -> 0'
# 18.8.21.3 (L1) Ensure 'Configure registry policy processing: Process even if the
Group Policy objects have not changed' is set to 'Enabled: TRUE' (Scored)
- id: 16638
title: "Ensure 'Configure registry policy processing: Process even if the Group
Policy objects have not changed' is set to 'Enabled: TRUE'"
description: "The 'Process even if the Group Policy objects have not changed'
option updates and reapplies policies even if the policies have not changed. The
recommended state for this setting is: Enabled: TRUE (checked)."
rationale: "Setting this option to true (checked) will ensure unauthorized
changes that might have been configured locally are forced to match the domain-
based Group Policy settings again."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled, then set the Process even if the Group Policy objects
have not changed option to TRUE (checked): Computer Configuration\\Policies\\
Administrative Templates\\System\\Group Policy\\Configure registry policy
processing Note: This Group Policy path may not exist by default. It is provided by
the Group Policy template GroupPolicy.admx/adml that is included with the Microsoft
Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.21.3"]
- cis_csc: ["3.7"]
- pci_dss: ["11.5.1"]
- tsc: ["PI1.4","PI1.5","CC6.1","CC6.8","CC7.2","CC7.3","CC7.4"]
references:
- 'CCE-36169-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Group Policy\
{35378EAC-683F-11D2-A89A-00C04FBBCFA2} -> NoGPOListChanges -> 0'
# 18.8.21.5 (L1) Ensure 'Turn off background refresh of Group Policy' is set to
'Disabled' (Scored)
- id: 16640
title: "Ensure 'Turn off background refresh of Group Policy' is set to
'Disabled'"
description: "This policy setting prevents Group Policy from being updated
while the computer is in use. This policy setting applies to Group Policy for
computers, users and Domain Controllers. The recommended state for this setting is:
Disabled."
rationale: "This setting ensures that group policy changes take effect more
quickly, as compared to waiting until the next user logon or system restart."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Group Policy\\Turn off background refresh of Group Policy Note:
This Group Policy path is provided by the Group Policy template
GroupPolicy.admx/adml that is included with all versions of the Microsoft Windows
Administrative Templates."
compliance:
- cis: ["18.8.21.5"]
- cis_csc: ["3.7"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-37712-7'
condition: all
rules:
- 'not r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\
Policies\System -> DisableBkGndGroupPolicy'
# 18.8.22.1.1 (L1) Ensure 'Turn off downloading of print drivers over HTTP' is set
to 'Enabled' (Scored)
- id: 16641
title: "Ensure 'Turn off downloading of print drivers over HTTP' is set to
'Enabled'"
description: "This policy setting controls whether the computer can download
print driver packages over HTTP. To set up HTTP printing, printer drivers that are
not available in the standard operating system installation might need to be
downloaded over HTTP. The recommended state for this setting is: Enabled."
rationale: "Users might download drivers that include malicious code."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off downloading of print drivers over HTTP Note: This Group Policy
path is provided by the Group Policy template ICM.admx/adml that is included with
all versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.1"]
- cis_csc: ["2"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36625-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers ->
DisableWebPnPDownload -> 1'
# 18.8.22.1.3 (L2) Ensure 'Turn off handwriting recognition error reporting' is set
to 'Enabled' (Scored)
- id: 16643
title: "Ensure 'Turn off handwriting recognition error reporting' is set to
'Enabled'"
description: "Turns off the handwriting recognition error reporting tool. The
handwriting recognition error reporting tool enables users to report errors
encountered in Tablet PC Input Panel. The tool generates error reports and
transmits them to Microsoft over a secure connection. Microsoft uses these error
reports to improve handwriting recognition in future versions of Windows. The
recommended state for this setting is: Enabled."
rationale: "A person's handwriting is Personally Identifiable Information
(PII), especially when it comes to your signature. As such, it is unacceptable in
many environments to automatically upload PII to a website without explicit
approval by the user."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off handwriting recognition error reporting. Note: This Group Policy
path is provided by the Group Policy template InkWatson.admx/adml that is included
with all versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.3"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36203-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\
HandwritingErrorReports -> PreventHandwritingErrorReports -> 1'
# 18.8.22.1.4 (L2) Ensure 'Turn off Internet Connection Wizard if URL connection is
referring to Microsoft.com' is set to 'Enabled' (Scored)
- id: 16644
title: "Ensure 'Turn off Internet Connection Wizard if URL connection is
referring to Microsoft.com' is set to 'Enabled'"
description: "This policy setting specifies whether the Internet Connection
Wizard can connect to Microsoft to download a list of Internet Service Providers
(ISPs). The recommended state for this setting is: Enabled."
rationale: "In an enterprise managed environment we want to lower the risk of a
user unknowingly exposing sensitive data."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off Internet Connection Wizard if URL connection is referring to
Microsoft.com. Note: This Group Policy path is provided by the Group Policy
template ICM.admx/adml that is included with all versions of the Microsoft Windows
Administrative Templates."
compliance:
- cis: ["18.8.22.1.4"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37163-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Internet
Connection Wizard -> ExitOnMSICW -> 1'
# 18.8.22.1.5 (L1) Ensure 'Turn off Internet download for Web publishing and online
ordering wizards' is set to 'Enabled' (Scored)
- id: 16645
title: "Ensure 'Turn off Internet download for Web publishing and online
ordering wizards' is set to 'Enabled'"
description: "This policy setting controls whether Windows will download a list
of providers for the Web publishing and online ordering wizards. The recommended
state for this setting is: Enabled."
rationale: "Although the risk is minimal, enabling this setting will reduce the
possibility of a user unknowingly downloading malicious content through this
feature."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off Internet download for Web publishing and online ordering wizards
Note: This Group Policy path is provided by the Group Policy template ICM.admx/adml
that is included with all versions of the Microsoft Windows Administrative
Templates."
compliance:
- cis: ["18.8.22.1.5"]
- cis_csc: ["7"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36096-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> NoWebServices -> 1'
# 18.8.22.1.6 (L1) Ensure 'Turn off printing over HTTP' is set to 'Enabled'
(Scored)
- id: 16646
title: "Ensure 'Turn off printing over HTTP' is set to 'Enabled'"
description: "This policy setting allows you to disable the client computer's
ability to print over HTTP, which allows the computer to print to printers on the
intranet as well as the Internet. The recommended state for this setting is:
Enabled."
rationale: "Information that is transmitted over HTTP through this capability
is not protected and can be intercepted by malicious users. For this reason, it is
not often used in enterprise managed environments."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off printing over HTTP Note: This Group Policy path is provided by
the Group Policy template ICM.admx/adml that is included with all versions of the
Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.6"]
- cis_csc: ["13.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36920-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers ->
DisableHTTPPrinting -> 1'
# 18.8.22.1.8 (L2) Ensure 'Turn off Search Companion content file updates' is set
to 'Enabled' (Scored)
- id: 16648
title: "Ensure 'Turn off Search Companion content file updates' is set to
'Enabled'"
description: "This policy setting specifies whether Search Companion should
automatically download content updates during local and Internet searches. The
recommended state for this setting is: Enabled."
rationale: "There is a small risk that users will unknowingly reveal sensitive
information because of the topics they are searching for. This risk is very low
because even if this setting is enabled users still must submit search queries to
the desired search engine in order to perform searches."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off Search Companion content file updates. Note: This Group Policy
path is provided by the Group Policy template ICM.admx/adml that is included with
all versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.8"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36884-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\SearchCompanion ->
DisableContentFileUpdates -> 1'
# 18.8.22.1.9 (L2) Ensure 'Turn off the "Order Prints" picture task' is set to
'Enabled' (Scored)
- id: 16649
title: "Ensure 'Turn off the \"Order Prints\" picture task' is set to
'Enabled'"
description: "This policy setting specifies whether the \"Order Prints Online\"
task is available from Picture Tasks in Windows folders. The Order Prints Online
Wizard is used to download a list of providers and allow users to order prints
online. The recommended state for this setting is: Enabled."
rationale: "In an enterprise managed environment we want to lower the risk of a
user unknowingly exposing sensitive data."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off the \"Order Prints\" picture task. Note: This Group Policy path
is provided by the Group Policy template ICM.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.9"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-38275-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> NoOnlinePrintsWizard -> 1'
# 18.8.22.1.10 (L2) Ensure 'Turn off the "Publish to Web" task for files and
folders' is set to 'Enabled' (Scored)
- id: 16650
title: "Ensure 'Turn off the \"Publish to Web\" task for files and folders' is
set to 'Enabled'"
description: "This policy setting specifies whether the tasks Publish this file
to the Web, Publish this folder to the Web, and Publish the selected items to the
Web are available from File and Folder Tasks in Windows folders. The Web Publishing
wizard is used to download a list of providers and allow users to publish content
to the Web. The recommended state for this setting is: Enabled."
rationale: "Users may publish confidential or sensitive information to a public
service outside of the control of the organization."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off the \"Publish to Web\" task for files and folders Note: This
Group Policy path is provided by the Group Policy template ICM.admx/adml that is
included with all versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.10"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37090-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> NoPublishingWizard -> 1'
# 18.8.22.1.11 (L2) Ensure 'Turn off the Windows Messenger Customer Experience
Improvement Program' is set to 'Enabled' (Scored)
- id: 16651
title: "Ensure 'Turn off the Windows Messenger Customer Experience Improvement
Program' is set to 'Enabled'"
description: "This policy setting specifies whether Windows Messenger can
collect anonymous information about how the Windows Messenger software and service
is used. Microsoft uses information collected through the Customer Experience
Improvement Program to detect software flaws so that they can be corrected more
quickly, enabling this setting will reduce the amount of data Microsoft is able to
gather for this purpose. The recommended state for this setting is: Enabled."
rationale: "Large enterprise managed environments may not want to have
information collected by Microsoft from managed client computers."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off the Windows Messenger Customer Experience Improvement Program.
Note: This Group Policy path is provided by the Group Policy template ICM.admx/adml
that is included with all versions of the Microsoft Windows Administrative
Templates."
compliance:
- cis: ["18.8.22.1.11"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36628-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Messenger\Client -> CEIP
-> 2'
# 18.8.22.1.13 (L2) Ensure 'Turn off Windows Error Reporting' is set to 'Enabled'
(Scored)
- id: 16653
title: "Ensure 'Turn off Windows Error Reporting' is set to 'Enabled'"
description: "This policy setting controls whether or not errors are reported
to Microsoft. Error Reporting is used to report information about a system or
application that has failed or has stopped responding and is used to improve the
quality of the product. The recommended state for this setting is: Enabled."
rationale: "If a Windows Error occurs in a secure, enterprise managed
environment, the error should be reported directly to IT staff for troubleshooting
and remediation. There is no benefit to the corporation to report these errors
directly to Microsoft, and there is some risk of unknowingly exposing sensitive
data as part of the error."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Internet Communication Management\\Internet Communication
settings\\Turn off Windows Error Reporting. Note: This Group Policy path is
provided by the Group Policy template ICM.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.8.22.1.13"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-35964-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Error
Reporting -> Disabled -> 1'
######################################
# 18.8.25 Kerberos
######################################
# 18.8.25.1 (L2) Ensure 'Support device authentication using certificate' is set to
'Enabled: Automatic' (Scored)
- id: 16654
title: "Ensure 'Support device authentication using certificate' is set to
'Enabled: Automatic'"
description: "This policy setting allows you to set support for Kerberos to
attempt authentication using the certificate for the device to the domain. Support
for device authentication using certificate will require connectivity to a DC in
the device account domain which supports certificate authentication for computer
accounts. The recommended state for this setting is: Enabled: Automatic ."
rationale: "Having stronger device authentication with the use of certificates
is strongly encouraged over standard username and password authentication. Having
this set to Automatic will allow certificate based authentication to be used
whenever possible."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Automatic : Computer Configuration\\Policies\\
Administrative Templates\\System\\Kerberos\\Support device authentication using
certificate Note: This Group Policy path may not exist by default. It is provided
by the Group Policy template Kerberos.admx/adml that is included with the Microsoft
Windows 10 RTM (Release 1507) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.25.1"]
- cis_csc: ["1.6"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System\kerberos\parameters -> DevicePKInitBehavior -> 0'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
System\kerberos\parameters -> DevicePKInitEnabled -> 1'
# 18.8.26.1 (L1) Ensure 'Enumeration policy for external devices incompatible with
Kernel DMA Protection' is set to 'Enabled: Block All' (Scored)
- id: 16655
title: "Ensure 'Enumeration policy for external devices incompatible with
Kernel DMA Protection' is set to 'Enabled: Block All'"
description: "This policy is intended to provide additional security against
external DMA-capable devices. It allows for more control over the enumeration of
external DMA-capable devices that are not compatible with DMA Remapping/device
memory isolation and sandboxing. The recommended state for this setting is:
Enabled: Block All . Note: This policy does not apply to 1394, PCMCIA or
ExpressCard devices. The protection also only applies to Windows 10 R1803 or
higher, and also requires a UEFI BIOS to function."
rationale: "Device memory sandboxing allows the OS to leverage the I/O Memory
Management Unit (IOMMU) of a device to block unpermitted I/O, or memory access, by
the peripheral."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Block All : Computer Configuration\\Policies\\
Administrative Templates\\System\\Kernel DMA Protection\\Enumeration policy for
external devices incompatible with Kernel DMA Protection Note: This Group Policy
path may not exist by default. It is provided by the Group Policy template
DmaGuard.admx/adml that is included with the Microsoft Windows 10 Release 1809 &
Server 2019 Administrative Templates (or newer)."
compliance:
- cis: ["18.8.26.1"]
- cis_csc: ["13.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36920-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Kernel DMA
Protection -> DeviceEnumerationPolicy -> 0'
#######################################
# 18.8.27 Locale Services
#######################################
# 18.8.27.1 (L2) Ensure 'Disallow copying of user input methods to the system
account for sign-in' is set to 'Enabled' (Scored)
- id: 16656
title: "Ensure 'Disallow copying of user input methods to the system account
for sign-in' is set to 'Enabled'"
description: "This policy prevents automatic copying of user input methods to
the system account for use on the sign-in screen. The user is restricted to the set
of input methods that are enabled in the system account. The recommended state for
this setting is: Enabled."
rationale: "This is a way to increase the security of the system account."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Locale Services\\Disallow copying of user input methods to the
system account for sign-in. Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template Globalization.admx/adml that is
included with the Microsoft Windows 8.0 & Server 2012 (non-R2) Administrative
Templates (or newer)."
compliance:
- cis: ["18.8.26.1"]
- cis_csc: ["16.5"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-36343-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Control Panel\
International -> BlockUserInputMethodsForSignIn -> 1'
################################################
# 18.8.28 Logon
################################################
# 18.8.28.1 (L1) Ensure 'Block user from showing account details on sign-in' is set
to 'Enabled' (Scored)
- id: 16657
title: "Ensure 'Block user from showing account details on sign-in' is set to
'Enabled'"
description: "This policy prevents the user from showing account details (email
address or user name) on the sign-in screen. The recommended state for this setting
is: Enabled ."
rationale: "An attacker with access to the console (for example, someone with
physical access or someone who is able to connect to the server through Remote
Desktop Services) could view the name of the last user who logged on to the server.
The attacker could then try to guess the password, use a dictionary, or use a
brute-force attack to try and log on."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\System\\Logon\\Block user from showing account details on sign-in Note:
This Group Policy path may not exist by default. It is provided by the Group Policy
template Logon.admx/adml that is included with the Microsoft Windows 10 Release
1607 & Server 2016 Administrative Templates (or newer)."
compliance:
- cis: ["18.8.28.1"]
- cis_csc: ["16.5"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
BlockUserFromShowingAccountDetailsOnSignin -> 1'
# 18.8.28.2 (L1) Ensure 'Do not display network selection UI' is set to 'Enabled'
(Scored)
- id: 16658
title: "Ensure 'Do not display network selection UI' is set to 'Enabled'"
description: "This policy setting allows you to control whether anyone can
interact with available networks UI on the logon screen. The recommended state for
this setting is: Enabled."
rationale: "An unauthorized user could disconnect the PC from the network or
can connect the PC to other available networks without signing into Windows."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Logon\\Do not display network selection UI Note: This Group
Policy path may not exist by default. It is provided by the Group Policy template
Logon.admx/adml that is included with the Microsoft Windows 8.1 & Server 2012 R2
Administrative Templates (or newer)."
compliance:
- cis: ["18.8.28.2"]
- cis_csc: ["5"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-38353-9'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
DontDisplayNetworkSelectionUI -> 1'
# 18.8.28.5 (L1) Ensure 'Turn off app notifications on the lock screen' is set to
'Enabled' (Scored)
- id: 16661
title: "Ensure 'Turn off app notifications on the lock screen' is set to
'Enabled'"
description: "This policy setting allows you to prevent app notifications from
appearing on the lock screen. The recommended state for this setting is: Enabled."
rationale: "App notifications might display sensitive business or personal
data."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Logon\\Turn off app notifications on the lock screen Note: This
Group Policy path may not exist by default. It is provided by the Group Policy
template Logon.admx/adml that is included with the Microsoft Windows 8.0 & Server
2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.28.5"]
- cis_csc: ["16.5"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-35893-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
DisableLockScreenAppNotifications -> 1'
# 18.8.28.6 (L1) Ensure 'Turn off picture password sign-in' is set to 'Enabled'
(Scored)
- id: 16662
title: "Ensure 'Turn off picture password sign-in' is set to 'Enabled'"
description: "This policy setting allows you to control whether a domain user
can sign in using a picture password. The recommended state for this setting is:
Enabled . Note: If the picture password feature is permitted, the user's domain
password is cached in the system vault when using it."
rationale: "Picture passwords bypass the requirement for a typed complex
password. In a shared work environment, a simple shoulder surf where someone
observed the on-screen gestures would allow that person to gain access to the
system without the need to know the complex password. Vertical monitor screens with
an image are much more visible at a distance than horizontal key strokes,
increasing the likelihood of a successful observation of the mouse gestures."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\System\\Logon\\Turn off picture password sign-in Note: This Group Policy
path may not exist by default. It is provided by the Group Policy template
CredentialProviders.admx/adml that is included with the Microsoft Windows 8.0 &
Server 2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.28.6"]
- cis_csc: ["16.5"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
BlockDomainPicturePassword -> 1'
#######################################
# 18.8.31 OS Policies
#######################################
# 18.8.31.1 (L2) Ensure 'Allow Clipboard synchronization across devices' is set to
'Disabled' (Scored)
- id: 16664
title: "Ensure 'Allow Clipboard synchronization across devices' is set to
'Disabled'"
description: "This policy setting determines whether Clipboard contents can be
synchronized across devices. The recommended state for this setting is: Disabled ."
rationale: "Due to privacy concerns, clipboard data should stay local to the
system and not synced across devices."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\OS Policies\\Allow Clipboard synchronization across devices"
compliance:
- cis: ["18.8.31.1"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
AllowCrossDeviceClipboard -> 0'
#######################################
# 18.8.34 Power Management
#######################################
#######################################
# 18.8.34.6 Sleep Settings
#######################################
# 18.8.34.6.1 (L2) Ensure 'Allow network connectivity during connected-standby (on
battery)' is set to 'Disabled' (Scored)
- id: 16666
title: "Ensure 'Allow network connectivity during connected-standby (on
battery)' is set to 'Disabled'"
description: "This policy setting allows you to control the network
connectivity state in standby on modern standby-capable systems. The recommended
state for this setting is: Disabled ."
rationale: "Disabling this setting ensures that the computer will not be
accessible to attackers over a WLAN network while left unattended, on battery and
in a sleep state."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\System\\Power Management\\Sleep Settings\\Allow network connectivity
during connected-standby (on battery) Note: This Group Policy path may not exist by
default. It is provided by the Group Policy template Power.admx/adml that is
included with the Microsoft Windows 10 Release 1607 & Server 2016 Administrative
Templates (or newer)."
compliance:
- cis: ["18.8.34.6.1"]
- cis_csc: ["9"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\
f15576e8-98b7-4186-b944-eafa664402d9 -> DCSettingIndex -> 0'
# 18.8.34.6.3 (L1) Ensure 'Require a password when a computer wakes (on battery)'
is set to 'Enabled' (Scored)
- id: 16668
title: "Ensure 'Require a password when a computer wakes (on battery)' is set
to 'Enabled'"
description: "Specifies whether or not the user is prompted for a password when
the system resumes from sleep. The recommended state for this setting is: Enabled."
rationale: "Enabling this setting ensures that anyone who wakes an unattended
computer from sleep state will have to provide logon credentials before they can
access the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Power Management\\Sleep Settings\\Require a password when a
computer wakes (on battery) Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template Power.admx/adml that is included with
the Microsoft Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or
newer)."
compliance:
- cis: ["18.8.33.6.3"]
- cis_csc: ["16.5"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
references:
- 'CCE-36881-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\
0e796bdb-100d-47d6-a2d5-f7d2daa51f51 -> DCSettingIndex -> 1'
# 18.8.34.6.4 (L1) Ensure 'Require a password when a computer wakes (plugged in)'
is set to 'Enabled' (Scored)
- id: 16669
title: "Ensure 'Require a password when a computer wakes (plugged in)' is set
to 'Enabled'"
description: "Specifies whether or not the user is prompted for a password when
the system resumes from sleep. The recommended state for this setting is: Enabled."
rationale: "Enabling this setting ensures that anyone who wakes an unattended
computer from sleep state will have to provide logon credentials before they can
access the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Power Management\\Sleep Settings\\Require a password when a
computer wakes (plugged in) Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template Power.admx/adml that is included with
the Microsoft Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or
newer)."
compliance:
- cis: ["18.8.33.6.4"]
- cis_csc: ["16.5"]
- pci_dss: ["8.2"]
- tsc: ["CC6.1"]
references:
- 'CCE-37066-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Power\PowerSettings\
0e796bdb-100d-47d6-a2d5-f7d2daa51f51 -> ACSettingIndex -> 1'
# 18.8.37.1 (L1) Ensure 'Enable RPC Endpoint Mapper Client Authentication' is set
to 'Enabled' (MS only) (Scored)
- id: 16672
title: "Ensure 'Enable RPC Endpoint Mapper Client Authentication' is set to
'Enabled'"
description: "This policy setting controls whether RPC clients authenticate
with the Endpoint Mapper Service when the call they are making contains
authentication information. The Endpoint Mapper Service on computers running
Windows NT4 (all service packs) cannot process authentication information supplied
in this manner. This policy setting can cause a specific issue with 1-way forest
trusts if it is applied to the trusting domain DCs (see Microsoft KB3073942), so we
do not recommend applying it to Domain Controllers. Note: This policy will not be
in effect until the system is rebooted. The recommended state for this setting is:
Enabled."
rationale: "Anonymous access to RPC services could result in accidental
disclosure of information to unauthenticated users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Remote Procedure Call\\Enable RPC Endpoint Mapper Client
Authentication Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template RPC.admx/adml that is included with the
Microsoft Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.8.37.1"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.3"]
- nist_800_53: ["CM.1"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["CC5.2"]
references:
- https://support.microsoft.com/en-us/help/3073942/rpc-endpoint-mapper-
client-authentication-prevents-users-and-groups-fr
- 'CCE-37346-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Rpc ->
EnableAuthEpResolution -> 1'
# 18.8.50.1.2 (L2) Ensure 'Enable Windows NTP Server' is set to 'Disabled' (MS
only) (Scored)
- id: 16678
title: "Ensure 'Enable Windows NTP Server' is set to 'Disabled'"
description: "This policy setting allows you to specify whether the Windows NTP
Server is enabled."
rationale: "The configuration of proper time synchronization is critically
important in an enterprise managed environment both due to the sensitivity of
Kerberos authentication timestamps and also to ensure accurate security logging."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\System\\Windows Time Service\\Time Providers\\Enable Windows NTP
Server."
compliance:
- cis: ["18.8.50.1.2"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- nist_800_53: ["AU.8"]
- tsc: ["CC6.3"]
references:
- 'CCE-37319-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\W32Time\TimeProviders\
NtpServer -> Enabled -> 0'
################################################
# 18.9 Windows Components
################################################
# 18.9.4.1 (L2) Ensure 'Allow a Windows app to share application data between
users' is set to 'Disabled' (Scored)
- id: 16679
title: "Ensure 'Allow a Windows app to share application data between users' is
set to 'Disabled'"
description: "Manages a Windows app's ability to share data between users who
have installed the app. Data is shared through the SharedLocal folder. This folder
is available through the Windows.Storage API. The recommended state for this
setting is: Disabled ."
rationale: "Users of a system could accidentally share sensitive data with
other users on the same system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\App Package Deployment\\Allow a Windows app to share
application data between users Note: This Group Policy path may not exist by
default. It is provided by the Group Policy template AppxPackageManager.admx/adml
that is included with the Microsoft Windows 10 RTM (Release 1507) Administrative
Templates (or newer)."
compliance:
- cis: ["18.9.4.1"]
- cis_csc: ["14.4"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\
AppModel\StateManager -> AllowSharedLocalAppData -> 0'
# 18.9.8.2 (L1) Ensure 'Set the default behavior for AutoRun' is set to 'Enabled:
Do not execute any autorun commands' (Scored)
- id: 16682
title: "Ensure 'Set the default behavior for AutoRun' is set to 'Enabled: Do
not execute any autorun commands'"
description: "This policy setting sets the default behavior for Autorun
commands. Autorun commands are generally stored in autorun.inf files. They often
launch the installation program or other routines. The recommended state for this
setting is: Enabled: Do not execute any autorun commands."
rationale: "Prior to Windows Vista, when media containing an autorun command is
inserted, the system will automatically execute the program without user
intervention. This creates a major security concern as code may be executed without
user's knowledge. The default behavior starting with Windows Vista is to prompt the
user whether autorun command is to be run. The autorun command is represented as a
handler in the Autoplay dialog."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Do not execute any autorun commands: Computer
Configuration\\Policies\\Administrative Templates\\Windows Components\\AutoPlay
Policies\\Set the default behavior for AutoRun Note: This Group Policy path may not
exist by default. It is provided by the Group Policy template AutoPlay.admx/adml
that is included with the Microsoft Windows 8.0 & Server 2012 (non-R2)
Administrative Templates (or newer)."
compliance:
- cis: ["18.9.8.2"]
- cis_csc: ["8.3"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-38217-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> NoAutorun -> 1'
# 18.9.8.3 (L1) Ensure 'Turn off Autoplay' is set to 'Enabled: All drives' (Scored)
- id: 16683
title: "Ensure 'Turn off Autoplay' is set to 'Enabled: All drives'"
description: "Autoplay starts to read from a drive as soon as you insert media
in the drive, which causes the setup file for programs or audio media to start
immediately. An attacker could use this feature to launch a program to damage the
computer or data on the computer. Autoplay is disabled by default on some removable
drive types, such as floppy disk and network drives, but not on CD-ROM drives.
Note: You cannot use this policy setting to enable Autoplay on computer drives in
which it is disabled by default, such as floppy disk and network drives. The
recommended state for this setting is: Enabled: All drives."
rationale: "An attacker could use this feature to launch a program to damage a
client computer or data on the computer."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: All drives: Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\AutoPlay Policies\\Turn off Autoplay
Note: This Group Policy path is provided by the Group Policy template
AutoPlay.admx/adml that is included with all versions of the Microsoft Windows
Administrative Templates."
compliance:
- cis: ["18.9.8.3"]
- cis_csc: ["8.3"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36875-3'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> NoDriveTypeAutoRun -> 255'
# 18.9.14.1 (L1) Ensure 'Require pin for pairing' is set to 'Enabled: First Time'
OR 'Enabled: Always' (Scored)
- id: 16687
title: "Ensure 'Require pin for pairing' is set to 'Enabled: First Time' OR
'Enabled: Always'"
description: "This policy setting controls whether or not a PIN is required for
pairing to a wireless display device. The recommended state for this setting is:
'Enabled: First Time' OR 'Enabled: Always'."
rationale: "If this setting is not configured or disabled then a PIN would not
be required when pairing wireless display devices to the system, increasing the
risk of unauthorized use."
remediation: "To establish the recommended configuration via GP, set the
following UI path to 'Enabled: First Time' OR 'Enabled: Always' : Computer
Configuration\\Policies\\Administrative Templates\\Windows Components\\Connect\\
Require pin for pairing Note: This Group Policy path may not exist by default. It
is provided by the Group Policy template WirelessDisplay.admx/adml that is included
with the Microsoft Windows 10 Release 1607 & Server 2016 Administrative Templates
(or newer)."
compliance:
- cis: ["18.9.14.1"]
- cis_csc: ["15.8"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: any
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Connect ->
RequirePinForPairing -> 1'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Connect ->
RequirePinForPairing -> 2'
# 18.9.15.1 (L1) Ensure 'Do not display the password reveal button' is set to
'Enabled' (Scored)
- id: 16688
title: "Ensure 'Do not display the password reveal button' is set to 'Enabled'"
description: "This policy setting allows you to configure the display of the
password reveal button in password entry user experiences. The recommended state
for this setting is: Enabled."
rationale: "This is a useful feature when entering a long and complex password,
especially when using a touchscreen. The potential risk is that someone else may
see your password while surreptitiously observing your screen."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Credential User Interface\\Do not display the
password reveal button Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template CredUI.admx/adml that is included with the
Microsoft Windows 8.0 & Server 2012 (non-R2) Administrative Templates (or newer)."
compliance:
- cis: ["18.9.15.1"]
- cis_csc: ["16"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- 'CCE-37534-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\CredUI ->
DisablePasswordReveal -> 1'
# 18.9.16.2 (L2) Ensure 'Configure Authenticated Proxy usage for the Connected User
Experience and Telemetry service' is set to 'Enabled: Disable Authenticated Proxy
usage' (Scored)
- id: 16691
title: "Ensure 'Configure Authenticated Proxy usage for the Connected User
Experience and Telemetry service' is set to 'Enabled: Disable Authenticated Proxy
usage'"
description: "This policy setting controls whether the Connected User
Experience and Telemetry service can automatically use an authenticated proxy to
send data back to Microsoft. The recommended state for this setting is: Enabled:
Disable Authenticated Proxy usage ."
rationale: "Sending any data to a 3rd party vendor is a security concern and
should only be done on an as needed basis."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Disable Authenticated Proxy usage : Computer
Configuration\\Policies\\Administrative Templates\\Windows Components\\Data
Collection and Preview Builds\\Configure Authenticated Proxy usage for the
Connected User Experience and Telemetry service Note: This Group Policy path may
not exist by default. It is provided by the Group Policy template
DataCollection.admx/adml that is included with the Microsoft Windows 10 Release
1703 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.16.2"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection ->
DisableEnterpriseAuthProxy -> 1'
# 18.9.16.3 (L1) Ensure 'Do not show feedback notifications' is set to 'Enabled'
(Scored)
- id: 16692
title: "Ensure 'Do not show feedback notifications' is set to 'Enabled'"
description: "This policy setting allows an organization to prevent its devices
from showing feedback questions from Microsoft. The recommended state for this
setting is: Enabled ."
rationale: "Users should not be sending any feedback to 3rd party vendors in an
enterprise managed environment."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled : Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Data Collection and Preview Builds\\Do not show
feedback notifications Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template FeedbackNotifications.admx/adml that is
included with the Microsoft Windows 10 Release 1511 Administrative Templates (or
newer)."
compliance:
- cis: ["18.9.16.3"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\DataCollection ->
DoNotShowFeedbackNotifications -> 1'
# 18.9.16.4 (L1) Ensure 'Toggle user control over Insider builds' is set to
'Disabled' (Scored)
- id: 16693
title: "Ensure 'Toggle user control over Insider builds' is set to 'Disabled'"
description: "This policy setting determines whether users can access the
Insider build controls in the Advanced Options for Windows Update. These controls
are located under \"Get Insider builds,\" and enable users to make their devices
available for downloading and installing Windows preview software. The recommended
state for this setting is: Disabled . Note: This policy setting applies only to
devices running Windows Server 2016, up until Release 1703. For Release 1709 or
newer, Microsoft encourages using the Manage preview builds setting (Rule
18.9.102.1.1). We have kept this setting in the benchmark to ensure that any older
builds of Windows Server 2016 in the environment are still enforced."
rationale: "It can be risky for experimental features to be allowed in an
enterprise managed environment because this can introduce bugs and security holes
into systems, making it easier for an attacker to gain access. It is generally
preferred to only use production-ready builds."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Data Collection and Preview Builds\\Toggle user
control over Insider builds Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template AllowBuildPreview.admx/adml that is
included with the Microsoft Windows 10 RTM (Release 1507) Administrative Templates
(or newer)."
compliance:
- cis: ["18.9.16.4"]
- cis_csc: ["3"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\PreviewBuilds ->
AllowBuildPreview -> 0'
# 18.9.26.1.1 (L1) Ensure 'Application: Control Event Log behavior when the log
file reaches its maximum size' is set to 'Disabled' (Scored)
- id: 16694
title: "Ensure 'Application: Control Event Log behavior when the log file
reaches its maximum size' is set to 'Disabled'"
description: "This policy setting controls Event Log behavior when the log file
reaches its maximum size. The recommended state for this setting is: Disabled.
Note: Old events may or may not be retained according to the Backup log
automatically when full policy setting."
rationale: "If new events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Event Log Service\\Application\\Control Event Log
behavior when the log file reaches its maximum size Note: This Group Policy path is
provided by the Group Policy template EventLog.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named Retain
old events, but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.1.1"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37775-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\
Application -> Retention -> 0'
# 18.9.26.1.2 (L1) Ensure 'Application: Specify the maximum log file size (KB)' is
set to 'Enabled: 32,768 or greater' (Scored)
- id: 16695
title: "Ensure 'Application: Specify the maximum log file size (KB)' is set to
'Enabled: 32,768 or greater'"
description: "This policy setting specifies the maximum size of the log file in
kilobytes. The maximum log file size can be configured between 1 megabyte (1,024
kilobytes) and 4 terabytes (4,194,240 kilobytes) in kilobyte increments. The
recommended state for this setting is: Enabled: 32,768 or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 32,768 or greater: Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Event Log Service\\Application\\
Specify the maximum log file size (KB) Note: This Group Policy path is provided by
the Group Policy template EventLog.admx/adml that is included with all versions of
the Microsoft Windows Administrative Templates. Note #2: In older Microsoft Windows
Administrative Templates, this setting was initially named Maximum Log Size (KB),
but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.1.2"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37948-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\
Application -> MaxSize -> n:^(\d+) compare >= 32768'
# 18.9.26.2.1 (L1) Ensure 'Security: Control Event Log behavior when the log file
reaches its maximum size' is set to 'Disabled' (Scored)
- id: 16696
title: "Ensure 'Security: Control Event Log behavior when the log file reaches
its maximum size' is set to 'Disabled'"
description: "This policy setting controls Event Log behavior when the log file
reaches its maximum size. The recommended state for this setting is: Disabled.
Note: Old events may or may not be retained according to the Backup log
automatically when full policy setting."
rationale: "If new events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Event Log Service\\Security\\Control Event Log
behavior when the log file reaches its maximum size Note: This Group Policy path is
provided by the Group Policy template EventLog.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named Retain
old events, but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.2.1"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37145-0'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Security
-> Retention -> 0'
# 18.9.26.2.2 (L1) Ensure 'Security: Specify the maximum log file size (KB)' is set
to 'Enabled: 196,608 or greater' (Scored)
- id: 16697
title: "Ensure 'Security: Specify the maximum log file size (KB)' is set to
'Enabled: 196,608 or greater'"
description: "This policy setting specifies the maximum size of the log file in
kilobytes. The maximum log file size can be configured between 1 megabyte (1,024
kilobytes) and 4 terabytes (4,194,240 kilobytes) in kilobyte increments. The
recommended state for this setting is: Enabled: 196,608 or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 196,608 or greater: Computer Configuration\\
Policies\\Administrative Templates\\Windows Components\\Event Log Service\\
Security\\Specify the maximum log file size (KB) Note: This Group Policy path is
provided by the Group Policy template EventLog.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named
Maximum Log Size (KB), but it was renamed starting with the Windows 8.0 & Server
2012 (non-R2) Administrative Templates."
compliance:
- cis: ["18.9.26.2.2"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37695-4'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Security
-> MaxSize -> n:^(\d+) compare >= 196608'
# 18.9.26.3.1 (L1) Ensure 'Setup: Control Event Log behavior when the log file
reaches its maximum size' is set to 'Disabled' (Scored)
- id: 16698
title: "Ensure 'Setup: Control Event Log behavior when the log file reaches its
maximum size' is set to 'Disabled'"
description: "This policy setting controls Event Log behavior when the log file
reaches its maximum size. The recommended state for this setting is: Disabled.
Note: Old events may or may not be retained according to the Backup log
automatically when full policy setting."
rationale: "If new events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Event Log Service\\Setup\\Control Event Log behavior
when the log file reaches its maximum size Note: This Group Policy path is provided
by the Group Policy template EventLog.admx/adml that is included with all versions
of the Microsoft Windows Administrative Templates. Note #2: In older Microsoft
Windows Administrative Templates, this setting was initially named Retain old
events, but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.3.1"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-38276-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Setup ->
Retention -> 0'
# 18.9.26.3.2 (L1) Ensure 'Setup: Specify the maximum log file size (KB)' is set to
'Enabled: 32,768 or greater' (Scored)
- id: 16699
title: "Ensure 'Setup: Specify the maximum log file size (KB)' is set to
'Enabled: 32,768 or greater'"
description: "This policy setting specifies the maximum size of the log file in
kilobytes. The maximum log file size can be configured between 1 megabyte (1,024
kilobytes) and 4 terabytes (4,194,240 kilobytes) in kilobyte increments. The
recommended state for this setting is: Enabled: 32,768 or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 32,768 or greater: Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Event Log Service\\Setup\\Specify the
maximum log file size (KB) Note: This Group Policy path is provided by the Group
Policy template EventLog.admx/adml that is included with all versions of the
Microsoft Windows Administrative Templates. Note #2: In older Microsoft Windows
Administrative Templates, this setting was initially named Maximum Log Size (KB),
but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.3.2"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-37526-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\Setup ->
MaxSize -> n:^(\d+) compare >= 32768'
# 18.9.26.4.1 (L1) Ensure 'System: Control Event Log behavior when the log file
reaches its maximum size' is set to 'Disabled' (Scored)
- id: 16700
title: "Ensure 'System: Control Event Log behavior when the log file reaches
its maximum size' is set to 'Disabled'"
description: "This policy setting controls Event Log behavior when the log file
reaches its maximum size. The recommended state for this setting is: Disabled.
Note: Old events may or may not be retained according to the Backup log
automatically when full policy setting."
rationale: "If new events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Event Log Service\\System\\Control Event Log
behavior when the log file reaches its maximum size Note: This Group Policy path is
provided by the Group Policy template EventLog.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named Retain
old events, but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.4.1"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-36160-0'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\System -
> Retention -> 0'
# 18.9.26.4.2 (L1) Ensure 'System: Specify the maximum log file size (KB)' is set
to 'Enabled: 32,768 or greater' (Scored)
- id: 16701
title: "Ensure 'System: Specify the maximum log file size (KB)' is set to
'Enabled: 32,768 or greater'"
description: "This policy setting specifies the maximum size of the log file in
kilobytes. The maximum log file size can be configured between 1 megabyte (1,024
kilobytes) and 4 terabytes (4,194,240 kilobytes) in kilobyte increments. The
recommended state for this setting is: Enabled: 32,768 or greater."
rationale: "If events are not recorded it may be difficult or impossible to
determine the root cause of system problems or the unauthorized activities of
malicious users."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 32,768 or greater: Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Event Log Service\\System\\Specify
the maximum log file size (KB) Note: This Group Policy path is provided by the
Group Policy template EventLog.admx/adml that is included with all versions of the
Microsoft Windows Administrative Templates. Note #2: In older Microsoft Windows
Administrative Templates, this setting was initially named Maximum Log Size (KB),
but it was renamed starting with the Windows 8.0 & Server 2012 (non-R2)
Administrative Templates."
compliance:
- cis: ["18.9.26.4.2"]
- cis_csc: ["6.3"]
- pci_dss: ["10.6.1"]
- nist_800_53: ["AU.6"]
- gpg13: ["4.12"]
- gdpr_IV: [35.7.d]
- hipaa: ["164.312.b"]
- tsc: ["CC6.1","CC6.8","CC7.2","CC7.3"]
references:
- 'CCE-36092-5'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\EventLog\System -
> MaxSize -> n:^(\d+) compare >= 32768'
# 18.9.30.2 (L1) Ensure 'Turn off Data Execution Prevention for Explorer' is set to
'Disabled' (Scored)
- id: 16702
title: "Ensure 'Turn off Data Execution Prevention for Explorer' is set to
'Disabled'"
description: "Disabling Data Execution Prevention can allow certain legacy
plug-in applications to function without terminating Explorer. The recommended
state for this setting is: Disabled."
rationale: "Data Execution Prevention is an important security feature
supported by Explorer that helps to limit the impact of certain types of malware."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\File Explorer\\Turn off Data Execution Prevention
for Explorer Note: This Group Policy path may not exist by default. It is provided
by the Group Policy template Explorer.admx/adml that is included with the Microsoft
Windows 7 & Server 2008 R2 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.30.2"]
- cis_csc: ["8.4"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-37809-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Explorer ->
NoDataExecutionPrevention -> 0'
# 18.9.30.4 (L1) Ensure 'Turn off shell protocol protected mode' is set to
'Disabled' (Scored)
- id: 16704
title: "Ensure 'Turn off shell protocol protected mode' is set to 'Disabled'"
description: "This policy setting allows you to configure the amount of
functionality that the shell protocol can have. When using the full functionality
of this protocol, applications can open folders and launch files. The protected
mode reduces the functionality of this protocol allowing applications to only open
a limited set of folders. Applications are not able to open files with this
protocol when it is in the protected mode. It is recommended to leave this protocol
in the protected mode to increase the security of Windows. The recommended state
for this setting is: Disabled."
rationale: "Limiting the opening of files and folders to a limited set reduces
the attack surface of the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\File Explorer\\Turn off shell protocol protected
mode Note: This Group Policy path is provided by the Group Policy template
WindowsExplorer.admx/adml that is included with all versions of the Microsoft
Windows Administrative Templates."
compliance:
- cis: ["18.9.30.4"]
- cis_csc: ["8.4"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-36809-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\
Explorer -> PreXPSP2ShellProtocolBehavior -> 0'
# 18.9.43.1 (L2) Ensure 'Allow Message Service Cloud Sync' is set to 'Disabled'
(Scored)
- id: 16706
title: "Ensure 'Allow Message Service Cloud Sync' is set to 'Disabled'"
description: "This policy setting allows backup and restore of cellular text
messages to Microsoft's cloud services. The recommended state for this setting is:
Disabled ."
rationale: "In a high security environment, data should never be sent to any
3rd party since this data could contain sensitive information."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Messaging\\Allow Message Service Cloud Sync Note:
This Group Policy path may not exist by default. It is provided by the Group Policy
template Messaging.admx/adml that is included with the Microsoft Windows 10 Release
1709 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.43.1"]
- cis_csc: ["9.1", "13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Messaging ->
AllowMessageSync -> 0'
# 18.9.44.1 (L1) Ensure 'Block all consumer Microsoft account user authentication'
is set to 'Enabled' (Scored)
- id: 16707
title: "Ensure 'Block all consumer Microsoft account user authentication' is
set to 'Enabled'"
description: "This setting determines whether applications and services on the
device can utilize new consumer Microsoft account authentication via the Windows
OnlineID and WebAccountManager APIs. The recommended state for this setting is:
Enabled ."
rationale: "Organizations that want to effectively implement identity
management policies and maintain firm control of what accounts are used on their
computers will probably want to block Microsoft accounts. Organizations may also
need to block Microsoft accounts in order to meet the requirements of compliance
standards that apply to their information systems."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Microsoft accounts\\Block all consumer Microsoft
account user authentication Note: This Group Policy path may not exist by default.
It is provided by the Group Policy template MSAPolicy.admx/adml that is included
with the Microsoft Windows 10 Release 1703 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.44.1"]
- cis_csc: ["16"]
- pci_dss: ["8.1"]
- tsc: ["CC6.1"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\MicrosoftAccount ->
DisableUserAuth -> 1'
# 18.9.52.1 (L1) Ensure 'Prevent the usage of OneDrive for file storage' is set to
'Enabled' (Scored)
- id: 16708
title: "Ensure 'Prevent the usage of OneDrive for file storage' is set to
'Enabled'"
description: "This policy setting lets you prevent apps and features from
working with files on OneDrive using the Next Generation Sync Client. The
recommended state for this setting is: Enabled."
rationale: "Enabling this setting prevents users from accidentally uploading
confidential or sensitive corporate information to the OneDrive cloud service using
the Next Generation Sync Client."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\OneDrive\\Prevent the usage of OneDrive for file
storage Note: This Group Policy path may not exist by default. It is provided by
the Group Policy template SkyDrive.admx/adml that is included with the Microsoft
Windows 8.1 & Server 2012 R2 Administrative Templates (or newer). However, we
strongly recommend you only use the version included with the Microsoft Windows 10
Release 1607 & Server 2016 Administrative Templates (or newer). Older versions of
the templates had conflicting settings in different template files for both
OneDrive & SkyDrive, until it was cleaned up properly in the above version. Note
#2: In older Microsoft Windows Administrative Templates, this setting was named
Prevent the usage of SkyDrive for file storage, but it was renamed starting with
the Windows 10 RTM (Release 1507) Administrative Templates."
compliance:
- cis: ["18.9.52.1"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-36939-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\OneDrive ->
DisableFileSyncNGSC -> 1'
# 18.9.59.2.2 (L1) Ensure 'Do not allow passwords to be saved' is set to 'Enabled'
(Scored)
- id: 16709
title: "Ensure 'Do not allow passwords to be saved' is set to 'Enabled'"
description: "This policy setting helps prevent Remote Desktop clients from
saving passwords on a computer. The recommended state for this setting is: Enabled.
Note: If this policy setting was previously configured as Disabled or Not
configured, any previously saved passwords will be deleted the first time a Remote
Desktop client disconnects from any server."
rationale: "An attacker with physical access to the computer may be able to
break the protection guarding saved passwords. An attacker who compromises a user's
account and connects to their computer could use saved passwords to gain access to
additional hosts."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Connection
Client\\Do not allow passwords to be saved Note: This Group Policy path is provided
by the Group Policy template TerminalServer.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.9.59.2.2"]
- cis_csc: ["16.4"]
- pci_dss: ["12.3.8"]
references:
- 'CCE-36223-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> DisablePasswordSaving -> 1'
# 18.9.59.3.3.1 Ensure 'Do not allow COM port redirection' is set to 'Enabled'
- id: 16711
title: "Ensure 'Do not allow COM port redirection' is set to 'Enabled'"
description: "This policy setting specifies whether to prevent the redirection
of data to client COM ports from the remote computer in a Remote Desktop Services
session. The recommended state for this setting is: Enabled."
rationale: "In a more security-sensitive environment, it is desirable to reduce
the possible attack surface. The need for COM port redirection within a Remote
Desktop session is very rare, so makes sense to reduce the number of unexpected
avenues for data exfiltration and/or malicious code transfer."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Device and Resource Redirection\\Do not allow COM port redirection. Note:
This Group Policy path is provided by the Group Policy template
TerminalServer.admx/adml that is included with all versions of the Microsoft
Windows Administrative Templates."
compliance:
- cis: ["18.9.59.3.3.1"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37696-2'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> fDisableCcm -> 1'
# 18.9.59.3.3.2 (L1) Ensure 'Do not allow drive redirection' is set to 'Enabled'
(Scored)
- id: 16712
title: "Ensure 'Do not allow drive redirection' is set to 'Enabled'"
description: "This policy setting prevents users from sharing the local drives
on their client computers to Remote Desktop Servers that they access. Mapped drives
appear in the session folder tree in Windows Explorer in the following format: \\\\
TSClient\\<driveletter>$ If local drives are shared they are left vulnerable to
intruders who want to exploit the data that is stored on them. The recommended
state for this setting is: Enabled."
rationale: "Data could be forwarded from the user's Remote Desktop Services
session to the user's local computer without any direct user interaction. Malicious
software already present on a compromised server would have direct and stealthy
disk access to the user's local computer during the Remote Desktop session."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Device and Resource Redirection\\Do not allow drive redirection Note: This
Group Policy path is provided by the Group Policy template TerminalServer.admx/adml
that is included with all versions of the Microsoft Windows Administrative
Templates."
compliance:
- cis: ["18.9.59.3.3.2"]
- cis_csc: ["13"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'CCE-36509-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> fDisableCdm -> 1'
# 18.9.59.3.3.3 Ensure 'Do not allow LPT port redirection' is set to 'Enabled'
- id: 16713
title: "Ensure 'Do not allow LPT port redirection' is set to 'Enabled'"
description: "This policy setting specifies whether to prevent the redirection
of data to client LPT ports during a Remote Desktop Services session. The
recommended state for this setting is: Enabled."
rationale: "In a more security-sensitive environment, it is desirable to reduce
the possible attack surface. The need for LPT port redirection within a Remote
Desktop session is very rare, so makes sense to reduce the number of unexpected
avenues for data exfiltration and/or malicious code transfer."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Device and Resource Redirection\\Do not allow LPT port redirection. Note:
This Group Policy path is provided by the Group Policy template
TerminalServer.admx/adml that is included with all versions of the Microsoft
Windows Administrative Templates."
compliance:
- cis: ["18.9.59.3.3.3"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37778-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> fDisableLPT -> 1'
# 18.9.59.3.3.4 Ensure 'Do not allow supported Plug and Play device redirection' is
set to 'Enabled'
- id: 16714
title: "Ensure 'Do not allow supported Plug and Play device redirection' is set
to 'Enabled'"
description: "This policy setting allows you to control the redirection of
supported Plug and Play devices, such as Windows Portable Devices, to the remote
computer in a Remote Desktop Services session. The recommended state for this
setting is: Enabled."
rationale: "In a more security-sensitive environment, it is desirable to reduce
the possible attack surface. The need for Plug and Play device redirection within a
Remote Desktop session is very rare, so makes sense to reduce the number of
unexpected avenues for data exfiltration and/or malicious code transfer."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Device and Resource Redirection\\Do not allow supported Plug and Play device
redirection. Note: This Group Policy path is provided by the Group Policy template
TerminalServer.admx/adml that is included with all versions of the Microsoft
Windows Administrative Templates."
compliance:
- cis: ["18.9.59.3.3.4"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37477-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> fDisablePNPRedir -> 1'
# 18.9.59.3.9.1 (L1) Ensure 'Always prompt for password upon connection' is set to
'Enabled' (Scored)
- id: 16715
title: "Ensure 'Always prompt for password upon connection' is set to
'Enabled'"
description: "This policy setting specifies whether Remote Desktop Services
always prompts the client computer for a password upon connection. You can use this
policy setting to enforce a password prompt for users who log on to Remote Desktop
Services, even if they already provided the password in the Remote Desktop
Connection client. The recommended state for this setting is: Enabled."
rationale: "Users have the option to store both their username and password
when they create a new Remote Desktop Connection shortcut. If the server that runs
Remote Desktop Services allows users who have used this feature to log on to the
server but not enter their password, then it is possible that an attacker who has
gained physical access to the user's computer could connect to a Remote Desktop
Server through the Remote Desktop Connection shortcut, even though they may not
know the user's password."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Security\\Always prompt for password upon connection Note: This Group Policy
path is provided by the Group Policy template TerminalServer.admx/adml that is
included with all versions of the Microsoft Windows Administrative Templates. Note
#2: In the Microsoft Windows Vista Administrative Templates, this setting was named
Always prompt client for password upon connection, but it was renamed starting with
the Windows Server 2008 (non-R2) Administrative Templates."
compliance:
- cis: ["18.9.59.3.9.1"]
- cis_csc: ["16.14"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- 'CCE-37929-7'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> fPromptForPassword -> 1'
# 18.9.59.3.9.3 (L1) Ensure 'Require use of specific security layer for remote
(RDP) connections' is set to 'Enabled: SSL' (Scored)
- id: 16717
title: "Ensure 'Require use of specific security layer for remote (RDP)
connections' is set to 'Enabled: SSL'"
description: "This policy setting specifies whether to require the use of a
specific security layer to secure communications between clients and RD Session
Host servers during Remote Desktop Protocol (RDP) connections. The recommended
state for this setting is: Enabled: SSL. Note: In spite of this setting being
labeled SSL, it is actually enforcing Transport Layer Security (TLS) version 1.0,
not the older (and less secure) SSL protocol."
rationale: "The native Remote Desktop Protocol (RDP) encryption is now
considered a weak protocol, so enforcing the use of stronger Transport Layer
Security (TLS) encryption for all RDP communications between clients and RD Session
Host servers is preferred."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: High Level: Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Remote Desktop Services\\Remote
Desktop Session Host\\Security\\Require use of specific security layer for remote
(RDP) connections. Note: This Group Policy path is provided by the Group Policy
template TerminalServer.admx/adml that is included with all versions of the
Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.9.59.3.9.5.3"]
- cis_csc: ["3.4"]
- pci_dss: ["8.2.1"]
- tsc: ["CC6.1"]
references:
- 'CCE-CCE-36598-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> SecurityLayer -> 2'
# 18.9.59.3.10.1 Ensure 'Set time limit for active but idle Remote Desktop Services
sessions' is set to 'Enabled: 15 minutes or less'
- id: 16720
title: "Ensure 'Set time limit for active but idle Remote Desktop Services
sessions' is set to 'Enabled: 15 minutes or less'"
description: "This policy setting allows you to specify the maximum amount of
time that an active Remote Desktop Services session can be idle (without user
input) before it is automatically disconnected. The recommended state for this
setting is: Enabled: 15 minutes or less."
rationale: "This setting helps to prevent active Remote Desktop sessions from
tying up the computer for long periods of time while not in use, preventing
computing resources from being consumed by large numbers of inactive sessions. In
addition, old, forgotten Remote Desktop sessions that are still active can cause
password lockouts if the user's password has changed but the old session is still
running. For systems that limit the number of connected users (e.g. servers in the
default Administrative mode - 2 sessions only), other users' old but still active
sessions can prevent another user from connecting, resulting in an effective denial
of service."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: 15 minutes or less: Computer Configuration\\
Policies\\Administrative Templates\\Windows Components\\Remote Desktop Services\\
Remote Desktop Session Host\\Session Time Limits\\Set time limit for active but
idle Remote Desktop Services sessions. Note: This Group Policy path is provided by
the Group Policy template TerminalServer.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was named Set time limit
for active but idle Terminal Services sessions, but it was renamed starting with
the Windows 7 & Server 2008 R2 Administrative Templates."
compliance:
- cis: ["18.9.59.3.10.1"]
- cis_csc: ["16.5"]
- pci_dss: ["8.1.8"]
- tsc: ["CC6.1"]
references:
- 'CCE-37562-6'
- https://workbench.cisecurity.org/benchmarks/766
condition: any
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> MaxIdleTime -> n:^(\d+) compare <= 900000'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> MaxIdleTime -> n:^(\d+) compare != 0'
# 18.9.59.3.11.1 (L1) Ensure 'Do not delete temp folders upon exit' is set to
'Disabled' (Scored)
- id: 16722
title: "Ensure 'Do not delete temp folders upon exit' is set to 'Disabled'"
description: "This policy setting specifies whether Remote Desktop Services
retains a user's per-session temporary folders at logoff. The recommended state for
this setting is: Disabled."
rationale: "Sensitive information could be contained inside the temporary
folders and visible to other administrators that log into the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Temporary Folders\\Do not delete temp folders upon exit Note: This Group
Policy path is provided by the Group Policy template TerminalServer.admx/adml that
is included with all versions of the Microsoft Windows Administrative Templates.
Note #2: In older Microsoft Windows Administrative Templates, this setting was
named Do not delete temp folder upon exit, but it was renamed starting with the
Windows 8.0 & Server 2012 (non-R2) Administrative Templates."
compliance:
- cis: ["18.9.59.3.11.1"]
- cis_csc: ["14.4"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-37946-1'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> DeleteTempDirsOnExit -> 1'
# 18.9.59.3.11.2 (L1) Ensure 'Do not use temporary folders per session' is set to
'Disabled' (Scored)
- id: 16723
title: "Ensure 'Do not use temporary folders per session' is set to 'Disabled'"
description: "By default, Remote Desktop Services creates a separate temporary
folder on the RD Session Host server for each active session that a user maintains
on the RD Session Host server. The temporary folder is created on the RD Session
Host server in a Temp folder under the user's profile folder and is named with the
sessionid. This temporary folder is used to store individual temporary files. To
reclaim disk space, the temporary folder is deleted when the user logs off from a
session. The recommended state for this setting is: Disabled."
rationale: "Disabling this setting keeps the cached data independent for each
session, both reducing the chance of problems from shared cached data between
sessions, and keeping possibly sensitive data separate to each user session."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Remote Desktop Services\\Remote Desktop Session
Host\\Temporary Folders\\Do not use temporary folders per session Note: This Group
Policy path is provided by the Group Policy template TerminalServer.admx/adml that
is included with all versions of the Microsoft Windows Administrative Templates."
compliance:
- cis: ["18.9.59.3.11.2"]
- cis_csc: ["14.4"]
- pci_dss: ["7.1"]
- tsc: ["CC6.4"]
references:
- 'CCE-38180-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal
Services -> PerSessionTempDir -> 1'
# 18.9.61.2 (L2) Ensure 'Allow Cloud Search' is set to 'Enabled: Disable Cloud
Search' (Scored)
- id: 16725
title: "Ensure 'Allow Cloud Search' is set to 'Enabled: Disable Cloud Search'"
description: "This policy setting allows search and Cortana to search cloud
sources like OneDrive and SharePoint. The recommended state for this setting is:
Enabled: Disable Cloud Search ."
rationale: "Due to privacy concerns, data should never be sent to any 3rd party
since this data could contain sensitive information."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Disable Cloud Search : Computer Configuration\\
Policies\\Administrative Templates\\Windows Components\\Search\\Allow Cloud Search
Note: This Group Policy path may not exist by default. It is provided by the Group
Policy template Search.admx/adml that is included with the Microsoft Windows 10
Release 1709 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.61.2"]
- cis_csc: ["9.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Windows Search ->
AllowCloudSearch -> 0'
# 18.9.66.1 Ensure 'Turn off KMS Client Online AVS Validation' is set to 'Enabled'
- id: 16727
title: "Ensure 'Turn off KMS Client Online AVS Validation' is set to 'Enabled'"
description: "The Key Management Service (KMS) is a Microsoft license
activation method that entails setting up a local server to store the software
licenses. The KMS server itself needs to connect to Microsoft to activate the KMS
service, but subsequent on-network clients can activate Microsoft Windows OS and/or
their Microsoft Office via the KMS server instead of connecting directly to
Microsoft. This policy setting lets you opt-out of sending KMS client activation
data to Microsoft automatically. The recommended state for this setting is:
Enabled."
rationale: "Even though the KMS licensing method does not require KMS clients
to connect to Microsoft, they still send KMS client activation state data to
Microsoft automatically. Preventing this information from being sent can help
reduce privacy concerns in high security environments."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Software Protection Platform\\Turn off KMS Client
Online AVS Validation. Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template AVSValidationGP.admx/adml that is included
with the Microsoft Windows 10 RTM (Release 1507) Administrative Templates (or
newer)."
compliance:
- cis: ["18.9.66.1"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\
CurrentVersion\Software Protection Platform -> NoGenTicket -> 1'
# 18.9.77.13.3.1 (L1) Ensure 'Prevent users and apps from accessing dangerous
websites' is set to 'Enabled: Block' (Scored)
- id: 16734
title: "Ensure 'Prevent users and apps from accessing dangerous websites' is
set to 'Enabled: Block'"
description: "This policy setting controls Windows Defender Exploit Guard
network protection. The recommended state for this setting is: Enabled: Block ."
rationale: "This setting can help prevent employees from using any application
to access dangerous domains that may host phishing scams, exploit-hosting sites,
and other malicious content on the Internet."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Block : Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Windows Defender Antivirus\\Windows
Defender Exploit Guard\\Network Protection\\Prevent users and apps from accessing
dangerous websites Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template WindowsDefender.admx/adml that is included
with the Microsoft Windows 10 Release 1709 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.77.13.3.1"]
- cis_csc: ["7"]
- pci_dss: ["2.2.3"]
- nist_800_53: ["CM.1"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["CC5.2"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender\Windows
Defender Exploit Guard\Network Protection -> EnableNetworkProtection -> 1'
# 18.9.77.15 (L1) Ensure 'Turn off Windows Defender AntiVirus' is set to 'Disabled'
(Scored)
- id: 16736
title: "Ensure 'Turn off Windows Defender AntiVirus' is set to 'Disabled'"
description: "This policy setting turns off Windows Defender Antivirus. If the
setting is configured to Disabled, Windows Defender Antivirus runs and computers
are scanned for malware and other potentially unwanted software. The recommended
state for this setting is: Disabled ."
rationale: "It is important to ensure a current, updated antivirus product is
scanning each computer for malicious file activity. Microsoft provides a competent
solution out of the box in Windows Defender Antivirus. Organizations that choose to
purchase a reputable 3rd-party antivirus solution may choose to exempt themselves
from this recommendation in lieu of the commercial alternative."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Windows Defender Antivirus\\Turn off Windows
Defender AntiVirus Note: This Group Policy path is provided by the Group Policy
template WindowsDefender.admx/adml that is included with all versions of the
Microsoft Windows Administrative Templates. Note #2: In older Microsoft Windows
Administrative Templates, this setting was initially named Turn off Windows
Defender, but it was renamed starting with the Windows 10 Release 1703
Administrative Templates."
compliance:
- cis: ["18.9.77.15"]
- cis_csc: ["8.1"]
- pci_dss: ["5.2"]
- tsc: ["CC6.8"]
references:
- 'CCE-36082-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows Defender ->
DisableAntiSpyware -> 0'
# 18.9.80.1.1 Ensure 'Configure Windows Defender SmartScreen' is set to 'Enabled:
Warn and prevent bypass'
- id: 16737
title: "Ensure 'Configure Windows Defender SmartScreen' is set to 'Enabled:
Warn and prevent bypass'"
description: "This policy setting allows you to manage the behavior of Windows
SmartScreen. Windows SmartScreen helps keep PCs safer by warning users before
running unrecognized programs downloaded from the Internet. Some information is
sent to Microsoft about files and programs run on PCs with this feature enabled.
The recommended state for this setting is: Enabled: Warn and prevent bypass."
rationale: "Windows SmartScreen helps keep PCs safer by warning users before
running unrecognized programs downloaded from the Internet. However, due to the
fact that some information is sent to Microsoft about files and programs run on PCs
some organizations may prefer to disable it."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Warn and prevent bypass: Computer Configuration\\
Policies\\Administrative Templates\\Windows Components\\Windows Defender
SmartScreen\\Explorer\\Configure Windows Defender SmartScreen Note: This Group
Policy path may not exist by default. It is provided by the Group Policy template
WindowsExplorer.admx/adml that is included with the Microsoft Windows 8.0 & Server
2012 (non-R2) Administrative Templates (or newer). Note #2: In older Microsoft
Windows Administrative Templates, this setting was initially named Configure
Windows SmartScreen, but it was renamed starting with the Windows 10 Release 1703
Administrative Templates."
compliance:
- cis: ["18.9.80.1.1"]
- cis_csc: ["2"]
- pci_dss: ["2.2.4"]
- nist_800_53: ["CM.1"]
- tsc: ["CC5.2"]
references:
- 'CCE-35859-8'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
EnableSmartScreen -> 1'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\System ->
ShellSmartScreenLevel -> Block'
# 18.9.84.1 (L2) Ensure 'Allow suggested apps in Windows Ink Workspace' is set to
'Disabled' (Scored)
- id: 16738
title: "Ensure 'Allow suggested apps in Windows Ink Workspace' is set to
'Disabled'"
description: "This policy setting determines whether suggested apps in Windows
Ink Workspace are allowed. The recommended state for this setting is: Disabled ."
rationale: "This Microsoft feature is designed to collect data and suggest apps
based on that data collected. Disabling this setting will help ensure your data is
not shared with any third party."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled : Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Windows Ink Workspace\\Allow suggested apps in
Windows Ink Workspace Note: This Group Policy path may not exist by default. It is
provided by the Group Policy template WindowsInkWorkspace.admx/adml that is
included with the Microsoft Windows 10 Release 1607 & Server 2016 Administrative
Templates (or newer)."
compliance:
- cis: ["18.9.84.1"]
- cis_csc: ["13"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsInkWorkspace ->
AllowSuggestedAppsInWindowsInkWorkspace -> 0'
# 18.9.84.2 (L1) Ensure 'Allow Windows Ink Workspace' is set to 'Enabled: On, but
disallow access above lock' OR 'Disabled' but not 'Enabled: On' (Scored)
- id: 16739
title: "Ensure 'Allow Windows Ink Workspace' is set to 'Enabled: On, but
disallow access above lock' OR 'Disabled' but not 'Enabled: On'"
description: "This policy setting determines whether Windows Ink items are
allowed above the lock screen. The recommended state for this setting is: Enabled:
On, but disallow access above lock OR Disabled ."
rationale: "Allowing any apps to be accessed while system is locked is not
recommended. If this feature is permitted, it should only be accessible once a user
authenticates with the proper credentials."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: On, but disallow access above lock OR Disabled :
Computer Configuration\\Policies\\Administrative Templates\\Windows Components\\
Windows Ink Workspace\\Allow Windows Ink Workspace Note: This Group Policy path may
not exist by default. It is provided by the Group Policy template
WindowsInkWorkspace.admx/adml that is included with the Microsoft Windows 10
Release 1607 & Server 2016 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.84.2"]
- cis_csc: ["16.5"]
- pci_dss: ["8.6"]
- tsc: ["CC6.1"]
condition: any
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsInkWorkspace ->
AllowWindowsInkWorkspace -> 0'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\WindowsInkWorkspace ->
AllowWindowsInkWorkspace -> 1'
# 18.9.85.3 Ensure 'Prevent Internet Explorer security prompt for Windows Installer
scripts' is set to 'Disabled'
- id: 16742
title: "Ensure 'Prevent Internet Explorer security prompt for Windows Installer
scripts' is set to 'Disabled'"
description: "This policy setting controls whether Web-based programs are
allowed to install software on the computer without notifying the user. The
recommended state for this setting is: Disabled."
rationale: "Suppressing the system warning can pose a security risk and
increase the attack surface on the system."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Windows Installer\\Prevent Internet Explorer
security prompt for Windows Installer scripts. Note: This Group Policy path is
provided by the Group Policy template MSI.admx/adml that is included with all
versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named
Disable IE security prompt for Windows Installer scripts, but it was renamed
starting with the Windows 8.0 & Server 2012 (non-R2) Administrative Templates."
compliance:
- cis: ["18.9.85.3"]
- cis_csc: ["7"]
- pci_dss: ["2.2.5"]
- tsc: ["CC6.3"]
references:
- 'CCE-37524-6'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Installer ->
SafeForScripting -> 0'
# 18.9.102.1.2 (L1) Ensure 'Select when Preview Builds and Feature Updates are
received' is set to 'Enabled: Semi-Annual Channel, 180 or more days' (Scored)
- id: 16756
title: "Ensure 'Select when Preview Builds and Feature Updates are received' is
set to 'Enabled: Semi-Annual Channel, 180 or more days'"
description: "This policy setting determines the level of Preview Build or
Feature Updates to receive, and when. The Windows readiness level for each new
Windows 10 Feature Update is classified in one of 5 categories, depending on your
organizations level of comfort with receiving them: Preview Build - Fast: Devices
set to this level will be the first to receive new builds of Windows with features
not yet available to the general public. Select Fast to participate in identifying
and reporting issues to Microsoft, and provide suggestions on new functionality.
Preview Build - Slow: Devices set to this level receive new builds of Windows
before they are available to the general public, but at a slower cadence than those
set to Fast, and with changes and fixes identified in earlier builds. Release
Preview: Receive builds of Windows just before Microsoft releases them to the
general public. Semi-Annual Channel (Targeted): Receive feature updates when they
are released to the general public. Semi-Annual Channel: Feature updates will
arrive when they are declared Semi-Annual Channel. This usually occurs about 4
months after Semi-Annual Channel (Targeted), indicating that Microsoft, Independent
Software Vendors (ISVs), partners and customer believe that the release is ready
for broad deployment. The recommended state for this setting is: Enabled: Semi-
Annual Channel, 180 or more days . Note: If the \"Allow Telemetry\" policy is set
to 0, this policy will have no effect. Note #2: Starting with Windows Server 2016
RTM (Release 1607), Microsoft introduced a new Windows Update (WU) client behavior
called Dual Scan, with an eye to cloud-based update management. In some cases, this
Dual Scan feature can interfere with Windows Updates from Windows Server Update
Services (WSUS) and/or manual WU updates. If you are using WSUS in your
environment, you may need to set the above setting to Not Configured or configure
the setting Do not allow update deferral policies to cause scans against Windows
Update (added in the Windows 10 Release 1709 Administrative Templates) in order to
prevent the Dual Scan feature from interfering. Note #3: Prior to Windows Server
2016 R1709, values above 180 days are not recognized by the OS. Starting with
Windows Server 2016 R1709, the maximum number of days you can defer is 365 days."
rationale: "Forcing new features without prior testing in your environment
could cause software incompatibilities as well as introducing new bugs into the
operating system. In an enterprise managed environment, it is generally preferred
to delay Feature Updates until thorough testing and a deployment plan is in place.
This recommendation delays the automatic installation of new features as long as
possible."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled: Semi-Annual Channel, 180 or more days : Computer
Configuration\\Policies\\Administrative Templates\\Windows Components\\Windows
Update\\Windows Update for Business\\Select when Preview Builds and Feature Updates
are received Note: This Group Policy path may not exist by default. It is provided
by the Group Policy template WindowsUpdate.admx/adml that is included with the
Microsoft Windows 10 Release 1607 & Server 2016 Administrative Templates (or
newer). Note #2: In older Microsoft Windows Administrative Templates, this setting
was initially named Select when Feature Updates are received, but it was renamed to
Select when Preview Builds and Feature Updates are received starting with the
Windows 10 Release 1709 Administrative Templates."
compliance:
- cis: ["18.9.102.1.2"]
- cis_csc: ["3"]
- pci_dss: ["4.1"]
- hipaa: ["164.312.a.2.IV", "164.312.e.1", "164.312.e.2.I", "164.312.e.2.II"]
- nist_800_53: ["SC.8"]
- tsc: ["CC6.1","CC6.7","CC7.2"]
references:
- 'https://blogs.technet.microsoft.com/wsus/2017/05/05/demystifying-dual-
scan/'
- 'https://blogs.technet.microsoft.com/wsus/2017/08/04/improving-dual-scan-
on-1607/'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ->
DeferFeatureUpdates -> 1'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ->
DeferFeatureUpdatesPeriodInDays -> n:^(\d+) compare >= 180'
# 18.9.102.1.3 (L1) Ensure 'Select when Quality Updates are received' is set to
'Enabled: 0 days' (Scored)
- id: 16757
title: "Ensure 'Select when Quality Updates are received' is set to 'Enabled: 0
days'"
description: "This settings controls when Quality Updates are received. The
recommended state for this setting is: Enabled: 0 days . Note: If the \"Allow
Telemetry\" policy is set to 0, this policy will have no effect. Note #2: Starting
with Windows Server 2016 RTM (Release 1607), Microsoft introduced a new Windows
Update (WU) client behavior called Dual Scan, with an eye to cloud-based update
management. In some cases, this Dual Scan feature can interfere with Windows
Updates from Windows Server Update Services (WSUS) and/or manual WU updates. If you
are using WSUS in your environment, you may need to set the above setting to Not
Configured or configure the setting Do not allow update deferral policies to cause
scans against Windows Update (added in the Windows 10 Release 1709 Administrative
Templates) in order to prevent the Dual Scan feature from interfering"
rationale: "Quality Updates can contain important bug fixes and/or security
patches, and should be installed as soon as possible."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Enabled:0 days : Computer Configuration\\Policies\\
Administrative Templates\\Windows Components\\Windows Update\\Windows Update for
Business\\Select when Quality Updates are received Note: This Group Policy path
does not exist by default. An updated Group Policy template (
WindowsUpdate.admx/adml ) is required - it is included with the Microsoft Windows
10 Release 1607 & Server 2016 Administrative Templates (or newer)."
compliance:
- cis: ["18.9.102.1.3"]
- cis_csc: ["4.5"]
- pci_dss: ["6.2"]
- nist_800_53: ["SI.2","SA.11","SI.4"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["A1.2","CC6.8"]
references:
- 'https://blogs.technet.microsoft.com/wsus/2017/05/05/demystifying-dual-
scan/'
- 'https://blogs.technet.microsoft.com/wsus/2017/08/04/improving-dual-scan-
on-1607/'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ->
DeferQualityUpdates -> 1'
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate ->
DeferQualityUpdatesPeriodInDays -> 0'
# 18.9.102.4 Ensure 'No auto-restart with logged on users for scheduled automatic
updates installations' is set to 'Disabled'
- id: 16760
title: "Ensure 'No auto-restart with logged on users for scheduled automatic
updates installations' is set to 'Disabled'"
description: "This policy setting specifies that Automatic Updates will wait
for computers to be restarted by the users who are logged on to them to complete a
scheduled installation. The recommended state for this setting is: Disabled. Note:
This setting applies only when you configure Automatic Updates to perform scheduled
update installations. If you configure the Configure Automatic Updates setting to
Disabled, this setting has no effect."
rationale: "Some security updates require that the computer be restarted to
complete an installation. If the computer cannot restart automatically, then the
most recent update will not completely install and no new updates will download to
the computer until it is restarted. Without the auto-restart functionality, users
who are not security-conscious may choose to indefinitely delay the restart,
therefore keeping the computer in a less secure state."
remediation: "To establish the recommended configuration via GP, set the
following UI path to Disabled: Computer Configuration\\Policies\\Administrative
Templates\\Windows Components\\Windows Update\\No auto-restart with logged on users
for scheduled automatic updates installations Note: This Group Policy path is
provided by the Group Policy template WindowsUpdate.admx/adml that is included with
all versions of the Microsoft Windows Administrative Templates. Note #2: In older
Microsoft Windows Administrative Templates, this setting was initially named No
auto-restart for scheduled Automatic Updates installations, but it was renamed
starting with the Windows 7 & Server 2008 R2 Administrative Templates."
compliance:
- cis: ["18.9.102.4"]
- cis_csc: ["4.5"]
- pci_dss: ["6.2"]
- nist_800_53: ["SI.2","SA.11","SI.4"]
- gpg_13: ["4.3"]
- gdpr_IV: ["35.7.d"]
- hipaa: ["164.312.b"]
- tsc: ["A1.2","CC6.8"]
references:
- 'CCE-37027-0'
condition: all
rules:
- 'r:HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate\AU
-> NoAutoRebootWithLoggedOnUsers -> 0'