Quality, Expert-Derived Cybersecurity Documentation To Keep Organizations Secure, Compliant & Resilient  |  Got Questions? +1-307-241-8740
ComplianceForge

How Do I Implement NIST 800-171 R3 03.04.08 Authorized Software - Allow by Exception?

NIST 800-171 R3 03.04.08 Authorized Software - Allow by Exception at a Glance

  • Family: 03.04 Configuration Management (CM)
  • Requirement ID: 03.04.08 Authorized Software - Allow by Exception
  • Assessment Objectives (AOs): Four (4) total, including the one (1) Organization-Defined Parameters (ODPs) below and three (3) determination statements
  • Organization-Defined Parameters (ODPs): One (1), specified by the Department of Defense (DoD) for the Defense Industrial Base (DIB)
  • Source NIST 800-53 R5 Control: CM-07(05)
  • NIST 800-171 R3 Kill Chain Phase: Phase 12, Secure Baseline Configurations (SBC)

Authorized Software - Allow by Exception is application allowlisting made mandatory. Least Functionality (03.04.06) reduces what the system offers, and Authorized Software - Allow by Exception (03.04.08) controls what software is allowed to run at all. It has three (3) parts: identify the software programs authorized to execute on the system, implement a deny-all, allow-by-exception policy so only that authorized software runs, and review and update the authorized list on a defined frequency. Per the NIST discussion, authorized software can be limited to specific versions or sources, and software can be monitored at different levels of detail, from applications down to scripts, services, drivers, and libraries.

A common difficulty with this requirement is running an antivirus or blocklist and thinking it satisfies the requirement. It does not. R3 specifically requires the deny-all, allow-by-exception model, which is the opposite of a blocklist. Under R2 you could choose either approach, but R3 mandates allowlisting, so organizations that relied on blocking known-bad software have real work to do. For Department of Defense (DoD) contractors, the review frequency is specified.

Where things stand for companies facing the transition from NIST 800-171 R2 to R3:

  • The National Institute of Standards and Technology (NIST) withdrew R2 on May 14, 2024, the same day R3 was published. The withdrawal notice states that R2 "has been withdrawn (archived), and is provided solely for historical purposes," so it will never receive another correction or clarification from NIST.
  • R2 remains the contractual standard for the Department of Defense (DoD) and the Defense Industrial Base (DIB). Cybersecurity Maturity Model Certification (CMMC) assessments reference it directly: per Title 32 of the Code of Federal Regulations (CFR), section 170.14(c)(3), "the security requirements in CMMC Level 2 are identical to the requirements in NIST SP 800-171 R2."
  • The rulemaking points the other direction. The proposed Controlled Unclassified Information (CUI) rule for the Federal Acquisition Regulation (FAR), published June 23, 2026 as part of the Revolutionary FAR Overhaul, would apply CUI safeguarding requirements government wide rather than only to DoD contracts, and it sets the baseline at R3. That rule is not final, and DoD has separately signaled an interim rule to move CMMC to R3.

What Does NIST 800-171 R3 03.04.08 Actually Require?

The following is reproduced verbatim from NIST 800-171 R3, requirement 03.04.08 Authorized Software - Allow by Exception. Only the formatting has been adjusted for readability. This requirement has three (3) lettered parts:

  • a. Identify software programs authorized to execute on the system.
  • b. Implement a deny-all, allow-by-exception policy for the execution of authorized software programs on the system.
  • c. Review and update the list of authorized software programs [Assignment: organization-defined frequency].

The source control is CM-07(05) from NIST 800-53. The bracketed assignment in part c is the Organization-Defined Parameter (ODP): the review and update frequency. Per the NIST discussion, permitted software installations can include updates, security patches, and downloads from organization-approved app stores, and enforcement can use both procedural and automated methods. You can read the requirement directly at NIST 800-171 R3, 03.04.08 (p. 30).

What Are the Organization-Defined Parameters (ODPs) Associated with NIST 800-171 R3 03.04.08?

One (1) value sits inside this requirement. Depending on your contract, your organization may be permitted to define it. Organizations in the DIB subject to CMMC are not, because the DoD has defined it as policy.

The value below comes from Attachment A of the DoD Chief Information Officer (CIO) memorandum dated 10 April 2025 (signed David W. McKeown). The memo identifies each parameter by requirement sub-part, while NIST 800-171A R3 identifies the same parameter by ODP number. Both identifiers appear below so you can match your System Security Plan (SSP) language to either document.

  • ODP[01] (DoD memo identifier 03.04.08.c). the frequency at which to review and update the list of authorized software programs is defined. DoD Position: at least quarterly.

The memo states that its values "will be updated as necessary," so confirm against the current version before writing them into policy.

What Are the Assessment Objectives (AOs) For NIST 800-171 R3 03.04.08?

NIST 800-171A R3 breaks 03.04.08 into four (4) assessment objectives: one (1) Organization-Defined Parameter (ODP) and three (3) determination statements. These AOs are:

  • A.03.04.08.ODP[01]: the frequency at which to review and update the list of authorized software programs is defined.
  • A.03.04.08.a: software programs authorized to execute on the system are identified.
  • A.03.04.08.b: a deny-all, allow-by-exception policy for the execution of authorized software programs on the system is implemented.
  • A.03.04.08.c: the list of authorized software programs is reviewed and updated <A.03.04.08.ODP[01]: frequency>.

