Vulnerability policies ↗
A vulnerability policy defines the action you want to take for a specific set of vulnerability findings that match your policy criteria. Cortex XSIAM provides a set of predefined vulnerability policies based on CVSS severity, EPSS severity, and vulnerabilities confirmed through Attack Surface Testing. You can also create custom policies based on your unique business requirements. Custom policies allow you to focus on the risks that matter most to your organization. Some examples of custom vulnerability policies include the following:
- A policy that creates issues with a severity of critical for findings that have a CVSS score of 9 or more
- A policy that creates issues with a severity of low for findings that appear on dev servers
- A policy that specifies not to create issues for findings on assets in the asset group Leased to customers
- A policy which creates issues with a severity of critical for vulnerabilities that appear on the CISA KEV list and are in the asset group called Production Servers, regardless of CVSS score.
- A policy that prevents an image that contains code with a CVE with an EPSS score greater than 90% from being deployed to the Kubernetes cluster
Each time a new vulnerability finding is discovered, the system compares that finding to your vulnerability policies to determine whether one of the policies is a match. Vulnerability policies have an evaluation order, which means the system starts by evaluating the finding against the first policy. If it does not match, the second policy is evaluated for a match. As soon as a finding matches a policy, no further policies are evaluated for that finding.
The following sections describe the elements that make up a vulnerability policy:
Policy conditions and scope
Vulnerability policy conditions and scope define the specific set of findings that a policy applies to. You define the conditions by configuring a filter with criteria for including and excluding findings. You define scope by creating one or more Asset Groups and adding assets to those groups in the Assets view. Once the Asset Groups are created you may select one or more of them in the policy creation process, this will limit the scope of that policy to only the assets in the chosen asset groups.
Policy actions
Policy actions are the actions the policy will perform automatically on vulnerability findings that match the policy conditions and scope. There are two types of policy actions, issue creation and prevention.
Issue creation actions
Issue creation actions either create an issue and set the issue severity for matching findings or or ignore matching findings and do not create an issue.
Prevention actions
Prevention actions prevent vulnerabilities from being introduced into your systems by failing a build or blocking deployment. Available actions are described in the table below.
| Type of prevention action | Action | Description |
|---|---|---|
| Kubernetes pod actions | Block new deployments | New deployments are blocked by the Kubernetes Admission Controller when vulnerabilities matching the policy conditions are detected in an image. This requires that the agent be installed and activated. |
| Kubernetes pod actions | Do nothing | No action will be taken for matching findings on Kubernetes clusters with Kubernetes Admission Controller activated. |
| Build actions | Fail the build | Fails the build in your CI/CD system when an attempt is made to check in code that includes a vulnerability that matches the policy conditions. This requires that the agent be installed and activated on your CI/CD system. |
| Build actions | Do nothing | No action will be taken for matching findings from code repository assets where the agent is activated. |
Policy order
The order of policies in the policy list is important. Policies are executed in order from top to bottom, and the first policy that matches a finding determines the action on that finding. After that first match, no other policies are evaluated. We recommend placing your most important and most specific policies toward the top of the list and wider-reaching, more generic policies towards the bottom of the policy list.
Policy 0 is the Globally Ignored CVEs, Assets, and Asset Groups policy. It includes a list of CVEs and assets for which Cortex XSIAM will not create vulnerability issues. You can update the Globally Ignored CVEs, Assets, and Asset Groups policy by adding or removing CVEs, asset groups, and assets, but you cannot move the policy down list to change order.
Create a vulnerability policy
Before creating a policy, be sure to review the information in the Vulnerability Policies section.
- Navigate to Posture Management → Rules & Policies → Policies → Vulnerability Management.
- Click +Add Policy and select one of the options:
- Create a policy for issue creation
- Create a policy for prevention
- Add a Policy Name and, optionally, a Description, and then click Next.
-
Set the policy conditions by creating a query that defines the specific findings for which the policy will create issues. Your policy can specify which findings to include and which to exclude.
Preview the list of findings that match your policy. If the results look correct, click Next.
-
Define the policy scope by selecting one or more asset groups from the dropdown menu. If you don't choose an asset group, the policy will apply to all assets.
If you want to create a new asset group, click Create New Asset Group to open the Asset Groups page in a new browser tab. Click + Add Group and follow the instructions in the wizard. After you've created the new asset group, go back to your original tab and finish creating your policy with new asset group.
Click Next.
- Choose the action that will be executed on the findings that match the policy. If you select Create an issue for each matching finding, you must also select the issue severity that will be applied to those issues. You can base the severity of the issue on the severity of the underlying CVE by selecting Use Default CVE Severity in the dropdown menu.
-
Click Done.
The policy wizard will close, and you will be redirected back to the Vulnerability Policies page.
-
Set the order of evaluation for the policy.
By default, new policies are added to the bottom of the policy list. To move a policy up or down in the list, click and hold the arrows in the Name column and drag the policy to the desired position in the list.
We recommend placing wider-reaching, more generic policies towards the bottom of the policy list, and more specific policies towards the top of the list.
Click Save.
Update the Ignored CVEs, Asset Groups, and Assets policy
Policy number 0 in the policy list is the Ignored CVEs, Asset Groups, and Assets policy. This policy contains a list of vulnerabilities and assets for which Cortex XSIAM will not create vulnerability issues. Findings will still be created for these vulnerabilities and assets, and you can review those on the Vulnerabilities and Vulnerable Assets pages. You can update the Ignored CVEs, Asset Groups, and Assets policy at any time by using the following steps to add or remove assets, asset groups, and CVEs.
- Navigate to Posture Management → Rules & Policies → Policies → Vulnerability Management.
- The first policy in the policy list is the Ignored CVEs, Asset Groups, and Assets policy. Click on that policy to open the policy wizard.
- Add or remove vulnerabilities, asset groups, and assets as needed. Click Next.
- To add CVEs, asset groups, or assets, use the search bar in each section to find the value you are looking for, and select it to add it to the list.
- To remove CVEs, asset groups, or assets, click the X to the right of each item in the list.
- Review the Results Preview to see the list of findings that will not generate issues. If the list looks correct, click Done.
Modify a vulnerability policy
- Navigate to Posture Management → Rules & Policies → Vulnerability Management.
- Select either the Issue Creation or Prevention tab, depending on the type of policy you want to modify.
- Click on the name of the policy in the policy list to open the policy wizard. You can also right-click anywhere in the row and select Edit.
- Follow the steps in the wizard to update the policy.
Configure a block grace period
When you create a Vulnerability Management Prevention policy, you also have the option to establish a remediation buffer period. Configuring a block grace period gives you additional time to resolve a vulnerability before the blocking action resumes. The grace period is based on the fix date of the vulnerability and allows you to override the blocking action of a policy when new vulnerabilities are detected. Follow the steps below to set up a block grace period:
- Navigate to Posture Management → Rules & Policies → Vulnerability Management → Vulnerability Policies - Prevention.
- Select an existing policy or create a new policy with the Add Policy button.
- Add a Policy Name, Optional Description, and click Next.
- Set the Policy Conditions and Policy Scope, as described under Create a vulnerability policy.
- Select an Action that will be triggered when a finding matches the policy.
- For Kubernetes Runtime protection, if you opt to Prevent new deployment requests, you can also select a block grace period, during which the preventive action will be suppressed. Enter a value in the Grace Period Days before Blocking Deployment field. The grace period begins on the fix publish date, or the date the vulnerability was published if a fix is not available. Blocking enforcement begins once the grace period has passed. Enter 0, to immediately start blocking action.
- For Prevention Actions, if you opt to Fail the build, you can also select a block grace period, during which the preventive action will be suppressed. Enter a value in the Grace Period Days before Failing the Build. Select Done to save your changes.
Enable or disable a vulnerability policy
After disabling a policy, no new issues will be created or actions taken for new findings that match the policy.
- Navigate to Posture Management → Rules & Policies → Vulnerability Management.
- Select either the Issue Creation or Prevention tab, depending on the type of policy you want to modify.
- Right-click anywhere in the row for that policy and select Enable or Disable.