
CIS Controls Assessment Specification
The table of contents below and in the sidebar should let you easily access the documentation for your topic of interest. You can also use the search function in the top left corner.
The main documentation for the site is organized into sections for each individual CIS Control.
The “About the CIS Controls” section provides background information about the CIS Controls.
The “About the CIS Controls Assessment Specification” provides information about the Controls Assessment Specification including its purpose, methodology, and structure.
The “Terms of Use” section provides the terms of use policy.
The “Contributing” section provides details on how you can contribute to the Controls Assessment Specification.
About the CIS Controls™
The CIS Controls™ are a prioritized set of actions that collectively form a defense-in-depth set of best practices that mitigate the most common attacks against systems and networks. The CIS Controls are developed by a community of IT experts who apply their first-hand experience as cyber defenders to create these globally accepted security best practices. The experts who develop the CIS Controls come from a wide range of sectors including retail, manufacturing, healthcare, education, government, defense, and others.
We are at a fascinating point in the evolution of what we now call cyber defense. Massive data losses, theft of intellectual property, credit card breaches, identity theft, threats to our privacy, denial of service – these have become a way of life for all of us in cyberspace.
As defenders we have access to an extraordinary array of security tools and technology, security standards, training and classes, certifications, vulnerability databases, guidance, best practices, catalogs of security controls, and countless security checklists, benchmarks, and recommendations. To help us understand the threat, we have seen the emergence of threat information feeds, reports, tools, alert services, standards, and threat sharing frameworks. To top it all off, we are surrounded by security requirements, risk management frameworks, compliance regimes, regulatory mandates, and so forth. There is no shortage of information available to security practitioners on what they should do to secure their infrastructure.
But all of this technology, information, and oversight has become a veritable “Fog of More” – competing options, priorities, opinions, and claims that can paralyze or distract an enterprise from vital action. Business complexity is growing, dependencies are expanding, users are becoming more mobile, and the threats are evolving. New technology brings us great benefits, but it also means that our data and applications are now distributed across multiple locations, many of which are not within our organization’s infrastructure. In this complex, interconnected world, no enterprise can think of its security as a standalone problem.
So how can we as a community – the community-at-large, as well as within industries, sectors, partnerships, and coalitions – band together to establish priority of action, support each other, and keep our knowledge and technology current in the face of a rapidly evolving problem and an apparently infinite number of possible solutions? What are the most critical areas we need to address and how should an enterprise take the first step to mature their risk management program? Rather than chase every new exceptional threat and neglect the fundamentals, how can we get on track with a roadmap of fundamentals, and guidance to measure and improve? Which defensive steps have the greatest value?
These are the kinds of issues that led to and now drive the CIS Controls. They started as a grassroots activity to cut through the “Fog of More” and focus on the most fundamental and valuable actions that every enterprise should take. And value here is determined by knowledge and data – the ability to prevent, alert, and respond to the attacks that are plaguing enterprises today.
Led by CIS®, the CIS Controls have been matured by an international community of individuals and institutions that:
Share insight into attacks and attackers, identify root causes, and translate that into classes of defensive action;
Document stories of adoption and share tools to solve problems;
Track the evolution of threats, the capabilities of adversaries, and current vectors of intrusions;
Map the CIS Controls to regulatory and compliance frameworks and bring collective priority and focus to them;
Share tools, working aids, and translations; and
Identify common problems (like initial assessment and implementation roadmaps) and solve them as a community.
These activities ensure that the CIS Controls are not just another list of good things to do, but a prioritized, highly focused set of actions that have a community support network to make them implementable, usable, scalable, and compliant with all industry or government security requirements.
Why the CIS Controls Work: Methodology and Contributors
The CIS Controls are informed by actual attacks and effective defenses and reflect the combined knowledge of experts from every part of the ecosystem (companies, governments, individuals); with every role (threat responders and analysts, technologists, vulnerability-finders, tool makers, solution providers, defenders, users, policy-makers, auditors, etc.); and within many sectors (government, power, defense, finance, transportation, academia, consulting, security, IT) who have banded together to create, adopt, and support the Controls. Top experts from organizations pooled their extensive first-hand knowledge from defending against actual cyber-attacks to evolve the consensus list of Controls, representing the best defensive techniques to prevent or track them. This ensures that the CIS Controls are the most effective and specific set of technical measures available to detect, prevent, respond, and mitigate damage from the most common to the most advanced of those attacks.
The CIS Controls are not limited to blocking the initial compromise of systems, but also address detecting already-compromised machines and preventing or disrupting attackers’ follow-on actions. The defenses identified through these Controls deal with reducing the initial attack surface by hardening device configurations, identifying compromised machines to address long-term threats inside an organization’s network, disrupting attackers’ command-and-control of implanted malicious code, and establishing an adaptive, continuous defense, and response capability that can be maintained and improved.
The five critical tenets of an effective cyber defense system as reflected in the CIS Controls are:
Offense informs defense: Use knowledge of actual attacks that have compromised systems to provide the foundation to continually learn from these events to build effective, practical defenses. Include only those controls that can be shown to stop known real-world attacks.
Prioritization: Invest first in Controls that will provide the greatest risk reduction and protection against the most dangerous threat actors and that can be feasibly implemented in your computing environment. The CIS Implementation Groups discussed below are a great place for organizations to start identifying relevant Sub-Controls.
Measurements and Metrics: Establish common metrics to provide a shared language for executives, IT specialists, auditors, and security officials to measure the effectiveness of security measures within an organization so that required adjustments can be identified and implemented quickly.
Continuous diagnostics and mitigation: Carry out continuous measurement to test and validate the effectiveness of current security measures and to help drive the priority of next steps.
Automation: Automate defenses so that organizations can achieve reliable, scalable, and continuous measurements of their adherence to the Controls and related metrics.
Getting Started
The CIS Controls are a relatively small number of prioritized, well-vetted, and supported security actions that organizations can take to assess and improve their current security state. They also change the discussion from “What should my enterprise do?” to “What should we ALL be doing?” to improve security across a broad scale.
But this is not a one-size-fits-all solution, in either content or priority. You must still understand what is critical to your business, data, systems, networks, and infrastructures, and you must consider the adversarial actions that could impact your ability to be successful in the business or operation. Even a relatively small number of Controls cannot be executed all at once, so you will need to develop a plan for assessment, implementation, and process management.
About the CIS Controls Assessment Specification
Purpose
The CIS Controls provide essential best practices that organizations can implement to improve their cybersecurity posture. In addition to implementing the CIS Controls, it is also important that organizations measure their implementations to ensure that Safeguards are in place and working properly. The purpose of the CIS Controls Assessent Specification (CAS) is to provide a common understanding of what should be measured in order to verify that CIS Safeguards are properly implemented. The hope is that those developing related tools will then build these measures into their tools so that the CIS Controls are measured in a uniform way.
Note that the focus of CAS is on “what to measure” rather than “how to measure”. With the goal of being platform agnostic, a conscious effort was made to avoid addressing the “how to measure” in writing CAS, leaving those platform specific details to specific implementations of these measures. Tool developers will determine the “hows” that are appropriate for their tools and use cases.
Methodology
The CIS Controls provide cybersecurity best practices designed to help organizations of all types secure a wide variety of systems. Because the CIS Controls cover so many security topics, and apply to such a wide variety of hardware and software that can be used in many different ways, measuring the CIS Controls is a complex challenge. Different approaches to measuring the Controls can result in multiple ways of measuring the same Sub-Control.
One useful distinction is measuring whether a Sub-Control has been implemented vs. measuring how well the Safeguard was implemented. Measuring whether a Safeguard is implemented need not be a binary yes or no; for instance, it could be a numerical score indicating how many endpoints in an environment have implemented that Safeguard. Measuring how well a Safegaurd is implemented looks more to the intended effect of the Safeguard examining whether the desired security gains are being realized. Measuring whether a Safeguard is implemented often involves checking whether something is configured in a certain way, while measuring how well often requires more involved checks including more active testing.
While both of these measurement approaches are useful and have their place, for this first version of CAS, we have focused on measuring whether a Safeguard has been implemented (which we have termed Level 1 checks). It is our hope that future versions of CAS will expand to include measurements of how well a Safeguard is implemented as well (which we have termed Level 2 checks).
Specific configuration details are not specified in CAS, as these would vary from platform to platform, and would encroach on “how to measure”. When there are multiple ways to implement a Sub-Control, CAS attempts to be generic enough to cover these varying methods in its measures. Where assumptions are made, CAS attempts to explicitly state them.
Structure of a Safeguard Measurement
This section describes the standard structure of a Safeguard Measurement in CAS.
Basic CIS Safeguad Information
This section includes the Safeguard number, title, description, asset type, security function, and implementation group. This information matches the information in the CIS Controls v8.0 document.
Assumptions
Assumptions are provided inside of the section to which they are most applicable, or not in any specific section if they are general to the entire Safeguard measurement.
Safeguard Dependencies
This is an optional section that may not appear for all Safeguard measurements. When present, this section lists any other Safeguard that are prerequisites for measuring this Safeguard. Completion of the Safeguard specified in this section will typically generate data necessary as an Input for measuring this Safeguard.
Inputs
This section includes the data that is expected as an input in order to measure this Safeguard.
Operations
This section specifies actions to be performed on the inputs in order to generate the measures. The operations provide a linkage between the inputs and measures.
Measures
This section describes the information that should be measured, generally as a result of performing operations on the inputs. Measures are combined to form metrics.
Metrics
This section describes standard metrics that can be calculated from the measures, providing a description of the metricalong with the formula for calculating the metric. In general, CAS attempts to frame metrics in a positive light - i.e., the ratio of items that are compliant with the Safeguard (as opposed to the ratio of items that are not compliant). The provided metrics are not meant to be an exhausive list of metrics, rather it is just meant to list some examples of common metrics that are likely to be useful. The hope is that if appropriate measures have been defined, other metrics can be built from those measures to suit different use cases.
Procedure Review
This is an optional section that may not appear for all Safeguad measurements. When present, this section describes a manual review of a procedure that helps fulfill the Safeguard.
Versioning
CAS follows a semantic versioning approach based on semver.org and having the following format: major.minor.point.
Major: Significant and material changes to * The organization of the document * Structure of sub-control measures * Inputs, measures, metrics on the whole
Minor: Material changes to parts of sub-control measures or metrics
Point: Immaterial changes, such as prose typos, document look and feel
Terms of Use
Please see the below link for our current terms of use:
https://www.cisecurity.org/cis-securesuite/cis-securesuite-membership-terms-of-use/
Contributing to the CIS Controls Assessment Specification
CIS welcomes contributions to the CIS Controls Assessment Specification. There are no special requirements to contribute beyond recognizing our Terms of Use (see below). If you have a suggestion for improvement to any one of the defined measures, to the content as a whole, or have other suggestions for enhancement, there are two ways to contribute:
Create an issue in the associated GitHub repository
Fork the associated GitHub repository and create a pull request
NOTE: To create issues or fork the repository and then submit a pull request, you will need to establish a GitHub account. The Associated GitHub repository can be reached by clicking “Edit on GitHub” in the upper right of the Read the Docs page. The Controls Assessment Specification GitHub repository is located at https://github.com/CISecurity/ControlsAssessmentSpecification
CIS Control 1: Inventory and Control of Enterprise Assets
Actively manage (inventory, track, and correct) all enterprise assets (end-user devices, including portable and mobile; network devices; non-computing/Internet of Things (IoT) devices; and servers) connected to the infrastructure, physically, virtually, remotely, and those within cloud environments, to accurately know the totality of assets that need to be monitored and protected within the enterprise. This will also support identifying unauthorized and unmanaged assets to remove or remediate.
Why is this CIS Control Critical?
Enterprises cannot defend what they do not know they have. Managed control of all enterprise assets also plays a critical role in security monitoring, incident response, system backup, and recovery. Enterprises should know what data is critical to them, and proper asset management will help identify those enterprise assets that hold or manage this critical data, so appropriate security controls can be applied.
External attackers are continuously scanning the internet address space of target enterprises, premise-based or in the cloud, identifying possibly unprotected assets attached to enterprises’ networks. Attackers can take advantage of new assets that are installed, yet not securely configured and patched. Internally, unidentified assets can also have weak security configurations that can make them vulnerable to web or email-based malware; and adversaries can leverage weak security configurations for traversing the network, once they are inside.
Additional assets that connect to the enterprise’s network (e.g., demonstration systems, temporary test systems, guest networks, etc.) should be identified and/or isolated, in order to prevent adversarial access from affecting the security of enterprise operations.
Large, complex, dynamic enterprises understandably struggle with the challenge of managing intricate, fast-changing environments. However, attackers have shown the ability, patience, and willingness to “inventory and control” our enterprise assets at very large scale in order to support their opportunities.
Another challenge is that portable end-user devices will periodically join a network and then disappear, making the inventory of currently available assets very dynamic. Likewise, cloud environments and virtual machines can be difficult to track in asset inventories when they are shut down or paused. Another benefit of complete enterprise asset management is supporting incident response. Both when investigating the origination of network traffic from an asset on the network, and to be able to identify all potentially vulnerable, or impacted, assets of similar type or location during an incident.
1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Establish and maintain an accurate, detailed, and up-to-date inventory of all enterprise assets with the potential to store or process data, to include: end-user devices (including portable and mobile), network devices, non-computing/IoT devices, and servers. Ensure the inventory records the network address (if static), hardware address, machine name, enterprise asset owner, department for each asset, and whether the asset has been approved to connect to the network. For mobile end-user devices, MDM type tools can support this process, where appropriate. This inventory includes assets connected to the infrastructure physically, virtually, remotely, and those within cloud environments. Additionally, it includes assets that are regularly connected to the enterprise’s network infrastructure, even if they are not under control of the enterprise. Review and update the inventory of all enterprise assets bi-annually, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Identify |
1, 2, 3 |
Dependencies
None
Inputs
GV1
: Detailed Enterprise Asset Inventory - The enterprise’s list of current approved inventory to include all assests as outlined in the safeguard. This list is a mix of manual and tool-generated endpoints that includes information such as authorized, non-authorized, IP address, device type and any other information as defined by the enterprise.Aggregate Enterprise Asset Inventory - The enterprise’s list of all devices detected, manually or through automated scans, since the last update to
GV1
.Date of last update to the Detailed Enterprise Asset Inventory
Assumptions
Devices belonging to the organization, but not connected to the organization’s network, require manual discovery in order to be included in the aggregate inventory.
Operations
- Calculate the intersection of
GV1
and Input 2 Enumerate items in
GV1
that are not in Input 2 (M4)Enumerate items in Input 2 not in Input 1 (
GV2
: M5). These assets are considered unauthorized.
- Calculate the intersection of
- Check items in Input 1 for complete or missing detailed information
Enumerate items that have complete information (M6)
Enumerate items that do not have complete information or missing information (M7).
Calculate the time (in months) since the last update to Input 1 by using current date and Input 4 (M8).
Measures
M1 =
GV1
M2 = Count of items in Input 2
M3 = Count of items in the intersection of
GV1
and Input 2M4 = Count of items in
GV1
not found in Input 2M5 =
GV2
M6 = Count of items in
GV1
that contain all necessary detailed informationM7 = Count of items in
GV1
that do not contain detailed informationM8 = Months since the last update to
GV1
Metrics
If M1 is not provided or available, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
If M8 is greater than six months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Accuracy Score
Metric |
What percentage of the aggregate endpoint inventory is accounted for in the current enterprise asset inventory?
|
Calculation |
|
Completeness Score
Metric |
What percentage of the current enterprise asset inventory contains necessary detailed information?
|
Calculation |
|
Procedural Review
Manual review/rating of the inventory procedures, to include adding and removing assets, and the time allowable or expected, after acquisition or disposal of assets.
1.3: Utilize an Active Discovery Tool
Utilize an active discovery tool to identify assets connected to the enterprise’s network. Configure the active discovery tool to execute daily, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
2, 3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryThe list of active discovery tool(s) used by the enterprise
List consisting of the union from scan results conducted using all active asset discovery tool(s) within the enterprise (discovered assets).
Timeframe between two active asset discovery tool scans.
GV3
: Configuration Standard
Assumptions
The asset discovery tools on the provided list are active asset discovery tools, as opposed to passive asset discovery tools (verification of this is not performed during the following operations).
Operations
Identify enterprise assets not discovered by the active discovery tools by comparing Input 1 and Input 3 (M2).
Identify the configurations for active asset discovery tools that interface with
GV1
by usingGV3
- Using the configuration information in
GV3
, check the approved configurations to verify that the tools are capable of interfacing with the asset inventory to make automatic updates. Enumerate those tools that are compliant (M3)
Enumerate those that are not compliant (M4).
- Using the configuration information in
Measures
M1 = Count of all discovered assets from Input 3
M2 = Count of undiscovered assets
M3 = Count of properly configured tools
M4 = Count of improperly configured tools
M5 = Count of Input 2
M6 = Count of
GV1
M7 = Timeframe in hours for Input 4
Metrics
If M7 is greater than 24 hours, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
If M5 is 0, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Asset Discovery Coverage
Metric |
Asset Discovery Coverage
|
Calculation |
|
Tool Compliance Ratio
Metric |
Tool Compliance Ratio
|
Calculation |
|
1.4: Use Dynamic Host Configuration Protocol (DHCP) Logging to Update Enterprise Asset Inventory
Use DHCP logging on all DHCP servers or Internet Protocol (IP) address management tools to update the enterprise’s asset inventory. Review and use logs to update the enterprise’s asset inventory weekly, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Identify |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
List of DHCP servers
GV41
: List of CMDB servers
Assumptions
CMDB servers are configured to pull from DHCP logs
Operations
For each DHCP server, enumerate those where DHCP logging is enabled (M2)
For each CMDB server, enumerate those where DHCP logs are used to update IP addresses (M4)
Measures
M1 = Count of Input 1
M2 = Count of DHCP servers with logging enabled
M3 = Count of Input 2
GV41
M4 = Count of CMDB servers configured to use DHCP logs to update IP addresses
M5 = Count of devices in the DHCP server logs that are not included in the CMDB servers
M6 = Count of devices in the DHCP server logs that are included in the CMDB servers
Metrics
M4 > 0 indicates a non up-to-date asset inventory
DHCP Logging Quality
Metric |
Ratio of appropriately configured DHCP logging enabled to known DHCP servers
|
Calculation |
|
CMDB Configuration Quality
1.5: Use a Passive Asset Discovery Tool
Use a passive discovery tool to identify assets connected to the enterprise’s network. Review and use scans to update the enterprise’s asset inventory at least weekly, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
3 |
Dependencies
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV4
: Enterprise network architecture documentationList of passive asset discovery tools in use by the organization. For each, include the location of the tool’s configuration information and which networks it covers.
GV3
: Approved configuration(s) for each passive asset discovery tool. Configurations should include the settings necessary for the tool to be able to update the enterprise’s asset inventory
Operations
Identify approved configuratons for passive asset discovery tools using
GV3
- For each passive asset discovery tool provided in Input 2, check the tool’s configuration against the appropriate approved configuration from
GV3
Enumerate those tools that are properly configured (M1)
Enumerate those tools that are improperly configured (M2) noting the deviations from proper configuration
- For each passive asset discovery tool provided in Input 2, check the tool’s configuration against the appropriate approved configuration from
- Identify and enumerate the enterprise’s networks (M5) using Input 1, check to see if at least one properly configured passive asset discovery tool from M1 covers that network.
Create a list of the enterprise’s networks that have coverage from at least one properly configured passive asset discovery tool (M3)
Create a list of the enterprise’s networks that do not have coverage from any properly configured passive asset discovery tools (M4)
Measures
M1 = Count of properly configured passive asset discovery tools
M2 = Count of improperly configured passive asset discovery tools
M3 = Count of organization’s networks that are covered by properly configured passive discovery tools
M4 = Count of organization’s networks that are not covered by properly configured passive discovery tools
M5 = Count of enterprise’s networks.
Metrics
Coverage
Metric |
The ratio of the organization’s networks with coverage from at least one properly
configured passive asset discovery tool to the total number of networks
|
Calculation |
|
CIS Control 2: Inventory and Control of Software Assets
Actively manage (inventory, track, and correct) all software (operating systems and applications) on the network so that only authorized software is installed and can execute, and that unauthorized and unmanaged software is found and prevented from installation or execution.
Why is this CIS Control Critical?
A complete software inventory is a critical foundation for preventing attacks. Attackers continuously scan target enterprises looking for vulnerable versions of software that can be remotely exploited. For example, if a user opens a malicious website or attachment with a vulnerable browser, an attacker can often install backdoor programs and bots that give the attacker long-term control of the system. Attackers can also use this access to move laterally through the network. One of the key defenses against these attacks is updating and patching software. However, without a complete inventory of software assets, an enterprise cannot determine if they have vulnerable software, or if there are potential licensing violations.
Even if a patch is not yet available, a complete software inventory list allows an enterprise to guard against known attacks until the patch is released. Some sophisticated attackers use “zero-day exploits”, which take advantage of previously unknown vulnerabilities that have yet to have a patch released by the software vendor. Depending on the severity of the exploit, an enterprise can implement temporary mitigation measures to guard against attacks until the patch is released.
Management of software assets is also important to identify unnecessary security risks. An enterprise should review their software inventory to identify any enterprise assets running software that is not needed for business purposes. For example, an enterprise asset may come installed with default software that creates a potential security risk and provides no benefit to the enterprise. It is critical to inventory, understand, assess, and manage all software connected to an enterprise’s infrastructure.
2.1: Establish and Maintain a Software Inventory
Establish and maintain a detailed inventory of all licensed software installed on enterprise assets. The software inventory must document the title, publisher, initial install/use date, and business purpose for each entry; where appropriate, include the Uniform Resource Locator (URL), app store(s), version(s), deployment mechanism, and decommission date. Review and update the software inventory bi-annually, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Identify |
1, 2, 3 |
Dependencies
None
Inputs
GV5
: The authorized software inventory with detailed information including: timestamp indicating both last updated and last verified values, timestamp indicating installation date, operating system, software name, software version, software publisher, authorization status, business purpose, supported/unsupported. Where applicable, additionally include URL, app store(s), deployment mechanism, and decommission date.GV6
: The date of the last update to the authorized software inventory.
Operations
- Check
GV5
for completeness of detailed information. Note items that have complete detailed information (M2).
Note items that having missing or incomplete information (M3).
- Check
Compare the current date to
GV6
and note timeframe in months (M4).
Measures
M1 = Count of
GV5
M2 = Count of items in
GV5
with complete informationM3 = Count of items in
GV5
with incomplete or missing informationM4 = Timeframe in months since last update
GV6
Metrics
If M1 is not provided or available, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
If M4 is greater than six months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Accuracy Score
Metric |
What percentage of the current enterprise asset inventory contains necessary detailed information?
|
Calculation |
|
2.4: Utilize Automated Software Inventory Tools
Utilize software inventory tools, when possible, throughout the enterprise to automate the discovery and documentation of installed software.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.3: Address Unauthorized Software
Inputs
GV1
: Enterprise asset inventoryGV7
: Software capable assetsList of software inventory tools
Operations
Use
GV1
andGV7
to identify and enumrate assets unable to support sofware (M2).- For each software capable asset
GV7
Identify and enumerate if the asset is covered by at least one software inventory tool (M3)
Identify and enumerate if the asset is not covered by at least one software inventory tool (M4)
- For each software capable asset
Measures
M1 = Count of
GV7
M2 = Count of assets unable to to support software
M3 = Count of assets covered by software inventory tools
M4 = Count of assets not covered by software inventory tools
M5 = Count of Input 2
Metrics
If M5 is 0 or unavailable, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Inventory Tool Coverage
CIS Control 3: Data Protection
Develop processes and technical controls to identify, classify, securely handle, retain, and dispose of data.
Why is this CIS Control Critical?
Data is no longer only contained within an enterprise’s border, it is in the cloud, on portable end-user devices where users work from home, and is often shared with partners or online services who might have it anywhere in the world. In addition to sensitive data an enterprise holds related to finances, intellectual property, and customer data, there also might be numerous international regulations for protection of personal data. Data privacy has become increasingly important, and enterprises are learning that privacy is about the appropriate use and management of data, not just encryption. Data must be appropriately managed through its entire lifecycle. These privacy rules can be complicated for multi-national enterprises, of any size, however there are fundamentals that can apply to all.
Once attackers have penetrated an enterprise’s infrastructure, one of their first tasks is to find and exfiltrate data. Enterprises might not be aware that sensitive data is leaving their environment because they are not monitoring data outflows.
While many attacks occur on the network, others involve physical theft of portable end-user devices, attacks on service providers or other partners holding sensitive data. Other sensitive enterprise assets may also include non-computing devices that provide management and control of physical systems, such as Supervisory Control and Data Acquisition (SCADA) systems.
The enterprise’s loss of control over protected or sensitive data is a serious and often reportable business impact. While some data is compromised or lost as a result of theft or espionage, the vast majority are a result of poorly understood data management rules, and user error. The adoption of data encryption, both in transit and at rest, can provide mitigation against data compromise, and more importantly, is a regulatory requirement for most controlled data.
3.1: Establish and Maintain a Data Management Process
Establish and maintain a data management process. In the process, address data sensitivity, data owner, handling of data, data retention limits, and disposal requirements, based on sensitivity and retention standards for the enterprise. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Identify |
1, 2, 3 |
Dependencies
None
Inputs
GV10
: Enterprise’s data management processDate of last update to the data management process
Operations
- Review
GV10
to determine if, at a minimum, it includes: Addressing data sensitivity. If so, M1 = 1. Otherwise M1 = 0. (
GV11
)Captures data owner. If so, M2 = 1. Otherwise M2 = 0. (
GV13
)Handling of data. If so, M3 = 1. Otherwise M3 = 0. (
GV14
)Data retention limits based on sensitivity of data. If so, M4 = 1. Otherwise M4 = 0. (
GV15
)Disposal requirements based on sensitivity of data. If so, M5 = 1. Otherwise M5 = 0. (
GV16
)
- Review
Measures
M1 = Does the process address data sensitivity
M2 = Does the process capture data owners
M3 = Does the process include guidance for handling of data
M4 = Does the process include data rentention limits based on sensitivity of data
M5 = Does the process include guidance on disposal requirements based on sensitivity of data
M6 =
GV10
Metrics
If M6 is not available or does not exist, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Data Management Process
Metric |
The perecentage of completeness for the enterprise’s data management process.
|
Calculation |
|
3.2: Establish and Maintain a Data Inventory
Establish and maintain a data inventory, based on the enterprise’s data management process. Inventory sensitive data, at a minimum. Review and update inventory annually, at a minimum, with a priority on sensitive data.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Identify |
1, 2, 3 |
Dependencies
Sub-control 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV11
: Portion of data management process addressing data sensitivityGV12
: Data Inventory consisting of the data set of sensitive information for which the enterprise is responsibleGV1
: Enterprise asset inventoryDate of last update to the sensitive data inventory
Operations
- Use
GV11
to map Input 2 to sensitivity per the guidance in the data management process Identify and enumerate items in the data set that have a mapping (M2)
Identify and enumerate items in the data set that do not have a mapping (M3)
- Use
- Use
GV1
and M2 from Operation 1 to map the data set to assets storing data Identify and enumerate items that have complete and correct mapping to asset and sensitivity (M4)
Identify and enumerate items that have partial mapping to sensitivity (M5)
- Use
- Use: code:GV1 and M3 from Operation 2 to map the data set, without sensitivity mapping, to assets storing data
Identify and enumerate items that have partial mapping to assets (M6)
Identify and enumerate items that have no mapping at all (M7)
Compare current date to Input 4 and capture timeframe in months (M8)
Measures
M1 =
GV11
M2 = Count of sensitive data addressed in
GV11
M3 = Count of sensitive data not addressed in
GV11
M4 = Count of data with complete sensitivity and asset storage inventory
M5 = Count of data with partial mapping to sensitivity
M6 = Count of data with partial mapping to assets
M7 = Count of data with no mapping to sensitivity or asset
M8 = Timeframe since last update to sensitive data inventory in months
M9 = Count of items in
GV12
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M9 is greater than 12 months, this safeguard is scored at zero and receives a failing score. The other metrics don’t apply.
Completeness of sensitive data inventory
Metric |
Percentage of data with complete information
|
Calculation |
|
Partial completeness of sensitive data inventory
Metric |
Percentage of data with partial inventory
|
Calculation |
|
3.3: Configure Data Access Control Lists
Configure data access control lists based on a user’s need to know. Apply data access control lists, also known as access permissions, to local and remote file systems, databases, and applications.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
1, 2, 3 |
Dependencies
Safeguard 3.2: Establish and Maintain a Data Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
GV12
: Sensitive Data InventoryGV1
: Enterprise asset inventoryGV3
: Configuration StandardsGV13
: Portion of data management process addressing data ownersGV14
: Portion of data management process addressing data handlingGV22
: Inventory of Accounts
Assumptions
Operations
- Use the data managemet process, specifically
GV13
andGV14
, as guidelines to map user account to sensitive data inGV12
. Identify and enumerate sensitive data correctly mapped to user accounts (M1)
Idenitfy and enumerate sensitive data not correctly mapped to user accounts (M2)
- Use the data managemet process, specifically
- For each enterprise asset storing sensitive data, as outlined by :code:`GV12,
Identify and enumerate all assets storing sensitive data (3)
Use
GV3
to check and enumerate assets that are properly configured to only allow users as identified in Operation 1 (M3)Use
GV3
to check and enumerate assets that are improperly configured to only allow users as identified in Operation 1 (M4)
Measures
M1 = Count of sensitive data correctly mapped to user accounts per the data management process
M2 = Count of sensitive data correctly mapped to user accounts per the data management process
M3 = Count of assets storing sensitive data
M4 = Count of properly configured assets to support data access control
M5 = Count of improperly configured assets to support data access control
M6 = Count of
GV17
M7 = :code:’GV13`
M8 =
GV14
Metrics
If either M7 or M8 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Completeness of User Access Control
Metric |
Percentage of user accounts properly mapped to sensitive data
|
Calculation |
|
Properly Configured Assets
Metric |
Percentage of assets properly configured to control acess of
sensitive data
|
Calculation |
|
3.4: Enforce Data Retention
Retain data according to the enterprise’s data management process. Data retention must include both minimum and maximum timelines.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
1, 2, 3 |
Dependencies
Safeguard 3.1: Establish and Maintain a Data Management Process
Safeguard 3.2: Establish and Maintain a Data Inventory
Inputs
GV15
: Data Retention Limits outlined in the data management processGV11
: Portion of data management process addressing data sensitivityGV12
: Sensitive Data Inventory
Operations
- For each sensitive data type covered in
GV11
Enumerate the number of types of sensitivity (
GV17
: M1), at a minimum one to deferrentiate sensitive data from other dataIdentify and enumerate if each type has a minimum retention time (M2) as defined by
GV15
Identify and enumerate if each type has a maximum retention time (M3) as defined by :code:`GV15
- For each sensitive data type covered in
- Using the output of Operation 1.1 and 1.2, check the data inventory
GV12
for enforcement of data retention Identify and enumerate items in the inventory that comply with retention timelines (M4)
Identify and enumerate items in the inventory that do not comply with retention timelines (M5)
- Using the output of Operation 1.1 and 1.2, check the data inventory
Measures
M1 = Count of sensitivity types that require retention timelines
M2 = Count of sensitivity types that ainclude minimum retention times
M3 = Count of sensitivity types that ainclude maximum retention times
M4 = Count of data in inventory that comply with retention policy
M5 = Count of data in inventory that do not comply with retention policy
M6 = Count of
GV12
Metrics
If GV15
is 0, this safeguard receives a failing score. The other metrics don’t apply.
Completeness of Policy
Metric |
The percentage of sensitivity types that include minimum retention timelines
|
Calculation |
:code: M2 / M1
|
Metric |
The percentage of sensitivity types that include maximum retention timelines
|
Calculation |
:code: M3 / M1
|
Enforcement of Retention Policy
Metric |
The percentage of sensitivity data that complies with retention policy
|
Calculation |
M4 / M6 |
3.5: Securely Dispose of Data
Securely dispose of data as outlined in the enterprise’s data management process. Ensure the disposal process and method are commensurate with the data sensitivity.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
1, 2, 3 |
Dependencies
Safeguard 3.1: Establish and Maintain a Data Management Process
Safeguard 3.2: Establish and Maintain a Data Inventory
Inputs
GV16
: Data disposal requirement portion of data management processGV11
: Portion of data management process addressing data sensitivityGV17
: Count of Sensitive data typesGV12
: Sensitive Data Inventory
Operations
- For each sensitive data type covered in
GV17
Identify and enumerate each type has a disposal method and process as defined by
GV16
(M2)Identify and enumerate each type that does not have a disposal method and process as defined by :code:`GV16`(M3)
- For each sensitive data type covered in
- For each item in
GV12`determine wether they data complies with the disposal requirements outlined in :code:`GV17
Enumerate data that does not comply with disposal requirements (M4)
Enumerate data that complies with disposal requirements (M5)
- For each item in
Measures
M1 =
GV17
M2 = Count of sensitive data types with an outlined disposal method
M3 = Count of sensitive data types witouth an outlined disposal method
M4 = Count of data in inventory that does not comply with disposal requirement
M5 = Count of data in inventory that complies with disposal requirement
M6 = Count of items in
GV12
Metrics
If
GV16
is 0, this safeguard receives a failing score. The other metrics don’t apply.
Completeness of disposal process
Metric |
The percentage of data sensitivity types that contain a disposal method and process
|
Calculation |
M2 / M1 |
Compliance to disposal process
Metric |
The percentage of compliance to the data disposal process
|
Calculation |
M5 / M6 |
3.6: Encrypt Data on End-User Devices
Encrypt data on end-user devices containing sensitive data. Example implementations can include, Windows BitLocker®, Apple FileVault®, Linux® dm-crypt.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration Standards
Operations
- For each asset in
GV1
, identify end-user devices Enumerate the end-user devices (M1)
Use
GV5
to identify and enumerate the assets that have encryption software installed (M2)Use
GV5
to identify and enumerate the assets without encryption software (M3)
- For each asset in
- For each encryption software installed on assets (M2), use
GV3
to determine whether the software is properly configured Enumerate the encryption software that is properly configured (M4)
Enumerate the encryption software that is improperly configured (M5)
- For each encryption software installed on assets (M2), use
Measures
M1 = Count of approved end-user devices
M2 = Count of approved end-user devices with encryption software installed
M3 = Count of approved end-user devices without encryption software
M4 = Count of properly configured end-user devices
M5 = Count of improperly configured end-user devices
Metrics
Installed Software Coverage
Appropriately Configured Devices
3.7: Establish and Maintain a Data Classification Scheme
Establish and maintain an overall data classification scheme for the enterprise. Enterprises may use labels, such as “Sensitive”, “Confidential” and “Public”, and classify their data according to those labels. Review and update the classification scheme annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Identify |
2, 3 |
Dependencies
Safeguard 3.1: Establish and Maintain a Data Management Process
Safeguard 3.2: Establish and Maintain a Data Inventory
Inputs
Enterprise’s data classification scheme
GV17
: Sensitive Data typesGV12
: Sensitive Data InventoryDate of last review of the data classification scheme
Operations
- Check if the enterprise has a data classification scheme (Input 1).
If Input 1 exists M = 1
Otherwise M1 = 0
- Using :code:`GV17`determine if the enterprise has a way to categorize the type of data within the classification scheme
Enumerate the sensitivity types that are included in the classification scheme (M2)
Enumerate the sensitivity types that are not included in the classification scheme (M3)
- Compare
GV12
and Input 1 Identify and enumerate data that contains an accurate classification per the classification scheme (M4)
Identify and enumerate data that does not contain a classsification or contains an innaccurate classification per the classification scheme (M5)
- Compare
Compare the current date to that provided in Input 4. Note the timeframe in months. (M8)
Measures
M1 = Output of Operation 1
M2 = Sensitivity addressed by the classification scheme
M3 = Sensitivity not addressed by the classification scheme
M4 = Data properly catergorized per the classification scheme
M5 = Data lacking or improperly categorized per the classification scheme
M6 = Count of items in
GV17
M7 = Count of
GV12
M8 = Count of months since last review of the classification scheme
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M8 is greater than twelve, this safeguard receives a failing score. The other metrics don’t apply.
Completeness of Classification Scheme
Implementation of the Classification Scheme
Metric |
The percentage of data categorized using the classification scheme.
|
Calculation |
|
3.8: Document Data Flows
Document data flows. Data flow documentation includes service provider data flows and should be based on the enterprise?s data management process. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Identify |
2, 3 |
Dependencies
Safeguard 3.1: Establish and Maintain a Data Management Process
Safeguard 3.2: Establish and Maintain a Data Inventory
Inputs
Documentation outlining data flow for enterprise owned data. Documentation should include, at a minimum, data flows to external enterprises.
GV12
: Sensitive Data InventoryDate of last review of the data flow documentation
Operations
- Check if the enterprise has data flow documentation (Input 1).
If Input 1 exists M = 1
Otherwise M1 = 0
- Using :code:`GV12`and identify data that flows to external enterprises
Enumerate the data that flows to external enterprises (M2)
- Compare Input 1 and the output of Operation 2
Enumerate data flows from Operation 2 that are included in Input 1 (M3)
Enumerate data flows from Operation 2 that are not included in Input 1 (M4)
Compare the current date to that provided in Input 3. Note the timeframe in months (M5)
Measures
M1 = Output of Operation 1
M2 = Count of data flows to external enterprises
M3 = Count of data flows included in the data flow doumentaion
M4 = Count of data flows not included in the data flow documentation
M5 = Count of months since last review of the data flow documentation
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M5 is greater than twelve, this safeguard receives a failing score. The other metrics don’t apply.
Coverage of Data Flow Documentation
3.9: Encrypt Data on Removable Media
Encrypt data on removable media.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration Standards
Assumptions
Enterprise asset inventory includes removable media
Operations
Use
GV1
to identify and enumerate assets authorized to support removeable media (M1)- Use
GV5
to identify encryption software installed on assets identified in Operation 1 (M1) Enumerate the number of assets with encryption software installed (M2)
Enumerate the number of assets without encryption software installed (M3)
- Use
- For assets identified in Operation 2.1, use
GV3
to check configurations of encryption software Enumerate assets that have properly configured encryption software (M4)
Enumerate assets that have improperly configured encryption software(M5)
- For assets identified in Operation 2.1, use
Measures
M1 = Count of assets authorized to support removeable media
M2 = Count of authorized assets with encryption software installed
M3 = Count of authorized assets without encryption software installed
M4 = Count of authorized assets with properly configured encryption software
M5 = Count of authorized assets with improperly configured encryption software
Metrics
Coverage
Metric |
The percentage of appropriately configured assets to support removeable media.
|
Calculation |
|
3.10: Encrypt Sensitive Data in Transit
Encrypt sensitive data in transit. Example implementations can include, Transport Layer Security (TLS) and Open Secure Shell (OpenSSH).
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
2, 3 |
Dependencies
Safeguard 3.2: Establish and Maintain a Data Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV12
: Sensitive data InventoryGV5
: Configuration Information
Operations
For each item in
GV12
, identify the means and components for encrypting data in transit.- Compare the output of Operation 1 with
GV5
to check appropriate approved configurations Enumerate the data items in
GV12
that are properly configured (M2)Enumerate the data items in
GV12
that are improperly configured (M3)
- Compare the output of Operation 1 with
Measures
M1 = Count of items in
GV12
M2 = Count of data with properly configured encryption components
M3 = Count of data with improperly configured encryption components
Metrics
Coverage
3.11: Encrypt Sensitive Data At Rest
Encrypt sensitive data at rest on servers, applications, and databases containing sensitive data. Storage-layer encryption, also known as server-side encryption, meets the minimum requirement of this Safeguard. Additional encryption methods may include application-layer encryption, also known as client-side encryption, where access to the data storage device(s) does not permit access to the plain-text data. .. list-table:
:header-rows: 1
* - Asset Type
- Security Function
- Implementation Groups
* - Data
- Protect
- 2, 3
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV12
: Sensitive data inventoryGV4
: Enterprise Network Architecture DocumentationGV18
: Enterprise assets storing sensitive data
Operations
Use
GV5
to identify and enumerate all encryption tools requiring secondary authentication systems (M1)Use
GV12
andGV1
to identify and enumerate all enterprise assets storing sensitive data (GV19
: M2)- Compare the output of Operation 1 and Operation 2
Identify and enumerate assets with at least one encryption tool from M1 installed (M4)
Identify and enumerate assets without at least one encryption tool from M1 installed (M5)
Measures
M1 = Count of authorized encryption tools requiring secondary authentication systems
M2 = Count of enterprise assets storing sensitive data
M3 = Count of assets with at least one encryption tool installed
M4 = Count of assets without at least one encryption tool installed
Metrics
Coverage
3.12: Segment Data Processing and Storage Based on Sensitivity
Segment data processing and storage, based on the sensitivity of the data. Do not process sensitive data on enterprise assets intended for lower sensitivity data.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 3.2: Establish and Maintain a Data Inventory
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV12
: Sensitive Data InventoryGV4
: Enterprise Network Architecture Documentation
Assumptions
An asset’s overall sensitivity level should be the highest sensitivity level of the data it stores/processes/transmits. If a system contains any sensitive information, that asset should be treated accordingly, and should be properly separated from networks or network segments that don’t have a need to access that type of sensitive information.
Operations
For each item in
GV12
identify the assets that store, process, or transmit sensitive data (:code:`GV18: M1)- Use the output of Operation 1 and
GV4
to identify networks/VLANs connected to the assets Identify and enumerate any instances of properly seperated assets from less sensitive networks (M2)
Identify and enumerate any instances of improperly seperated assets from less sensitive networks (M3)
- Use the output of Operation 1 and
Measures
M1 = Count of assets storing, processing, or transmitting sensitive data
M2 = Count of sensitive assets properly seperated from less sensitive networks
M3 = Count of sensitive assets improperly seperated from less sensitive networks
Metrics
Coverage
Metric |
The percentage of properly seperated sensitive assets.
|
Calculation |
|
3.13: Deploy a Data Loss Prevention Solution
Implement an automated tool, such as a host-based Data Loss Prevention (DLP) tool to identify all sensitive data stored, processed, or transmitted through enterprise assets, including those located onsite or at a remote service provider, and update the enterprise’s sensitive data inventory.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 3.2: Establish and Maintain a Data Inventory
Inputs
GV18
: Enterprise assets storing, processing, or transmitting sensitive dataGV5
: Authorized Software inventoryGV3
: Configuration Standards
Operations
Use
GV5
to identify and enumerate all data loss prevention software- Compare
GV18
and the output of Operation 1 Identify and enumerate each asset in
GV18
with data loss prevention software installed (M2)Identify and enumerate each asset in
GV18
without data loss prevention software installed (M3)
- Compare
- For assets with data loss prevention installed from Operation 2.1 check
GV3
for configuration information Identify and enumerate assets with properly configured data lass prevention software (M4)
Identify and enumerate assets with improperly configured data lass prevention software (M5)
- For assets with data loss prevention installed from Operation 2.1 check
Measures
M1 = Count of
GV18
M2 = Count of assets with data loss prevention software
M3 = Count of assets without data loss prevention software
M4 = Count of assets with properly configured data loss prevention software
M5 = Count of assets with improperly configured data loss prevention software
Metrics
Coverage
3.14: Log Sensitive Data Access
Log sensitive data access, including modification and disposal.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Detect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV5
: Authorized software inventoryGV19
: Enterprise assets storing sensitive dataGV3
: Configuration Standards
Operations
Using
GV3
identify authorized logging software- For each asset in
GV19
, use the output from Operation 1 Identify and enumerate assets with logging software installed (M2)
Identify and enumerate assets that do not have logging software installed (M3)
- For each asset in
- For logging software installed check configuration using
GV3
Identify and enumerate software that is properly configured (M4)
Identify and enumerate software that is improperly configured (M5)
- For logging software installed check configuration using
Measures
M1 = Count of
GV19
M2 = Count of assets storing sensitive data with logging software
M3 = Count of assets storing sensitive data without logging software
M4 = Count of assets with properly configured logging
M5 = Count of assets with imporperly configured logging
Metrics
Coverage
CIS Control 4: Secure Configuration of Enterprise Assets and Software
Establish and maintain the secure configuration of enterprise assets (end-user devices, including portable and mobile; network devices; non-computing/IoT devices; and servers) and software (operating systems and applications).
Why is this CIS Control Critical?
As delivered from manufacturers and resellers, the default configurations for enterprise assets and software are normally geared towards ease-of-deployment and ease-of-use rather than security. Basic controls, open services and ports, default accounts or passwords, pre-configured Domain Name System (DNS) settings, older (vulnerable) protocols, and pre-installation of unnecessary software can all be exploitable if left in their default state. Further, these security configuration updates need to be managed and maintained over the life cycle of enterprise assets and software. Configuration updates need to be tracked and approved through configuration management workflow process to maintain a record that can be reviewed for compliance, leveraged for incident response, and to support audits. This CIS Control is important to on-premises devices, as well as remote devices, network devices, and cloud environments.
Service providers play a key role in modern infrastructures, especially for smaller enterprises. They often are not set up by default in the most secure configuration to provide flexibility for their customers to apply their own security policies. Therefore, the presence of default accounts or passwords, excessive access, or unnecessary services are common in default configurations. These could introduce weaknesses that are under the responsibility of the enterprise that is using the software, rather than the service provider. This extends to ongoing management and updates, as some Platform as a Service (PaaS) only extend to the operating system, so patching and updating hosted applications are under the responsibility of the enterprise.
Even after a strong initial configuration is developed and applied, it must be continually managed to avoid degrading security as software is updated or patched, new security vulnerabilities are reported, and configurations are “tweaked,” to allow the installation of new software or to support new operational requirements.
4.1: Establish and Maintain a Secure Configuration Process
Establish and maintain a secure configuration process for enterprise assets (end-user devices, including portable and mobile, non-computing/IoT devices, and servers) and software (operating systems and applications). Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
1, 2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV2
: Authorized software inventoryGV1
: Enterprise asse inventoryGV3
: Configuration Standard: this should include any enterprise approved deviations from industry standard baselines such as CIS benchmarks, DISA Security Technical Implementation Guides (STIGs), or U.S. government configuration baselines (USGCB).Date of last review and updat of configuration standard
Operations
- Identify whether Input 2 exists
If it exists M1 = 1
If it does not exist M1 = 0
Identify and enumerate end-user devices, including portable and mobile, non-computing/IoT devices, and servers in
GV1
(M2)Using the output of Operation 2 (M2), identify and enumerate the software installed on the assets using
GV2
(M3)Compare current date to date provided in Input 4. Note the timeframe in months (M6)
Measures
M1 = Output of Operation 1
M2 = Count of applicable enterprise assets
M3 = Count of software insalled on applicable enterprise assets
M4 = Count of software that is listed in the configuration standard
M5 = Count of software that is not listed in the configuration standard
M6 = Timeframe since last review and update in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M6 is greater than twelve, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Standard Configuration Coverage
4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Establish and maintain a secure configuration process for network devices. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV2
: Authorized software inventoryGV1
: Enterprise asse inventoryGV3
: Configuration Standard: this should include any enterprise approved deviations from industry standard baselines such as CIS benchmarks, DISA Security Technical Implementation Guides (STIGs), or U.S. government configuration baselines (USGCB).Date of last review and updat of configuration standard
Operations
- Identify whether Input 2 exists
If it exists M1 = 1
If it does not exist M1 = 0
Identify and enumerate network infrastructure assets in
GV1
(M2)Using the output of Operation 2 (M2), identify and enumerate the software installed on the assets using
GV2
(M3)Compare current date to date provided in Input 4. Note the timeframe in months (M6)
Measures
M1 = Output of Operation 1
M2 = Count of applicable enterprise assets
M3 = Count of software insalled on applicable enterprise assets
M4 = Count of software that is listed in the configuration standard
M5 = Count of software that is not listed in the configuration standard
M6 = Timeframe since last review and update in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M6 is greater than twelve, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Standard Configuration Coverage
4.3: Configure Automatic Session Locking on Enterprise Assets
Configure automatic session locking on enterprise assets after a defined period of inactivity. For general purpose operating systems, the period must not exceed 15 minutes. For mobile end-user devices, the period must not exceed 2 minutes.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software InventoryGV3
: Configuration standard
Operations
Identify and enumerate assets within
GV1
that support automatic locking due to inactivity (M1)Use
GV5
to identify and enumerate assets from Operation 1 with authorized software installed (M2)- Check the configurations for the software using
GV3
For general computing assets, enumerate those assets with properly configured automatic locking (15 minutes or less) (M3)
For general computing assets, enumerate those assets with improperly configured automatic locking (greater than 15 minutes) (M4)
For mobile assets, enumerate those assets with properly configured automatic locking (2 minutes or less) (M5)
For mobile assets, enumerate those assets with improperly configured automatic locking (greater than 2 minutes) (M6)
- Check the configurations for the software using
Measures
M1 = Count of assets capable of supporting automatic lockout
M2 = Count of assets with authorized software installed to allow lockout
M3 = Count of general computing assets with properly configured lockout
M4 = Count of general computing assets with improperly configured lockout
M5 = Count of mobile assets with properly configured lockout
M6 = Count of mobile assets with improperly configured lockout
Metrics
Properly Configured Assets
Metric |
The percentage of assets properly configured for automatic lockout.
|
Calculation |
|
4.4: Implement and Manage a Firewall on Servers
Implement and manage a firewall on servers, where supported. Example implementations include a virtual firewall, operating system firewall, or a third-party firewall agent.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standard
Operations
Identify and enumerate servers capable of hosting a firewall using
GV1
(M1)Identify and enumerate applications capable of hosting a firewall using
GV5
(M2)- Using configuration standards to check if firewalls are properly configured
Enumerate servers from Operation 1 with properly configured firewalls (M3)
Enumerate servers from Operation 1 with improperly configured firewalls (M4)
Enumerate applications from Operation 2 with properly configured firewalls (M3)
Enumerate application from Operation 2 with improperly configured firewalls (M4)
Measures
M1 = Count of servers enterprise assets capable of hosting a firewall
M2 = Count of applications software capable of hosting a firewall
M3 = Count of servers with properly configured firewalls
M4 = Count of servers with improperly configured firewalls
M5 = Count of applications with properly configured firewalls
M6 = Count of applications with improperly configured firewalls
Metrics
Implementation of firewalls
Metric |
The percentage of properly configured firewalls within the enterprise
|
Calculation |
|
4.5: Implement and Manage a Firewall on End-User Devices
Implement and manage a host-based firewall or port-filtering tool on end-user devices, with a default-deny rule that drops all traffic except those services and ports that are explicitly allowed.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standard
Operations
Identify and enumerate end-user devices capable of hosting a firewall or a deny rule using
GV1
(M1)- Using configuration standards
GV3
to check if firewalls or deny rules are properly configured on end-user devices Enumerate assets from Operation 1 with properly configured firewalls or a configured default deny rule (M3)
Enumerate assets from Operation 1 with improperly configured firewalls and lacking a configured default deny rule(M4)
- Using configuration standards
Measures
M1 = Count of end-user devices capable of hosting a firewall
M2 = Count of end-user devices with a properly configured firewall or default deny rule
M3 = Count of end-user devices with an improperly configured firewall and lacking a configured default deny rule
Metrics
Coverage
Metric |
The percentage of properly configured firewalls or deny rule on end-user devices
|
Calculation |
|
4.6: Securely Manage Enterprise Assets and Software
Securely manage enterprise assets and software. Example implementations include managing configuration through version-controlled-infrastructure-as-code and accessing administrative interfaces over secure network protocols, such as Secure Shell (SSH) and Hypertext Transfer Protocol Secure (HTTPS). Do not use insecure management protocols, such as Telnet (Teletype Network) and HTTP, unless operationally essential.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standard
Operations
Using
GV5
identify and enumerate authorized management software (M1)Using
GV1
identify and enumerate assets capable of supporting management software (M2)Using the output of Operations 1 and 2, identify and enumerate assets with authorized management software installed (M3)
- Using configuration standards
GV3
to check if management software is configured properly Enumerate assets from Operation 3 with properly configured management software (M4)
Enumerate assets from Operation 1 with improperly configured mangement software (M5)
- Using configuration standards
Measures
M1 = Count of authorized management software
M2 = Count of enterprise assets capable of supporting management software
M3 = Count of assets with authorized management software installed
M4 = Count of assets with properly configured management software
M5 = Count of assets with improperly configured management software
Metrics
Coverage
Metric |
The percentage of assets with properly configured authorized management software
|
Calculation |
|
4.7: Manage Default Accounts on Enterprise Assets and Software
Manage default accounts on enterprise assets and software, such as root, administrator, and other pre-configured vendor accounts. Example implementations can include: disabling default accounts or making them unusable.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 5.2: Use Unique Passwords
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV20
: Unique password policy
Operations
Use
GV5
to identify and enumerate authorized operating software, applications, and third-party software that contain default accounts (M1)Use
GV1
to identify and enumerate assets with software, from Operation 1, installed (M2)For each identified in Operation 2, enumerate default accounts (M3)
- Check if default accounts can be disabled
Enumerate accounts that are disabled (M4)
Enumerate accounts that are enabled (M5)
- If account cannot be disabled, ensure to change default passwords according to the
GV20
: enterprise’s unique password policy Enumerate accounts with changed passwords (M6)
- If account cannot be disabled, ensure to change default passwords according to the
Measures
M1 = Count of software that uses default accounts
M2 = Count of assets with software installed that uses default accounts
M3 = Count of default accounts identified
M4 = Count of default accounts that have been disabled
M5 = Count of default accounts that are enabled
M6 = Count of enabled default accounts with changed passwords
Metrics
Unusable Default Accounts
Metric |
The percentage of default accounts that have been rendered unusable
|
Calculation |
|
4.8: Uninstall or Disable Unnecessary Services on Enterprise Assets and Software
Uninstall or disable unnecessary services on enterprise assets and software, such as an unused file sharing service, web application module, or service function.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standard
Operations
Use
GV5
to identify and enumerate authorized services (M1)Use
GV1
to identify and enumerate services on enterprise assets (M2)- Compare outputs from Operations 1 and 2
Identify and enumerate authorized services on assets (M3)
Identify and enumerate unauthorized services on assets (M4)
- For authorized services in Operation 3.2, use
GV3
to check configurations Identify and enumerate services that are configured correctly (disabled) (M5)
Identify and enumerate services that are configured improperly (enabled) (M6)
- For authorized services in Operation 3.2, use
Measures
M1 = Count of authorized services
M2 = Count of services on enterprise assets
M3 = Count of authorized services on assets
M4 = Count of unauthorized services on assets
M5 = Count of unauthorized services that are disabled
M6 = Count of unauthorized serivces that are enabled
Metrics
Compliant Services
Metric |
The percentage of services installed/running that are
enterprise essential
|
Calculation |
|
Non-compliant Services
Metric
The percentage of services installed/running that arenot enteprise essential
Calculation
M6 / M2
4.9: Configure Trusted DNS Servers on Enterprise Assets
Configure trusted DNS servers on enterprise assets. Example implementations include: configuring assets to use enterprise-controlled DNS servers and/or reputable externally accessible DNS servers.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standard
Operations
Use
GV1
to identify and enumerate authorizsed DNS servers (M1)Use
GV1
to identify and enumerate assets configured for authorized DNS servers (M2)- Use
GV3
to check configuration of DNS servers identified on assets in Operation 2 Identify and enumerate assets with DNS servers that are properly configured (M3)
Identify and enumerate assets with DNS servers that are improperly configured (M4)
- Use
Measures
M1 = Count of authorized DNS servers
M2 = Count of enterprise assets configured for DNS servers
M3 = Count of assets with properly configured DNS servers
M4 = Count of assets with improperly configured DNS servers
Metrics
Coverage
Metric |
The percentage of assets with properlyn configured DNS servers
|
Calculation |
|
4.10: Enforce Automatic Device Lockout on Portable End-User Devices
Enforce automatic device lockout following a predetermined threshold of local failed authentication attempts on portable end-user devices, where supported. For laptops, do not allow more than 20 failed authentication attempts; for tablets and smartphones, no more than 10 failed authentication attempts. Example implementations include Microsoft? InTune Device Lock and Apple? Configuration Profile maxFailedAttempts.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Respond |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safegaurd 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate all portable devices (M1)- Use
GV3
to check failed authentication configuration for all portable devices Identify and enumerate failed authentication on laptops that is properly configured (20 failed attempts or less) (M2)
Identify and enumerate failed authentication on laptops that is not properly configured (greater than 20 failed attempts) (M3)
Identify and enumerate failed authentication on mobile devices that is properly configured (10 failed attempts or less) (M4)
Identify and enumerate failed authentication on mobile devices that is not properly configured (greater than 10 failed attempts) (M5)
- Use
Measures
M1 = Count of portable devices
M2 = Count of properly configured laptops
M3 = Count of improperly configured laptops
M4 = Count of properly configured mobile devices
M5 = Count of improperly configured mobile devices
Metrics
Compliance of Default Lockout
Metric |
The percentage of portable devices with properly configured
failed authentication.
|
Calculation |
|
4.11: Enforce Remote Wipe Capability on Portable End-User Devices
Remotely wipe enterprise data from enterprise-owned portable end-user devices when deemed appropriate such as lost or stolen devices, or when an individual no longer supports the enterprise.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safegaurd 4.1: Establish and Maintain a Secure Configuration Process
Inputs
:code:`GV21: Portable end-user devices
GV3
: Configuration standards
Operations
Use
GV21
to identify and enumerate portable end-user devices that support remote wipe (M1)- Use
GV3
to check configuration for remote wipe on portable devices capable of supporting as identified in Operation 1 Identify and enumerate portable devices with properly configured remote wipe (M2)
Identify and enumerate portable devices with improperly configured remote wipe (M3)
- Use
Measures
M1 = Count of portable devices capable of supporting remote wipe
M2 = Count of properly configured portable devices
M3 = Count of improperly configured portable devices
Metrics
Compliance of Remote Wipe
Metric |
The percentage of portable devices with properly configured
remote wipe.
|
Calculation |
|
4.12: Separate Enterprise Workspaces on Mobile End-User Devices
Ensure separate enterprise workspaces are used on mobile end-user devices, where supported. Example implementations include using an Apple? Configuration Profile or Android? Work Profile to separate enterprise applications and data from personal applications and data.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV21
: Portable end-user devicesGV5
: Authorized software inventoryGV3
: Configuration standards
Operations
Use
GV5
to identify and enumerate authorized mobile device management software (M1)Use
GV21
to identify mobile devices capable of supporting mobile device management software (M2)- Compare the output of Operations 1 and 2
Identify and enumerate mobile devices with authorized mobile device management software (M3)
Identify and enumerate mobile devices without authorized mobile device management software (M4)
- Use
GV3
to check configurations of mobile devices with mobile device management software Identify and enumerate mobile devices with properly configured mobile device management software to seperate enterprise workspace (M5)
Identify and enumerate mobile devices with improperly configured mobile device management sotware (M6)
- Use
Measures
M1 = Count of authorized mobile device management software
M2 = Count of mobile devices capable of supporting mobile device management software
M3 = Count of mobile devices with mobile device management software
M4 = Count of mobile devices without mobile device management software
M5 = Count of asssets with properly configured mobile device management software
M6 = Count of asssets with improperly configured mobile device management software
Metrics
Compliance of Seperation of Enterprise Workspace
CIS Control 5: Account Management
Use processes and tools to assign and manage authorization to credentials for user accounts, including administrator accounts, as well as service accounts, to enterprise assets and software.
Why is this CIS Control Critical?
It is easier for an external or internal threat actor to gain unauthorized access to enterprise assets or data through using valid user credentials than through “hacking” the environment. There are many ways to covertly obtain access to user accounts, including: weak passwords, accounts still valid after a user leaves the enterprise, dormant or lingering test accounts, shared accounts that have not been changed in months or years, service accounts embedded in applications for scripts, a user having the same password as one they use for an online account that has been compromised (in a public password dump), social engineering a user to give their password, or using malware to capture passwords or tokens in memory or over the network.
Administrative, or highly privileged, accounts are a particular target, because they allow attackers to add other accounts, or make changes to assets that could make them more vulnerable to other attacks. Service accounts are also sensitive, as they are often shared among teams, internal and external to the enterprise, and sometimes not known about, only to be revealed in standard account management audits.
Finally, account logging and monitoring is a critical component of security operations. While account logging and monitoring are covered in CIS Control 8 (Audit Log Management), it is important in the development of a comprehensive Identity and Access Management (IAM) program.
5.1: Establish and Maintain an Inventory of Accounts
Establish and maintain an inventory of all accounts managed in the enterprise. The inventory must include both user and administrator accounts. The inventory, at a minimum, should contain the person’s name, username, start/stop dates, and department. Validate that all active accounts are authorized, on a recurring schedule at a minimum quarterly, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Identify |
1, 2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized software inventoryGV22
: Inventory of accountsDate of last review of the inventory of accounts
Operations
- Check if the enterprise maintains an inventory of user and administrative accounts (Input 2)
If the inventory exists M1 = 1
If the inventory does not exist M1 = 0
- Using the inventory of accounts
GV22
, determine if the inventory captures the following elements: person’s name, username, start/stop dates, and department Each element is assigned a value of 1 if it exists and 0 if it does not. Total the number of elements that exist. (M3)
- Using the inventory of accounts
- Using
GV22
check each account for elements: person’s name, username, start/stop dates, and department Identify and enumerate accounts with all elements (M4)
Identify and enumerate accounts missing or with incomplete elements (M5)
- Using
Use
GV5
to identify authentication systems or other software that manages accountsGV23
.Using the output of Operation 4, enumerate all current user and administrative accounts throughout the enterprise (M6)
- Compare the output of Operation 5 with
GV22
Identify and enumerate accounts that are supposed to be active/enabled (M7)
Identify and enumerate accounts that are supposed to be disabled/removed (M8)
- Compare the output of Operation 5 with
Compare the current date to the date provided in Input 3 and enumerate the timeframe in months (M9)
Measures
M1 = Does the account inventory exist (Output of Operation 1)
M2 = Count of accounts in
GV22
M3 = Count of elements provided in inventory
M4 = Count of accounts in inventory with complete information
M5 = Count of accounts in inventory with missing or incomplete information
M6 = Count of current accounts identified through Operation 5
M7 = Count of authorized accounts
M8 = Count of unauthorized accounts
M9 = Timeframe of last update in months
Metrics
If M1 is 0, this safeguard receives a failing score and other metrics don’t apply. If M9 is greater than three, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Inventory
Metric |
The percentage of minimum elements included in the inventory.
|
Calculation |
|
Metric |
The percentage of accounts with complete information.
|
Calculation |
|
Accuracy of Inventory
Metric |
The percentage of accurately listed accounts in the inventory.
|
Calculation |
|
5.2: Use Unique Passwords
Use unique passwords for all enterprise assets. Best practice implementation includes, at a minimum, an 8-character password for accounts using MFA and a 14-character password for accounts not using MFA.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
GV20
: Unique password policy for the enterprise
Operations
- Check if the enterprise has a unique password policy
If policy is available M1 = 1
Otherwise M1 = 0
- Review the policy and determine whether it includes password guidance for accounts without MFA
- If guidance is included M2 = 1
- Does guidance, at a minimum, require a fourteen character password
If password guidance is fourteen characters or longer M3 = 1
Otherwise M3 = 0
Otherwise M2 = 0
- Review the policy and determine whether it includes password guidance for accounts with MFA
- If guidance is included M4 = 1
- # Does guidance, at a minimu, require an eight character password
If password guidance is eight characters or longer M5 = 1
Otherwise M5 = 0
Otherwise M3 = 0
Measures
M1 = Does a password policy exist
M2 = Does guidance exist for accounts without MFA
M3 = Does guidance for accounts without MFA meet minimum guidance
M4 = Does guidance exist for accounts with MFA
M5 = Does guidance for accounts with MFA meet minimum guidance
Metrics
If M1 is 0, the safeguard recieves a failing score. Other metrics don’t apply
Completeness of Password Policy
Metric |
The percentage of completeness of the unique password policy
|
Calculation |
|
Strength of Policy
Metric |
The percentage of password guidance that meets minimum character length
standards
|
Calculation |
|
5.3: Disable Dormant Accounts
Delete or disable any dormant accounts after a period of 45 days of inactivity, where supported
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Respond |
1, 2, 3 |
Dependencies
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
GV22
: Inventory of accountsEnterprise defined policy for dormant threshold
Assumptions
The list of accounts for the enterprise includes OS-level, database, internal and external application accounts.
A query interface is assumed to enable collection of a “last activity” timestamp, such as last logon, as well as a status indicating if the account is enabled or disabled.
Operations
Review Input 2 and note the dormant threshold in terms of days (M2)
- For each account in
GV22
, query the interface and collect The date of last activity for each account
Whether the account is disabled or not
- For each account in
- Using the output of Operation 2.1 and Input 2
Identify and enumerate accounts that have exceeded the dormant threshold (M3)
Identify and enumerate accounts that are still within the dormant threshold (M4)
- Use the output of Operation 2.2 and 3.1 (M3)
Identify and enumerate accounts that are disabled (M5)
Identify and enumerate accounts that are still enabled (M6)
Measures
M1 = Count of accounts in
GV22
M2 = Timeframe of dormant threshold in days
M3 = Count of dormant accounts
M4 = Count of active accounts
M5 = Count of dormant accounts that have been disabled
M6 = Count of dormant accounts still enabled
Metrics
Dormant Accounts
Enabled Dormant Accounts
Metric |
The percentage of dormant accounts still enabled
|
Calculation |
|
5.4: Restrict Administrator Privileges to Dedicated Administrator Accounts
Restrict administrator privileges to dedicated administrator accounts on enterprise assets. Conduct general computing activities, such as internet browsing, email, and productivity suite use, from the user’s primary, non-privileged account.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
GV22
: Inventory of accountsList of users identified as administrators
Assumptions
For the purpose of this control, it is assumed that users identified as administrators that have an active administrative and non-administrative account have properly dedicated accounts for administrative privileges.
Operations
- Using
GV22
and Input 2 Identify and enumerate users identified as administrators with active administrator accounts (M1)
Identify and enumerate users identified as administrators without active administrator accounts (M2)
Identify and enumerate users not identified as administrators with active administrator accounts (M3)
- Using
- Using
GV22
and output of Operation 1.1 Identify and enumerate users identified as administrators that have an active non-administrative user account (M4)
Identify and enumerate users identified as administrators that do not have an active non-administrative user account (M5)
- Using
Measures
M1 = Count of authorized administrative users with active administrator accounts
M2 = Count of authorized administrative users without active administrator accounts
M3 = Count of non-administrative users with active administrator accounts
M4 = Count of authorized administrative users with an active administrative and non-administrative account
M5 = Count of authorized administrative users without an active administrative and non-administrative account
M6 = Count of Input 2
Metrics
Administrative User Accounts
Metric |
The perecentage of administrative users with both an administrative account
and non-administrative acount.
|
Calculation |
|
5.5: Establish and Maintain an Inventory of Service Accounts
Establish and maintain an inventory of service accounts. The inventory, at a minimum, must contain department owner, review date, and purpose. Perform service account reviews to validate that all active accounts are authorized, on a recurring schedule at a minimum quarterly, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Identify |
2, 3 |
Dependencies
Safeguard 6.6: Establish and Maintain an Inventory of Authentication and Authorization Systems
Inputs
GV23
: Authentication and Authorizaion System InventoryInventory of service accounts
Date of last review of the inventory of service accounts
Operations
- Check if the enterprise maintains an inventory of service accounts (Input 2)
If the inventory exists M1 = 1
If the inventory does not exist M1 = 0
- Using the inventory of accounts Input 2, determine if the inventory captures the following elements: department owner, review date, and purpose
Each element is assigned a value of 1 if it exists and 0 if it does not. Total the number of elements that exist. (M3)
- Using Input 2 check each account for elements: department owner, review date, and purpose
Identify and enumerate accounts with all elements (M4)
Identify and enumerate accounts missing or with incomplete elements (M5)
Use
GV23
to identify authentication systems or other software that manages service accounts.Using the output of Operation 4, enumerate all current service accounts throughout the enterprise (M6)
- Compare the output of Operation 5 with Input 2
Identify and enumerate accounts that are supposed to be active/enabled (M7)
Identify and enumerate accounts that are supposed to be disabled/removed (M8)
Compare the current date to the date provided in Input 3 and enumerate the timeframe in months (M9)
Measures
M1 = Does the account inventory exist (Output of Operation 1)
M2 = Count of accounts in Input 2
M3 = Count of elements provided in inventory
M4 = Count of accounts in inventory with complete information
M5 = Count of accounts in inventory with missing or incomplete information
M6 = Count of current service accounts identified through Operation 5
M7 = Count of authorized accounts
M8 = Count of unauthorized accounts
M9 = Timeframe of last update in months
Metrics
If M1 is 0, this safeguard receives a failing score and other metrics don’t apply. If M9 is greater than three, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Inventory
Metric |
The percentage of minimum elements included in the inventory.
|
Calculation |
|
Metric |
The percentage of accounts with complete information.
|
Calculation |
|
Accuracy of Inventory
Metric |
The percentage of accurately listed accounts in the inventory.
|
Calculation |
|
5.6: Centralize Account Management
Centralize account management through a directory or identity service.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV1
: Enterprise asset inventory
Operations
Using
GV1
identify and enumerate centralized auhtentication points (M1)- For each centralized authentication point indentifed in Operation 1, determine whether it is necessary or can be consolidated
Identify and enumerate authentication points that are unnecesary or can be consolidated (M2)
Identify and enumerate authentication points that are necesary and cannot be consolidated (M3)
Measures
M1 = Count of cetralized authentication points in the enterprise
M2 = Count of unnecessary centralized authentication points
M3 = Count of necessary centralized authentication points
Metrics
Coverage
Metric |
Percentage of properly centralized aunthentication points
|
Calculation |
|
CIS Control 6: Access Control Management
Use processes and tools to create, assign, manage, and revoke access credentials and privileges for user, administrator, and service accounts for enterprise assets and software.
Why is this CIS Control Critical?
Where CIS Control 5 deals specifically with account management, CIS Control 6 focuses on managing what access these accounts have, ensuring users only have access to the data or enterprise assets appropriate for their role, and ensuring that there is strong authentication for critical or sensitive enterprise data or functions. Accounts should only have the minimal authorization needed for the role. Developing consistent access rights for each role and assigning roles to users is a best practice. Developing a program for complete provision and de-provisioning access is also important. Centralizing this function is ideal.
There are some user activities that pose greater risk to an enterprise, either because they are accessed from untrusted networks, or performing administrator functions that allow the ability to add, change, or remove other accounts, or make configuration changes to operating systems or applications to make them less secure. This also enforces the importance of using MFA and Privileged Access Management (PAM) tools.
Some users have access to enterprise assets or data they do not need for their role; this might be due to an immature process that gives all users all access, or lingering access as users change roles within the enterprise over time. Local administrator privileges to users’ laptops is also an issue, as any malicious code installed or downloaded by the user can have greater impact on the enterprise asset running as administrator. User, administrator, and service account access should be based on enterprise role and need.
6.1: Establish an Access Granting Process
Establish and follow a process, preferably automated, for granting access to enterprise assets upon new hire, rights grant, or role change of a user.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Enterprise process for granting access to enterprise assets
Operations
- Check to see if Input 1 exists
If the enterprise has an access granting process, M1 = 1
If the enterprise does not have an access granting process, M1 = 0
- Using Input 1, check to see if the process, includes at a minimum, a way to grant access upon new hire, rights grat, and role change of a user.
For each element that is include, assign a value of 1. Sum the value of the elemnts included. (M2)
Measures
M1 = Output of Operation 1
M2 = Count of elements included in the access granting process
Metrics
If M1 is 0, the safeguard receives a failing score. The other metric don’t apply.
Completeness of Process
Metric |
The percentage of elements included in the access granting process
|
Calculation |
|
6.2: Establish an Access Revoking Process
Establish and follow a process, preferably automated, for revoking access to enterprise assets, through disabling accounts immediately upon termination, rights revocation, or role change of a user. Disabling accounts, instead of deleting accounts, may be necessary to preserve audit trails.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Enterprise process for revoking access to enterprise assets
Operations
- Check to see if Input 1 exists
If the enterprise has an access revoking process, M1 = 1
If the enterprise does not have an access revoking process, M1 = 0
- Using Input 1, check to see if the process, includes at a minimum, a way to revoke access upon termination, rights revocation, and role change of a user.
For each element that is include, assign a value of 1. Sum the value of the elemnts included. (M2)
Measures
M1 = Output of Operation 1
M2 = Count of elements included in the access revoking process
Metrics
If M1 is 0, the safeguard receives a failing score. The other metric don’t apply.
Completeness of Process
Metric |
The percentage of elements included in the access granting process
|
Calculation |
|
6.3: Require MFA for Externally-Exposed Applications
Require all externally-exposed enterprise or third-party applications to enforce MFA, where supported. Enforcing MFA through a directory service or SSO provider is a satisfactory implementation of this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
GV5
: Authorized Software InventoryGV22
: Inventory of AccountsGV3
: Configuration Standard
Operations
Use Input 1 to identify and enumerate externally exposed and third party applications
Using the output of Operation 1 and
GV22
identify and enumerate all user accounts associated with the applications (M1)- For each account identified in Operation 2 use
GV3
to Identify and enumerate accounts properly configured to require MFA (M2)
Identify and enumerate accounts not properly configured to require MFA (M3)
- For each account identified in Operation 2 use
Measures
M1 = Count of accounts associated with externally exposed and third party applications
M2 = Count of accounts properly configured to require MFA
M3 = Count of accounts not properly configured to require MFA
Metrics
Coverage
6.4: Require MFA for Remote Network Access
Require MFA for remote network access.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Using
GV1
as a guide, identify and enumerate all authorized remote assets (M1)- For each asset identified in Operation 1, check configurations
GV3
Identify and enumerate assets properly configured to require MFA (M2)
Identify and enumerate assets not properly configured to require MFA (M3)
- For each asset identified in Operation 1, check configurations
Measures
M1 = Count of remote assets
M2 = Count of remote assets properly configured to require MFA
M3 = Count of remote assets not properly configured to require MFA
Metrics
Coverage
Metric |
The percentage of remote assets poperly configured to require MFA
|
|
6.5: Require MFA for Administrative Access
Require MFA for all administrative access accounts, where supported, on all enterprise assets, whether managed on-site or through a third-party provider.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
1, 2, 3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
GV22
: Inventory of accountsGV3
: Configuration Standard
Operations
Using
GV22
identify and enumerate all administrative accounts (M1)- For each administrative account identified in Operation 1 check configurations in
GV3
Identify and enumerate administrative accounts properly configured to require MFA (M2)
Identify and enumerate administrative accounts not properly configure to require MFA (M3)
- For each administrative account identified in Operation 1 check configurations in
Measures
M1 = Count of administrative accounts
M2 = Count of administrative accounts properly configured to require MFA
M3 = Count of administrative accounts not properly configured to require MFA
Metrics
Coverage
6.7: Centralize Access Control
Centralize access control for all enterprise assets through a directory service or SSO provider, where supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Users |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventory
Operations
Use
GV5
to identify all directory and SSO servicesUse
GV1
to identify and enumerate assets that support directory and SSO services (M1)- Check the output of Operations 1 and 2 to ensure each asset is covered by at least one directory or SSO service
Identify and enumerate assets that are covered by at least one directory or SSO services (M2)
Identify and enumerate assets that are not covered by at least one directory or SSO service (M3)
Measures
M1 = Count of assets capable of supporing directory and/or SSO services
M2 = Count of assets covered by at least one directory or SSO service
M3 = Count of assets not covered by at least one directory or SSO service
Metrics
Coverage
6.8: Define and Maintain Role-Based Access Control
Define and maintain role-based access control, through determining and documenting the access rights necessary for each role within the enterprise to successfully carry out its assigned duties. Perform access control reviews of enterprise assets to validate that all privileges are authorized, on a recurring schedule at a minimum annually, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
3 |
Dependencies
Safeguard 5.1: Establish and Maintain an Inventory of Accounts
Inputs
Enterprise documented process for assigning role-based access control
GV22
: Inventory of accountsDate of last validation of role-based access control
Operations
- Determine whether the enterprise has a process for assigning role-based access control
If the process exists, M1 = 1
If the process does not exist, M1 = 1
- Use
GV22
and check if each account is assigned a role or group as outlined by the role-based access control process Identify and enumerate accounts that are assigned a role or group (M3)
Identify and enumerate accounts that are not assigned a role or group (M4)
- Use
Compare the date in Input 3 to the current date and capture timeframe in months (M5)
Measures
M1 = Does a role-based access control process exist as defined by the Output of Operation 1
M2 = Count of
GV22
M3 = Count of accounts found in the inventory with assigned role or group
M4 = Count of accounts found in the inventory not assigned a role or group
M5 = Timeframe in months of last review of role-bases access control process
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply. If M5 is greater than twelve months, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Coverage
CIS Control 7: Continuous Vulnerability Management
Develop a plan to continuously assess and track vulnerabilities on all enterprise assets within the enterprise’s infrastructure, in order to remediate, and minimize, the window of opportunity for attackers. Monitor public and private industry sources for new threat and vulnerability information.
Why is this CIS Control Critical?
Cyber defenders are constantly being challenged from attackers who are looking for vulnerabilities within their infrastructure to exploit and gain access. Defenders must have timely threat information available to them about: software updates, patches, security advisories, threat bulletins, etc., and they should regularly review their environment to identify these vulnerabilities before the attackers do. Understanding and managing vulnerabilities is a continuous activity, requiring focus of time, attention, and resources.
Attackers have access to the same information and can often take advantage of vulnerabilities more quickly than an enterprise can remediate. While there is a gap in time from a vulnerability being known to when it is patched, defenders can prioritize which vulnerabilities are most impactful to the enterprise, or likely to be exploited first due to ease of use. For example, when researchers or the community report new vulnerabilities, vendors have to develop and deploy patches, indicators of compromise (IOCs), and updates. Defenders need to assess the risk of the new vulnerability to the enterprise, regression-test patches , and install the patch.
There is never perfection in this process. Attackers might be using an exploit to a vulnerability that is not known within the security community. They might have developed an exploit to this vulnerability referred to as a “zero-day” exploit. Once the vulnerability is known in the community, the process mentioned above starts. Therefore, defenders must keep in mind that an exploit might already exist when the vulnerability is widely socialized. Sometimes vulnerabilities might be known within a closed community (e.g., vendor still developing a fix) for weeks, months, or years before it is disclosed publicly. Defenders have to be aware that there might always be vulnerabilities they cannot remediate, and therefore need to use other controls to mitigate.
Enterprises that do not assess their infrastructure for vulnerabilities and proactively address discovered flaws face a significant likelihood of having their enterprise assets compromised. Defenders face particular challenges in scaling remediation across an entire enterprise, and prioritizing actions with conflicting priorities, while not impacting the enterprise’s business or mission.
7.1: Establish and Maintain a Vulnerability Management Process
Establish and maintain a documented vulnerability management process for enterprise assets. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Enterprise vulnerability management process
Date of last update to the vulnerability management process
Operations
- Determine wether the enterprise maintains a vulnerability management process
If the process exists, M1 = 1
If the process does not exist, M1 = 0
Compare the date from Input 1 to the curren date and enumerate timeframe in months (M2)
Measures
M1 = Output of Operation 1
M2 = Timeframe since last update to vulnerability management process
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply. If M2 is greater than twelve, this safeguard receives a failing score. The other metrics don’t apply.
7.2: Establish and Maintain a Remediation Process
Establish and maintain a risk-based remediation strategy documented in a remediation process, with monthly, or more frequent, reviews.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Respond |
1, 2, 3 |
Dependencies
None
Inputs
Enterprise remediation strategy process
Date of last review of the process
GV18
: Enterprise assets storing, processing, and transmitting sensitive data
Operations
- Determine whether the enterprise maintains a documented remediation process
If the process exists, M1 = 1
If the process does not exist, M1 = 0
- Check the documented remediation process to identify whether it includes a risk based process based on the following elements: Sensitive assets
GV18
and criticality of vulnerability Each element, if included, gets a value of 1. Sum all elements (M2)
- Check the documented remediation process to identify whether it includes a risk based process based on the following elements: Sensitive assets
Compare the date from Input 2 and current date. Enumerate the timeframe in terms of days (M3)
Measures
M1 = Output of Operation 1
M2 = Sum of elements included in the remediation process
M3 = Timeframe since last review of process in days
Metrics
If M1 is 0, the safeguard receives a failing score. The other metrics don’t apply. If M3 is greater than thirty, the safeguard receives a failing score. The other metrics don’t apply.
Completenes
Metric |
The percentage of elements included in the process
|
Calculation |
|
7.3: Perform Automated Operating System Patch Management
Perform operating system updates on enterprise assets through automated patch management on a monthly, or more frequent, basis.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV5
: Authorized software inventoryGV1
: Enterprise asset inventoryAuthoritative source of information indicating version details by product
GV3
: Configuration standards
Operations
Use
GV5
to identify authorized operating systems within the enterpriseUse
GV1
and the output of Operation 1 to identify the operating system currently running on each asset (M1)- For each asset, compare the version of the operating system to that listed in Input 4
Identify and enumerate operating systems that are up to date (M2)
Identify and enumerate operating systems that are not up to date (M3)
- For each operating system idetified in Operation 2.2, determine whether there is a documented exception
Identify and enumerate operating systems with a documented exception (M4)
Identify and enumerate operating systems without a documented exception (M5)
Use
GV5
to identify authorized automated patch management software (M6)- Compare output of Operation 5 and Operation 1
Identify and enumerate operating systems covered by at least one automated patch management software (M7)
Identify and enumerate operating systems not covered by at least one automated patch management software (M8)
- Check configurations of automated patch mangement software identified in Operation 5 using
GV3
Identify and enumerate those configured to run every 30 days or less (M9)
Identify and enumerate those not configured to run every 30 days or less (M10)
- Check configurations of automated patch mangement software identified in Operation 5 using
Measures
M1 = Count of authorized operating sytem installed on an asset
M2 = Count of up to date operating system installed on an asset
M3 = Count of operating system installed on an asset that is not up to date
M4 = Count of not up to date operating system with a documented exception
M5 = Count of not up to date operating system without a documented exception
M6 = Count of authorized automated patch management software
M7 = Count of operating systems covered by at least one automated patch management software
M8 = Count of operating systems not covered by at least one automated patch management software
M9 = Count of automated patch management software properly configured to run every 30 days or less
M10 = Count of automated patch management software not properly configured to run every 30 days
Metrics
Update Effectiveness (Per Asset)
Metric |
The percent of operating system on an asset that are up to date
|
Calculation |
|
Update Effectiveness (Organizational)
Calculate the organizational metric by averaging the asset scores
Coverage of Automation
Scan Compliance
7.4: Perform Automated Application Patch Management
Perform application updates on enterprise assets through automated patch management on a monthly, or more frequent, basis.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV5
: Authorized software inventoryGV1
: Enterprise asset inventoryAuthoritative source of information indicating version details by product
GV3
: Configuration standardsGV24
: Authorized automated patch management software
Operations
Use
GV5
to identify authorized applications within the enterpriseUse
GV1
and the output of Operation 1 to identify the applications currently running on each asset (M1)- For each asset, compare the version of the application to that listed in Input 4
Identify and enumerate applications that are up to date (M2)
Identify and enumerate applications that are not up to date (M3)
- For each application idetified in Operation 2.2, determine whether there is a documented exception
Identify and enumerate applications with a documented exception (M4)
Identify and enumerate applications without a documented exception (M5)
- Compare
GV24
and Operation 1 Identify and enumerate applications covered by at least one automated patch management software (M7)
Identify and enumerate applications not covered by at least one automated patch management software (M8)
- Compare
- Check configurations of automated patch mangement software
GV24
usingGV3
Identify and enumerate those configured to run every 30 days or less (M9)
Identify and enumerate those not configured to run every 30 days or less (M10)
- Check configurations of automated patch mangement software
Measures
M1 = Count of authorized applications installed on an asset
M2 = Count of up to date applications installed on an asset
M3 = Count of applications installed on an asset that is not up to date
M4 = Count of not up to date applications with a documented exception
M5 = Count of not up to date applications without a documented exception
M6 = Count of
GV24
authorized automated patch management softwareM7 = Count of applications covered by at least one automated patch management software
M8 = Count of applications not covered by at least one automated patch management software
M9 = Count of automated patch management software properly configured to run every 30 days or less
M10 = Count of automated patch management software not properly configured to run every 30 days
Metrics
If M4 is greater than thirty, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Update Effectiveness (Per Asset)
Metric |
The percent of applications on an asset that are up to date
|
Calculation |
|
Update Effectiveness (Organizational)
Calculate the organizational metric by averaging the asset scores
Coverage of Automation
Scan Compliance
7.5: Perform Automated Vulnerability Scans of Internal Enterprise Assets
Perform automated vulnerability scans of internal enterprise assets on a quarterly, or more frequent, basis. Conduct both authenticated and unauthenticated scans, using a SCAP-compliant vulnerability scanning tool.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Identify |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standard
Operations
- Use the :code:`GV5`authorized software inventory to
Identify and enumerate
GV25
vulnerability scanning software (M1)Identify and enumerate authenticated vulnerability scanning software (M2)
Use the
GV1
enterprise asset inventory to identify and enumerate all internal assets (M3)- Use the output of Operation 2 and Operation 1.1
Identify and enumerate internal assets covered by at least one vulnerability scanning software (M4)
Identify and enumerate internal assets not covered by at least one vulnerability scanning software (M5)
- Use the output of Operation 2 and Operation 1.2
Identify and enumerate internal assets covered by at least one authenticated vulnerability scanner (M6)
Identify and enumerate internal assets not covered by at least one authenticated vulnerability scanner (M7)
- Use the output of Operation 1.1 and
GV3
Identify and enumerate vulnerability scanners properly configured to scan every 3 months or less (M8)
Identify and enumerate vulnerability scanners not properly configured to scan every 3 months or less (M9)
- Use the output of Operation 1.1 and
- Use the output of Operation 1.2 and
GV3
Identify and enumerate authenticated vulnerability scanners properly configured to scan every 3 months or less (M10)
Identify and enumerate authenticated vulnerability scanners not properly configured to scan every 3 months or less (M11)
- Use the output of Operation 1.2 and
Measures
M1 = Count of authorized vulnerability scanning software
M2 = Count of authorized authenticated vulnerability scanning software
M3 = Count of internal enterprise assets
M4 = Count of internal assets covered by a vulnerability scanner
M5 = Count of internal assets not covered by a vulnerability scanner
M6 = Count of internal assets covered by an authenticated vulnerability scanner
M7 = Count of internal assets not covered by an authenticated vulnerability scanner
M8 = Count of vulnerability scanners properly configured to run every 3 months or less
M9 = Count of vulnerability scanners not properly configured to run every 3 months or less
M10 = Count of authenticated vulnerability scanners properly configured to run every 3 months or less
M11 = Count of authenticated vulnerability scanners not properly configured to run every 3 months or less
Metrics
Coverage of Vulnerability Scans
Metric |
The percentage of internal assets covered by a vulnerability scanner
|
Calculation |
|
Coverage of Authenticated Scans
Compliance of Vulnerability Scans
Compliance of Authenticated Scans
7.6: Perform Automated Vulnerability Scans of Externally-Exposed Enterprise Assets
Perform automated vulnerability scans of externally-exposed enterprise assets using a SCAP-compliant vulnerability scanning tool. Perform scans on a monthly, or more frequent, basis.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Identify |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV25
: Vulnerability scanning softwareGV3
: Configuration standard
Operations
Use the
GV1
enterprise asset inventory to identify and enumerate all external assets (M2)- Use the output of Operation 1 and
GV25
to Identify and enumerate external assets covered by at least one vulnerability scanning software (M3)
Identify and enumerate external assets not covered by at least one vulnerability scanning software (M4)
- Use the output of Operation 1 and
- Use the
GV25
andGV3
Identify and enumerate vulnerability scanners properly configured to scan every 30 days or less (M5)
Identify and enumerate vulnerability scanners not properly configured to scan every 30 days or less (M6)
- Use the
Measures
M1 = Count of authorized
GV25
vulnerability scanning softwareM2 = Count of external enterprise assets
M3 = Count of external assets covered by a vulnerability scanner
M4 = Count of external assets not covered by a vulnerability scanner
M5 = Count of vulnerability scanners properly configured to run every 30 days or less
M6 = Count of vulnerability scanners not properly configured to run every 30 days or less
Metrics
Coverage of Vulnerability Scans
Metric |
The percentage of external assets covered by a vulnerability scanner
|
Calculation |
|
Compliance of Vulnerability Scans
7.7: Remediate Detected Vulnerabilities
Remediate detected vulnerabilities in software through processes and tooling on a monthly, or more frequent, basis, based on the remediation process.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Respond |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV1
: Enterprise asset inventoryCurrent vulnerability scan
Previous vulnerability scan
Date of current vulnerability scan
Date of previous vulnerability scan
Assumptions
Asset-Vulnerability combinations not found in most recent scan is indicative of remediation of that vulnerability on that asset.
Operations
- For each asset in
GV1
, compare Inputs 2 and 3 Identify and enumerate assets listed with the same vulnerability on both scans (M2)
Identify and enumerate assets previously found in Input 3 that are no longer listed in Input 2 with the same vulnerability (M3)
- For each asset in
Compare Inputs 4 and 5 and capture timeframe between scans in days (M4)
Measures
M1 = Count of vulnerabilities identified in Input 3
M2 = Count of unremediated vulnerabilities
M3 = Count of remediated vulnerabilities
M4 = Timeframe in between scans
Metrics
If M4 is greater than thirty, this safeguard receives a failing score. The other metrics don’t apply.
Remediation
Metric |
The percentage of remediated vulnerabilities
|
Calculation |
|
CIS Control 8: Audit Log Management
Collect, alert, review, and retain audit logs of events that could help detect, understand, or recover from an attack.
Why is this CIS Control Critical?
Log collection and analysis is critical for an enterprise’s ability to detect malicious activity quickly. Sometimes audit records are the only evidence of a successful attack. Attackers know that many enterprises keep audit logs for compliance purposes, but rarely analyze them. Attackers use this knowledge to hide their location, malicious software, and activities on victim machines. Due to poor or nonexistent log analysis processes, attackers sometimes control victim machines for months or years without anyone in the target enterprise knowing.
There are two types of logs that are generally treated and often configured independently: system logs and audit logs. System logs typically provide system-level events that show various system process start/end times, crashes, etc. These are native to systems, and take less configuration to turn on. Audit logs typically include user-level events – when a user logged in, accessed a file, etc. – and take more planning and effort to set up.
Logging records are also critical for incident response. After an attack has been detected, log analysis can help enterprises understand the extent of an attack. Complete logging records can show, for example, when and how the attack occurred, what information was accessed, and if data was exfiltrated. Retention of logs is also critical in case a follow-up investigation is required or if an attack remained undetected for a long period of time.
8.1: Establish and Maintain an Audit Log Management Process
Establish and maintain an audit log management process that defines the enterprise’s logging requirements. At a minimum, address the collection, review, and retention of audit logs for enterprise assets. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
GV26
: Enterprise’s audit log management processDate of last review of the audit log management process
Operations
- Check if :code:`GV26`the audit log management process exists
If it exists, M1 = 1
If it does not exist, M1 = 0
- Review
GV26
for elements of the process, at a minimum, address the collection, review, and retention of audit logs for enterprise assets. For each element that exists, assign a value of 1. Sum the values of existing elements. (M2)
- Review
Compare the date from Input 2 and the current date. Capture the timeframe in terms of months. (M3)
Measures
M1 = Output of Operation 1
M2 = Count of elements included in the audit log management process
M3 = Timeframe since last review of the autid log management process
Metrics
If M1 is 0, this safeguard receives a failing a score. The other metrics don’t apply. If M3 is greater than twelve, this safeguard is measured at a 0 and receives a failing score. THe other metrics don’t apply.
Completeness
8.2: Collect Audit Logs
Collect audit logs. Ensure that logging, per the enterprise’s audit log management process, has been enabled across enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 8.1: Establish and Maintain an Audit Log Management Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standardsGV26
: Enterprise’s audit log management process
Operations
Use
GV1
to identify and enumerate assets capable of supporting loggingGV27
(M1)- Use
GV26
andGV3
as guides to determine, for each asset identifed in Operation 1 is configured to log events as outlined by the enterprise’s process Identify and enumerate assets properly configured to log events per the process (M2)
Identify and enumerate assets not properly configured to log events per the process (M3)
- Use
Measures
M1 = Count of assets capable of supporting logging
M2 = Count of properly configured assets to log events per the audit log management process
M3 = Count of assets not properly configured to log events per the audit log management process
Metrics
Coverage
Metric |
The ratio of logging capable assets properly configured per the
audit log management process.
|
Calculation |
|
8.3: Ensure Adequate Audit Log Storage
Ensure that logging destinations maintain adequate storage to comply with the enterprise’s audit log management process.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV27
: Assets capable of supporting loggingGV26
: Enterprise’s audit log management process
Assumptions
It is assumed that if the an asset is properly configured to meet the retention policy, that would include log rotation, maximum storage size, etc.
Operations
For each asset in
GV27
collect the asset’s logging configuration- Compare the output of Operation 1 and the retention portion of
G26
Identify and enumerate assets configured to comply with the retention portion of the process (M2)
Identify and enumerate assets not configured to comply with the retention portion of the process (M3)
- Compare the output of Operation 1 and the retention portion of
Measures
M1 = Count of
GV27
assets capable of supporting loggingM2 = Count of assets properly configured to meet retention requirements
M3 = Count of assets not properly configured to meet retention requirements
Metrics
Logging Storage Coverage
8.4: Standardize Time Synchronization
Standardize time synchronization. Configure at least two synchronized time sources across enterprise assets, where supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV27
: Assets capable of supporting loggingList of approved network time sources/NTP servers
Operations
Using :code:’GV27`, identify and enumerate assets capable of supporting time synchronization (M1)
- Check the configurations of the assets identified in Operation 1
Identify and enumerate the assets configured using at least two approved time sources from Input 2 (M2)
Identify and enumerate the assets configured using time sources not on the approved list (M3)
Identify and enumerate the assets not configured using time sources (M4)
Measures
M1 = Count of logging capable assets that support time synchronization
M2 = Count of properly configured assets using at least two approve time sources
M3 = Count of assets configured using non-approved time sources
M4 = Count of assets not configured to use time sources
Metrics
NTP Compliance Coverage
Metric |
The percentage of assets propery configured to with at least two
approved synchronized time sources.
|
Calculation |
|
8.5: Collect Detailed Audit Logs
Configure detailed audit logging for enterprise assets containing sensitive data. Include event source, date, username, timestamp, source addresses, destination addresses, and other useful elements that could assist in a forensic investigation.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV18
: Enterprise assets storing, processing, and transmitting sensitive dataGV26
: Enterprise’s audit log management processGV3
: Configuration standards
Operations
- Review
GV26
for detailed logging requirements such as event source, date, username, timestamp, source addresses, and destination addresses. For each detailed logging requirement included, assign a value of 1. Sum all requirements included. (M2)
- Review
- For each asset in
GV18
check configuraions usingGV3
as a guide Identify and enumerate assets properly configured to collect detailed logging requirements (M3)
Identify and enumerate assets not properly configured to collect detailed logging requirements (M4)
- For each asset in
Measures
M1 = Count of assets capable of supporting logging
GV27
M2 = Count of detailed logging requirements included in log management process
M3 = Count of assets properly configured to collect detailed logs
M4 = Count of assets not properly configured to collect detailed logs
Metrics
Completeness of Process
Logging Coverage
8.6: Collect DNS Query Audit Logs
Collect DNS query audit logs on enterprise assets, where appropriate and supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safegaurd 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Assumptions
The enterprise maintains their own internal DNS Servers.
Operations
Use Input 1
GV1
to identify and enumerate internal DNS Servers (M1)- Check the configurations
GV3
of each DNS Server identified in Operation 1 Identify and enumerate DNS servers properly configured to collect logs (M2)
Identify and enumerate DNS servers not properly configured to collect logs (M3)
- Check the configurations
Measures
M1 = Count of internal DNS servers
M2 = Count of properly configured DNS servers
M3 = Count of DNS servers not properly configured DNS servers
Metrics
DNS Configuration Coverage
Metric |
The percentage of properly configured DNS servers to meet
logging requirements.
|
Calculation |
|
8.7: Collect URL Request Audit Logs
Collect URL request audit logs on enterprise assets, where appropriate and supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets that support URL logging (M1)- For each asset identified in Operation 1, use
GV3
to check configurations for URL logging Identify and enumerate assets properly configured for logging (M2)
Identify and enumerate assets not properly configured for logging (M3)
- For each asset identified in Operation 1, use
Measures
M1 = Count of assets capable of supporting URL logging
M2 = Count of assets properly configured for URL logging
M3 = Count of assets not properly configured for URL logging
Metrics
Configuration Coverage
Metric |
The percentage of assets properly cofigured for
URL logging
|
Calculation |
|
8.8: Collect Command-Line Audit Logs
Collect command-line audit logs. Example implementations include collecting audit logs from PowerShell®, BASH™, and remote administrative terminals..
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets that support command line auditing of command shells (M1)- For each asset identified in Operation 1, use
GV3
to check configurations for command line auditing of command shells Identify and enumerate assets properly configured (M2)
Identify and enumerate assets not properly configured (M3)
- For each asset identified in Operation 1, use
Measures
M1 = Count of assets capable of supporting command line auditing of command shells
M2 = Count of assets properly configured for command line auditing of command shells
M3 = Count of assets not properly configured for command line auditing of command shells
Metrics
Configuration Coverage
Metric |
The percentage of assets properly cofigured for
command line auditing of command shells.
|
Calculation |
|
8.9: Centralize Audit Logs
Centralize, to the extent possible, audit log collection and retention across enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV27
: Assets capable of supporting loggingGV5
: Authorized software inventory
Operations
Use the software inventory
GV5
to identify and enumerate log aggregating softwareGV28
- For each asset capable of supporting logging, check if asset is covered by at least one log aggregating software
Identify and enumerate assets covered by at least one aggregating software (M2)
Identify and enumerate assets not covered by at least one aggregating software (M3)
Measures
M1 = Count of
GV27
M2 = Count of assets covered by at least one aggregating software
M3 = Count of assets not covered by at least one aggregating software
Metrics
Log Aggregating
Metric |
The percentage of log producing assets covered by aggregating
software.
|
Calculation |
|
8.10: Retain Audit Logs
Retain audit logs across enterprise assets for a minimum of 90 days.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 8.9: Centralize Audit Logs
Inputs
GV28
: Log aggregating softwareGV3
: Configuration standards
Operations
- For each log aggregating software
GV28
useGV3
to check configuration standards Identify and enumerate aggregating software configured to retain logs for 90 days or more (M2)
Identify and enumerate aggregating software configured to retain logs for less than 90 days (M3)
- For each log aggregating software
Measures
M1 = Count of log aggregating software
GV28
M2 = Count of aggregating software properly configured to retain logs for 90 days or more
M3 = Count of aggregating software configured to retainlogs for less than 90 days
Metrics
Compliance
Metric |
The percentage of aggregating software properly configured to retain
logs for 90 days or more.
|
Calculation |
|
8.11: Conduct Audit Log Reviews
Conduct reviews of audit logs to detect anomalies or abnormal events that could indicate a potential threat. Conduct reviews on a weekly, or more frequent, basis..
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
None
Inputs
Timestamp for two consecutive log reviews
Assumptions
Log reviews are conducted at regular and consistent intervals
Operations
Compare each timestamp to determine timeframe between log reviews in days (M1)
Measures
M1 = Timeframe between log reviews
Metrics
If M1 is greater than seven, this safeguard is measured at a 0 and receives a failing score.
8.12: Collect Service Provider Logs
Collect service provider logs, where supported. Example implementations include collecting authentication and authorization events, data creation and disposal events, and user management events
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Detect |
3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Inputs
GV29
: Inventory of service providersGV3
: Configuration standard
Operations
For each service provided in
GV29
identify and enumerate service providers that supports logging (M1)- Use service provider identified in Operation 1, use
GV3
to check configurations Identify and enumerate service providers properly configured to collect logs (M2)
Identify and enumerate service providers not properly configured to collect logs (M3)
- Use service provider identified in Operation 1, use
Measures
M1 = Count of service providers that support logging
M2 = Count of service providers configured to collect logs
M3 = Count of service providers not configured to collect logs
Metrics
Coverage
Metric |
The percentage of service providrs proverly configured
to collect logs
|
Calculation |
|
CIS Control 9: Email and Web Browser Protections
Improve protections and detections of threats from email and web vectors, as these are opportunities for attackers to manipulate human behavior through direct engagement.
Why is this CIS Control Critical?
Web browsers and email clients are very common points of entry for attackers because of their direct interaction with users inside an enterprise. Content can be crafted to entice or spoof users into disclosing credentials, providing sensitive data, or providing an open channel to allow attackers to gain access, thus increasing risk to the enterprise. Since email and web are the main means that users interact with external and untrusted users and environments, these are prime targets for both malicious code and social engineering. Additionally, as enterprises move to web-based email, or mobile email access, users no longer use traditional full-featured email clients, which provide embedded security controls like connection encryption, strong authentication, and phishing reporting buttons.
9.1: Ensure Use of Only Fully Supported Browsers and Email Clients
Ensure only fully supported browsers and email clients are allowed to execute in the enterprise, only using the latest version of browsers and email clients provided through the vendor.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
1, 2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized software inventoryAuthoritative source of information indicating supported/unsupported details by product.
Operations
Use
GV5
to identify and enumerate web browser and email client software (M1)- Compare each software identified in Operation 1 to Input 2
Identify and enumerate software labeled as “supported” that is currently supported (M2)
Identify and enumerate software labeled as “supported” that is currently unsupported (M3)
Identify and enumerate software labeled as “unsupported” that is currently unsupported (M4)
Identify and enumerate software labeled as “unsupported” that is currently supported (M5)
Measures
M1 = Count of authorized web browser and email client software
M2 = Count of software labeled as “supported” and currently supported
M3 = Count of software labeled as “supported” and currently unsupported
M4 = Count of software labeled as “unsupported” and currently unsupported
M5 = Count of software labeled as “unsupported” and currently supported
Metrics
Percentage of Unsupported Web Browser/Email Client Software in Use
Metric |
The percentage of unsupported web browser and email client software in use
|
Calculation |
|
Rate of False Positives
Rate of False Negatives
9.2: Use DNS Filtering Services
Use DNS filtering services on all enterprise assets to block access to known malicious domains.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets that support DNS filtering (M1)Use
GV5
to identify and enumerate authorized DNS filtering services- For each asset identified in Operation 1 check to see if it is configured properly
GV3
to support authorized DNS filtering services from Operation 2 Identify and enumerate assets properly configured (M2)
Identify and enumerate assets not properly configured (M3)
- For each asset identified in Operation 1 check to see if it is configured properly
Measures
M1 = Count of enterprise assets capable of supporting DNS filtering
M2 = Count of assets properly configured to support DNS filtering
M3 = Count of assets not properly configured to support DNS filtering
Metrics
DNS Filtering Coverage
Metric |
The percentage of assets configured to use authorized DNS filtering services
|
Calculation |
|
9.3: Maintain and Enforce Network-Based URL Filters
Enforce and update network-based URL filters to limit an enterprise asset from connecting to potentially malicious or unapproved websites. Example implementations include category-based filtering, reputation-based filtering, or through the use of block lists. Enforce filters for all enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Processs
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standardsGV5
: Authorized software inventory
Operations
Use
GV1
to identify and enumerate enterprise assets capable of supporting network-based URL filters (M1)Use
GV5
to identify authorized web browsers/clients- For each asset identified in Operation 1 check to see if it is configured properly
GV3
to support authorized web browsers/clients from Operation 2 Identify and enumerate assets properly configured (M2)
Identify and enumerate assets not properly configured (M3)
- For each asset identified in Operation 1 check to see if it is configured properly
Measures
M1 = Count of enterprise assets capable of supporting network-based URL filters
M2 = Count of assets properly configured to support network-based URL filters
M3 = Count of assets not properly configured to support network-based URL filters
Metrics
Coverage
Metric |
The percentage of assets configured to use authorized network-based URL filters
|
Calculation |
|
9.5: Implement DMARC
To lower the chance of spoofed or modified emails from valid domains, implement DMARC policy and verification, starting with implementing the Sender Policy Framework (SPF) and the DomainKeys Identified Mail (DKIM) standards.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
DMARC Policy
TXT record published in DNS
The Mail Transfer Agent used by the enterprise
The Mail User Agent used by the enterprise
Assumptions
The DMARC configuration policy includes instructions to produce either Aggregate (rua) or Forensic (ruf) reports.
The enterprise has access to these reports either daily (for Aggregate) or in real-time (for Forensic).
Operations
- Check if enterprise has a DMARC policy
If the enterprise has a DMARC policy, M1 = 1
If the enterprise does not have a DMARC policy, M1 = 0
- Examine Input 2 for a value indicative of the use of DMARC
If a value for DMARC is identified, M2 = 1
If a value for DMARC is not identified, M2 = 0
- Examine Input 2 for a value indicative of the use of SPF
If a value for SPF is identified, M3 = 1
If a value for SPF is not identified, M3 = 0
- Examine Input 2 for a value indicative of the use of DKIM
If a value for DKIM is identified, M4 = 1
If a value for DKIM is not identified, M4 = 0
- Check if enterprise uses a Mail Transfer Agent
If the enterprise uses a Mail Transfer Agent, M5 = 1
It the enterprise does not use a Mail Transfer Agent, M5 = 1
- Check if enterprise uses a Mail User Agent
If the enterprise uses a Mail User Agent, M6 = 1
It the enterprise does not use a Mail User Agent, M6 = 1
Measures
M1 = Output of Operation 1
M2 = Output of Operation 2
M3 = Output of Operation 3
M4 = Output of Operation 4
M5 = Output of Operation 5
M6 = Output of Operation 6
Metrics
DMARC Usage
Metric |
Usage and configuration of DMARC/SPF/DKIM
|
Calculation |
|
9.6: Block Unnecessary File Types
Block unnecessary file types attempting to enter the enterprise?s email gateway.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets configured as email gateways (M1)- Using
GV3
check the attachment blocking configuration for every asset identified in Operation 1 Identify and enumerate email gateways properly configured to block unnecessary attachments (M2)
Identify and enumerate email gateways not properly configured to block unnecessary attachments (M3)
- Using
Measures
M1 = Count of email gateways
M2 = Count of properly configured email gateways
M3 = Count of improperly configured email gateways
Metrics
Coverage
Metric |
The percentage of properly configured email gateways
|
Calculation |
|
9.7: Deploy and Maintain Email Server Anti-Malware Protections
Deploy and maintain email server anti-malware protections, such as attachment scanning and/or sandboxing.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standard
Operations
Use
GV1
to identify and enumerate all email servers within the enterprise (M1)- For each email server identified in Operation 1, use
GV3
to check if native or external anti-malware protections are configured Identify and enumerate email servers with configured anti-malware protection (M2)
Identify and enumerate email servers without configured anti-malware protection (M3)
- For each email server identified in Operation 1, use
Measures
M1 = Count of email servers
M2 = Count of properly configured email servers
M3 = Count of improperly configured email servers
Metrics
Coverage
Metric |
The percentage of properly configured email servers
|
Calculation |
|
CIS Control 10: Malware Defenses
Prevent or control the installation, spread, and execution of malicious applications, code, or scripts on enterprise assets.
Why is this CIS Control Critical?
Malicious software (sometimes categorized as viruses or Trojans) is an integral and dangerous aspect of internet threats. They can have many purposes, from capturing credentials, stealing data, identifying other targets within the network, and encrypting or destroying data. Malware is ever-evolving and adaptive, as modern variants leverage machine learning techniques.
Malware enters an enterprise through vulnerabilities within the enterprise on end-user devices, email attachments, webpages, cloud services, mobile devices, and removable media. Malware often relies on insecure end-user behavior, such as clicking links, opening attachments, installing software or profiles, or inserting Universal Serial Bus (USB) flash drives. Modern malware is designed to avoid, deceive, or disable defenses.
Malware defenses must be able to operate in this dynamic environment through automation, timely and rapid updating, and integration with other processes like vulnerability management and incident response. They must be deployed at all possible entry points and enterprise assets to detect, prevent spread, or control the execution of malicious software or code.
10.1: Deploy and Maintain Anti-Malware Software
Deploy and maintain anti-malware software on all enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized sofware inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets capable of supporting anti-malware software:GV30
(M1)Use
GV5
to identify authorized anti-malware software:GV31
- For each asset identified in Operation 1, use the output of Operation 2
Identify and enumerate assets with at least one authorized anti-malware software intalled:
GV32
(M2)Identify and enumerate assets with only unauthorized anti-malware software installed (M3)
Identify and enumerate assets without any anti-malware software installed (M4)
- For each asset wih a least one authorized anti-malware software installed from Operation 3.1, use
GV3
to check configurations Identify and enumerate assets with properly configured anti-malware software (M5)
Identify and enumerate assets with improperly configured anti-malware software (M6)
- For each asset wih a least one authorized anti-malware software installed from Operation 3.1, use
Measures
M1 = Count of assets capable of supporting anti-malware software
M2 = Count of assets with at least one authorized anti-malware software installed
M3 = Count of assets with only unauthorized anti-malware software installed
M4 = Count of assets without any anti-malware software installed
M5 = Count of assets with properly configured authorized anti-malware software installed
M6 = Count of assets with improperly configured authorized anti-malware software installed
Metrics
Coverage
10.2: Configure Automatic Anti-Malware Signature Updates
Configure automatic updates for anti-malware signature files on all enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 10.1: Deploy and Maintain Anti-Malware Software
Inputs
GV30
: Assets capable of supporting anti-malware softwareGV31
: Assets with at least one authorized anti-malware software intalledGV3
: Configuration standards
Operations
- For each asset in Input 2
GV31
, check configuraionsGV3
to determine if anti-malware software is configured to autmatically update signature files Identify and enumerate assets properly configured for automatic updates (M2)
Identify and enumerate asets not properly configured for automatic updates (M3)
- For each asset in Input 2
Measures
M1 = Count of
GV30
M2 = Count of assets configured to automatically update signature files
M3 = Count of assets not configured to automatically update signature files
Metrics
Coverage
10.3: Disable Autorun and Autoplay for Removable Media
Disable autorun and autoplay auto-execute functionality for removable media.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate enterprise assets capable of performing autorun, autoplay, and auto-execute functions (M1)- Check the configurations
GV3
of each asset identified in Operation 1 to see if the autorun, autoplay, and auto-execute functions are disabled Identify and enumerate properly configured assets (M2)
Identify and enumerate improperly configured assets (M3)
- Check the configurations
Measures
M1 = Count of assets capable of performing autorun, autoplay, and auto-excecute functions
M2 = Count of assets properly configured to disable functions
M3 = Count of assets not properly configured to disable functions
Metrics
Compliance
10.4: Configure Automatic Anti-Malware Scanning of Removable Media
Configure anti-malware software to automatically scan removable media.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
2, 3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 10.1: Deploy and Maintain Anti-Malware Software
Inputs
GV30
: Assets capable of supporting anti-malware softwareGV32
: Assets with at least one authorized anti-malware software intalledGV3
: Configuration standards
Operations
- For each asset in Input 2
GV32
, use configurationsGV3
to identify if software is configured to automatically scan removable media Identify and enumerate assets with properly configured software (M2)
Identify and enumerate assets with improperly configured software (M3)
- For each asset in Input 2
Measures
M1 = Count of
GV30
M2 = Count of assets with anti-malware properly configured to scan removable media
M3 = Count of assets with anti-malware not properly configured to scan removable media
Metrics
Coverage
10.5: Enable Anti-Exploitation Features
Enable anti-exploitation features on enterprise assets and software, where possible, such as Microsoft® Data Execution Prevention (DEP), Windows® Defender Exploit Guard (WDEG), or Apple® System Integrity Protection (SIP) and Gatekeeper™.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV3
: Configuration standards
Operations
- For each asset in
GV1
, use configuration standardsGV3
to determine if it is propely configured to enable anti-exploitation features Identify and enumerate assets properly configured to enable anti-exploitation features (M2)
Identify and enumerate assets not properly configured to enable anti-exploitation features (M3)
- For each asset in
Measures
M1 = Count of
GV1
M2 = Count of assets properly configured to enable anti-exploitation feautures
M3 = Count of assets not properly configured to enable anti-exploitation features
Metrics
Coverage
10.6: Centrally Manage Anti-Malware Software
Centrally manage anti-malware software.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 10.1: Deploy and Maintain Anti-Malware Software
Inputs
GV30
: Assets capable of supporting anti-malware softwareGV31
: Authorized anti-malware software
Operations
- For each authorized anti-malware software
GV31
, check if it is centrally managed Identify and enumerate anti-malware software that is centrally managed (M2)
Identify and enumerate anti-malware software that is not centrally managed (M3)
- For each authorized anti-malware software
Measures
M1 = Count of
GV31
M2 = Count of authorized anti-malware software that is centrally managed
M3 = Count of authorized anti-malware software that is not centrally managed
Metrics
Coverage
Metric |
The percentage of anti-malware centrally managed
|
Calculation |
|
10.7: Use Behavior-Based Anti-Malware Software
Use behavior-based anti-malware software.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized sofware inventoryGV3
: Configuration standards
Operations
Use
GV1
to identify and enumerate assets capable of supporting behavior-basaed anti-malware software (M1)Use
GV5
to identify authorized behavior-basaed anti-malware software- For each asset identified in Operation 1, use the output of Operation 2
Identify and enumerate assets with at least one authorized behavior-based anti-malware software intalled (M2)
Identify and enumerate assets without any behavior-based anti-malware software installed (M3)
- For each asset wih a least one authorized behavior-based anti-malware software installed from Operation 3.1, use
GV3
to check configurations Identify and enumerate assets with properly configured behavior-based anti-malware software (M4)
Identify and enumerate assets with improperly configured behavor-based anti-malware software (M5)
- For each asset wih a least one authorized behavior-based anti-malware software installed from Operation 3.1, use
Measures
M1 = Count of assets capable of supporting behavor-based anti-malware software
M2 = Count of assets with at least one authorized behavior-based anti-malware software installed
M3 = Count of assets without any behavior-based anti-malware software installed
M4 = Count of assets with properly configured authorized behavior-based anti-malware software installed
M5 = Count of assets with improperly configured authorized behavior-based anti-malware software installed
Metrics
Coverage
CIS Control 11: Data Recovery
Establish and maintain data recovery practices sufficient to restore in-scope enterprise assets to a pre-incident and trusted state.
Why is this CIS Control Critical?
In the cybersecurity triad – Confidentiality, Integrity, and Availability (CIA) – the availability of data is, in some cases, more critical than its confidentiality. Enterprises need many types of data to make business decisions, and when that data is not available or is untrusted, then it could impact the enterprise. An easy example is weather information to a transportation enterprise.
When attackers compromise assets, they make changes to configurations, add accounts, and often add software or scripts. These changes are not always easy to identify, as attackers might have corrupted or replaced trusted applications with malicious versions, or the changes might appear to be standard-looking account names. Configuration changes can include adding or changing registry entries, opening ports, turning off security services, deleting logs, or other malicious actions that make a system insecure. These actions do not have to be malicious; human error can cause each of these as well. Therefore, it is important to have an ability to have recent backups or mirrors to recover enterprise assets and data back to a known trusted state.
There has been an exponential rise in ransomware over the last few years. It is not a new threat, though it has become more commercialized and organized as a reliable method for attackers to make money. If an attacker encrypts an enterprise’s data and demands ransom for its restoration, having a recent backup to recover to a known, trusted state can be helpful. However, as ransomware has evolved, it has also become an extortion technique, where data is exfiltrated before being encrypted, and the attacker asks for payment to restore the enterprise’s data, as well as to keep it from being sold or publicized. In this case, restoration would only solve the issue of restoring systems to a trusted state and continuing operations. Leveraging the guidance within the CIS Controls will help reduce the risk of ransomware through improved cyber hygiene, as attackers usually use older or basic exploits on insecure systems.
11.1: Establish and Maintain a Data Recovery Process
Establish and maintain a data recovery process. In the process, address the scope of data recovery activities, recovery prioritization, and the security of backup data. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Recovery |
1, 2, 3 |
Dependencies
None
Inputs
Data recovery process for the enterprise
Date of last update to the data recovery process
Operations
- Check if enterprise has a data recovery process Input 1
If so, M1 = 1
If not, M1 = 0
- Examine the enterprise’s data recovery process and determine if it addresses, at a minimum, the scope of data recovery activities, recovery prioritization, and the security of backup data
For each element included within the process, assing the element a value of 1. M2 = sum of all the values.
Compare the date of last update to the data recovery process to the curren date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Sum of elements included in the data recoery process
M3 = Timeframe in months of last update to the data recovery process
Metrics
If M1 is 0, the safeguard receives a failing score. The other metrics don’t apply. If M3 is greater than twelve, this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of elements included in the data recovery process
|
Calculation |
|
11.2: Perform Automated Backups
Perform automated backups of in-scope enterprise assets. Run backups weekly, or more frequently, based on the sensitivity of the data.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Recover |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventoryGV3
: Configuration standards
Operations
For each asset in
GV1
identify and enumerate assets that are in-scope for automated backups:GV33
(M1)- Use
GV5
to identify authorized backup software and for each asset identified in Operation 1 Identify and enumerate assets covered by at least one authorized backup software:
GV34
(M2)Identify and enumerate assets not covered by at least one authorized backup software (M3)
- Use
- Use
GV3
to check if the software on assets identifed in Operation 2.1 is configured correctly Identify and enumerate assets with properly configured backup software (M4)
Identify and enumerate assets with improperly configured backup software (M5)
- Use
- For each asset with backup software identified in Operation 2.1, examine logs to determine the most recent successful backup date. Compare that date to current date and capture timeframe in days.
Identify and enumerate assets that have been backeup within seven days or less (M6)
Identify and enumerate assets that have been backedup outside of a sevend day window (M7)
Measures
M1 = Count of assets within scope for automated backups
M2 = Count of in-scope assets with authorized backup software installed
M3 = Count of in-scope assets without authorized backup software installed
M4 = Count of in-scope assets with properly configured backup software
M5 = Count of in-scope assets with improperly configured backup software
M6 = Count of in-scope assets backed up within a week
M7 = Count of in-scope assets not backed up within a week
Metrics
Coverage
Metric |
The percentage of in-scoope assets with properly configured authorized
backup software
|
Calculation |
|
Compliance
Metric |
The percentage of in-scope assets backed up within a week timeframe
|
Calculation |
|
11.3: Protect Recovery Data
Protect recovery data with equivalent controls to the original data. Reference encryption or data separation, based on requirements.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV33
: Assets that are in-scope for automated backupsGV34
: Assets with authorized backup software installedGV3
: Configuration Standard
Operations
- For each asset with backup software installed, use
GV3
to check if encryption is configured for backups Identify and enumerate assets with software configured to encrypt backups (M2)
Identify and enumerate assets with software not configured to encrypt backups (M3)
- For each asset with backup software installed, use
Measures
M1 = Count of Input 1:
GV33
M2 = Count of software configured to encrypt backups
M3 = Count of software not configured to encrypt backups
Metrics
Coverage
11.4: Establish and Maintain an Isolated Instance of Recovery Data
Establish and maintain an isolated instance of recovery data. Example implementations include, version controlling backup destinations through offline, cloud, or off-site systems or services.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Recover |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Inputs
GV33
: Assets that are in-scope for automated backupsGV34
: Assets with authorized backup software installedGV3
: Configuration standards
Assumptions
Configuration for backups will contain information about destination of backups
Operations
- For each asset in Input 2
GV34
, use configuration standards inGV3
to check destination of backups Identify and enumerate assets properly configured to send backups to an isolated instance (M2)
Identify and enumerate assets not properly configured to send backups to an isolated instance (M3)
- For each asset in Input 2
Measures
M1 = Count of Input 1
GV33
M2 = Count of assets with backups sent to an isolated instance
M3 = Count of assets with backups not sent to an isolated instance
Metrics
Coverage
Metric |
The percentage of assets configured to send backups to an isolated instance
|
Calculation |
|
11.5: Test Data Recovery
Test backup recovery quarterly, or more frequently, for a sampling of in-scope enterprise assets.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Recover |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
Current set of backups for the enterprise
Date of last backup recovery test
Assumption
Enterprise will know what a properly working restored backup looks like.
Operations
- Use Input 1 to restore a sampling of the backups to a temporary location
Enumerate the total numer of backups restored (M1)
Identify and enumerate backups that are properly working after being restored (M2)
Identify and enumerate backups that did not properly work after being restored (M3)
Compare Input 2 to current date and capture time frame in months (M4)
Measures
M1 = Count of backups being tested
M2 = Count of properly working backups after restoration
M3 = Count of backups not properly working after restoration
M4 = Timeframe between tests of backup recovery
Metrics
If M4 is greater than three months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Backup Integrity Quality
Metric |
The percentage of restored backups sampling deemed to be properly working
|
Calculation |
|
CIS Control 12: Network Infrastructure Management
Establish, implement, and actively manage (track, report, correct) network devices, in order to prevent attackers from exploiting vulnerable network services and access points.
Why is this CIS Control Critical?
Secure network infrastructure is an essential defense against attacks. This includes an appropriate security architecture, addressing vulnerabilities that are, often times, introduced with default settings, monitoring for changes, and reassessment of current configurations. Network infrastructure includes devices such as physical and virtualized gateways, firewalls, wireless access points, routers, and switches.
Default configurations for network devices are geared for ease-of-deployment and ease-of-use – not security. Potential default vulnerabilities include open services and ports, default accounts and passwords (including service accounts), support for older vulnerable protocols, and pre-installation of unneeded software. Attackers search for vulnerable default settings, gaps or inconsistencies in firewall rule sets, routers, and switches and use those holes to penetrate defenses. They exploit flaws in these devices to gain access to networks, redirect traffic on a network, and intercept data while in transmission.
Network security is a constantly changing environment that necessitates regular re-evaluation of architecture diagrams, configurations, access controls, and allowed traffic flows. Attackers take advantage of network device configurations becoming less secure over time as users demand exceptions for specific business needs. Sometimes the exceptions are deployed, but not removed when they are no longer applicable to the business’s needs. In some cases, the security risk of an exception is neither properly analyzed nor measured against the associated business need and can change over time.
12.1: Ensure Network Infrastructure is Up-to-Date
Ensure network infrastructure is kept up-to-date. Example implementations include running the latest stable release of software and/or using currently supported network-as-a-service (NaaS) offerings. Review software versions monthly, or more frequently, to verify software support.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
1, 2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV1
: Enterprise asset inventoryAuthoritative source of latest version information
Date of last review of network infrastructure
Operations
Use
GV1
to identify and enumerate assets that are part of the network infrastructureGV35
(M1)- Compare the network infrastructre asset version to the version in Input 2
Identify and enumerate assets that match the most recent version (M2)
Identify and enumerate assets that don’t match the most recent version (M3)
Compare Input 3 to current date and capture timeframe in days (M4)
Measures
M1 = Count of network infrastructure assets
M2 = Count of network infrastructure assets up to date
M3 = Count of network infrastructure assets not up to date
M4 = Timeframe since last review of network infrastrucute
Metrics
If M4 is greater than thirty days, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Coverage
Metric |
The percentage of network infrastructure assets that are up to date
|
Calculation |
|
12.2: Establish and Maintain a Secure Network Architecture
Establish and maintain a secure network architecture. A secure network architecture must address segmentation, least privilege, and availability, at a minimum.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV4
: Enterprise network architecture documentationGV5
: Authorized software inventory
Operations
Use the network architecture
GV4
to identify and enumerate the segments within the enterprise networkGV36
(M1)- For each network segment identified in Operation 1, attempt to connect an unauthorized device
Identify and enumerate segments that allow you to connect unauthorized devices (M2)
Identify and enumerate segments that do not allow you to connect unauthorized devices (M3)
Use
GV5
to identify authorized availability monitoring software- For eah network segment identified in Operation 1, determine whether an authorized availability monitoring software from Operation 3 covers the segment
Identify and enumerate segments that are covered by availability monitoring software (M4)
Identify and enumerate segments that are not covered by availability monitoring software (M5)
Measures
M1 = Count of network segments within the enterprise
M2 = Count of segments not compliant with least privilege
M3 = Count of segments compliant with least privilege
M4 = Count of segments monitored for availability
M5 = Count of segments not monitored for availability
Metrics
Segmentation
Metric |
If M1 is equal to 1, this metric is measured at a 0. Subsequent
metrics can still be assessed.
|
Calculation |
|
Least Privilege
Metric |
The percentage of network segements implementing least privilege
|
Calculation |
|
Availability
Metric |
The percentage of network segments monitored for network availability
|
Calculation |
|
12.3: Securely Manage Network Infrastructure
Securely manage network infrastructure. Example implementations include version-controlled-infrastructure-as-code, and the use of secure network protocols, such as SSH and HTTPS.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV36
: Segments within the enterprise networkGV35
: Assets that are part of the network infrastructureGV37
: Network architectrure configuration standards
Operations
- For each asset in Input 2
GV35
, use Input 3GV37
to check for the use of encrypted sessions Identify and enumerate assets using encrypted sessions (M2)
Identify and enumerate assets not using encrypted sessions (M3)
- For each asset in Input 2
- For each network segment in Input 1
GV36
, check for the use of infrastructure-as-code Identify and enumerate network segments that use infrastructure-as-code for the whole segment or partial (M5)
Identify and enumerate network segments that do not use infrastructure-as-code for any portion of the segment (M6)
- For each network segment in Input 1
- For each network segements identified in Operation 1, use Input 3
GV37
to determine whether the infrastructure-as-code is managed using version control Identify and enumerate network segments covered by version controlled infrastructure-as-code (M7)
Identify and enumerate network segments covered by infrastructure-as-code not managed through version control (M8)
- For each network segements identified in Operation 1, use Input 3
Measures
M1 = Count of
GV35
assets that are part of the network infrastructureM2 = Count of network infrastructure assets using encrypted sessions
M3 = Count of network infrastructure assets not using encrypted sessions
M4 = Count of
GV36
segments within the enterprise networkM5 = Count of network segments using infrastructure-as-code
M6 = Count of network segements not using infrastructure-as-code
M7 = Count of network segments covered by version controlled infrastructure-as-code
M8 = Count of network sgements covered by unmanaged infrastructure-as-code
Metrics
Encrypted Session Coverage
Metric |
The percentage of network infrastructure assets using encrypted sessions
|
Calculation |
|
Infrastructure-As-Code Coverage
12.4: Establish and Maintain Architecture Diagram(s)
Establish and maintain architecture diagram(s) and/or other network system documentation. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Identify |
2, 3 |
Dependencies
None
Inputs
GV4
: Enterprise network architecture documentationDate of last review or update to documentation
Operations
- Determine if Input 1
GV4
exists within the enterprise If the network architecture documentation exists, M1 = 1
If the network architecture documentation does not exist, M1 = 0
- Determine if Input 1
Compare Input 2 to the current date. Capture the timeframe in months.
Measures
M1 = Output of Operation 1.
M2 = Timeframe in months of last review or update to documentation
Metrics
If M1 is not provided or available, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply. If M2 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
12.6: Use of Secure Network Management and Communication Protocols
Use secure network management and communication protocols (e.g., 802.1X, Wi-Fi Protected Access 2 (WPA2) Enterprise or greater).
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Safeguard 12.2: Establish and Maintain a Secure Network Architecture
Inputs
GV36
: Segments within the enterprise networkGV37
: Network infrastructure configuration standardsAuthorized list of secure network management and communication protocols
Operations
- For each network segment in Input 1
GV36
, use Input 3 to identify communication protocols Identify and enumerate segments using only communication protocols on the authorized list (M2)
Identify and enumerate segments using communication protocols not on the authorized list (M3)
- For each network segment in Input 1
- For each communication protocol identified in Operation 1.1, check configuration standards
GV37
Identify and enumerate segments using properly configured communication protocols (M4)
Identify and enumerate segments using improperly configured communication protocols (M5)
- For each communication protocol identified in Operation 1.1, check configuration standards
- For each network segment in Input 1
GV36
, use Input 3 to identify network management protocols Identify and enumerate segments using only network management protocols on the authorized list (M6)
Identify and enumerate segments using network management protocols not on the authorized list (M7)
- For each network segment in Input 1
- For each communication protocol identified in Operation 1.1, check configuration standards
GV37
Identify and enumerate segments using properly configured network management protocols (M8)
Identify and enumerate segments using improperly configured network management protocols (M9)
- For each communication protocol identified in Operation 1.1, check configuration standards
Measures
M1 = Count of
GV36
M2 = Count of segments using authorized communication protocols
M3 = Count of segments using unauthorized communication protocols
M4 = Count of segments using properly configured authorized communication protocols
M5 = Count of segments using improperly configured authorized communication protocols
M6 = Count of segments using unauthorized network management protocols
M7 = Count of segments using unauthorized network management protocols
M8 = Count of segments using properly configured authorized network management protocols
M9 = Count of segments using improperly configured authorized network management protocols
Metrics
Communication Protocol Coverage
Network Managememt Protocol Coverage
12.7: Ensure Remote Devices Utilize a VPN and are Connecting to an Enterprise’s AAA Infrastructure
Require users to authenticate to enterprise-managed VPN and authentication services prior to accessing enterprise resources on end-user devices.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Safeguard 12.5: Centralize Network Authentication, Authorization, and Auditing (AAA)
Inputs
GV1
: Enterprise Asset InventoryGV5
: Authorized Software InventoryGV38
: AAA services within the enterpriseGV37
: Network infrastructure configuration standards
Operations
Use Input 1
GV1
to identify and enumerate remote enterprise assetsGV39
(M1)Use Input 1
GV1
and Input 2GV5
to identify and enumerate all VPN devices and software (M2)- Use the output of Operation 2 and Input 4 :code:`GV37`to check configuration of VPN
Identify and enumerate VPN devices and software properly configured to require authentication prior to granting access (M3)
Identify and enumerate VPN devices and software not properly configured to require authentication prior to granting access (M4)
- For each asset identified in Operation 1, check if is covered by a VPN device or software identified in Operation 3.1
Identify and enumerate assets that are covered by a VPN (M5)
Identify and enumerate assets that are not covered by a VPN (M6)
- Use Input 3
GV38
and Input 4GV37
to check configuration of AAA services Identify and enumerate AAA services properly configured to require authentication prior to granting access (M7)
Identify and enumerate AAA services not properly configured to require authentication prior to granting access (M8)
- Use Input 3
- For each asset indentified in Operation 1, check if it is covered an AAA service identified in Operation 5.1
Identify and enumerate assets that are covered by an AAA service (M9)
Identify and enumerate assets that are not covered by an AAA service (M10)
- Compare the output of Operation 4.1 and 6.1
Identify and enumerate assets covered by both VPN and AAA (M1)
Measures
M1 = Count of remote enterprise assets
M2 = Count of VPN devices and software
M3 = Count of properly configured VPN devices and sofware
M4 = Count of improperly configured VPN devices and software
M5 = Count of remote assets covered by a properly configured VPN
M6 = Count of remote assets not covered by a properly configured VPN
M7 = Count of properly configured AAA services
M8 = Count of improperly configured AAA services
M9 = Count of remote assets covered by a properly configured AAA service
M10 = Count of remote assets not covered by a properly configured AAA service
M11 = Count of remote assets covered by both VPN and AAA
M12 = Count of AAA services within the enterprise
Metrics
VPN Compliance
Metric |
The percentage of properly configured VPN devices and software
|
Calculation |
|
AAA Compliance
Metric |
The percentage of properly configured AAA services
|
Calculation |
|
Coverage
Metric |
The percentage of remote assets using VPN and AAA
|
Calculation |
|
12.8: Establish and Maintain Dedicated Computing Resources for All Administrative Work
Establish and maintain dedicated computing resources, either physically or logically separated, for all administrative tasks or tasks requiring administrative access. The computing resources should be segmented from the enterprise’s primary network and not be allowed internet access.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Inputs
GV1
: Enterprise Asset InventoryGV37
: Network infrastructure configuration standards
Operations
Use Input 1
GV1
to identify and enumerate assets used for administrative purposes (M1)- For each asset identified in Operation 1, use Input 2
GV37
to check configurations Identify and enumerate assets that do not have internet access (M2)
Identify and enumerate assets that have internet access (M3)
Identify and enumerate assets that are physically or logically seperated from the primary network (M4)
Identify and enumerate assets that are not physically or logically seperated from the primary network (M5)
- For each asset identified in Operation 1, use Input 2
- Compare the ouput of Operation 2.1 and 2.3
Identify and enumerate assets that do not have internet access and are physically or logically seperated (M6)
Measures
M1 = Count of assets used for administrative purposes
M2 = Count of assets configured to not allow internet access
M3 = Count of assets configured to allow internet access
M4 = Count of assets physically or logically seperated from the primary network
M5 = Count of assets not physically or logically seperated from the primary network
M6 = Count of assets configured to not allow internet acces and are physically or logically seperated
Metrics
Compliance
Metric |
The percentage of properlu configured administrative assets
|
Calculation |
|
CIS Control 13: Network Monitoring and Defense
Operate processes and tooling to establish and maintain comprehensive network monitoring and defense against security threats across the enterprise’s network infrastructure and user base.
Why is this CIS Control Critical?
We cannot rely on network defenses to be perfect. Adversaries continue to evolve and mature, as they share, or sell, information among their community on exploits and bypasses to security controls. Even if security tools work “as advertised,” it takes an understanding of the enterprise risk posture to configure, tune, and log them to be effective. Often, misconfigurations due to human error or lack of knowledge of tool capabilities give enterprises a false sense of security.
Security tools can only be effective if they are supporting a process of continuous monitoring that allows staff the ability to be alerted and respond to security incidents quickly. Enterprises that adopt a purely technology-driven approach will also experience more false positives, due to their over-reliance on alerts from tools. Identifying and responding to these threats requires visibility into all threat vectors of the infrastructure and leveraging humans in the process of detection, analysis, and response. It is critical for large or heavily targeted enterprises to have a security operations capability to prevent, detect, and quickly respond to cyber threats before they can impact the enterprise. This process will generate activity reports and metrics that will help enhance security policies, and support regulatory compliance for many enterprises.
As we have seen many times in the press, enterprises have been compromised for weeks, months, or years before discovery. The primary benefit of having comprehensive situational awareness is to increase the speed of detection and response. This is critical to respond quickly when malware is discovered, credentials are stolen, or when sensitive data is compromised to reduce impact to the enterprise.
Through good situational awareness (i.e., security operations), enterprises will identify and catalog Tactics, Techniques, and Procedures (TTPs) of attackers, including their IOCs that will help the enterprise become more proactive in identifying future threats or incidents. Recovery can be achieved faster when the response has access to complete information about the environment and enterprise structure to develop efficient response strategies.
13.1: Centralize Security Event Alerting
Centralize security event alerting across enterprise assets for log correlation and analysis. Best practice implementation requires the use of a SIEM, which includes vendor-defined event correlation alerts. A log analytics platform configured with security-relevant correlation alerts also satisfies this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
Location of
GV42
: log correlation or log analytic toolGV1
: Enterprise asset inventory
Operations
- Check if Input 1 exists within the enterprise
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
Use
GV1
to identify and enumerate enterprise assets that produce security event logs (M2)- For every asset identified in Operation 2, check if logs are centralized at the location of the log correlation or log analytic tool Input 1
Identify and enumerate assets whose logs are centralized (M3)
Identify and enumerate assets whose logs are not centralized (M4)
Measures
M1 = Output of Operation 1
M2 = Count of assets that produce security event logs
M3 = Count of assets with security event logs being centralized
M4 = Count of assets with security event logs not being centralized
Metrics
If M1 is 0, this Safeguard receives a failing score. The other metrics don’t apply.
Coverage
Metric |
The percentage of asses whose security even logs are centralized
|
Calculation |
|
13.2: Deploy a Host-Based Intrusion Detection Solution
Deploy a host-based intrusion detection solution on enterprise assets, where appropriate and/or supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventory
Operations
Use
GV1
to identify and enumerate assets capable of supporting host based intrusion detection systems (M1)Use: code:GV5 to identify authorized host based intrusion detection software
- For each asset identified in Operation 1 check if it is covered by at least one authorized host based intrusion detection software
Identify and enumerate assets with host based intrusion detection software installed (M2)
Identify and enumerate assets without host based intrusion detection software installed (M3)
Measures
M1 = Count of enterprise assets capable of supporting host based intrusion detection systems
M2 = Count of assets with host based intrusion detection systems
M3 = Count of assets without host based intrusion detection systems
Metrics
Coverage
13.3: Deploy a Network Intrusion Detection Solution
Deploy a network intrusion detection solution on enterprise assets, where appropriate. Example implementations include the use of a Network Intrusion Detection System (NIDS) or equivalent cloud service provider (CSP) service.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV35
: Assets that are part of the network infrastructureGV4
: Enterprise Network Architecture Documentation
Operations
Use Input 1
GV35
to identify the network intrusion detection solutions for the enterpriseUse Input 2
GV4
to identify and enumerate network boundaries (M1)- For each network boundary identified in Operation 2, determine whether it is covered by at least one network intrusion detection solution
Identify and enumerate boundaries covered by at least one network intrusion detection solution (M2)
Identify and enumerate boundaries not covered by at least one network intrusion detection solution (M3)
Measures
M1 = Count of network boundaries
M2 = Count of network boundaries covered by a network intrusion detection solution
M3 = Count of network boundaries not covered by a network intrusion detection solution
Metrics
Coverage
13.4: Perform Traffic Filtering Between Network Segments
Perform traffic filtering between network segments, where appropriate.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
None
Inputs
GV36
: Segments within the enterprise networkGV35
: Assets that are part of the network infrastructureGV37
: Network infrastructure configuration standards
Operations
Use Input 1
GV36
to identify and enumerate network segments that require communication with other network segments (M1)For each network segment identified in Operation 1, use Input 2
GV35
to identify network infrastructure assets responsible for traffic filtering- For each network infrastructure asset identified in Operation 1, check configurations using Input 3
GV37
to determine whether each semgment is properly configured to filter traffic Identify and enumerate network segments with properly configured filtering assets (M2)
Identify and enumerate network segments with improperly configured filtering assets (M3)
- For each network infrastructure asset identified in Operation 1, check configurations using Input 3
Measures
M1 = Count of network segments that communicate with other network segments
M2 = Count of network segments with properly configured filtering assets
M3 = Count of network segments wih improperly configured filtering assets
Metrics
Coverage
Metric |
The percentage of network segments properly configured to
filter traffic between segments
|
Calculation |
|
13.5: Manage Access Control for Remote Assets
Manage access control for assets remotely connecting to enterprise resources. Determine amount of access to enterprise resources based on: up-to-date anti-malware software installed, configuration compliance with the enterprise’s secure configuration process, and ensuring the operating system and applications are up-to-date.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 6.6: Establish and Maintain an Inventory of Authentication and Authorization Systems
Inputs
GV23
: Authentication and Authorization System InventoryGV3
: Configuration StandardGV39
: Remote enterprise assets
Operations
Use Input 1
GV23
to identify and enumerate authorization systems that allow remote logins (M1)- For each authorization system identified in Operation 1, use Input 2 :code`GV3` to check if configuration for each type of policy
Identify and enumerate authorization systems properly configured for all the policies (M2)
Identify and enumerate authorization systems for which at least one configuration does not comply with the policies (M3)
- For each remote enterprise asset from Input 3
GV39
, compare to the output of Operation 2.1 Identify and enumerate assets that are covered by at least one compliant authorization system (M4)
Identify and enumerate assets that are not covered by a compliant authorization system (M5)
- For each remote enterprise asset from Input 3
Measures
M1 = Count of authorization systems that allow remote logins
M2 = Count of authorization systems properly configured to comply with policies
M3 = Count of authorization systems not properly configured to comply with policies
M4 = Count of remote enterprise assets covered by a compliant authorization system
M5 = Count of remote enterprise assets not covered by a compliant authorization system
M6 = Count of remote enterprise assets
GV39
Metrics
Coverage
13.6: Collect Network Traffic Flow Logs
Collect network traffic flow logs and/or network traffic to review and alert upon from network devices.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
2, 3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV35
: Assets that are part of the network infrastructureGV37
: Network infrastructure configuration standards
Operations
Use Input 1
GV35
to identify and enumerate network boundary assets (M1)- For each network boundary asset identified in Operation 1, check configurations
GV37
to determine if network traffic or network traffic flow loggins is enabled Identify and enumerate assets with either network traffic flow or network traffic logging enabled (M2)
Identify and enumerate assets that have neither network traffic flow or network traffic logging enabled (M3)
- For each network boundary asset identified in Operation 1, check configurations
Measures
M1 = Count of network boundary assets
M2 = Count of properly configured network boundary assets
M3 = Count of improperly configured network boundary assets
Metrics
Coverage
Metric |
The percentage of network boundary assets properly configured to log
network traffic flow or network traffic
|
Calculation |
|
13.7: Deploy a Host-Based Intrusion Prevention Solution
Deploy a host-based intrusion prevention solution on enterprise assets, where appropriate and/or supported. Example implementations include use of an Endpoint Detection and Response (EDR) client or host-based IPS agent.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV1
: Enterprise asset inventoryGV5
: Authorized software inventory
Operations
Use
GV1
to identify and enumerate assets capable of supporting host based intrusion prevention systems (M1)Use: code:GV5 to identify authorized host based intrusion prevention software
- For each asset identified in Operation 1 check if it is covered by at least one authorized host based intrusion prevention software
Identify and enumerate assets with host based intrusion prevention software installed (M2)
Identify and enumerate assets without host based intrusion prevention software installed (M3)
Measures
M1 = Count of enterprise assets capable of supporting host based intrusion prevention systems
M2 = Count of assets with host based intrusion prevention systems
M3 = Count of assets without host based intrusion prevention systems
Metrics
Coverage
13.8: Deploy a Network Intrusion Prevention Solutions
Deploy a network intrusion prevention solution, where appropriate. Example implementations include the use of a Network Intrusion Prevention System (NIPS) or equivalent CSP service.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 12.4: Establish and Maintain Architecture Diagram(s)
Inputs
GV35
: Assets that are part of the network infrastructureGV40
: Network Boundaries
Operations
Use Input 1
GV35
to identify the network intrusion prevention solutions for the enterprise- For each network boundary identified in Input 2, determine whether it is covered by at least one network intrusion prevention solution
Identify and enumerate boundaries covered by at least one network intrusion prevention solution (M2)
Identify and enumerate boundaries not covered by at least one network intrusion prevention solution (M3)
Measures
M1 = Count of network boundaries
GV40
M2 = Count of network boundaries covered by a network intrusion prevention solution
M3 = Count of network boundaries not covered by a network intrusion prevention solution
Metrics
Coverage
13.9: Deploy Port-Level Access Control
Deploy port-level access control. Port-level access control utilizes 802.1x, or similar network access control protocols, such as certificates, and may incorporate user and/or device authentication.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Devices |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Inputs
GV5
: Authorized Software InventoryGV38
: AAA services within the enterpriseGV41
: List of CMDB serversGV35
: Assets that are part of the network infrastructureGV37
: Network infrastructure configuration standards
Operations
If the enterprise uses an 802.1x network design to control network access:
Use Input 1
GV5
to identify and enumerate 802.1x authenticators (M1)- For each authenticator identified in Operation 1, use Input 5 :code:`GV37`to check configurations
Identify and enumerate properly configured authenticators (M2)
Identify and enumerate improperly configured authenticators (M3)
Use Input 2
GV38
to identify 802.1x authentication servers (M4)- For each authentication server identified in Operation 3, use Input 5
GV37`to check configurations to ensure a connection to at least one CMDB server from Input 3 :code:`GV41
Identify and enumerate properly configured authentication servers (M5)
Identify and enumerate improperly configured authentication servers (M6)
- For each authentication server identified in Operation 3, use Input 5
If the enterprise does not use 802.1x network design to control network access:
- For each asset in Input 4
GV35
, use Inp;ut 5GV37
to check client authentication certificate configuration Identify and enumerate properly configured assets (M8)
Identify and enumerate improperly configured assets (M9)
- For each asset in Input 4
Measures
M1 = Count of 802.1x authenticators
M2 = Count of 802.1x properly configured authenticators
M3 = Count of 802.1x improperly configured authenticators
M4 = Count of 802.1x authentication servers
M5 = Count of 802.1x properly configured authentication servers
M6 = Count of 802.1x improperly configured authentication servers
M7 = Count of Input 4
GV35
M8 = Count of assets properly configured for client authentication certificates
M9 = Count of assets improperly configured for client authentication certificates
Metrics
If the enterprise uses an 802.1x network design to control network access:
Authenticator Coverage
Metric |
The percentage of properly configured authenticator
|
Calculation |
|
Authentication Server Coverage
Metric |
The percentage of properly configured authentication servers
|
Calculation |
|
If the enterprise does not use 802.1x network design to control network access:
Client Authentication Certificate Coverage
13.10: Perform Application Layer Filtering
Perform application layer filtering. Example implementations include a filtering proxy, application layer firewall, or gateway.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
3 |
Dependencies
Safeguard 1.1: Establish and Maintain Detailed Enterprise Asset Inventory
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV35
: Assets that are part of the network infrastructureGV5
: Authorized Software Inventory
Operations
Use Input 2
GV5
to identify software used for application layer filtering- For each asset in Input 1 :code:`GV35, determine whether it is covered by at least one sofware identified in Operation 1
Identify and enumerate assets covered by application layer filtering software (M2)
Identify and enumerate assets not covered by application layer filtering software (M3)
Measures
M1 = Count of network infrastructure assets
M2 = Count of network infrastructure assets covered by application layer filtering software
M3 = Count of network infrastructure assets not covered by application layer filtering software
Metrics
Coverage
Metric |
The percentage of network infrastructure assets covered by
application layering software
|
Calculation |
|
13.11: Tune Security Event Alerting Thresholds
Tune security event alerting thresholds monthly, or more frequently.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Detect |
3 |
Dependencies
Safeguard 13.1: Centralize Security Event Alerting
Inputs
Date of last tuning of security event alert thresholds of
GV42
Log correlation or log analytic tool
Operations
Compare Input 1 to current date and capture timeframe in days
Measures
M1 = Timeframe in days since last tuning of security event alert thresholds for log correlation or log analytic tool
Metrics
If M1 is greater than thirty days, then this safeguard is measured at a 0 and receives a failing score.
CIS Control 14: Security Awareness and Skills Training
Establish and maintain a security awareness program to influence behavior among the workforce to be security conscious and properly skilled to reduce cybersecurity risks to the enterprise.
Why is this CIS Control Critical?
The actions of people play a critical part in the success or failure of an enterprise’s security program. It is easier for an attacker to entice a user to click a link or open an email attachment to install malware in order to get into an enterprise, than to find a network exploit to do it directly.
Users themselves, both intentionally and unintentionally, can cause incidents as a result of mishandling sensitive data, sending an email with sensitive data to the wrong recipient, losing a portable end-user device, using weak passwords, or using the same password they use on public sites.
No security program can effectively address cyber risk without a means to address this fundamental human vulnerability. Users at every level of the enterprise have different risks. For example: executives manage more sensitive data; system administrators have the ability to control access to systems and applications; and users in finance, human resources, and contracts all have access to different types of sensitive data that can make them targets.
The training should be updated regularly. This will increase the culture of security and discourage risky workarounds.
14.1: Establish and Maintain a Security Awareness Program
Establish and maintain a security awareness program. The purpose of a security awareness program is to educate the enterprise’s workforce on how to interact with enterprise assets and data in a secure manner. Conduct training at hire and, at a minimum, annually. Review and update content annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Security awareness program
GV43
: List of workforce membersList of most recent security awareness training completion dates for each workforce member
Date of last review or update to security awareness program content
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
Compare the date in Input 4 to the current date and capture timeframe in months (M2)
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M4)
Identify and enumerate members who have not completed any training (M5)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 3.1, identify the date of most recently completed security awareness training
- For every member of the workforce identified in Operation 3.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M6)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M7)
Measures
M1 = Output of Operation 1
M2 = Output of Operation 2
M3 = Count of Input 2
GV43
M4 = Count of workforce members that have completed training
M5 = Count of workforce members that have not completed training
M6 = Count of workforce members whose training is up to date
M7 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
If M2 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.3: Train Workforce Members on Authentication Best Practices
Train workforce members on authentication best practices. Example topics include MFA, password composition, and credential management.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Authentication Best Practices training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.4: Train Workforce on Data Handling Best Practices
Train workforce members on how to identify and properly store, transfer, archive, and destroy sensitive data. This also includes training workforce members on clear screen and desk best practices, such as locking their screen when they step away from their enterprise asset, erasing physical and virtual whiteboards at the end of meetings, and storing data and assets securely.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Data Handling Best Practices training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.5: Train Workforce Members on Causes of Unintentional Data Exposure
Train workforce members to be aware of causes for unintentional data exposure. Example topics include mis-delivery of sensitive data, losing a portable end-user device, or publishing data to unintended audiences.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Causes of Unintentional Data Exposure training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.6: Train Workforce Members on Recognizing and Reporting Security Incidents
Train workforce members to be able to recognize a potential incident and be able to report such an incident.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Recognizing and Reporting Security Incidents training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.7: Train Workforce on How to Identify and Report if Their Enterprise Assets are Missing Security Updates
Train workforce to understand how to verify and report out-of-date software patches or any failures in automated processes and tools. Part of this training should include notifying IT personnel of any failures in automated processes and tools.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
How to Identify and Report if Their Enterprise Assets are Missing Security Updates training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.8: Train Workforce on the Dangers of Connecting to and Transmitting Enterprise Data Over Insecure Networks
Train workforce members on the dangers of connecting to, and transmitting data over, insecure networks for enterprise activities. If the enterprise has remote workers, training must include guidance to ensure that all users securely configure their home network infrastructure.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Dangers of Connecting to and Transmitting Enterprise Data Over Insecure Networks training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
14.9: Conduct Role-Specific Security Awareness and Skills Training
Conduct role-specific security awareness and skills training. Example implementations include secure system administration courses for IT professionals, (OWASP® Top 10 vulnerability awareness and prevention training for web application developers, and advanced social engineering awareness training for high-profile roles.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
1, 2, 3 |
Dependencies
None
Inputs
Role-Specific Security Awareness and Skills Training module
GV43
: List of workforce membersList of most recent module training completion dates for each workforce member
Operations
- Check enterprise to determine if Input 1 exists
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- For every member of the workforce in Input 2
GV43
, determine whether the member has completed training Identify and enumerate members who have completed at least initial training (M3)
Identify and enumerate members who have not completed any training (M4)
- For every member of the workforce in Input 2
For every member of the workforce identified in Operation 2.1, identify the date of most recently completed module training
- For every member of the workforce identified in Operation 2.1, use the output of Operation 4 and compare the date to current date. Capture timeframe in months.
Identify and enumerate members whose most recent training date is less than or equal to twelve months from current date (M5)
Identify and enumerate members whose most recent training date is greater than twelve months from current date (M6)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
GV43
M3 = Count of workforce members that have completed training
M4 = Count of workforce members that have not completed training
M5 = Count of workforce members whose training is up to date
M6 = Count of workforce members whose training is not up to date
Metrics
If M1 is measured at a 0, this safeguard receives a failing score. The other metrics don’t apply.
Initial Training Compliance
Metric |
The percentage of workforce members that have received initial training
|
Calculation |
|
Up to Date Training
Metric |
The percentage of compliant workforce members
|
Calculation |
|
CIS Control 15: Service Provider Management
Develop a process to evaluate service providers who hold sensitive data, or are responsible for an enterprise’s critical IT platforms or processes, to ensure these providers are protecting those platforms and data appropriately.
Why is this CIS Control Critical?
In our modern, connected world, enterprises rely on vendors and partners to help manage their data or rely on third-party infrastructure for core applications or functions.
There have been numerous examples where third-party breaches have significantly impacted an enterprise; for example, as early as the late 2000s, payment cards were compromised after attackers infiltrated smaller third-party vendors in the retail industry. More recent examples include ransomware attacks that impact an enterprise indirectly, due to one of their service providers being locked down, causing disruption to business. Or worse, if directly connected, a ransomware attack could encrypt data on the main enterprise.
Most data security and privacy regulations require their protection extend to third-party service providers, such as with Health Insurance Portability and Accountability Act (HIPAA) Business Associate agreements in healthcare, Federal Financial Institutions Examination Council (FFIEC) requirements for the financial industry, and the United Kingdom (U.K.) Cyber Essentials. Third-party trust is a core Governance Risk and Compliance (GRC) function, as risks that are not managed within the enterprise are transferred to entities outside the enterprise.
While reviewing the security of third-parties has been a task performed for decades, there is not a universal standard for assessing security; and, many service providers are being audited by their customers multiple times a month, causing impacts to their own productivity. This is because every enterprise has a different “checklist” or set of standards to grade the service provider. There are only a few industry standards, such as in finance, with the Shared Assessments program, or in higher education, with their Higher Education Community Vendor Assessment Toolkit (HECVAT). Insurance companies selling cybersecurity policies also have their own measurements.
While an enterprise might put a lot of scrutiny into large cloud or application hosting companies because they are hosting their email or critical business applications, smaller firms are often a greater risk. Often times, a third-party service provider contracts with additional parties to provide other plugins or services, such as when a third-party uses a fourth-party platform or product to support the main enterprise.
15.1: Establish and Maintain an Inventory of Service Providers
Establish and maintain an inventory of service providers. The inventory is to list all known service providers, include classification(s), and designate an enterprise contact for each service provider. Review and update the inventory annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
1, 2, 3 |
Dependencies
None
Inputs
GV44
: Service Provider Inventory ListGV46
: Date of last review or update of the service provider inventory
Operations
- Determine whether the enterprise maintains a service provider inventory list by checking for Input 1,
If Input 1 exists, M1 = 1
If Input 2 does not exist, M1 = 0
- Review Input 1 and determine if it includes, at a minimum, the following components: service provider, classification of provider, and an enterprise contact for the provider
For each component included, assign a value of 1. Sum all values. (M2)
- For each service provider indentied in Input 1
GV45
, determine whether they are accurately listed Identify and enumerate providers that are accurately listed (M4)
Identify and enumerate providers that are erroneously listed (M5)
Identify and enumerate providers that should be listed but are missing (M6)
- For each service provider indentied in Input 1
Compare the date from Input 2 with the current date and capture the time frame in months (M7)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the inventory
M3 = Count of service providers in the inventory
M4 = Count of accurately listed providers
M5 = Count of erroneously listed providers
M6 = Count of missing providers from list
M7 = Timeframe since last update or review of the inventory
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
If M7 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Inventory
Metric |
The percentage of components included in the inventory
|
Calculation |
|
Accuracy of Inventory
Metric |
The perecentage of accurately listed service providers
in the inventory
|
Calculation |
|
15.2: Establish and Maintain a Service Provider Management Policy
Establish and maintain a service provider management policy. Ensure the policy addresses the classification, inventory, assessment, monitoring, and decommissioning of service providers. Review and update the policy annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
2, 3 |
Dependencies
None
Inputs
GV45
: Service Provider Management PolicyDate of last review or update of the policy
Operations
- Determine whether the enterprise maintains a service provider management policy by checking for Input 1,
If Input 1 exists, M1 = 1
If Input 2 does not exist, M1 = 0
- Review Input 1 and determine if it includes, at a minimum, the following components: service provider inventory, classification, assessment, monitoring, and decommissioning of service providers
For each component included, assign a value of 1. Sum all values. (M2)
Compare the date from Input 2 with the current date and capture the time frame in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the policy
M3 = Timeframe since last update or review of the policy
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Policy
Metric |
The percentage of components included in the policy
|
Calculation |
|
15.3: Classify Service Providers
Classify service providers. Classification consideration may include one or more characteristics, such as data sensitivity, data volume, availability requirements, applicable regulations, inherent risk, and mitigated risk. Update and review classifications annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
2, 3 |
Dependencies
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Safeguard 15.2: Establish and Maintain a Service Provider Management Policy
Inputs
GV44
: Service Provider Inventory ListGV45
: Service Provider Management PolicyGV46
: Date of last review or update to service provider inventory
Operations
- Use Input 2
GV45
to determine if the enterprise policy includes classification process of service providers by one or more characteristics If the process exists, M1 = 1
If the process does not exist, M1 = 0
- Use Input 2
Compare date of Input 3
GV46
to current date and capture timeframe in months (M2)- Review Input 1
GV45
and determine whether service providers are classified using one or more characteristic per the enterprise’s policy Identify and enumerate service providers with an assigned classification (M4)
Identify and enumerate service providers without a classification (M5)
- Review Input 1
Measures
M1 = Output of Operation 1
M2 = Timeframe since last update or review of service provider inventory
M3 = Count of service providers in inventory
M4 = Count of service providers with classification
M5 = Count of service providers without classification
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
If M2 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Coverage
Metric |
The percentage of service providers with a classification
|
Calculation |
|
15.4: Ensure Service Provider Contracts Include Security Requirements
Ensure service provider contracts include security requirements. Example requirements may include minimum security program requirements, security incident and/or data breach notification and response, data encryption requirements, and data disposal commitments. These security requirements must be consistent with the enterprise’s service provider management policy. Review service provider contracts annually to ensure contracts are not missing security requirements.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Protect |
2, 3 |
Dependencies
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Safeguard 15.2: Establish and Maintain a Service Provider Management Policy
Inputs
GV44
: Service Provider Inventory ListGV45
: Service Provider Management PolicyDate of last update or review of contracts
Operations
- Use Input 2
GV45
to determine if the enterprise policy includes security program requirements for service providers If the security requirements exist, M1 = 1
If the security requirements do not exist, M1 = 0
- Use Input 2
- Use Input 1
GV44
to determine if each listed service provider has a contract Identify and enumerate service providers with contracts (M3)
Identify and enumerate service providers without contracts (M4)
- Use Input 1
- For each service provider with a contract identified in Operation 2.1, compare the date from input 3 to current date and capture timeframe in months
Identify and enumerate service providers whose contract has been reviewed within twelve months or less (M5)
Identify and enumerate service providers whose contract has been reviewed outside the twelve month window (M6)
Measures
M1 = Output of Operation 1
M2 = Count of service providers in inventory
M3 = Count of service providers with contracts
M4 = Count of service providers without contracts
M5 = Count of service providers with up to date contracts
M6 = Count of service providers without out dated contracts
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
Metric |
The percentage of service providers with up to date contract
|
Calculation |
|
15.5: Assess Service Providers
Assess service providers consistent with the enterprise’s service provider management policy. Assessment scope may vary based on classification(s), and may include review of standardized assessment reports, such as Service Organization Control 2 (SOC 2) and Payment Card Industry (PCI) Attestation of Compliance (AoC), customized questionnaires, or other appropriately rigorous processes. Reassess service providers annually, at a minimum, or with new and renewed contracts.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
3 |
Dependencies
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Safeguard 15.2: Establish and Maintain a Service Provider Management Policy
Inputs
GV44
: Service Provider Inventory ListGV45
: Service Provider Management Policy
Operations
- Use Input 2
GV45
to determine if the enterprise policy includes monitoring guidance for service providers If the assessment scope exist, M1 = 1
If the assessment scope does not exist, M1 = 0
- Use Input 2
- Use Input 1
GV44
to determine if each listed service provider has monitoring guidance included in the policy Identify and enumerate service providers with monitoring guidance (M3)
Identify and enumerate service providers without monitoring guidance (M4)
- Use Input 1
Measures
M1 = Output of Operation 1
M2 = Count of service providers in inventory
M3 = Count of service providers with monitoring guidance
M4 = Count of service providers without monitoring guidance
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
15.6: Monitor Service Providers
Monitor service providers consistent with the enterprise’s service provider management policy. Monitoring may include periodic reassessment of service provider compliance, monitoring service provider release notes, and dark web monitoring.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Detect |
3 |
Dependencies
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Safeguard 15.2: Establish and Maintain a Service Provider Management Policy
Inputs
GV44
: Service Provider Inventory ListGV45
: Service Provider Management Policy
Operations
- Use Input 2
GV45
to determine if the enterprise policy includes monitoring guidance for service providers If the monitoring guidance exist, M1 = 1
If the monitoring guidance does not exist, M1 = 0
- Use Input 2
- Use Input 1
GV44
to determine if each listed service provider has monitoring guidance provided in the policy Identify and enumerate service providers with monitoring guidance provided (M3)
Identify and enumerate service providers without monitoring guidance provided (M4)
- Use Input 1
Measures
M1 = Output of Operation 1
M2 = Count of service providers in inventory
M3 = Count of service providers with monitoring guidance provided
M4 = Count of service providers without monitoring guidance provided
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
Metric |
The percentage of service providers with up to date assessments
|
Calculation |
|
15.7: Securely Decommission Service Providers
Securely decommission service providers. Example considerations include user and service account deactivation, termination of data flows, and secure disposal of enterprise data within service provider systems
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Data |
Protect |
3 |
Dependencies
Safeguard 15.1: Establish and Maintain an Inventory of Service Providers
Safeguard 15.2: Establish and Maintain a Service Provider Management Policy
Inputs
GV44
: Service Provider Inventory ListGV45
: Service Provider Management Policy
Operations
- Use Input 2
GV45
to determine if the enterprise policy includes guidance for securely decommissioning service providers If the monitoring guidance exist, M1 = 1
If the monitoring guidance does not exist, M1 = 0
- Use Input 2
Use Input 1
GV44
to identify and enumerate any service providers terminated over the last twelve months (M2)- For each service provider identified in Operation 2, determine if the provider was decommissioned per the policy
Identify and enumerate service providers properly terminated (M3)
Identify and enumerate service providers improperly terminated (M4)
Measures
M1 = Output of Operation 1
M2 = Count of service providers terminated over the last twelve months
M3 = Count of service providers properly terminated
M4 = Count of service providers improperly terminated
Metrics
If M1 is a 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
Metric |
The percentage of service providers properly terminated
|
Calculation |
|
CIS Control 16: Application Software Security
Manage the security life cycle of in-house developed, hosted, or acquired software to prevent, detect, and remediate security weaknesses before they can impact the enterprise.
Why is this CIS Control Critical?
Applications provide a human-friendly interface to allow users to access and manage data in a way that is aligned to business functions. They also minimize the need for users to deal directly with complex (and potentially error-prone) system functions, like logging into a database to insert or modify files. Enterprises use applications to manage their most sensitive data and control access to system resources. Therefore, an attacker can use the application itself to compromise the data, instead of an elaborate network and system hacking sequence that attempts to bypass network security controls and sensors. This is why protecting user credentials (specifically application credentials) defined in CIS Control 6 is so important. Lacking credentials, application flaws are the attack vector of choice. However, today’s applications are developed, operated, and maintained in a highly complex, diverse, and dynamic environment. Applications run on multiple platforms: web, mobile, cloud, etc., with application architectures that are more complex than legacy client-server or database-web server structures. Development life cycles have become shorter, transitioning from months or years in long waterfall methodologies, to DevOps cycles with frequent code updates. Also, applications are rarely created from scratch, and are often “assembled” from a complex mix of development frameworks, libraries, existing code, and new code. There are also modern and evolving data protection regulations dealing with user privacy. These may require compliance to regional or sector-specific data protection requirements. These factors make traditional approaches to security, like control (of processes, code sources, run-time environment, etc.), inspection, and testing, much more challenging. Also, the risk that an application vulnerability introduces might not be understood, except in a specific operational setting or context. Application vulnerabilities can be present for many reasons: insecure design, insecure infrastructure, coding mistakes, weak authentication, and failure to test for unusual or unexpected conditions. Attackers can exploit specific vulnerabilities, including buffer overflows, exposure to Structured Query Language (SQL) injection, cross-site scripting, cross-site request forgery, and click-jacking of code to gain access to sensitive data, or take control over vulnerable assets within the infrastructure as a launching point for further attacks. Applications and websites can also be used to harvest credentials, data, or attempt to install malware onto the users who access them. Finally, it is now more common to acquire Software as a Service (SaaS) platforms, where software is developed and managed entirely through a third-party. These might be hosted anywhere in the world. This brings challenges to enterprises that need to know what risks they are accepting with using these platforms; and, they often do not have visibility into the development and application security practices of these platforms. Some of these SaaS platforms allow for customizing of their interfaces and databases. Enterprises that extend these applications should follow this CIS Control, similar to if they were doing ground-up customer development.
16.1: Establish and Maintain a Secure Application Development Process
Establish and maintain a secure application development process. In the process, address such items as: secure application design standards, secure coding practices, developer training, vulnerability management, security of third-party code, and application security testing procedures. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
None
Inputs
GV49
: Secure Application Development ProcessDate of last update or review of the secure application development process
Operations
- Determine whether Input 1 exists within the enterprise
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 1
- Review Input 1 and dermine whether it includes, at a minimum, the following components: secure application design standards, secure coding practices, developer training, vulnerability management, security of third-party code, and application security testing procedures
For each component included in the process, assign a value of 1. Sum all values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the process
M3 = Timeframe in months since last review or update
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
16.2: Establish and Maintain a Process to Accept and Address Software Vulnerabilities
Establish and maintain a process to accept and address reports of software vulnerabilities, including providing a means for external entities to report. The process is to include such items as: a vulnerability handling policy that identifies reporting process, responsible party for handling vulnerability reports, and a process for intake, assignment, remediation, and remediation testing. As part of the process, use a vulnerability tracking system that includes severity ratings, and metrics for measuring timing for identification, analysis, and remediation of vulnerabilities. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
Third-party application developers need to consider this an externally-facing policy that helps to set expectations for outside stakeholders.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
None
Inputs
GV48
: Process to Accept and Address Software VulnerabilitiesDate of last update or review of process
Operations
- Determine whether Input 1 exists within the enterprise
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 1
- Review Input 1
GV48
and dermine whether it includes, at a minimum, the following components: reporting process, responsible party for handling vulnerability reports, a process for intake, assignment, remediation, remediation testing, and a vulnerability tracking system For each component included in the process, assign a value of 1. Sum all values. (M2)
- Review Input 1
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the process
M3 = Timeframe in months since last review or update
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
16.3: Perform Root Cause Analysis on Security Vulnerabilities
Perform root cause analysis on security vulnerabilities. When reviewing vulnerabilities, root cause analysis is the task of evaluating underlying issues that create vulnerabilities in code, and allows development teams to move beyond just fixing individual vulnerabilities as they arise.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 16.2: Establish and Maintain a Process to Accept and Address Software Vulnerabilities
Inputs
Root Cause Analysis Process
Vulnerabilities addressed over the last twelve months
Operations
- Determine whether Input 1 exists within the enterprise
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 1
- Review Input 1 and dermine whether it includes, at a minimum, the following components: categorization of vulnerabilities, guidance for how lessons learned are incorporated into the development process
For each component included in the process, assign a value of 1. Sum all values. (M2)
- For each vulnerability addressed over the last twelve months, assess whether the root cause analysis process was followed
Identify and enumerate vulnerabilities for which the process was followed (M4)
Identify and enumerate vulnerabilities for which the process was not followed (M5)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the process
M3 = Count of Input 2
M4 = Count of vulnerabilities for which root cause analysis was conducted
M5 = Count of vulnerabilities for which root cause analysis was not conducted
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Completeness of Process
Compliance
16.4: Establish and Manage an Inventory of Third-Party Software Components
Establish and manage an updated inventory of third-party components used in development, often referred to as a “bill of materials,” as well as components slated for future use. This inventory is to include any risks that each third-party component could pose. Evaluate the list at least monthly to identify any changes or updates to these components, and validate that the component is still supported.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV47
: Inventory of Third-Party Software ComponentsDate of last review or update of the inventory
Operations
- Determine whether Input 1 exists within the enterprise
If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 1
- Use Input 1 and dermine whether each software component listed includes, at a minimum, the following information: risk associated with components, whether component is supported
Identify and enumerate software components with complete information (M3)
Identify and enumerate software components with missing information (M4)
Compare date of Input 2 to current date and capture timeframe in days (M5)
Measures
M1 = Output of Operation 1
M2 = Count of Input 1
M3 = Count of software components with complete information
M4 = Count of software components with missing information
M5 = Timeframe since last review or update of the inventory
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M5 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness of Inventory
16.5: Use Up-to-Date and Trusted Third-Party Software Components
Use up-to-date and trusted third-party software components. When possible, choose established and proven frameworks and libraries that provide adequate security. Acquire these components from trusted sources or evaluate the software for vulnerabilities before use.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 16.4: Establish and Manage an Inventory of Third-Party Software Components
Inputs
GV47
: Inventory of Third-Party Software Components
Operations
- For each software component in Input 1
GV47
, determine whether the latest component is being used Identify and enumerate software components that are up-to-date (M2)
Identify and enumerate software components that are not up-to-date (M3)
- For each software component in Input 1
- For each software component identified in Operaion 1.1, determine whether they are explicitly trusted by the enterprise
Identify and enumerate software components that are trusted by the enterprise (M4)
Measures
M1 = Count of Input 1
M2 = Count of software components that are up-to-date
M3 = Count of software components that are not up-to-date
M4 = Count of software components that are up to date and trusted
Metrics
Compliance
Metric |
The percentage of up-to-date and trusted software components
|
Calculation |
|
16.6: Establish and Maintain a Severity Rating System and Process for Application Vulnerabilities
Establish and maintain a severity rating system and process for application vulnerabilities that facilitates prioritizing the order in which discovered vulnerabilities are fixed. This process includes setting a minimum level of security acceptability for releasing code or applications. Severity ratings bring a systematic way of triaging vulnerabilities that improves risk management and helps ensure the most severe bugs are fixed first. Review and update the system and process annually.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 16.2: Establish and Maintain a Process to Accept and Address Software Vulnerabilities
Inputs
GV48
: Process to Accept and Address Software VulnerabilitiesDate of last update or review of the severity rating system and process
Operations
- Using Input 1
GV48`
determine whether the enterprise has a severity rating system and process for application vulnerabilities If the system and process exist, M1 = 1
If the system and process do not exist, M1 = 0
- Using Input 1
- Review Input 1
GV48
and dermine whether it includes, at a minimum, the following components: guidance for prioritizing the order vulnerabilities are fixed, level of security acceptability for releasing code or applications For each component included in the process, assign a value of 1. Sum all values. (M2)
- Review Input 1
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in the process
M3 = Timeframe in months since last review or update
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
16.7: Use Standard Hardening Configuration Templates for Application Infrastructure
Use standard, industry-recommended hardening configuration templates for application infrastructure components. This includes underlying servers, databases, and web servers, and applies to cloud containers, Platform as a Service (PaaS) components, and SaaS components. Do not allow in-house developed software to weaken configuration hardening.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 4.1: Establish and Maintain a Secure Configuration Process
Safeguard 4.2: Establish and Maintain a Secure Configuration Process for Network Infrastructure
Inputs
GV1
: Enterprise Asset InventoryGV37
: Network infrastructure configuration standards
Operations
Use Input 1
GV1
to identify and enumerate application infrastructure componentsGV50
(M1)- For each infastructure component identified in Operation 1, check configurations using Input 2
GV37
and determine if they meet industry recommended hardening configuraion standards Identify and enumerate infrastructure components that meet industry standards (M2)
Identify and enumerate infrastructure components that do not meet industry standards (M3)
- For each infastructure component identified in Operation 1, check configurations using Input 2
Measures
M1 = Count of application infrastructure components
M2 = Count of components that meet industry standards
M3 = Count of components that do not meet industry standards
Metrics
Compliance
Metric |
The percentage of application infrastructure components that meet
industry configuration standards
|
Calculation |
|
16.8: Separate Production and Non-Production Systems
Maintain separate environments for production and non-production systems.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
None
Inputs
GV1
: Enterprise Asset Inventory
Operations
Use Input 1
GV1
to identify and enumerate productions systems (M1)- For each production system identified in Operation 1, use Input 1
GV1
to identify if at least one non-production system exists for the system Identify and enumerate productions systems with at least one non-production system (M2)
Identify and enumerate productions systems without a non-production system (M3)
- For each production system identified in Operation 1, use Input 1
Measures
M1 = Count of production systems
M2 = Count of production systems with a non-production system to complement
M3 = Count of productions systems without a non-production system to complement
Metrics
Coverage
16.9: Train Developers in Application Security Concepts and Secure Coding
Ensure that all software development personnel receive training in writing secure code for their specific development environment and responsibilities. Training can include general security principles and application security standard practices. Conduct training at least annually and design in a way to promote security within the development team, and build a culture of security among the developers.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
None
Inputs
List of software developing personnel with assigned roles and development environments
List of required courses for each role and development environment
Date of last training course
Operations
- For each individual in Input 1, determine whether they have taken the applicable courses per role and environment
Identify and enumerate personnel that have completed the appropriate courses (M2)
Identify and enumerate personnel that have not completed the appropriate courses (M3)
- For each individual who has completed the appropriate courses, compare the date of last training from Input 3 to current date and capture timeframe in months
Identify and enumerate personnel that have completed all appropriate training within twelve months or less (M4)
Identify and enumerate personnel that have not completed all appropriate training within twelve months or less (M5)
Measures
M1 = Count of software developing personnel
M2 = Count of software developing personnel with completed courses
M3 = Count of software developing personnel without completed courses
M4 = Count of software developing personnel with training in scope
M5 = Count of software developing personnel with training out of scope
Metrics
Compliance
16.10: Apply Secure Design Principles in Application Architectures
Apply secure design principles in application architectures. Secure design principles include the concept of least privilege and enforcing mediation to validate every operation that the user makes, promoting the concept of “never trust user input.” Examples include ensuring that explicit error checking is performed and documented for all input, including for size, data type, and acceptable ranges or formats. Secure design also means minimizing the application infrastructure attack surface, such as turning off unprotected ports and services, removing unnecessary programs and files, and renaming or removing default accounts.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 16.1: Establish and Maintain a Secure Application Development Process
Inputs
GV49
: Secure Application Development ProcessGV50
: Application Infrastructure Components
Operations
- Use Input 1
GV49
to determine whether the process outlines a secure software framework that includes secure design principles If the framework exists, M1 = 1
If the framework does not exist, M1 = 0
- Use Input 1
- For each application infrastructure component in Input 2
GV50
, determine whether the secure design principles were applied per the framework Identify and enumerate application infrastructure components where design principles are applied (M3)
Identify and enumerate application infrastructure components where design principles are not applied (M4)
- For each application infrastructure component in Input 2
Measures
M1 = Output of Operation 1
M2 = Count of Input 2
GV50
M3 = Count of applications infrastructure components with design principles applied
M4 = Count of applications infrastructure components without design principles applied
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
16.11: Leverage Vetted Modules or Services for Application Security Components
Leverage vetted modules or services for application security components, such as identity management, encryption, and auditing and logging. Using platform features in critical security functions will reduce developers’ workload and minimize the likelihood of design or implementation errors. Modern operating systems provide effective mechanisms for identification, authentication, and authorization and make those mechanisms available to applications. Use only standardized, currently accepted, and extensively reviewed encryption algorithms. Operating systems also provide mechanisms to create and maintain secure audit logs.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
2, 3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized Software Inventory
Operations
Use Input 1
GV5
to identify and enumerate application security components (M1)- For each application security component identifed in Operation 1, determine whether custom code exists
Identify and enumerate components that contain custom code (M2)
Identify and enumerate components that do not contain custom code (M3)
- For each application security component identifed in Operation 2.1, determine whether vetted modules or services exist
Identify and enumerate components for which vetted modules or services exist (M4)
Identify and enumerate components for which vetted modules or services do not exist (M5)
Measures
M1 = Count of application security components
M2 = Count of application security components containing custom code
M3 = Count of application security components not containing custom code
M4 = Count of application security components containing custom code and vetted modules or services do exist
M5 = Count of application security components containing custom code and vetted modules or services do not exist
Metrics
Compliance
Metric |
The percentage of application security components using vetted modules
or services when available
|
Calculation |
|
16.12: Implement Code-Level Security Checks
Apply static and dynamic analysis tools within the application life cycle to verify that secure coding practices are being followed.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized Software Inventory
Operations
Use Input 1
GV5
to identify and enumerate in-house developed software (M1)Use Input 1
GV5
to identify static analysis tools- For each software identified in Operation 1, determine if it is verified by a static tool identified in Operation 2
Identify and enumerate software verified by a static tool (M2)
Identify and enumerate software not verified by a static tool (M3)
Use Input 1
GV5
to identify dynamic analysis tools- For each software identified in Operation 1, determine if it is verified by a dynaic tool identified in Operation 4
Identify and enumerate software verified by a dynamic tool (M4)
Identify and enumerate software not verified by a dynamic tool (M5)
Measures
M1 = Count of in-house developed software
M2 = Count of in-house developed software verified by a static analysis tool
M3 = Count of in-house developed software not verified by a static analysis tool
M4 = Count of in-house developed software verified by a dynamic analysis tool
M5 = Count of in-house developed software not verified by a dynamic analysis tool
Metrics
Static Analysis Tool Coverage
Metric |
The percentage of in-house developed software verified by a
static analysis tool
|
Calculation |
|
Dynamic Analysis Tool Coverage
Metric |
The percentage of in-house developed software verified by a
dynamic analysis tool
|
Calculation |
|
16.13: Conduct Application Penetration Testing
Conduct application penetration testing. For critical applications, authenticated penetration testing is better suited to finding business logic vulnerabilities than code scanning and automated security testing. Penetration testing relies on the skill of the tester to manually manipulate an application as an authenticated and unauthenticated user.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized Software InventoryApplication Penetration Process for enterprise
Operations
- Determine whether Input 2 exists for the enterprise
If the process exists, M1 = 1
If the process does not exist, M1 = 0
Use Input 1
GV5
to identify and enumerate all applications within the enterprise (M2)- For each application identified in Operation 2, determine whether an unauthenticated penentration test has been conducted per the process outlined in Input 2
Identify and enumerate applications that have been tested (M3)
Identify and enumerate applications that have not been tested (M4)
Use the output of Operation 2, identify and enumerate critical applications within the list of applications (M5)
- For each application identified in Operation 4, determine whether an authenticated penentration test has been conducted per the process outlined in Input 2
Identify and enumerate applications that have been tested (M6)
Identify and enumerate applications that have not been tested (M7)
Measures
M1 = Output of Operation 1
M2 = Count of applications within the enterprise
M3 = Count of applications that have undergone unauthenticated penetration testing per enterprise’s process
M4 = Count of applications that have not undergone unauthenticated penetration testing per enterprise’s process
M5 = Count of critical applications
M6 = Count of critical applications that have undergone authenticated penetration testing per enterprise’s process
M7 = Count of critical applications that have not undergone authenticated penetration testing per enterprise’s process
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Unauthenticated Penetration Testing Coverage
Metric |
The percentage of applications that underwent unauthenticated penetration
testing per enterprise’s process
|
Calculation |
|
Authenticated Penetration Testing Coverage
Metric |
The percentage of critical applications that underwent authenticated penetration
testing per enterprise’s process
|
Calculation |
|
16.14: Conduct Threat Modeling
Conduct threat modeling. Threat modeling is the process of identifying and addressing application security design flaws within a design, before code is created. It is conducted through specially trained individuals who evaluate the application design and gauge security risks for each entry point and access level. The goal is to map out the application, architecture, and infrastructure in a structured way to understand its weaknesses.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Applications |
Protect |
3 |
Dependencies
Safeguard 2.1: Establish and Maintain a Software Inventory
Inputs
GV5
: Authorized Software InventoryThreat Modeling Process for the enterprise
Operations
- Determine whether Input 2 exists for the enterprise
If the process exists, M1 = 1
If the process does not exist, M1 = 0
Use Input 1
GV5
to identify and enumerate all in-house developed applications (M2)- For each application identified in Operation 2, determine whether the threat modeling process was followed
Identify and enumerate applications for which threat modeling was conducted (M3)
Identify and enumerate applications for which threat modeling was not conducted (M4)
Measures
M1 = Output of Operation 1
M2 = Count of in-house developed applications
M3 = Count of in-house developed applications that underwent threat modeling
M4 = Count of in-house developed applications that did not undergo threat modeling
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
Metric |
The percentage of in-house developed applications that
underwent threat modeling
|
Calculation |
|
CIS Control 17: Incident Response Management
Establish a program to develop and maintain an incident response capability (e.g., policies, plans, procedures, defined roles, training, and communications) to prepare, detect, and quickly respond to an attack.
Why is this CIS Control Critical?
A comprehensive cybersecurity program includes protections, detections, response, and recovery capabilities. Often, the final two get overlooked in immature enterprises, or the response technique to compromised systems is just to re-image them to original state, and move on. The primary goal of incident response is to identify threats on the enterprise, respond to them before they can spread, and remediate them before they can cause harm. Without understanding the full scope of an incident, how it happened, and what can be done to prevent it from happening again, defenders will just be in a perpetual “whack-a-mole” pattern.
We cannot expect our protections to be effective 100% of the time. When an incident occurs, if an enterprise does not have a documented plan – even with good people – it is almost impossible to know the right investigative procedures, reporting, data collection, management responsibility, legal protocols, and communications strategy that will allow the enterprise to successfully understand, manage, and recover.
Along with detection, containment, and eradication, communication to stakeholders is key. If we are to reduce the probability of material impact due to a cyber event, the enterprise’s leadership must know what potential impact there could be, so that they can help prioritize remediation or restoration decisions that best support the enterprise. These business decisions could be based on regulatory compliance, disclosure rules, service-level agreements with partners or customers, revenue, or mission impacts.
Dwell time from when an attack happens to when it is identified can be days, weeks, or months. The longer the attacker is in the enterprise’s infrastructure, the more embedded they become and they will develop more ways to maintain persistent access for when they are eventually discovered. With the rise of ransomware, which is a stable moneymaker for attackers, this dwell time is critical, especially with modern tactics of stealing data before encrypting it for ransom.
17.1: Designate Personnel to Manage Incident Handling
Designate one key person, and at least one backup, who will manage the enterprise’s incident handling process. Management personnel are responsible for the coordination and documentation of incident response and recovery efforts and can consist of employees internal to the enterprise, third-party vendors, or a hybrid approach. If using a third-party vendor, designate at least one person internal to the enterprise to oversee any third-party work. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
1, 2, 3 |
Dependencies
None
Inputs
GV51
: Enterprise Incident Response DocumentationDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents designated personnel to manage incident handling by reviewing Input 1
GV51
. Input 1 can be an incident response plan or other documentation. If documentation designating personnel exists, M1 = 1
If documentation designating personnel does not exist, M1 = 0
- Determine whether the enterprise documents designated personnel to manage incident handling by reviewing Input 1
- Determine whether the documentation, at a minimum, outlines the following components: primary personnel, backup personnel, roles and responsibilities of each
For each component included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included for designated personnel documentation
M3 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in documentation for
designated incident handling personnel
|
Calculation |
|
17.2: Establish and Maintain Contact Information for Reporting Security Incidents
Establish and maintain contact information for parties that need to be informed of security incidents. Contacts may include internal staff, third-party vendors, law enforcement, cyber insurance providers, relevant government agencies, Information Sharing and Analysis Center (ISAC) partners, or other stakeholders. Verify contacts annually to ensure that information is up-to-date.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
1, 2, 3 |
Dependencies
None
Inputs
GV51
: Enterprise Incident Response DocumentationDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents establish and maintain contact information for reporting security incidents by reviewing Input 1
GV51
. Input 1 can be an incident response plan or other documentation. If documentation outlining contact information exists, M1 = 1
If documentation outlining contact information does not exist, M1 = 0
- Determine whether the enterprise documents establish and maintain contact information for reporting security incidents by reviewing Input 1
Compare Input 2 to current date and capture timeframe in months (M2)
Measures
M1 = Output of Operation 1
M2 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M2 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
17.3: Establish and Maintain an Enterprise Process for Reporting Incidents
Establish and maintain an enterprise process for the workforce to report security incidents. The process includes reporting timeframe, personnel to report to, mechanism for reporting, and the minimum information to be reported. Ensure the process is publicly available to all of the workforce. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
1, 2, 3 |
Dependencies
None
Inputs
GV51
: Enterprise Incident Response DocumentationDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents process for reporting incidents by reviewing Input 1
GV51
. Input 1 can be an incident response plan or other documentation. If documentation for reporting incidents exists, M1 = 1
If documentation for reporting incidents does not exist, M1 = 0
- Determine whether the enterprise documents process for reporting incidents by reviewing Input 1
- Determine whether the documentation, at a minimum, outlines the following components: reporting timeframe, personnel to report to, mechanism for reporting, and the minimum information to be reported
For each component included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
- Determine whether the process documentation is available to the whole workforce
If it is available to all, M4 = 1
If it is not available to all, M4 = 0
Measures
M1 = Output of Operation 1
M2 = Count of components included for reporting incidents process documentation
M3 = Timeframe since last update or review of documentation in months
M4 = Output of Operation 4
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
If M4 is 0, this safeguard receives a failing score for this metric. Other metrics still apply.
Completeness
Metric |
The percentage of components included in documentation for
designated incident handling personnel
|
Calculation |
|
17.4: Establish and Maintain an Incident Response Process
Establish and maintain an incident response process that addresses roles and responsibilities, compliance requirements, and a communication plan. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
2, 3 |
Dependencies
None
Inputs
GV51
: Enterprise Incident Response DocumentationDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents an incident response process:
GV52
by reviewing Input 1GV51
. Input 1 can be an incident response plan or other documentation. If documentation for an incident response process exists, M1 = 1
If documentation for an incident response process does not exist, M1 = 0
- Determine whether the enterprise documents an incident response process:
- Determine whether the documentation, at a minimum, outlines the following components: roles and responsibilities, compliance requirements, and a communication plan
For each component included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included for incident response process documentation
M3 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in documentation for
designated incident handling personnel
|
Calculation |
|
17.5: Assign Key Roles and Responsibilities
Assign key roles and responsibilities for incident response, including staff from legal, IT, information security, facilities, public relations, human resources, incident responders, and analysts, as applicable. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
2, 3 |
Dependencies
Safeguard 17.4: Establish and Maintain an Incident Response Process
Inputs
GV52
: Incident response processDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents key roles and responsibilities by reviewing Input 1
GV52
If documentation exists, M1 = 1
If documentation does not exist, M1 = 0
- Determine whether the enterprise documents key roles and responsibilities by reviewing Input 1
Using the documentation in Input 1
GV52
, identify and enumerate the roles and responsibilities (M2)- For each role and responsibility identified in Operation 2, determine whether an individual is mapped to that role and responsibility
Identify and enumerate those that are mapped (M3)
Identify and enumerate those that are not mapped (M4)
Compare Input 2 to current date and capture timeframe in months (M5)
Measures
M1 = Output of Operation 1
M2 = Count of roles and responsibilities outlined in process
M3 = Count of roles and responsibilities that are mapped to an individual
M4 = Count of roles and responsibilities that are not mapped to an individual
M5 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M5 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of roles and responsibilities that are
mapped to an individual
|
Calculation |
|
17.6: Define Mechanisms for Communicating During Incident Response
Determine which primary and secondary mechanisms will be used to communicate and report during a security incident. Mechanisms can include phone calls, emails, or letters. Keep in mind that certain mechanisms, such as emails, can be affected during a security incident. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Respond |
2, 3 |
Dependencies
Safeguard 17.4: Establish and Maintain an Incident Response Process
Inputs
GV52
: Incident response processDate of last update or review of the documentation
Operations
- Determine whether the enterprise document mechanisms for communication by reviewing Input 1
GV52
If documentation for an incident response process exists, M1 = 1
If documentation for an incident response process does not exist, M1 = 0
- Determine whether the enterprise document mechanisms for communication by reviewing Input 1
- Determine whether the documentation, at a minimum, outlines primary and secondary mechanisms for communication
For each mechanism included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of mechanisms for communication included in documentation
M3 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in documentation for
designated incident handling personnel
|
Calculation |
|
17.7: Conduct Routine Incident Response Exercises
Plan and conduct routine incident response exercises and scenarios for key personnel involved in the incident response process to prepare for responding to real-world incidents. Exercises need to test communication channels, decision making, and workflows. Conduct testing on an annual basis, at a minimum.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Recover |
2, 3 |
Dependencies
Safeguard 17.4: Establish and Maintain an Incident Response Process
Inputs
GV52
: Incident response processDate of last exercise or test
Operations
- Determine whether the enterprise’s incident response process includes routine incident response exercises by reviewing Input 1
GV52
If the documentation includes exercises, M1 = 1
If the documentation does not include exercises, M1 = 0
- Determine whether the enterprise’s incident response process includes routine incident response exercises by reviewing Input 1
- Determine whether the documentation for exercises, at a minimum, outlines test communication channels, decision making, and workflows
For each mechanism included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in documentation
M3 = Timeframe since last exercise or test in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in documentation for
incident response exercises
|
Calculation |
|
17.8: Conduct Post-Incident Reviews
Conduct post-incident reviews. Post-incident reviews help prevent incident recurrence through identifying lessons learned and follow-up action.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Recover |
2, 3 |
Dependencies
Safeguard 17.4: Establish and Maintain an Incident Response Process
Inputs
GV52
: Incident response processLast post-incident review
Operations
- Determine whether the enterprise’s incident response process includes post-incident reviews by reviewing Input 1
GV52
If the documentation includes post-indicent reviews, M1 = 1
If the documentation does not include post-incident reviews, M1 = 0
- Determine whether the enterprise’s incident response process includes post-incident reviews by reviewing Input 1
- Use Input 2 to determine if post-incident reviews include, at a minimum, the following components: lessons learned and follow-up actions
For each component included, assign a value of 1. Sum the values. (M2)
Measures
M1 = Output of Operation 1
M2 = Count of components included in documentation
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in post-incident reviews
incident response exercises
|
Calculation |
|
17.9: Establish and Maintain Security Incident Thresholds
Establish and maintain security incident thresholds, including, at a minimum, differentiating between an incident and an event. Examples can include: abnormal activity, security vulnerability, security weakness, data breach, privacy incident, etc. Review annually, or when significant enterprise changes occur that could impact this Safeguard.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
N/A |
1, 2, 3 |
Dependencies
Safeguard 17.4: Establish and Maintain an Incident Response Process
Inputs
GV52
: Incident response processDate of last update or review of the documentation
Operations
- Determine whether the enterprise documents security incident threshold by reviewing Input 1
GV52
If documentation for a security incident threshold exists, M1 = 1
If documentation for a security incident threshold does not exist, M1 = 0
- Determine whether the enterprise documents security incident threshold by reviewing Input 1
- Determine whether the documentation, at a minimum, outlines the following components: differentiates between incident and event, prioritization schema based on known or potential impact, procedure relying on this schema is used to determine status update frequency during incident handling, and procedure relying on this schema is used to determine escalation paths during incident handling
For each mechanism included, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date and capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Count of components included in documentation
M3 = Timeframe since last update or review of documentation in months
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of components included in documentation for
security incident thresholds
|
Calculation |
|
CIS Control 18: Penetration Testing
Test the effectiveness and resiliency of enterprise assets through identifying and exploiting weaknesses in controls (people, processes, and technology), and simulating the objectives and actions of an attacker.
Why is this CIS Control Critical?
A successful defensive posture requires a comprehensive program of effective policies and governance, strong technical defenses, combined with appropriate action from people. However, it is rarely perfect. In a complex environment where technology is constantly evolving and new attacker tradecraft appears regularly, enterprises should periodically test their controls to identify gaps and to assess their resiliency. This test may be from external network, internal network, application, system, or device perspective. It may include social engineering of users, or physical access control bypasses.
Often, penetration tests are performed for specific purposes: • As a “dramatic” demonstration of an attack, usually to convince decision-makers of their enterprise’s weaknesses • As a means to test the correct operation of enterprise defenses (“verification”) • To test that the enterprise has built the right defenses in the first place (“validation”)
Independent penetration testing can provide valuable and objective insights about the existence of vulnerabilities in enterprise assets and humans, and the efficacy of defenses and mitigating controls to protect against adverse impacts to the enterprise. They are part of a comprehensive, ongoing program of security management and improvement. They can also reveal process weaknesses, such as incomplete or inconsistent configuration management, or end-user training.
Penetration testing differs from vulnerability testing, described in CIS Control 7. Vulnerability testing just checks for presence of known, insecure enterprise assets, and stops there. Penetration testing goes further to exploit those weaknesses to see how far an attacker could get, and what business process or data might be impacted through exploitation of that vulnerability. This is an important detail, and often penetration testing and vulnerability testing are incorrectly used interchangeably. Vulnerability testing is exclusively automated scanning with sometimes manual validation of false positives, whereas penetration testing requires more human involvement and analysis, sometimes supported through the use of custom tools or scripts. However, vulnerability testing is often a starting point for a penetration test.
Another common term is “Red Team” exercises. These are similar to penetration tests in that vulnerabilities are exploited; however, the difference is the focus. Red Teams simulate specific attacker TTPs to evaluate how an enterprise’s environment would withstand an attack from a specific adversary, or category of adversaries.
18.1: Establish and Maintain a Penetration Testing Program
Establish and maintain a penetration testing program appropriate to the size, complexity, and maturity of the enterprise. Penetration testing program characteristics include scope, such as network, web application, Application Programming Interface (API), hosted services, and physical premise controls; frequency; limitations, such as acceptable hours, and excluded attack types; point of contact information; remediation, such as how findings will be routed internally; and retrospective requirements.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
2, 3 |
Dependencies
None
Inputs
:code:`GV53`Penetration Testing Program Documentation
Date of last update to the penetration testing program documentation
Operations
- Determine if Input 1
GV53
exists within the enterpise If Input 1 exists, M1 = 1
If Input 1 does not exist, M1 = 0
- Determine if Input 1
- Check Input 1 for completeness. At a minimum, it should include scope of the program, frequency, point of contact information, remediation, and retrospective requirements.
For each component included in the documentation, assign a value of 1. Sum the values. (M2)
Compare Input 2 to current date. Capture timeframe in months (M3)
Measures
M1 = Output of Operation 1
M2 = Sum of components included in documenation
M3 = Timeframe in months since last update to documentation
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
If M3 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
Completeness
Metric |
The percentage of minimum components included in the program
documentaion
|
Calculation |
|
18.2: Perform Periodic External Penetration Tests
Perform periodic external penetration tests based on program requirements, no less than annually. External penetration testing must include enterprise and environmental reconnaissance to detect exploitable information. Penetration testing requires specialized skills and experience and must be conducted through a qualified party. The testing may be clear box or opaque box.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Identify |
2, 3 |
Dependencies
Safeguard 18.1: Establish and Maintain a Penetration Testing Program
Inputs
GV54
: Most Recent External Penetration Report
Operations
Check Input 1
GV54
for date of most recent external penetration test. Compare date to current date and capture timeframe in months (M1)
Measures
M1 = Timeframe since last external penetration test
Metrics
If M1 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.
18.3: Remediate Penetration Test Findings
Remediate penetration test findings based on the enterprise’s policy for remediation scope and prioritization.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
2, 3 |
Dependencies
Safeguard 18.2: Perform Periodic External Penetration Tests
Inputs
:code:`GV53: Penetration Testing Program Documentation
GV54
: Most Recent External Penetration ReportExternal penetration report prior to most recent report
Operations
Use the findings in Input 3 to identify and enumerate the vulnerabilities outlined (M1)
Use the findings in Input 2
GV54
to identify the vulnerabilites outlined- Compare the output of Operation 1 and Operation 1
Identify and enumerate vulnerabilities found in Input 3 that continue to be in Input 2 (M2)
Identify and enumerate vulnerabilities found in Input 3 that no longer appear in Input 2 (M3)
- Using the program documentation from Input 1
GV53
determine whether the ouput of Operation 3.2 is still within scope based on enterprise’s policy Identify and enumerate vulnerabilities within scope (M4)
Identify and enumerate vulnerabilities out of scope (M5)
- Using the program documentation from Input 1
Measures
M1 = Count of initial vulnerabilities identified by penetration test
M2 = Count of successfully remediated vulnerabilities
M3 = Count of vulnerabilities that have not been remediated
M4 = Count of unremediated vulnerabilities still in scope
M5 = Count of unremediated vulnerabilities out of scope
Metrics
Compliance
Metric |
The percent of successfully remediated or still within scope vulnerabilities
identified in the intial penetration test findings
|
Calculation |
|
18.4: Validate Security Measures
Validate security measures after each penetration test. If deemed necessary, modify rulesets and capabilities to detect the techniques used during testing.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
Network |
Protect |
3 |
Dependencies
Safeguard 18.1: Establish and Maintain a Penetration Testing Program
Inputs
GV53
: Penetration Testing Program DocumentationGV54
: Most Recent External Penetration ReportGV55
: Most Recent Internal Penetration Report
Operations
- Check Input 1
GV53
to determine if it incluces an enterprise process for validating security measures after a penetration test If the process exists, M1 = 1
If the process does not exist, M1 = 0
- Check Input 1
Using the findings from both Input 2
GV54
an Input 3GV55
, as applicable, identify and enumerate security measures that required modification (M2)- For each security measure identified in Operation 2, check if modifications have been made
Identify and enumerate security measures that have been modified per the enterprise’s defined process (M3)
Identify and enumerate security measures not yet modified per the enterprise’s defined process (M4)
Measures
M1 = Output of Operation 1
M2 = Count of security measures requiring modification
M3 = Count of security measures requiring modification that are properly addressed
M4 = Count of security measures requiring modification that are not yet addressed
Metrics
If M1 is 0, this safeguard receives a failing score. The other metrics don’t apply.
Compliance
Metric |
The percentage of security measures requiring modification that have
been properly addressed
|
Calculation |
|
18.5: Perform Periodic Internal Penetration Tests
Perform periodic internal penetration tests based on program requirements, no less than annually. The testing may be clear box or opaque box.
Asset Type |
Security Function |
Implementation Groups |
---|---|---|
N/A |
Identify |
3 |
Dependencies
Safeguard 18.1: Establish and Maintain a Penetration Testing Program
Inputs
GV55
: Most Recent Internal Penetration Report
Operations
Check Input 1
GV55
for date of most recent internal penetration test. Compare date to current date and capture timeframe in months (M1)
Measures
M1 = Timeframe since last internal penetration test
Metrics
If M1 is greater than twelve months, then this safeguard is measured at a 0 and receives a failing score. The other metrics don’t apply.