Policy Packs
Policy packs are pre-built policies that map to common regulatory frameworks. Each pack ships as a complete bundle of rule sets, mappings, and allowlists, ready to import, customize, and activate against your account.
The Secure pack ships with every Anchore Enterprise deployment. The remaining packs require additional license entitlements:
| Pack | Frameworks covered | Entitlement |
|---|
| Secure | Anchore Enterprise’s default checks: feed data currency, critical-severity and KEV-listed vulnerabilities, and fixable low, medium, and high vulnerabilities | Included with every deployment |
| NIST | NIST 800-53 and NIST 800-190 (Application Container Security Guide) | Anchore Enforce |
| CIS | CIS Docker Benchmark | Anchore Enforce |
| FedRAMP | FedRAMP Rev 5 (NIST 800-53 Rev 5, NIST 800-190) and FedRAMP 20x Class C Key Security Indicators | Anchore Enforce plus the FedRAMP add-on |
| DoD | DISA Image Creation and Deployment Guide, IronBank requirements | Anchore Enforce plus the DoD add-on |
| CMMC | CMMC compliance via NIST 800-171r3 controls | Anchore Enforce |
| ASD Essential 8 | Australian Signals Directorate (ASD) Essential Eight, Maturity Levels 1–3 | Anchore Enforce |
| PCI DSS | PCI DSS v4.0.1 requirement 11.3.1 (internal vulnerability scanning) | Anchore Enforce |
| EU CRA | EU Cyber Resilience Act, Annex I Part I (no known exploitable vulnerabilities) | Anchore Enforce |
The NIST SSDF sub-pack covers the Secure Software Development Framework (NIST SP 800-218); see the NIST page for how it relates to the broader NIST pack.
Use a Pack
Each pack page covers the same workflow: download the bundle, import it into Anchore Enterprise, activate it, and adjust its mappings or allowlists for your environment. The mechanics are the same as for any policy: anchorectl policy add, the GUI’s Import action, and the POST /policies endpoint. See Manage Policies for the general CRUD workflow.
Most packs are VEX-aware: their vulnerability rule sets act on the annotation recorded for each finding, so a vulnerability assessed as not_affected or fixed drops out of the evaluation while un-triaged findings keep counting. See Annotations and VEX for how the statuses work and what they produce downstream.
Packs are a starting point, not a final shape. Most teams customize the pack they import before activating the result as the account’s default policy: adjusting mappings to scope the pack to specific registries or repositories, attaching allowlists for known false positives, or layering additional rule sets on top.
1 - Secure
The default Secure policy pack comes included (and enabled) in every fresh deployment of Anchore Enterprise.
Current Secure policy pack version: Anchore Enterprise - Secure v2026.2
Introduction
The Secure pack is the Anchore Enterprise baseline vulnerability policy: the checks a deployment should be running before it has a compliance framework to satisfy. It is deliberately conservative: critical and known-exploited findings fail an evaluation, everything else warns, so a fresh deployment produces a usable signal without blocking every build on day one.
The pack ships parallel rule sets for container images and SBOMs, so the vulnerability checks apply whether you scan an image or import an SBOM directly. All the rules configured by default can (and should) be adjusted according to an organization’s security policy.
Controls
Anchore Enterprise checks for the following control specifications in the Secure policy:
| Rule set | Behavior | Applies to |
|---|
| Fail on criticals | Fail when a critical severity vulnerability is present | Container images and SBOMs |
| Fail on KEV list | Fail when a vulnerability appears on the CISA Known Exploited Vulnerabilities (KEV) catalog | Container images and SBOMs |
| Warn on low, moderate, and high with fixes | Warn on low, medium, and high severity vulnerabilities that have a fix available | Container images and SBOMs |
| Warn on week old Important | Warn on important severity vulnerabilities more than a week old, even when no fix is available | Container images and SBOMs |
| Feed Data not available | Fail when vulnerability feed data is unavailable | Container images |
| Outdated Feed Data | Warn when the vulnerability feed has not synced in 2 days | Container images |
“Important” indicates the severity of a vulnerability. By default, it is set to “High” but this can be configured in the policy rule set.
The two feed-data checks are the exception to the parallel coverage: they are bound to the container mapping only and are not evaluated against SBOMs. The pack also ships an empty DefaultAllowlist, attached to both mappings and ready for your accepted risks.
VEX Annotations
The vulnerability rule sets are each split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches findings that carry no annotation yet, so un-triaged vulnerabilities still count against the policy.
- The other matches findings annotated
affected or under_investigation, so vulnerabilities you have assessed as genuinely exploitable keep counting.
Findings annotated not_affected or fixed match neither rule, so they drop out of the evaluation as soon as the annotation is saved, without an allowlist entry and without editing the policy. This is the intended path for a critical or KEV-listed finding that does not apply to your product: annotate it with a status and justification, and the assessment travels into the VEX document generated for the app version. The feed-currency checks do not depend on annotation state.
Use the Pack
The Secure pack is already imported and active in a new deployment, so there is nothing to add before it starts evaluating. Adjust it as your program matures: tighten the warn-level rules into failures as remediation catches up, attach allowlists for accepted risks, and scope it through Policy Mappings if different registries warrant different thresholds. See Manage Policies for the GUI, AnchoreCTL, and API workflows.
Teams that need to demonstrate a specific framework (NIST, CIS, FedRAMP, CMMC, PCI DSS, or the Essential Eight) generally keep Secure as the baseline and import the matching policy pack alongside it.
2 - NIST
The NIST policy packs map the NIST SP 800-53 security controls and the NIST SP 800-190 Application Container Security Guide to checks that the Anchore Enterprise policy engine can evaluate against container images and SBOMs.
Current NIST policy pack versions: Anchore NIST 800-53r5 v2026.2 and Anchore NIST 800-190 v2026.1
The NIST packs require the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
The National Institute of Standards and Technology (NIST) is a non-regulatory agency of the U.S. Commerce Department that provides industry standards and guidelines to help federal agencies meet requirements set by the Federal Information Security Management Act (FISMA).
Anchore Enterprise provides two NIST policies:
- NIST 800-53: a catalog of security and privacy controls for the U.S. Federal Government. These controls are also the foundation of FedRAMP, the Joint Special Access Program (SAP) Implementation Guide (JSIG), and Intelligence Community Directive (ICD) 503. Anchore Enterprise helps security teams meet the subset of these controls that can be evaluated against container and SBOM content.
- NIST 800-190: the Application Container Security Guide, which describes security concerns with container technologies and recommendations to address them across the container lifecycle.
Anchore also covers NIST 800-218 (SSDF) through the SSDF Attestation Form Guide and Evidence document. See SSDF.
NIST 800-53
Anchore Enterprise checks for the following control specifications against container images. Rule sets marked Required in the Configuration column ship with placeholder values and must be configured for your environment before the policy is used. See Configure Rule Sets.
| Control family | Rule set | Anchore role | Configuration |
|---|
| Access Control (AC) | AC-6(10) least privilege | Fail images whose effective user is root or docker | |
| Access Control (AC) | AC-6(8) least privilege | Fail images containing setuid or setgid binaries | |
| Configuration Management (CM) | CM-7(1b) allow ports | Fail images that expose ports outside the allowed list | Required |
| Configuration Management (CM) | CM-7(1b) deny ports | Fail images that expose a denied port (ports 0–1024 by default) | Required |
| Configuration Management (CM) | CM-7(1b) deny packages | Fail images containing a denied package (openssh-server and opensshd by default) | Required |
| Identification and Authentication (IA) | IA-5(7) authenticator management | Fail images where the secret scan matches a configured secret pattern | |
| Risk Assessment (RA) | RA-5 vulnerability scan | Warn on vendor-reported vulnerabilities of low severity or higher | |
| Risk Assessment (RA) | RA-5 Vulnerability with Known Exploit | Fail on vulnerabilities listed on the CISA Known Exploited Vulnerabilities (KEV) catalog | |
| Risk Assessment (RA) | RA-5 vulnerability fix available | Warn on vulnerabilities that have a fix available | |
| Risk Assessment (RA) | RA-5 specific CVE | Fail images containing a denied vulnerability ID | Required |
| Risk Assessment (RA) | RA-5 vulnerability feeds | Fail when vulnerability data is unavailable, or when the feed has not synced in 15 days | |
| System and Information Integrity (SI) | SI-3 malicious code protection | Fail on malware findings, and fail when the malware scan did not run | |
| System and Communications Protection (SC) | SC-5 denial of service protection | Fail images with no HEALTHCHECK instruction in the Dockerfile | |
| Supply Chain (SR) | SR-4(4) | Fail images whose base image comes from outside the trusted registry list | Required |
| None | Dockerfile not found | Fail when no Dockerfile was supplied with the image, since several checks above need one to evaluate | |
Three rule sets are bound to the SBOM mapping, so the RA-5 checks apply whether you scan an image or import an SBOM directly: RA-5 Vulnerability Scan - SBOM, RA-5 Vulnerability on KEV list - SBOM, and RA-5 specific CVE [CONFIGURE] - SBOM.
NIST 800-190
Anchore Enterprise checks for the following control specifications in the NIST 800-190 policy, which is bound to container images only.
| Countermeasure | Rule set | Anchore role | Configuration |
|---|
| Image vulnerabilities | 3.1.1 | Warn on vendor-reported vulnerabilities of low severity or higher | |
| Image vulnerabilities | 3.1.1 vulnerability fix available | Fail on vulnerabilities that have a fix available | |
| Image vulnerabilities | 3.1.1 specific CVE | Fail images containing a denied vulnerability ID | Required |
| Image vulnerabilities | 3.1.1 vulnerability feeds | Fail when vulnerability data is unavailable, or when the feed has not synced in 15 days | |
| Image configuration defects | 3.1.2 configuration | Fail when a required file is missing or does not match its expected checksum | Required |
| Embedded clear text secrets | 3.1.4 | Fail images where the secret scan matches a configured secret pattern | |
| Use of untrusted images | 3.1.5 | Fail images whose base image comes from outside the trusted registry list | Required |
| Unbounded network access | 3.4.2 allow ports | Fail images that expose ports outside the allowed list | Required |
| Unbounded network access | 3.4.2 deny ports | Fail images that expose a denied port (ports 0–1024 by default) | Required |
| Insecure runtime configuration | 3.4.3 root user | Fail images whose effective user is root or docker | |
| Insecure runtime configuration | 3.4.3 setuid/setgid | Fail images containing setuid or setgid binaries | |
| Host OS attack surface | 3.5.1 deny packages | Fail images containing a denied package (openssh-server and opensshd by default) | Required |
| Embedded malware | 4.1.3 | Fail on malware findings, and fail when the malware scan did not run | |
| Denial of service | 2.3.3 | Fail images with no HEALTHCHECK instruction in the Dockerfile | |
| None | Dockerfile not found | Fail when no Dockerfile was supplied with the image, since several checks above need one to evaluate | |
Each 800-190 rule set carries the equivalent 800-53 control in its description, so a finding traces to both frameworks at once.
VEX Annotations
The vulnerability rule sets in both packs are split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches findings that carry no annotation yet, so un-triaged vulnerabilities still count against the policy.
- The other matches findings annotated
affected or under_investigation, so vulnerabilities you have assessed as genuinely exploitable keep counting.
Findings annotated not_affected or fixed match neither rule, so an accurate VEX assessment clears them from the evaluation without an allowlist entry, and the compliance result refreshes as soon as the annotation is saved. The configuration, privilege, secret, malware, and feed-currency rule sets do not depend on annotation state.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, then activate it as the account’s default policy.
The rule sets marked Required in the tables above ship with placeholder values: an allowed port of 123456, a denied package of opensshd, an example CVE ID, a sample trusted-registry list, and a placeholder configuration file and checksum. Each is tagged [CONFIGURE] in its rule set name in the GUI. Edit them from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies) before you rely on the pack’s results.
2.1 - SSDF
In February 2021, The National Institute of Standards and Technology (NIST) created NIST SP 800-218, otherwise known as Secure Software Development Framework (SSDF), in response to a new executive order mandated by the federal government.
SSDF provides a comprehensive set of guidelines aimed at integrating security into the software development lifecycle, thereby enhancing the security posture of software products from inception to deployment. To verify and validate that organizations meet the controls needed to be SSDF compliant, CISA created an official SSDF Attestation Form that allows organizations to verify and attest that they adhere to the SSDF guidelines and comply with a subset of security controls.
Purpose
Anchore provides a downloadable document that serves as an evidence attachment for the SSDF Attestation Form. The document makes the assumption Anchore Enterprise is used in the organization’s environment and is configured to scan the software that is in scope for the SSDF Attestation Form.
The SSDF Attestation Form consists of three sections that must be completed. Sections I and II cover organization-specific details, whereas Section III lists requirements against various security controls. The intent of this document is to provide guidance for first time applicants and help organizations save time collecting evidence required for Section III of the SSDF Attestation Form.
Download
Detailed instructions to complete the form can be found on page 1. This document uses the official SSDF Attestation Form as its base template. Once completed, the document can be directly attached to an SSDF Attestation Form submission. Click below to obtain the form:

