All modules
CMVP Validated Module · FIPS 140-3 Security Policy

Firepower Next-Generation IPS Virtual VMware Cryptographic Module

Certificate#4734StandardFIPS 140-3Level1TypeSoftwareEmbodimentMulti-Chip Stand AloneStatusActiveVendorCisco Systems, Inc.
High review priority  ·  no TCB surface named  ·  last validated 24 months ago. How this is derived →

Certificate

StandardFIPS 140-3
Overall level1
Module typeSoftware
EmbodimentMulti-Chip Stand Alone
StatusActive
Sunset date7/21/2029
CaveatInterim validation. When installed, initialized and configured as specified in section "Secure Operation" of the Security Policy and operated in approved mode. No assurance of the minimum strength of generated SSPs (e.g., keys)
VendorCisco Systems, Inc.

Approved Algorithms (42)

AlgorithmACVP Cert
AES-CBCA2952
AES-CBCA3376
AES-GCMA2952
AES-GCMA3376
Counter DRBGA2952
Counter DRBGA3376
ECDSA KeyGen (FIPS186-4)A2952
ECDSA KeyGen (FIPS186-4)A3376
ECDSA KeyVer (FIPS186-4)A2952
ECDSA KeyVer (FIPS186-4)A3376
ECDSA SigGen (FIPS186-4)A2952
ECDSA SigGen (FIPS186-4)A3376
ECDSA SigVer (FIPS186-4)A2952
ECDSA SigVer (FIPS186-4)A3376
HMAC-SHA-1A2952
HMAC-SHA-1A3376
HMAC-SHA2-256A2952
HMAC-SHA2-256A3376
HMAC-SHA2-384A2952
HMAC-SHA2-384A3376
HMAC-SHA2-512A2952
HMAC-SHA2-512A3376
KDF SSHA2952
KDF SSHA3376
RSA KeyGen (FIPS186-4)A2952
RSA KeyGen (FIPS186-4)A3376
RSA SigGen (FIPS186-4)A2952
RSA SigGen (FIPS186-4)A3376
RSA SigVer (FIPS186-4)A2952
RSA SigVer (FIPS186-4)A3376
Safe Primes Key GenerationA2952
Safe Primes Key GenerationA3376
SHA-1A2952
SHA-1A3376
SHA2-256A2952
SHA2-256A3376
SHA2-384A2952
SHA2-384A3376
SHA2-512A2952
SHA2-512A3376
TLS v1.2 KDF RFC7627A2952
TLS v1.2 KDF RFC7627A3376

Derived Review-Risk Graph (review prompts, not findings)

flowchart LR
  %% Deterministic review-risk graph for Firepower Next-Generation IPS Virtual VMware Cryptographic Module
  %% Review prompts and evidence gaps, NOT vulnerability findings.
  subgraph CMVP["CMVP-disclosed clues"]
    C3["[low] Self-test / status surface<br/>(referenced in text)<br/><i>status output<br/>Show Status<br/>self-test</i>"]
    C5["[low] Protocol / secure-channel<br/>references (may be KDF<br/>names, not a live channel)<br/><i>TLS<br/>SSH<br/>HTTPS</i>"]
    C6["[low] Operating system / runtime<br/>referenced (boundary<br/>membership not asserted)<br/><i>operating system<br/>linux<br/>application</i>"]
  end
  subgraph Inference["Derived inference"]
    I3["Possible only, some<br/>services may process input<br/>before, or without,<br/>operator authentication."]
    I5["Possible only, a protocol<br/>is referenced, but whether<br/>it is a live channel or<br/>only a KDF/algorithm name<br/>is unconfirmed."]
    I6["Possible only, a<br/>runtime/OS is referenced,<br/>but its membership in the<br/>cryptographic boundary is<br/>not established."]
  end
  subgraph Risk["Reviewer question"]
    R3["Can unauthenticated<br/>services leak state,<br/>consume resources, or<br/>transition security state?"]
    R5["If a live TLS/SSH/IKE<br/>channel exists, could<br/>library CVEs apply, or is<br/>this only a<br/>KDF/documentation name?"]
    R6["If the OS/runtime is<br/>in-boundary, could its<br/>CVEs be hidden by<br/>firmware-only versioning?"]
  end
  subgraph Evidence["Evidence needed to close"]
    E3["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>pre-auth reachability<br/>matrix · rate limits and<br/>output redaction ·<br/>abuse-case tests"]
    E5["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>library identity and<br/>version ·<br/>certificate-validation<br/>behaviour · protocol-CVE<br/>disposition"]
    E6["confirm the disclosure<br/>itself (keyword hit,<br/>context unverified) ·<br/>runtime identity and<br/>config · kernel/runtime<br/>hardening profile ·<br/>patch/backport manifest"]
  end
  C3 --> I3 --> R3 --> E3
  C5 --> I5 --> R5 --> E5
  C6 --> I6 --> R6 --> E6
  classDef clue fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
  classDef infer fill:#fff7e6,stroke:#b98500,color:#6b4e00;
  classDef risk fill:#fbe9e9,stroke:#b02a2a,color:#7a1f1f;
  classDef evidence fill:#e6f4ea,stroke:#1e7d34,color:#14532d;
  class C3,C5,C6 clue;
  class I3,I5,I6 infer;
  class R3,R5,R6 risk;
  class E3,E5,E6 evidence;