The three (3) determination statements are identify the authorized software (a), implement the deny-all model (b), and keep the list current (c). If you are a DoD contractor, the ODP is specified. Per the DoD-specified ODP value in ComplianceForge's NIST 800-171 R3 Transition Guide, the review and update frequency (ODP[01]) is at least quarterly. The full guidance on assessment methods and objects, is in NIST 800-171A R3, 03.04.08 (p. 38).

Assessment Methods and Objects for NIST 800-171 R3 03.04.08

Examine: configuration management policy and procedures; procedures for least functionality in the system; configuration management plan; system design documentation; system configuration settings; list of software programs authorized to execute on the system; system component inventory; records associated with the review and update of the list of authorized software programs; common secure configuration checklists; change control records; system audit records; system security plan.

Interview: personnel with responsibilities for identifying software authorized to execute on the system; personnel with information security responsibilities; system administrators.

Test: processes for identifying, reviewing, and updating programs authorized to execute on the system; processes for implementing authorized software policy; mechanisms for supporting or implementing authorized software policy.

How Does NIST 800-171 R3 03.04.08 Map From NIST 800-171 R2?

03.04.08 maps from NIST 800-171 R2 requirement 3.4.8 (apply a deny-by-exception policy to prevent unauthorized software, or a deny-all, permit-by-exception policy to allow authorized software), and it draws on R2 requirement 3.4.9 (control and monitor user-installed software):

  • A.03.04.08.a maps directly to R2 3.4.8[a] and 3.4.8[b] (the policy and the allowed software are specified).
  • A.03.04.08.b maps directly to R2 3.4.8[c] and draws on elements of R2 3.4.9 (the policy is implemented).
  • A.03.04.08.ODP[01] and A.03.04.08.c map indirectly to elements of R2 3.4.9[c] (monitoring user-installed software).

Mapped against the four (4) AOs, two (2) are direct (minimal effort) and two (2) are indirect (moderate effort), with no net-new AOs and none with no mapping. The counts understate the real change. R2 3.4.8 let organizations choose blocklisting or allowlisting. R3 removes the choice and requires the deny-all, allow-by-exception model. If your R2 program relied on blocking known-bad software, satisfying 03.04.08 is a shift in approach, not a reinterpretation.

How Does NIST 800-171 R3 03.04.08 Map to NIST 800-53 R5 and the SCF?

Source Control in NIST 800-53 R5:

  • CM-07(05)

Secure Controls Framework (SCF) Crosswalk

Organizations running a single control set across multiple frameworks can satisfy 03.04.08 through the following SCF controls:

  • AST-04 Asset Inventories
  • AST-08.1 Configuration Management Database (CMDB)
  • AST-10 Approved Technologies
  • CPL-05.1 Functional Review Of Security, Compliance & Resilience Controls
  • CFG-03 Least Functionality
  • CFG-03.1 Baseline Tailoring
  • CFG-08 Periodic Configuration Reviews
  • CFG-14 Prevent Unauthorized Software Execution
  • CFG-14.1 Explicitly Allow / Deny Applications

The crosswalks from NIST 800-171 R3 and NIST 800-171A R3 to the SCF are available at no cost through the SCF Set Theory Relationship Mapping (STRM): https://securecontrolsframework.com/start-here/set-theory-relationship-mapping-strm. The STRM also carries the relationship type for each mapping (Equal, Subset Of, Intersects With), which tells you whether an SCF control fully satisfies the requirement or only part of it. Mapping above taken from SCF 2026.3.

Common Pitfalls with NIST 800-171 R3 03.04.08

The following are issues teams may encounter rather than certainties. They are about the mandated model and list maintenance, each of which needs documented evidence of due diligence and due care such as policies, standards, procedures, and configuration screenshots:

  • Deny-all, not deny-known-bad. A.03.04.08.b requires allow-by-exception. Antivirus, a blocklist, or endpoint detection that blocks known-bad software does not satisfy this objective.
  • Identify the authorized software first. A.03.04.08.a requires a defined list of authorized programs. Allowlisting cannot be enforced without it, and the list is the foundation for the other objectives.
  • Keep the list current. A.03.04.08.c requires review and update on the defined frequency, at least quarterly for DoD work. A static allowlist quickly breaks operations or drifts out of compliance.
  • Decide the level of detail. Per the NIST discussion, software can be authorized at the application level or decomposed to scripts, services, drivers, and libraries. Choose a level that balances protection against operational burden.

What Is Reasonable Evidence For NIST 800-171 R3 03.04.08?