Additional Resources
- SSDF Attestation 101: A practical guide for Software Producers - Download eBook
- Using the Common Form for SSDF Attestation: What Software Producers Need to Know - Read blog
- Automate NIST compliance and SSDF attestation with Anchore Enterprise - Learn more
If you want to contact one of our experts, please contact us.
3 - CIS
The Center for Internet Security (CIS) provides prescriptive configuration recommendations for a variety of software vendors. Anchore Enterprise’s CIS policy pack is based on the CIS Docker 1.8 Benchmark and validates a subset of security and compliance checks against container images.
Current CIS policy pack version: Anchore CIS Docker Benchmark V1.8.0 v2026.1
The CIS pack requires the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
The Center for Internet Security is a nonprofit that publishes consensus-developed configuration baselines, the CIS Benchmarks, for operating systems, cloud platforms, and container runtimes. They are widely used as the reference hardening standard in audits and contracts, and other frameworks frequently point at them rather than restating the same configuration guidance.
The Docker Benchmark is organized by where a control applies: host configuration, daemon configuration and files, container images and build files (section 4), container runtime (section 5), and security operations. This pack implements the section 4 controls, which are evaluated against image and Dockerfile content, plus 5.8 on privileged port mapping. The host, daemon, and runtime sections describe the machine a container runs on rather than the artifact itself and are out of scope for an image policy.
Controls
Anchore Enterprise checks for the following control specifications in the CIS policy. Rule sets marked Required in the Configuration column must be configured for your environment before the policy is used. See Configure Rule Sets.
| Control | Check | Configuration |
|---|
| 4.1 | Ensure that a user for the container has been created | |
| 4.2 | Ensure that containers use only trusted base images | Required |
| 4.3 | Ensure that unnecessary packages are not installed in the container | Required |
| 4.4 | Ensure images are scanned and rebuilt to include security patches. Fails on vulnerabilities with a fix available, on unavailable vulnerability data, and when the feed has not synced in 4 days | |
| 4.6 | Ensure that HEALTHCHECK instructions have been added to container images | |
| 4.7 | Ensure update instructions are not used alone in Dockerfiles | |
| 4.8 | Ensure setuid and setgid permissions are removed | |
| 4.9 | Ensure that COPY is used instead of ADD in Dockerfiles | |
| 4.10 | Ensure secrets are not stored in Dockerfiles | |
| 5.8 | Ensure privileged ports are not mapped within containers | Required |
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, then activate it as the account’s default policy.
The control specifications marked Required in the table above need configuration for your environment. The control specifications are represented by rule sets, edited from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies).
4 - FedRAMP
The FedRAMP policy packs map the FedRAMP Rev 5 vulnerability scanning requirements and the FedRAMP 20x Key Security Indicators to checks that the Anchore Enterprise policy engine can evaluate against container images and SBOMs.
Current FedRAMP policy pack versions: Anchore FedRAMP v5 Checks v2026.3 and Anchore FedRAMP 20x v2026.2
The FedRAMP pack requires the Anchore Enforce entitlement plus the FedRAMP add-on. Contact
Anchore Customer Success for access and more information.
FedRAMP 20x. This page covers two packs: the Rev 5 baseline below, and the newer
FedRAMP 20x Class C pack built around FedRAMP’s Key Security Indicators. Contact
Anchore Customer Success for availability.
Introduction
FedRAMP (Federal Risk and Authorization Management Program) is a standardized approach for assessing, authorizing, and monitoring cloud service providers (CSPs) that provide service to federal agencies. Through a rigorous and comprehensive process, FedRAMP ensures that CSPs meet security standards by providing a baseline set of security controls to enhance the overall security of federal information systems.
Anchore Enterprise’s FedRAMP policy validates whether container images are compliant with the FedRAMP Vulnerability Scanning Requirements, and validates them against the FedRAMP controls specified in NIST 800-53 Rev 5 and NIST 800-190. The policy checks only the specification requirements relevant to software supply chain security.
FedRAMP Rev 5
Anchore Enterprise’s FedRAMP Rev 5 policy checks for the following specifications. Rule sets marked Required in the Configuration column must be configured for your environment before the policy is used. See Configure Rule Sets.
| Control family | Control | Check | Configuration |
|---|
| Access Control (AC) | AC-6(10) | Prevent non-privileged users from executing privileged functions | |
| Configuration Management (CM) | CM-2(2), CM-3(1), CM-6 | Baseline configuration: configure systems and components for high-risk areas | Required |
| Configuration Management (CM) | CM-5(5) | Access restrictions for change: privilege limitation for production and operation | Required |
| Configuration Management (CM) | CM-7(1) | Least functionality: network port exposure checks | Required |
| Configuration Management (CM) | CM-7(5), CM-8(3) | Least functionality: container image build content checks | Required |
| Configuration Management (CM) | CM-10 | Software usage restrictions | Required |
| Identification and Authentication (IA) | IA-05(7) | Authenticator management: no embedded unencrypted static authenticators | |
| Risk Assessment (RA) | RA-5, SI-02(2) | Vulnerability monitoring and scanning | |
| System and Communications Protection (SC) | SC-5 | Denial-of-service protection | |
An RA-5 SI-02 vulnerability scan remediation rule set is bound to the SBOM mapping, so the RA-5 vulnerability checks apply to imported SBOMs as well as scanned images. The remaining rule sets evaluate image content and are bound to the container mapping only.
The RA-5 SI-02(2) RISK ASSESSMENT rule set is VEX-aware: its vulnerability rules are split so that un-annotated findings and findings annotated affected or under_investigation both match, while findings annotated not_affected or fixed match neither. See Annotations and VEX.
FedRAMP 20x
FedRAMP 20x replaces the Rev 5 control-by-control narrative with Key Security Indicators (KSIs), outcome statements a cloud service offering must demonstrate, and a Vulnerability Detection and Response (VDR) standard governing how providers find and act on vulnerabilities. The Anchore FedRAMP 20x pack implements the Class C indicators that are reachable from container and SBOM content.
| Indicator | Rule set | Anchore role |
|---|
| Identity and access management | KSI-IAM-ELP | Fail images whose effective user is root or docker, or that contain setuid or setgid binaries |
| Identity and access management | KSI-IAM-APM | Fail images carrying embedded API keys, AWS credentials, or passwords |
| Cloud native architecture | KSI-CNA-RNT | Fail images that expose ports outside the allowed list, or that expose a denied port |
| Cloud native architecture | KSI-CNA-ULN | Fail images whose Dockerfile exposes ports outside the allowed list |
| Cloud native architecture | KSI-CNA-DFP | Fail images running as root or containing sshd |
| Cloud native architecture | KSI-CNA-RVP | Fail images with no HEALTHCHECK instruction in the Dockerfile |
| Cloud native architecture | KSI-CNA-MAT | Fail on vulnerabilities listed on the CISA Known Exploited Vulnerabilities (KEV) catalog |
| Service configuration | KSI-SVC-ACM | Fail when Java archives are added to or removed from a tag between builds |
| Service configuration | KSI-SVC-ASM | Fail images where a secret is found under /etc |
| Vulnerability detection and response | VDR-CSO-DET | Warn on vendor-reported vulnerabilities and on vulnerabilities with a fix available; fail when vulnerability data is unavailable or the feed has not synced in 15 days |
| Vulnerability detection and response | VDR-CSO-AKE | Fail on KEV-listed vulnerabilities, which providers must not deploy on new resources |
Two rule sets are bound to the SBOM mapping: VDR-CSO-AKE SBOM, which applies the KEV gate to imported SBOMs, and KSI-SCR-MIT - SBOM, which fails supply chain findings that have a fix available or appear on the KEV catalog.
VEX Annotations
The VDR rule sets act on VEX annotation state, as described in Annotations and VEX. They match findings annotated affected or under_investigation, so a finding assessed as not_affected or fixed drops out of the evaluation as soon as the annotation is saved.
This pairing matters more under 20x than under Rev 5: the VDR standard expects a provider to show a continuous detection and response process, and an annotation records the assessment and its justification as evidence rather than simply muting the finding. The KSI rule sets, which evaluate image configuration rather than vulnerabilities, do not depend on annotation state.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, then activate it as the account’s default policy.
The control specifications marked Required in the table above need configuration for your environment. The control specifications are represented by rule sets, edited from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies).
5 - DoD
The DoD policy packs map the DISA Container Image Creation and Deployment Guide and the Platform One IronBank requirements to checks that the Anchore Enterprise policy engine can evaluate against container images.
Current IronBank policy pack version: Anchore DoD Iron Bank v2026.1
Current DISA policy pack version: Anchore DISA Image Creation and Hardening Guide v20241001
The DoD packs require the Anchore Enforce entitlement plus the DoD add-on. Contact
Anchore Customer Success for access and more information.
Introduction
Anchore Enterprise provides two DoD policies:
- DISA Image Creation and Deployment Guide: provided by the Defense Information Systems Agency (DISA), the agency that supplies IT and communications support to the U.S. government and federal organizations. This policy provides security and compliance checks that align with specific NIST 800-53 and NIST 800-190 controls as described in the DoD Container Image Creation and Deployment Guide.
- IronBank: validates images against DoD security and compliance requirements in alignment with U.S. Air Force security standards at Platform One and IronBank, written in accordance with DoD Enterprise DevSecOps Reference Design documentation.
DISA
Anchore Enterprise checks for the following control specifications in the DISA policy. Rule sets marked Required in the Configuration column must be configured for your environment before the policy is used. See Configure Rule Sets.
| Control | Check | Configuration |
|---|
| AC-6(10) | Container image must have permissions removed from executables that allow a user to execute software at higher privileges | |
| CM-6(b) | Confidential data checks | Required |
| CM-7(1b) | Network port exposure checks | Required |
| CM-7(a) | Container image build content checks | Required |
| IA-5(2a) | Base image checks | |
| IA-5(7) | Embedded credentials | |
| RA-5 | Software vulnerability checks | |
| SC-5 | Image checks | |
| SC-8(2) | Base image checks | |
| SI-2(6) | Image software update and layer checks | |
IronBank
The IronBank policy includes checks across the following areas:
| Area | Checks |
|---|
| Image build and content | Dockerfile, User, File, Software, Transfer Protocol |
| Application and platform components | Istio, Node.js, Etcd, Snort, Jenkins, Grafana, UBI7, Chef, Sonarqube, Prometheus, Postgres, Nginx, OpenJDK, Twistlock, Keycloak, Fluentd, Elasticsearch, Kibana, Redis, Apache HTTP, Apache Tomcat |
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, then activate it as the account’s default policy.
The IronBank policy does not require rule set configuration. The DISA policy, however, requires configuration for the control specifications marked Required in the DISA table above. The control specifications are represented by rule sets, edited from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies).
6 - CMMC
The CMMC policy pack maps the controls of the Cybersecurity Maturity Model Certification (CMMC) to checks that the Anchore Enterprise policy engine can evaluate against container images. The pack is grounded in NIST SP 800-171r3, the security-requirement publication from which CMMC draws its control set, and ships as a single bundle ready to import as a policy.
Current CMMC policy pack version: Anchore CMMC - NIST 800-171r3 v2026.2
The CMMC pack requires the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
CMMC is the U.S. Department of Defense’s certification program for the Defense Industrial Base, the contractors and subcontractors that build, deliver, and support systems for the DoD. It exists because the DoD’s sensitive unclassified information lives largely on contractor networks, and self-attestation alone proved a weak assurance that it was protected there.
The program is tiered by the sensitivity of the information a contract involves. Contracts touching Federal Contract Information (FCI) sit at the lowest tier, while contracts involving Controlled Unclassified Information (CUI) require the full NIST SP 800-171 security requirements, assessed rather than self-asserted. CMMC requirements flow down through the supply chain: a subcontractor handling CUI on a prime’s behalf carries the same obligation the prime does.
For organizations delivering software, this lands squarely on the build pipeline. Container images that process, store, or transmit CUI are in scope, as is the infrastructure that produces them. The least-privilege, unauthorized-software, secrets, malware, and vulnerability-management requirements therefore have to be demonstrable against the artifacts themselves, not just described in a system security plan. That is the evidence this pack produces: each rule set is named for the 800-171r3 requirement it supports, so a policy evaluation maps directly onto the control an assessor is asking about.
Controls
Anchore Enterprise checks for the following control specifications against container images. Rule sets marked Required in the Configuration column ship with placeholder values and must be configured for your environment before the policy is used. See Configure Rule Sets.
| Control | Rule set | Anchore role | Configuration |
|---|
| 03.01.07 Least Privilege | 03.01.07 - Least Privilege | Fail images whose effective user is root or docker | |
| 03.04.06 Least Functionality | 03.04.06 allow ports | Fail images that expose ports outside the allowed list | Required |
| 03.04.06 Least Functionality | 03.04.06 deny ports | Fail images that expose a denied port (ports 0–1024 by default) | Required |
| 03.04.06 Least Functionality | 03.04.06 Unauthorized software | Fail images containing a denied package (openssh-server and opensshd by default) | Required |
| 03.05.07 Password Management | 03.05.07 - Password Management | Fail images where the secret scan matches a configured secret pattern | |
| 03.11.02 Vulnerability Monitoring and Scanning | 03.11.02 vulnerability scan | Warn on vendor-reported vulnerabilities of low severity or higher | |
| 03.11.02 Vulnerability Monitoring and Scanning | 03.11.02 vulnerability fix available | Warn on vulnerabilities that have a fix available | |
| 03.11.02 Vulnerability Monitoring and Scanning | 03.11.02 specific CVE | Fail images containing a denied vulnerability ID | Required |
| 03.11.02 Vulnerability Monitoring and Scanning | 03.11.02 vulnerability feeds | Fail when the vulnerability feed has not synced in 15 days | Required |
| 03.14.02 Malicious Code Protection | 03.14.02 malicious code protection | Fail on malware findings, and fail when the malware scan did not run | |
| None | Dockerfile not found | Fail when no Dockerfile was supplied with the image, since several checks above need one to evaluate | |
The
03.14.02 malicious code protection rule set fails an image when the malware scan has not run, so malware scanning must be enabled in your deployment before this rule set produces meaningful results. See
Scanning.
VEX Annotations
The 03.11.02 vulnerability rule sets are each split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches findings that carry no annotation yet, so un-triaged vulnerabilities still count against the policy.
- The other matches findings annotated
affected or under_investigation, so vulnerabilities you have assessed as genuinely exploitable keep counting.
Findings annotated not_affected or fixed match neither rule, so an accurate VEX assessment clears them from the evaluation without an allowlist entry, and the compliance result refreshes as soon as the annotation is saved. This matters for an assessment conversation: the evidence shows which findings were reviewed and dismissed with a justification, rather than suppressed.
The other rule sets (least privilege, port exposure, unauthorized software, secrets, malware, and feed currency) do not depend on annotation state.
SBOM Rule Sets
The pack ships three 03.11.02 rule sets bound to the SBOM mapping, so vulnerability checks apply whether you scan an image or import an SBOM directly: 03.11.02 vulnerability scan - SBOM, 03.11.02 vulnerability fix available - SBOM, and 03.11.02 specific CVE [CONFIGURE] -SBOM.
The remaining controls depend on image content and are bound to the image mapping only. The SBOM rule sets do not always use the same action as their image counterpart, so review them alongside the image rule sets after import.
Allowed and Denied Images
The bundle also ships example deployment-wide image overrides, which force an image’s final result regardless of the rest of the evaluation, as described in Allowed / Denied Images:
| Override | Entry |
|---|
| Allowed | approved_registry.io, all repositories and tags |
| Denied | docker.io, all repositories and tags |
| Denied | any repository named badrepo, on any registry |
These are placeholders. Replace them with your own approved and prohibited registries before activating the pack. As shipped, the docker.io entry fails every image pulled from Docker Hub.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, and attach any allowlists you need before activating it as the account’s default policy.
The CMMC pack is intended as a starting point. Most teams customize mappings, attach allowlists for accepted risks, or layer additional rule sets on top before activating the pack against production registries.
The rule sets marked Required in the table above ship with placeholder values that stand in for values only you can supply: an allowed port of 123456, a denied package of opensshd, and an example CVE ID. Each is tagged [CONFIGURE] in its rule set name in the GUI. Edit them from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies) before you rely on the pack’s results.
7 - ASD Essential 8
The ASD Essential 8 policy pack maps the Australian Signals Directorate’s Essential Eight mitigation strategies to checks that the Anchore Enterprise policy engine can evaluate against container images and SBOMs. The pack covers Maturity Levels 1 through 3 and ships as a single bundle ready to import as a policy.
Current ASD Essential 8 policy pack version: Anchore ASD Essential 8 Level 1-3 v2026.1
The ASD Essential 8 pack requires the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
The Essential Eight is a set of eight mitigation strategies published by the Australian Signals Directorate as a baseline against the attacks it sees most often. Implementation is mandatory for Australian federal government entities and widely adopted by state agencies, critical infrastructure operators, and their suppliers. Progress is measured in maturity levels, tiered against increasingly capable adversary tradecraft; every rule set in this pack applies at Maturity Levels 1 through 3.
Four of the eight strategies are reachable from container image content: patch applications, patch operating systems, restrict administrative privileges, and application control. The rest (application hardening, macro settings, multi-factor authentication, and backups) depend on organizational process or runtime configuration and are not represented in the bundle. Rule sets are named by strategy and ISM control identifier, so a finding maps straight back to the control it supports.
Controls
Anchore Enterprise checks for the following control specifications against container images. The rule set marked Required in the Configuration column ships with a placeholder value and must be configured for your environment before the policy is used. See Configure Rule Sets.
| Mitigation strategy | Rule set | Anchore role | Configuration |
|---|
| Patch applications | Patch Applications ISM-1690 - KEV | Fail on any non-OS vulnerability listed on the CISA Known Exploited Vulnerabilities (KEV) catalog, regardless of severity | |
| Patch applications | Patch Applications ISM-1690 | Warn on non-critical non-OS vulnerabilities that have a fix available, then fail once that fix has been available for more than 14 days | |
| Patch applications | Patch Applications ISM-1876 | Fail on critical-severity vulnerabilities in OS packages | |
| Patch applications | Patch Applications ISM-1808 | Fail when the vulnerability feed has not synced in 7 days | |
| Patch operating systems | Patch OS ISM-1876 - KEV | Fail on any OS vulnerability listed on the KEV catalog, regardless of severity | |
| Patch operating systems | Patch OS ISM-1877 | Fail on critical-severity vulnerabilities in OS packages | |
| Patch operating systems | Patch OS ISM-1694 | Fail on non-critical OS vulnerabilities, not listed on the KEV catalog, whose fix has been available for more than 14 days | |
| Patch operating systems | Patch OS ISM-1808 | Fail when the vulnerability feed has not synced in 7 days | |
| Restrict administrative privileges | Restrict Admin Privileges - ISM-1688 | Fail images whose effective user is root or docker | |
| Application control | Application Control - ISM-1657 | Fail images containing a denied package (openssh version 1.0.1 by default) | Required |
The two patching timelines the Essential Eight sets out are split across the rule sets rather than expressed in one: the 48-hour requirement for critical vulnerabilities and working exploits is enforced as an immediate failure (ISM-1876, ISM-1877, and the KEV rule sets), while the two-week requirement for non-critical vulnerabilities is enforced through the max_days_since_fix threshold in ISM-1690 and ISM-1694.
VEX Annotations
Every vulnerability rule set in this pack is split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches findings that carry no annotation yet, so un-triaged vulnerabilities still fail the policy.
- The other matches findings annotated
affected or under_investigation, so vulnerabilities you have assessed as genuinely exploitable keep failing it.
Findings annotated not_affected or fixed match neither rule. Recording an accurate VEX assessment therefore clears the finding from the evaluation without an allowlist entry, and the compliance result refreshes as soon as the annotation is saved. The non-vulnerability rule sets (feed currency, effective user, and application control) do not depend on annotation state.
SBOM Rule Sets
The pack ships parallel rule sets bound to the SBOM mapping, so the patching strategies apply to imported SBOMs as well as scanned images: Patch Applications ISM-1690 - KEV (SBOM), Patch Applications ISM-1876 (SBOM), Patch Applications ISM-1690 (SBOM), Patch OS ISM-1877 (SBOM), and Patch OS ISM-1694 (SBOM). They carry the same VEX rule pairing as their image counterparts.
Restrict administrative privileges, application control, and the feed-currency checks depend on image content or deployment state and are bound to the image mapping only.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, and attach any allowlists you need before activating it as the account’s default policy.
The ASD Essential 8 pack is intended as a starting point. Most teams customize mappings, attach allowlists for accepted risks, or layer additional rule sets on top before activating the pack against production registries.
Application Control - ISM-1657 ships with a placeholder denied package, openssh at version 1.0.1, that stands in for the organization-approved software set the control calls for. It is tagged [CONFIGURE] in its rule set name in the GUI. Replace the placeholder with the packages you prohibit, using the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies), before you rely on the pack’s results.
The pack’s other rule sets are usable as shipped, though the two feed-currency thresholds (7 days) and the two patch-age thresholds (14 days) are worth reviewing against the scanning cadence and maturity level you are certifying to.
8 - PCI DSS
The PCI DSS policy pack maps the internal vulnerability-scanning requirements of the Payment Card Industry Data Security Standard (PCI DSS) v4.0.1 to checks that the Anchore Enterprise policy engine can evaluate against container images. The pack targets requirement 11.3.1, internal vulnerability scans, and ships as a single bundle ready to import as a policy.
Current PCI DSS policy pack version: Anchore PCI 4 requirement 11.3.1 2026.1
The PCI DSS pack requires the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
PCI DSS is the security standard maintained by the PCI Security Standards Council on behalf of the major payment card brands. It applies to any organization that stores, processes, or transmits cardholder data: merchants, payment processors, acquirers, issuers, and the service providers that support them. Unlike a government regulation, it is enforced contractually: card brands and acquiring banks require compliance as a condition of processing payments, validated annually through a Report on Compliance or a Self-Assessment Questionnaire, with the depth of validation scaled to transaction volume.
Scope is defined by the cardholder data environment (CDE): every system component that handles cardholder data, plus anything connected to or able to affect the security of those systems. For teams delivering payment software in containers, that pulls the images themselves into scope, along with the pipeline that builds them.
Requirement 11.3.1 is the internal vulnerability scanning requirement: scans run at least every three months and after any significant change, with high-risk and critical vulnerabilities resolved and rescans performed to confirm it. Sub-requirement 11.3.1.1 covers everything below that bar: all other applicable vulnerabilities, managed on the schedule set by the entity’s targeted risk analysis. That split is the shape of this pack: high-risk findings fail an evaluation outright, and the rest surface as warnings for triage rather than being discarded.
Controls
Anchore Enterprise checks for the following control specifications against container images:
| Requirement | Rule set | Anchore role |
|---|
| 11.3.1 | 11.3.1 Internal vulnerability scan | Fail on high-risk and critical vulnerabilities (high severity or above, in any package type) |
| 11.3.1 | 11.3.1 Internal vulnerability scan KEV | Fail on any vulnerability listed on the CISA Known Exploited Vulnerabilities (KEV) catalog |
| 11.3.1 | 11.3.1 Internal vulnerability scan EPSS | Fail on any vulnerability with an EPSS score of 0.75 or higher |
| 11.3.1.1 | 11.3.1.1 Internal vulnerability scan | Warn on all other applicable vulnerabilities (those below high severity) so they can be addressed against your targeted risk analysis |
| 11.3.1.c | 11.3.1.c Feed Data not available | Fail when vulnerability feed data is unavailable |
| 11.3.1.c | 11.3.1c Outdated Feed Data | Fail when the vulnerability feed has not synced in 2 days |
The three 11.3.1 rule sets implement the requirement’s vulnerability ranking three ways (by severity, by KEV listing, and by EPSS score) and evaluate together, so an image fails if any one of them matches. The 11.3.1.c rule sets cover the requirement that scans be run with a current tool: a scan performed against missing or stale feed data fails rather than passing silently.
VEX Annotations
The four vulnerability rule sets are each split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches findings that carry no annotation yet, so un-triaged vulnerabilities still fail the scan.
- The other matches findings annotated
affected or under_investigation, so vulnerabilities you have assessed as genuinely exploitable keep failing it.
Findings annotated not_affected or fixed match neither rule. For requirement 11.3.1 this is the difference between an allowlist and an assessment: a VEX annotation records why a high-risk finding does not apply to your product, carries a justification with it, and travels into the VEX document an assessor can review, rather than simply muting the finding.
The two 11.3.1.c feed-currency rule sets do not depend on annotation state.
SBOM Rule Sets
The pack ships parallel rule sets bound to the SBOM mapping, so the scanning requirement is met whether you scan an image or import an SBOM directly: 11.3.1 Internal vulnerability scan (sbom), 11.3.1 Internal vulnerability scan KEV (sbom), 11.3.1 Internal vulnerability scan EPSS (sbom), and 11.3.1.1 Internal vulnerability scan (sbom). They carry the same VEX rule pairing as their image counterparts.
The 11.3.1.c feed-currency checks are bound to the container mapping only.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, and attach any allowlists you need before activating it as the account’s default policy.
The PCI DSS pack is intended as a starting point. Most teams customize mappings, attach allowlists for accepted risks, or layer additional rule sets on top before activating the pack against production registries.
Tune the Thresholds
No rule set in this pack requires configuration before use, but three thresholds are worth reviewing against your own scanning program:
- The EPSS threshold of 0.75 decides which vulnerabilities are treated as high-risk on exploit probability rather than severity.
- The 2-day feed-sync limit in the
11.3.1c Outdated Feed Data rule set should be no longer than the interval your deployment actually syncs feeds, or the check will not catch a stalled sync. - The high-severity boundary splits requirement 11.3.1 from sub-requirement 11.3.1.1: vulnerabilities at or above it fail, everything below warns. Adjust both rule sets together if you move it.
Edit any of these from the policy’s Edit action in the Anchore Enterprise GUI (see Manage Policies).
9 - EU CRA
The EU CRA policy pack maps the vulnerability-handling obligations of the European Union’s Cyber Resilience Act to a check the Anchore Enterprise policy engine can evaluate against container images and SBOMs. The pack is deliberately narrow, enforcing only the Act’s requirement that products ship free of known exploitable vulnerabilities, and ships as a single bundle ready to import as a policy.
Current EU CRA policy pack version: EU-CRA 2026.1
The EU CRA pack requires the Anchore Enforce entitlement. Contact
Anchore Customer Success for access and more information.
Introduction
The Cyber Resilience Act sets cybersecurity requirements for products with digital elements placed on the EU market. It applies to manufacturers rather than operators: if you sell or distribute software or a connected product in the EU, the obligations attach to you, and CE marking depends on meeting them. That reach makes it relevant well beyond EU-based vendors: any supplier shipping into the single market is in scope.
The Act’s Annex I Part I sets out the security properties a product must have when it is made available, including that it be delivered without known exploitable vulnerabilities. Part II covers the vulnerability handling that follows: maintaining an SBOM, addressing vulnerabilities without delay, and reporting actively exploited vulnerabilities to ENISA.
This pack addresses the Annex I Part I requirement directly, using the CISA Known Exploited Vulnerabilities (KEV) catalog as the evidence that a vulnerability is exploited in practice. The wider Part II obligations are process and reporting duties rather than artifact checks, but they lean on the same machinery: the SBOMs Anchore Enterprise generates, and the VEX annotations that record how each finding was assessed.
Controls
Anchore Enterprise checks for the following control specifications against container images and SBOMs:
| Rule set | Anchore role | Applies to |
|---|
Container KEV | Fail when any package is affected by a vulnerability on the CISA KEV catalog | Container images |
SBOM KEV | Fail when any component is affected by a vulnerability on the CISA KEV catalog | SBOMs |
Both rule sets are bound to a default mapping matching every registry, repository, and tag, and both share an empty DefaultAllowlist ready for your accepted risks.
VEX Annotations
Each rule set is split into two rules that differ only in annotation state, as described in Annotations and VEX:
- One rule matches KEV findings that carry no annotation yet, so un-triaged exploitable vulnerabilities fail the evaluation.
- The other matches KEV findings annotated
affected or under_investigation.
Findings annotated not_affected or fixed match neither rule. This is the mechanism that makes a narrow KEV gate workable under the CRA: a KEV-listed vulnerability whose code is not reachable in your product is assessed, justified, and cleared from the evaluation, and the assessment travels into the VEX document a downstream consumer or market surveillance authority can read.
Use the Pack
Import the pack like any other policy. See Manage Policies for the GUI, AnchoreCTL, and API workflows. Once imported, scope it to the registries and repositories it should apply to through Policy Mappings, and attach any allowlists you need before activating it as the account’s default policy.
Because the pack enforces a single requirement, most teams run it alongside a broader policy, such as the Secure pack or a framework pack, rather than as their only active policy.