Underlying clues
flowchart LR
  %% Deterministic clue tier for Firepower Next-Generation IPS Virtual VMware Cryptographic Module
  %% confidence: high = structured record field; medium = structured but soft; low (dashed) = bare keyword hit, context unverified
  subgraph CMVP["CMVP-disclosed clues (deterministic)"]
    C3["[low] Self-test / status surface (referenced in text)<br/><i>status output<br/>Show Status<br/>self-test</i><br/>src: text:keyword"]
    C5["[low] Protocol / secure-channel references (may be KDF names, not a live channel)<br/><i>TLS<br/>SSH<br/>HTTPS</i><br/>src: text:keyword"]
    C6["[low] Operating system / runtime referenced (boundary membership not asserted)<br/><i>operating system<br/>linux<br/>application</i><br/>src: text:keyword"]
  end
  classDef clueHigh fill:#eef3f9,stroke:#2f6fb0,stroke-width:2px,color:#1f3a5f;
  classDef clueMedium fill:#eef3f9,stroke:#6f7f91,color:#1f3a5f;
  classDef clueLow fill:#f7f7f7,stroke:#999,stroke-dasharray:4 4,color:#444;
  class C3,C5,C6 clueLow;

Security Policy, page by page

Page 1

ISO/IEC 19790 and FIPS 140-3 Non-Proprietary Security Policy for Firepower Next-Generation IPS Virtual VMware Cryptographic Module Last Updated: June 10, 2024, Version 0.3 Americas Headquarters: Cisco Systems, Inc., 170 West Tasman Drive, San Jose, CA 95134-1706 USA

Page 2

Table of Content List of Figures List of Tables

Page 3
ISO/IEC 24759 Section 6. [Number Below]FIPS 140-3 Section TitleSecurity Level
1General1
2Cryptographic module specification1
3Cryptographic module interfaces1
4Roles, services, and authentication1
5Software/Firmware security1
6Operational environment1
7Physical securityN/A
8Non-invasive securityN/A
9Sensitive security parameter management1
10Self-tests1
11Life-cycle assurance1
12Mitigation of other attacksN/A
#Operating SystemHardware PlatformProcessorPAA/Acceleration
1Linux 4 (FX-OS) on VMware ESXi 6.7UCS C220 M5 SFF ServerIntel Xeon Gold 6128 (Skylake)With PAA
2Linux 4 (FX-OS) on VMware ESXi 6.7UCS C220 M5 SFF ServerIntel Xeon Gold 6128 (Skylake)Without PAA
3Linux 4 (FX-OS) on VMware ESXi 7.0UCS C220 M5 SFF ServerIntel Xeon Gold 6128 (Skylake)With PAA

VMware Cryptographic Module (hereinafter referred to as the Module or NGIPS) with software version 7.0.5. The following details how this module meets the security requirements of FIPS 140-3, SP 800-140 The security requirements cover areas related to the design and implementation of a cryptographic mitigation of other attacks. The following table indicates the actual security levels for each area of the Table 1 Security Levels The module has an overall security level of 1. The Next-Generation IPS Virtual Cryptographic Module is the virtualized offering of the industry-leading threat protection Cisco Firepower Next-Generation IPS (NGIPS) solution. The Module is a multi-chip standalone software module with underlying operating system identified as Linux 4 (also referred to as Firepower eXtensible Operating System or FX-OS) throughout this document. The module’s operational environment is non-modifiable. NGIPS virtual provides cryptographic functionality and services for TLSv1.2 and SSHv2. The module has been tested on the following Operational Environments.

Page 4

Linux 4 (FX-OS) on VMware ESXi 7.0

UCS C220 M5 SFF Server

Intel Xeon Gold 6128 (Skylake)

Without PAA