Reasonable objective evidence for an assessment is often subjective. The following examples of evidence to address NIST 800-171 R3 03.04.08 are sourced from the SCF Evidence Request List (ERL), available at https://securecontrolsframework.com/free-content/scf-download. These ERL artifacts are mapped to NIST 800-171 R3 03.04.08 through SCF controls. They establish a starting point for discussions on what an organization needs to have for evidence of due diligence and due care to withstand external scrutiny by an assessor or regulator.

  • E-AST-04 Asset Inventories - Hardware. An inventory of the organization's technology hardware assets.
  • E-AST-05 Asset Inventories - Software. An inventory of the organization's software assets.
  • E-AST-07 Cyber-Physical Systems (CPS). An inventory of the organization's physical assets that process functions based on software and networks.
  • E-AST-13 Secure Baseline Configurations - Cloud-Based Services. Secure baseline configurations for all deployed types of cloud-based services or applications.
  • E-AST-14 Secure Baseline Configurations - Databases. Secure baseline configurations for all deployed types of databases.
  • E-AST-15 Secure Baseline Configurations - Embedded Technologies. Secure baseline configurations for all deployed types of embedded technologies.
  • E-AST-16 Secure Baseline Configurations - Major Applications. Secure baseline configurations for all deployed types of major applications.
  • E-AST-17 Secure Baseline Configurations - Minor Applications. Secure baseline configurations for all deployed types of minor applications.
  • E-AST-18 Secure Baseline Configurations - Mobile Devices. Secure baseline configurations for all deployed types of mobile devices.
  • E-AST-19 Secure Baseline Configurations - Network Devices. Secure baseline configurations for all deployed types of network devices.
  • E-AST-20 Secure Baseline Configurations - Server Class Systems. Secure baseline configurations for all deployed types of server-class operating systems.
  • E-AST-21 Secure Baseline Configurations - Workstation Class Systems. Secure baseline configurations for all deployed types of workstation-class operating systems.
  • E-AST-28 Software Licenses. Software license inventories.
  • E-AST-29 Authorized To Connect. A list of devices and systems authorized to connect to organizational technology asset, application and/or service (taas).
  • E-AST-31 Allowlist / Denylist. Software applications that are explicitly allowed (allowlist / whitelist) and/or blocked (denylist / blacklist).
  • E-AST-33 Tailored Baselines. Documented evidence exists for tailored baseline configurations to address unique business and/or technical requirements (e.g., kiosk, hazardous environments, etc.).
  • E-CFG-01 Configuration Review & Unauthorized Change Response Records. Periodic configuration reviews and responses to detected unauthorized configuration changes (e.g., integrity assurance alerts and remediation).
  • E-CPL-08 Functional Review of Cybersecurity Controls. Control testing to ensure cybersecurity controls function as expected.

Alongside these, keep the System Security Plan (SSP) narrative for 03.04.08 recording the ODP values you adopted.

Timeline Considerations for NIST 800-171 R3 03.04.08

With two (2) AOs mapping directly and two indirectly, 03.04.08 is a moderate lift, but the shift to mandatory allowlisting can be a larger project than the counts suggest. A realistic sequence:

  1. Define the review and update frequency (A.03.04.08.ODP[01]), at least quarterly for DoD contracts.
  2. Identify the software programs authorized to execute and build the authorized list (A.03.04.08.a).
  3. Implement the deny-all, allow-by-exception enforcement so only authorized software runs (A.03.04.08.b).
  4. Establish the review and update cycle for the authorized list (A.03.04.08.c).
  5. Collect evidence for all four (4) AOs, including the authorized list, the allowlisting configuration, and dated review records.

Frequently Asked Questions About NIST 800-171 R3 03.04.08

What value does the DoD require for the organization-defined parameter in NIST 800-171 R3 03.04.08? R3 leaves the value to the organization. For the DIB, the DoD set it in the 10 April 2025 memorandum under ODP identifier 03.04.08.c: at least quarterly.

How many assessment objectives does NIST 800-171 R3 03.04.08 have? NIST 800-171A R3 breaks 03.04.08 into four (4) assessment objectives: one (1) Organization-Defined Parameters (ODPs) and three (3) determination statements. An assessor works through each one separately, so each needs its own evidence.

Which NIST 800-53 R5 control does NIST 800-171 R3 03.04.08 come from? CM-07(05).

Where does NIST 800-171 R3 03.04.08 sit in the NIST 800-171 R3 Kill Chain? Phase 12, Secure Baseline Configurations (SBC). The Kill Chain is a phased model for sequencing R3 implementation, and it assigns this requirement to that phase.

Bottom Line on NIST 800-171 R3 03.04.08

03.04.08 Authorized Software - Allow by Exception identifies authorized software, enforces a deny-all, allow-by-exception model, and keeps the authorized list current. It maps from R2 3.4.8 and draws on 3.4.9, with the identification and implementation objectives transitioning directly, but R3 removes the R2 option to use a blocklist. The recurring problem is treating antivirus or a blocklist as sufficient. Build the authorized list, enforce allowlisting, and review the list at least quarterly for DoD work.

Authoritative sources:

Authoritative sources:

This guide reproduces U.S. Government text from NIST 800-171 R3 and NIST 800-171A R3 and references the DoD ODP memorandum of 10 April 2025. It is educational, not legal or assessment advice. Last reviewed: 2026-09-22.