#Operating SystemHardware Platform
1Linux 4 (FX-OS)C220 M5 w/KVM/AWS
2Linux 4 (FX-OS)C240 M5 w/ESXi/KVM/AWS
3Linux 4 (FX-OS)C480 M5 w/ESXi/KVM/AWS
4Linux 4 (FX-OS)E160-M3 w/ESXi/KVM/AWS
5Linux 4 (FX-OS)E180D-M3 w/ESXi/KVM/AWS

Table 2 Tested Operational Environment Figure 1 UCS C220 M5 Front view without Bezel (top) and with Bezel (bottom)1 Figure 2 UCS C220 M5 Rear view In addition to the platforms listed in Table 2, Cisco has also tested the module on the following platforms and claims vendor affirmation on them. Table 3 Vendor Affirmed Operational Environments The CMVP makes no statement as to the correct operation of the module or the security strengths of the generated keys when ported to an operational environment which is not listed on the validation certificate. Mode of operation The module has one approved mode of operation and is always in the approved mode of operation after initial operations are performed (See Section 11). The module does not claim implementation of a degraded mode of operation. Section 4 provides details on the service indicator implemented by the module. The table below lists all Approved or Vendor-affirmed security functions of the module, including specific key size(s) -in bits otherwise noted- employed for approved services, and implemented modes of operation. There are some algorithm modes that were tested but not implemented by the module. Only the algorithms, modes, and key sizes that are implemented by the module are shown in this table. https://www.cisco.com/c/dam/en/us/products/collateral/servers-unified-computing/ucs-c-series-rack-servers/c220m5-sffspecsheet.pdf

Page 5
CAVP CertAlgorithm and StandardMode/MethodDescription / Key Size(s) / Key Strength(s)Use/Function
A2952 and A3376AES [FIPS 197; SP800-38A]CBCKey Length: 128 and 256 bitsSymmetric Encryption and Decryption.
A2952 and A3376AES [FIPS 197; SP 800-38D]GCMKey Length: 128 and 256 bitsAuthenticated Symmetric Encryption and Decryption
A2952 and A3376KDF SSH [SP 800-135rev1] (CVL)KDF SSHN/AKey derivation function used in SSHv2
A2952 and A3376TLS v1.2 KDF RFC7627 [RFC7627] (CVL)TLS v1.2 KDF RFC7627N/AKey derivation in TLSv1.2 with RFC7627 KDF with Extended Master Secret
A2952 and A3376CTR_DRBG [SP 800-90Arev1]AES-256 Derivation Function Enabled; Prediction Resistance: YesN/ARandom number generation
A2952 and A3376ECDSA [FIPS 186-4]ECDSA KeyGenCurves: P-256, P-384, P- 521ECDSA keypair generation
A2952 and A3376ECDSA [FIPS 186-4]ECDSA KeyVerCurves: P-256, P-384, P- 521ECDSA keypair verification
A2952 and A3376ECDSA [FIPS 186-4]ECDSA SigGenCurves: P-256, P-384, P- 521ECDSA signature generation
A2952 and A3376ECDSA [FIPS 186-4]ECDSA SigVerCurves: P-256, P-384, P- 521ECDSA Signature verification
A2952 and A3376HMAC [FIPS 198-1]HMAC-SHA-1Key Length: 112 bits or greaterKeyed Hash
A2952 and A3376HMAC [FIPS 198-1]HMAC-SHA2-256Key Length: 112 bits or greaterKeyed Hash
A2952 and A3376HMAC [FIPS 198-1]HMAC-SHA2-384Key Length: 112 bits or greaterKeyed Hash
A2952 and A3376HMAC [FIPS 198-1]HMAC-SHA2-512Key Length: 112 bits or greaterKeyed Hash
A2952 and A3376KAS-SSC [SP 800-56Arev3]KAS-ECC-SSC: Scheme: ephemeralUnified: KAS Role: initiator, responderCurves: P-256, P-384, P- 521; Key establishment methodology provides between 128 and 256 bits of encryption strengthKAS-ECC shared secret computation
A2952 and A3376KAS [SP 800-56Arev3]KAS (ECC): Scheme: ephemeralUnified KAS Role: initiator, responder KAS-SSC Cert. #A2952, TLSv1.2 KDF RFC7627 Cert. #A2952; KAS-SSC Cert. #A3376, TLSv1.2 KDF RFC7627 Cert. #A3376Curves: P-256, P-384 and P- 521; Key establishment methodology provides between 128 and 256 bits of encryption strengthKey Agreement Scheme per SP800-56Arev3 with key derivation function (SP800-135rev1) Note: The module’s KAS (ECC) implementation is FIPS140-3 IG D.F Scenario X1 (path 2) compliant
A2952 and A3376KAS-SSC [SP 800-56Arev3]KAS-FFC-SSC: Scheme: dhEphem:MODP-2048;KAS-FFC shared secret computation
Page 6
CAVP CertAlgorithm and StandardMode/MethodDescription / Key Size(s) / Key Strength(s)Use/Function
KAS Role: initiator, responderKey establishment methodology provides between 112 bits of encryption strength
A2952 and A3376KAS [SP 800-56Arev3]KAS (FFC): Scheme: dhEphem KAS Role: initiator, responder KAS-SSC #A2952, KDF SSH Cert. #A2952; KAS-SSC Cert. #A3376, KDF SSH Cert. #A3376MODP-2048; Key establishment methodology provides between 112 bits of encryption strengthKey Agreement Scheme per SP800-56Arev3 with key derivation function (SP800-135rev1) Note: The module’s KAS (FFC) implementation is FIPS140-3 IG D.F Scenario X1 (path 2) compliant
A2952 and A3376RSA [FIPS 186-4]RSA KeyGen: - Mode: B.3.4 - 2048/3072 ModulusModulus: 2048/3072 bitsRSA keypair generation
A2952 and A3376RSA [FIPS 186-4]RSA SigGen: - PKCSv1.5 - 2048/3072 Modulus with SHA2-256/384/512Modulus: 2048/3072 bitsRSA signature generation
A2952 and A3376RSA [FIPS 186-4]RSA SigVer: - PKCSv1.5 - 2048/3072 Modulus with SHA2-256/384/512Modulus: 2048/3072 bitsRSA signature verification
A2952 and A3376Safe Primes Key Generation [SP 800-56Arev3]KeyGen for KAS-SSC (FFC)Safe Prime Groups: MODP- 2048KAS-FFC Keypair domain parameters generation
A2952 and A3376SHS [FIPS 180-4]SHA-1N/AMessage Digest
A2952 and A3376SHS [FIPS 180-4]SHA2-256N/AMessage Digest
A2952 and A3376SHS [FIPS 180-4]SHA2-384N/AMessage Digest
A2952 and A3376SHS [FIPS 180-4]SHA2-512N/AMessage Digest
Vendor AffirmedCKG (SP800-133rev2)Section 5.1, Section 5.2Cryptographic Key Generation; SP 800- 133rev2 and IG D.H.Key Generation. Note: The cryptographic module performs Cryptographic Key Generation (CKG) for asymmetric keys as per section 5 in SP800- 133rev2 (vendor affirmed). A seed (i.e., the random value) used in asymmetric key generation is a direct output from SP800-90Arev1 CTR_DRBG.
Page 7

Notes:

Page 8
Physical PortLogical InterfaceData that passes over port/interface
N/AData Input InterfaceArguments for an API call that provide the data to be used or processed by the module.
N/AData Output InterfaceArguments output from an API call.
N/AControl Input InterfaceArguments for an API call used to control and configure module operation.
N/AControl Output InterfaceN/A
N/AStatus Output InterfaceReturn values, and or log messages.
RoleServiceInputOutput
Crypto OfficerShow StatusAPI command to show statusModule’s current status
Crypto OfficerShow VersionAPI commands to show versionModule’s name/ID and versioning information
Crypto OfficerPerform Self-TestsAPI commands to conduct on- demand Self-TestsStatus of the self-tests results
Crypto OfficerPerform ZeroizationAPI commands to conduct Zeroization operation or Power down the tested platformStatus of the SSPs zeroization
Crypto OfficerConfigure NetworkAPI Commands to configure the moduleStatus of the completion of network related configuration
Crypto OfficerConfigure SSHv2 FunctionAPI commands to configure SSHv2Status of the completion of SSHv2 configuration
Crypto OfficerConfigure HTTPS over TLSv1.2 FunctionAPI commands to configure HTTPS over TLSv1.2Status of the completion of HTTPS over TLSv1.2 configuration
Crypto OfficerRun SSHv2 FunctionAPI commands to execute SSHv2 serviceStatus of SSHv2 secure tunnel establishment
Crypto OfficerRun HTTPS over TLSv1.2 FunctionAPI commands to execute HTTPS over TLSv1.2 serviceStatus of HTTPS over TLSv1.2 secure tunnel establishment

Note: Block Diagram above comprises the following components:

3 Cryptographic module interfaces

The module’s physical perimeter encompasses the case of the tested platform mentioned in Table 2. The module provides its logical interfaces via Application Programming Interface (API) calls. The logical interfaces provided by the module are mapped onto the FIPS 140-3 logical interfaces (data input, data Table 5 Ports and Interfaces

4 Roles, services, and authentication

The module supports Crypto Officer (CO) role. The cryptographic module does not provide any authentication methods. The module does not allow concurrent operators. The Crypto Officer is implicitly assumed based on the service requested. The module provides the following services to the

Page 9
ServicesDescriptionApproved Security FunctionsKeys and /or SSPsRolesAccess rights to Keys and/or SSPsIndicator
Show StatusProvide Module’s current statusN/AN/ACrypto OfficerN/ANone
Show VersionProvide Module’s name/ID and versioning informationN/AN/ACrypto OfficerN/ANone
Perform Self-TestsPerform Self- Tests (Pre- operational self- tests and Conditional Self- Tests)N/AN/ACrypto OfficerN/ANone
Perform ZeroizationPerform ZeroizationN/AAll SSPsCrypto OfficerZNone
Configure NetworkSets configuration of the systemsN/AN/ACrypto OfficerN/ANone
Configure SSHv2 FunctionConfigure SSHv2 FunctionAES-CBC; CKG; KDF SSH; CTR_DRBG; HMAC-SHA-1; HMAC-SHA2- 256; HMAC-SHA2- 384; HMAC-SHA2- 512; KAS-FFC-SSC; KAS (FFC); RSA KeyGen; RSA SigGen; RSA SigVer; Safe Primes Key Generation; SHA-1; SHA2-256; SHA2-384; SHA2-512Diffie-Hellman Private Key; Diffie-Hellman Public Key; Peer Diffie-Hellman Public Key; Diffie-Hellman Shared Secret; RSA Private Key; RSA Public Key; SSH Session Integrity Key; SSH Session KeyCrypto OfficerW, EGlobal Indicator and SSHv2 success log message

Table 6 Roles, Service Commands, Input and Output The table below lists all approved services that can be used in the approved mode of operation. The G = Generate: The module generates or derives the SSP. R = Read: The SSP is read from the module. W = Write: The SSP is updated, imported, or written to the module. E = Execute: The module uses the SSP in performing a cryptographic operation. Z = Zeroise: The module zeroises the SSP. N/A = The service does not access any SSP during its operation.

Page 10
ServicesDescriptionApproved Security FunctionsKeys and /or SSPsRolesAccess rights to Keys and/or SSPsIndicator
Configure HTTPS over TLSv1.2 FunctionConfigure HTTPS over TLSv1.2 FunctionAES-CBC; AES-GCM; CKG; TLS v1.2 KDF RFC7627; CTR_DRBG; ECDSA KeyGen; ECDSA KeyVer; ECDSA SigGen; ECDSA SigVer; HMAC-SHA-1; HMAC-SHA2- 256; HMAC-SHA2- 384; HMAC-SHA2- 512; KAS-ECC-SSC; KAS (ECC); RSA KeyGen; RSA SigGen; RSA SigVer; SHA-1; SHA2-256; SHA2-384; SHA2-512EC Diffie-Hellman Private Key; EC Diffie-Hellman Public Key; Peer EC Diffie-Hellman Public Key; EC Diffie-Hellman Shared Secret; ECDSA Private Key; ECDSA Public Key; RSA Private Key; RSA Public Key; TLS master secret; TLS Session Key; TLS Session Integrity KeyCrypto OfficerW, EGlobal Indicator and HTTPS over TLSv1.2 success log message
Run SSHv2 FunctionExecute SSHv2 FunctionAES-CBC; CKG; KDF SSH; CTR_DRBG; HMAC-SHA-1; HMAC-SHA2- 256; HMAC-SHA2- 384; HMAC-SHA2- 512; KAS-FFC-SSC; KAS (FFC); RSA KeyGen; RSA SigGen; RSA SigVer; Safe Primes Key Generation; SHA-1; SHA2-256; SHA2-384; SHA2-512DRBG entropy input; DRBG Seed, Internal State V value, and Key; Diffie-Hellman Private Key; Diffie-Hellman Public Key; Peer Diffie-Hellman Public Key; Diffie-Hellman Shared Secret; RSA Private Key; RSA Public Key; SSH Session Integrity Key; SSH Session KeyCrypto OfficerW, EGlobal Indicator and SSHv2 success log message
Run HTTPS over TLSv1.2 FunctionExecute HTTPS over TLSv1.2 FunctionAES-CBC; CKG; TLS v1.2 KDF RFC7627; CTR_DRBG;DRBG entropy input; DRBG Seed, Internal State V value, and Key;Crypto OfficerW, EGlobal Indicator and HTTPS over TLSv1.2
Page 11

Services

Description

Approved Security Functions ECDSA KeyGen; ECDSA KeyVer; ECDSA SigGen; ECDSA SigVer; HMAC-SHA-1; HMAC-SHA2- 256; HMAC-SHA2- 384; HMAC-SHA2- 512; KAS-ECC-SSC; KAS (ECC); RSA KeyGen; RSA SigGen; RSA SigVer; SHA-1; SHA2-256; SHA2-384; SHA2-512

Keys and /or SSPs EC Diffie-Hellman Private Key; EC Diffie-Hellman Public Key; Peer EC Diffie-Hellman Public Key; EC Diffie-Hellman Shared Secret; ECDSA Private Key; ECDSA Public Key; RSA Private Key; RSA Public Key; TLS master secret; TLS Session Key; TLS Session Integrity Key

Roles

Access rights to Keys and/or SSPs

Indicator success log message

As the module can only be operated in the Approved mode of operation, as such any algorithms not listed in Table 4 above will be rejected by the module while in the approved mode, the table required defined in SP800-140B for Non-Approved Services is missing from this document. The module doesn’t support self-initiated cryptographic output capability and cryptographic Bypass capability services

5 Software/Firmware security

Integrity techniques The module is provided in the form of binary executable code. To ensure the software security, the module is protected by HMAC-SHA2-512 (HMAC Certs. #A2952 or #A3376) algorithm. The software integrity test key (non-SSP) was preloaded to the module’s binary the factory and used for software integrity test only at the pre-operational self-test. At Module’s initialization, the integrity of the runtime executable is verified using a HMAC-SHA2-512 digest which is compared to a value computed at build time. If at the load time the MAC does not match the stored, known MAC value, the module would enter to an Error state with all crypto functionality inhibited. Integrity test on-demand Integrity test is performed as part of the Pre-Operational Self-Tests. It is automatically executed at poweron. The operator can power cycle or reboot the tested platform to initiate the software integrity test ondemand.

6 Operational environment

The module is a software module, which is operated in a modifiable operational environment per FIPS 140-3 level 1 specifications. The module’s software version running on each tested platform is 7.0.5.

Page 12
Key/SSP Name TypeStrengthSecurity Function and Cert NumberGenerationImport/ ExportEsta blish mentStorageZeroizationUse & related Keys
DRBG entropy input (CSP)384 bitsCTR_DRBG #A2952 or #A3376Obtained from the Entropy Source within TOEPP (GPS INT Pathways)Import to the module via Module’s API Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downRandom Number Generation
DRBG Seed, Internal State V value, and Key (CSP)256 bitsCTR_DRBG #A2952 or #A3376Internally Derived from entropy input string as defined by SP800- 90Arev1Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downRandom Number Generation
Diffie- Hellman Private Key (CSP)MODP- 2048CKG; CTR_DRBG; KAS (FFC); KAS-FFC- SSC; Safe Primes Key Generation #A2952 or #A3376Internally generated conformant to SP800-133r2 (CKG) using SP800-56A rev3 Diffie- Hellman key generation method, and the random value used in key generation is generated using SP800-Import: No Export: NoN/AN/A: The module does not provide persistent keys/ SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive Diffie- Hellman Shared Secret

The module has control over its own SSPs. The process and memory management functionality of the host device’s OS prevents unauthorized access to plaintext private and secret keys, intermediate key generation values and other SSPs by external processes during module execution. The module only allows access to SSPs through its well-defined API. The operational environments provide the capability to separate individual application processes from each other by preventing uncontrolled access to CSPs and uncontrolled modifications of SSPs regardless of whether this data is in the process memory or stored on persistent storage within the operational environment. Processes that are spawned by the module are owned by the module and are not owned by external processes/operators.

7 Physical security

The FIPS 140-3 physical security requirements do not apply since it is a software module.

8 Non-invasive security

Currently, non-invasive security is not required by FIPS 140-3 (see NIST SP 800-140F). The requirements of this area are not applicable to the module.

9 Sensitive security parameters management

The following table summarizes the keys and Sensitive Security Parameters (SSPs) that are used by the cryptographic services implemented in the module.

Page 13
Key/SSP Name TypeStrengthSecurity Function and Cert NumberGeneration 90ARev1 DRBGImport/ ExportEsta blish mentStorageZeroizationUse & related Keys
Diffie- Hellman Public Key (PSP)MODP- 2048KAS (FFC); KAS-FFC- SSC; Safe Primes Key Generation #A2952 or #A3376Internally derived per the Diffie- Hellman key agreement (SP800- 56Arev3)Import: No Export: to the SSH Peer applicationN/AN/A: The module does not provide persistent keys/ SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive Diffie- Hellman Shared Secret
Peer Diffie- Hellman Public Key (PSP)MODP- 2048N/AN/AImport: to the Module via API Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive Diffie- Hellman Shared Secret
Diffie- Hellman Shared Secret (CSP)MODP- 2048KAS-FFC- SSC #A2952 or #A3376Internally generated using SP800- 56Arev3 DH shared secret computationImport: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive SSH session related keys
EC Diffie- Hellman Private Key (CSP)P-256, P- 384 and P-521CKG; CTR_DRBG; KAS (ECC); KAS-ECC- SSC #A2952 or #A3376Internally generated conformant to SP800-133r2 (CKG) using SP800-56A rev3 EC Diffie- Hellman key generation method, and the random value used in key generation is generated using SP800- 90Arev1 DRBGImport: No Export: NoN/AN/A: The module does not provide persistent keys/ SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive EC Diffie- Hellman Shared Secret
EC Diffie- Hellman Public Key (PSP)P-256, P- 384 and P-521KAS (ECC); KAS-ECC- SSC #A2952 or #A3376Internally derived per the EC Diffie- Hellman key agreement (SP800- 56Arev3)Import: No Export: to the TLS Peer applicationN/AN/A: The module does not provide persistent keys/ SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive EC Diffie- Hellman Shared Secret
Page 14
Key/SSP Name TypeStrengthSecurity Function and Cert NumberGenerationImport/ ExportEsta blish mentStorageZeroizationUse & related Keys
Peer EC Diffie- Hellman Public Key (PSP)P-256, P- 384 and P-521N/AN/AImport: to the Module via API Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive EC Diffie- Hellman Shared Secret
EC Diffie- Hellman Shared Secret (CSP)P-256, P- 384 and P-521KAS-ECC- SSC #A2952 or #A3376Internally generated using SP800- 56Ar3 ECDH shared secret computationImport: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downUsed to derive TLS session related keys
ECDSA Private Key (CSP)P-256, P- 384 and P-521CKG; CTR_DRBG; ECDSA KeyGen; ECDSA KeyVer; ECDSA SigGen; #A2952 or #A3376Internally generated conformant to SP800-133r2 (CKG) using FIPS 186-4 ECDSA key generation method, and the random value used in key generation is generated using SP800- 90Arev1 DRBGImport: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downSignature generation and Verification used in TLS
ECDSA Public Key (PSP)P-256, P- 384 and P-521ECDSA KeyGen; ECDSA KeyVer; ECDSA SigVer; #A2952 or #A3376Internally derived per the FIPS 186-4 ECDSA key generation methodImport: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downSignature generation and Verification used in TLS
RSA Private Key (CSP)2048 and 3072 bitsCKG; CTR_DRBG; RSA KeyGen; RSA SigGen; #A2952 or #A3376Internally generated conformant to SP800-133r2 (CKG) using FIPS 186-4 RSA key generation method, and the random value used in the key generation is generated using SP800-Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downSignature generation and Verification used in SSH or TLS
Page 15
Key/SSP Name TypeStrengthSecurity Function and Cert NumberGeneration 90Arev1 DRBGImport/ ExportEsta blish mentStorageZeroizationUse & related Keys
RSA Public Key (PSP)2048 and 3072 bitsKeyGen; RSA SigVer; #A2952 or #A3376Internally derived per the FIPS 186-4 RSA key generation methodImport: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when the tested platform is powered downSignature generation and Verification used in SSH or TLS
SSH Session Integrity Key (CSP)160 bitsKDF SSH; HMAC-SHA- 1 #A2952 or #A3376Internally Derived per the key derivation function defined in SP800-135 KDF (KDF SSH).Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when SSH session is terminated or when the tested platform is powered downUsed for SSH session integrity protection.
SSH Session Key (CSP)128/256 bitsAES-CBC; KDF SSH; #A2952 or #A3376Internally Generated via key derivation function defined in SP800-135 KDF (KDF SSH)Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when SSH session is terminated or when the tested platform is powered downUsed for SSH session confidentiality protection
TLS Master Secret (CSP)48 BytesKeying MaterialInternally Derived per the key derivation function defined in SP800-135 KDF (TLS v1.2 KDF RFC7627)Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when TLS session is terminated or when the tested platform is powered downKeying material used to derive other TLS keys
TLS Session Key (CSP)128/256 bitsAES-CBC; AES-GCM; TLS v1.2 KDF RFC7627; #A2952 or #A3376Internally Derived per the key derivation function defined in SP800-135 KDF (TLS v1.2 KDF RFC7627)Import: No Export: NoN/AN/A: The module does not provide persistent keys/SSPs storage.Automatic zeroization when TLS session is terminated or when the tested platform is powered downUsed for TLS session confidentiality protection
TLS Session Integrity Key (CSP)256-384 bitsTLS v1.2 KDF RFC7627; HMAC- SHA2-256;Internally Derived per the key derivation functionImport: No Export: NoN/AN/A: The module does not provide persistentAutomatic zeroization when TLS session is terminated orUsed for TLS session integrity protection
Page 16
Key/SSP Name TypeStrengthSecurity Function and Cert NumberGenerationImport/ ExportEsta blish mentStorageZeroizationUse & related Keys
HMAC- SHA2-384; #A2952 or #A3376defined in SP800-135 KDF (KDF- TLS v1.2 RFC7627)keys/SSPs storage.when the tested platform is powered down
Entropy sourcesMinimum number of bits of entropyDetails
Entropy within the TOEPP was passively Load Into the module to seed the 800- 90Arev1 DRBG by the Operating System.At least 112 bitsWhile operating in the approved mode, the entropy and seeding material for the SP800-90Arev1 DRBG are provided by the external calling application (and not by the Module) which is outside the module’s cryptographic boundary but contained within the module’s Tested Operational Environment’s Physical Perimeter (TOEPP) boundary. The module receives a LOAD command with entropy obtained from the entropy source (Intel CPU processor with instructions RDRand) inside the TOEPP. The minimum effective strength of the SP 800-90A DRBG seed is required to be at least 112 bits when used in an approved mode of operation, therefore the minimum number of bits of entropy requested when the Module makes a call to the SP 800-90Arev1 DRBG is at least 112 bits. Per the IG 9.3.A Entropy Caveats, the following caveat applies: No assurance of the minimum strength of generated SSPs (e.g., keys).

Table 8 SSPs Table 9 Non-Deterministic Random Number Generation Specification

10 Self-tests

When the module is loaded or instantiated (after being powered off, rebooted, etc.), the module runs preoperational self-tests. The operating system is responsible for the initialization process and loading of the Module. The module is designed with a default entry point (DEP) which ensures that the self-tests are initiated automatically when the module is loaded. Prior to the module providing any data output via the data output interface, the module would perform and pass the pre-operational self-tests. A software integrity test is performed on the runtime image of the module with HMAC-SHA2-512 algorithm. Prior to the firmware integrity test, the module conducts a HMAC-SHA2-512 Cryptographic Algorithm Self-test (CAST). If the CAST on the HMAC-SHA2-512 is successful, the HMAC value of the runtime image is recalculated and compared with the stored HMAC value pre-computed at compilation time. Following the successful pre-operational self-tests, the module would execute the Conditional Cryptographic Algorithm Self-tests (CASTs) for all approved cryptographic algorithms implemented by the module during powerup as well. The self-test success or failure messages were logged, which is functioning as the self-test status indicator. If any one of the self-tests fails, the module transitions into an error state and outputs the error message via the module’s status output interface. While the module is in the error state, all data through the data output interface and all cryptographic operations are disabled. The only method to recover from the error state is to power cycle the device which results in the module being reloaded into memory and

Page 17

reperforming the pre-operational software integrity test and the Conditional CASTs. The module will only enter into the operational state after successfully passing the preoperational software integrity test and the Conditional CASTs. Below are the details of the self-tests conducted by the module. Pre-operational self-tests:

Page 18

Choose

SSH

or

HTTPS

or a combination of these options to specify

System>Licenses>Smart Licenses, add and verify licenses (

Firepower Management Center

operator to perform periodic self-tests. In addition, it is recommended for the Crypto Officer to perform the periodic tests a minimum of once every 60 days to ensure all components are functioning correctly.

11 Life-cycle assurance
11.1 Secure Operations

The module meets all the Level 1 requirements for FIPS 140-3. The validated module’s executable file Cisco_Firepower_NGIPS_VMware-7.0.5-72-disk1.vmdk is the only allowable software image file running on the respective test platform listed in the Table 2 above while in the approved mode. The Crypto Officer must configure and enforce the following initialization steps: Step 1: For all Management Centers, the setup process must be completed by logging into the Management Center’s web interface and specifying initial configuration options on a setup page. which ports you want to enable for these IP addresses). Configuration Guide provides more detailed information). Install AES SMART license to use AES (for data traffic and SSH). Step 4: System > Configuration; Devices > Platform Settings; STIG Compliance, choose Enable STIG Compliance; Click on save. The CO shall only use the Approved/Allowed cryptographic algorithms listed in Section 2 above. Step 5: Reboot the security appliance.

12 Mitigation of other attacks

The requirements under INCITS+ISO+IEC 19790+2012[2014], section 7.12 “Mitigation of other attacks”, are not applicable to the module since the module currently doesn’t support any mitigation of other attacks services.