Cisco ASA VPN Security Technical Implementation Guide
Pick two releases to diff their requirements.
Open a previous version of this STIG.
Digest of Updates ✎ 2
Comparison against the immediately-prior release (V1R3). Rule matching uses the Group Vuln ID. Content-change detection compares the rule’s description, check, and fix text after stripping inline markup — cosmetic-only edits aren’t flagged.
Content changes 2
- RMF Control
- AU-3
- Severity
- L
- CCI
- CCI-000130
- Version
- CASA-VN-000010
- Vuln IDs
-
- V-239945
- Rule IDs
-
- SV-239945r666241_rule
Checks: C-43178r666239_chk
Review the ASA configuration to determine if VPN events are logged as shown in the example below. logging class vpn trap notifications logging class vpnc trap notifications logging class vpnfo trap notifications logging class webfo trap notifications logging class webvpn trap notifications logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA is not configured to log entries containing information to establish what type of VPN events occurred, this is a finding.
Fix: F-43137r666240_fix
Configure the ASA to generate logs containing information to establish what type of VPN events occurred as shown in the example below. ciscoasa(config)# logging class vpn trap notifications ciscoasa(config)# logging class vpnc trap notifications ciscoasa(config)# logging class vpnfo trap notifications ciscoasa(config)# logging class webvpn trap notifications ciscoasa(config)# logging class webfo trap notifications ciscoasa(config)# logging class svc trap notifications ciscoasa(config)# end
- RMF Control
- AU-3
- Severity
- L
- CCI
- CCI-000131
- Version
- CASA-VN-000020
- Vuln IDs
-
- V-239946
- Rule IDs
-
- SV-239946r666244_rule
Checks: C-43179r666242_chk
Verify that the logging timestamp command has been configured as shown below. logging enable logging timestamp If the ASA is not configured to generate traffic log entries containing information to establish when the events occurred, this is a finding.
Fix: F-43138r666243_fix
Configure the ASA to generate traffic log entries containing information to establish when the events occurred. ASA(config)# logging timestamp
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-001861
- Version
- CASA-VN-000080
- Vuln IDs
-
- V-239947
- Rule IDs
-
- SV-239947r987759_rule
Checks: C-43180r666245_chk
If the ASA is configured to send syslog messages to a TCP-based syslog server, and if the syslog server is down new connections are blocked. To continue to allow new connections and queue log records verify that the logging permit-hostdown and the queue size has been increased (default is 512). logging enable … … … logging queue 8192 logging host NDM_INTERFACE 10.1.22.2 6/1514 logging permit-hostdown If the ASA is not configured to queue log records locally in the event that the central audit server is down or not reachable, this is a finding.
Fix: F-43139r666246_fix
To continue to allow new connections and queue log records in the event the syslog server is not reachable, configure logging permit-hostdown and increase the queue size. ASA(config)# logging permit-hostdown ASA(config)# logging queue 8192
- RMF Control
- AU-5
- Severity
- M
- CCI
- CCI-001858
- Version
- CASA-VN-000090
- Vuln IDs
-
- V-239948
- Rule IDs
-
- SV-239948r878129_rule
Checks: C-43181r666248_chk
Review the Cisco ASA configuration to verify that it is compliant with this requirement as shown in the example below. logging trap critical logging host NDM_INTERFACE 10.1.48.10 6/1514 Note: The parameter "critical" can replaced with a lesser severity (i.e., error, warning, notice, informational). A logging list can be used as an alternative to the severity level. If the Cisco ASA is not configured to generate an alert that can be forwarded to organization-defined personnel and/or firewall administrator of all log failure events, this is a finding.
Fix: F-43140r666249_fix
Configure the Cisco ASA to send critical to emergency log messages to the syslog server as shown in the example below. ASA(config)# logging host NDM_INTERFACE 10.1.48.10 6/1514 ASA(config)# logging trap critical ASA(config)# end Note: The parameter "critical" can replaced with a lesser severity (i.e., error, warning, notice, informational). A logging list can be used as an alternative to the severity level.
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000185
- Version
- CASA-VN-000120
- Vuln IDs
-
- V-239949
- Rule IDs
-
- SV-239949r666253_rule
Checks: C-43182r666251_chk
If PKI certificates are not implemented on the ASA, this requirement is not applicable. Step 1: Review the ASA configuration to determine if a CA trust point has been configured as shown in the example below. crypto ca trustpoint CA_X Step 2: Verify the CA is a DoD or DoD-approved service provider by entering the following command: show crypto ca certificates The output will list the following information for each certificate: Associated Trustpoints: (will map to a configured trustpoint from Step 1) Common Name (CN) of the issuer Organization Unit (OU) of the issuer Organization (O) of the issuer Validity Date If the ASA is not configured to obtain its public key certificates from a DoD or DoD-approved service provider, this is a finding.
Fix: F-43141r666252_fix
Ensure that certificate requests are only sent to DoD or DoD-approved service providers.
- RMF Control
- CM-6
- Severity
- H
- CCI
- CCI-000366
- Version
- CASA-VN-000130
- Vuln IDs
-
- V-239950
- Rule IDs
-
- SV-239950r997474_rule
Checks: C-43183r666254_chk
If PKI certificates are not implemented on the ASA, this requirement is not applicable. Verify the ASA does not accept certificates that have been revoked. Revocation checking using CRL example: crypto ca trustpoint CA_X revocation-check crl Note: By default, the ASA will use the distribution points listed in CDP extension of the certificate that is being validated. Revocation checking using OCSP example: crypto ca trustpoint CA_X revocation-check ocsp Note: By default, the ASA will use the OSCP responder address found in the Authority Information Access (AIA) field of the client's certificate. Deployment with CAC would be an exception. If the ASA accepts certificates that have been revoked, this is a finding.
Fix: F-43142r666255_fix
Configure the ASA to not accept certificates that have been revoked. Revocation checking using CRL example: ASA1(config)# crypto ca trustpoint CA_X ASA1(config-ca-trustpoint)# revocation-check crl ASA1(config-ca-crl)# end Revocation checking using OCSP example: ASA1(config)# crypto ca trustpoint CA_X ASA1(config-ca-trustpoint)# revocation-check ocsp ASA1(config-ca-crl)# end
- RMF Control
- CM-6
- Severity
- H
- CCI
- CCI-000366
- Version
- CASA-VN-000150
- Vuln IDs
-
- V-239951
- Rule IDs
-
- SV-239951r666259_rule
Checks: C-43184r666257_chk
Step 1: Verify that IKE is configured for the IPsec Phase 1 policy and enabled on applicable interfaces. crypto ikev2 policy 1 encryption … crypto ikev2 enable OUTSIDE Step 2: Verify that IKE is configured for the IPsec Phase 2. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp encryption … Note: Although IKEv2 is preferred, IKEv1 will meet the intent of this requirement. If the IKE is not configured for all IPsec security associations, this is a finding.
Fix: F-43143r666258_fix
Configure the ASA to use IKE for all IPsec VPN SAs. Step 1: Configure IKE for the IPsec Phase 1 policy and enable it on applicable interfaces. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# encryption … ASA1(config)# crypto ikev2 enable OUTSIDE Step 2: Configure IKE for the IPsec Phase 2. ASA1(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS
- RMF Control
- CM-7
- Severity
- M
- CCI
- CCI-000382
- Version
- CASA-VN-000160
- Vuln IDs
-
- V-239952
- Rule IDs
-
- SV-239952r666262_rule
Checks: C-43185r666260_chk
Verify the ASA is configured to use IKEv2 for IPsec VPN security associations. Step 1: Verify that IKE is configured for the IPsec Phase 1 policy and enabled on applicable interfaces. crypto ikev2 policy 1 encryption … crypto ikev2 enable OUTSIDE Step 2: Verify that IKE is configured for the IPsec Phase 2. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp encryption … If the ASA is not configured to use IKEv2 for all IPsec VPN security associations, this is a finding.
Fix: F-43144r666261_fix
Configure the IPsec VPN Gateway to use IKEv2 for all IPsec VPN Security Associations. Step 1: Configure IKE for the IPsec Phase 1 policy and enable it on applicable interfaces. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# encryption … ASA1(config)# crypto ikev2 enable OUTSIDE Step 2: Configure IKE for the IPsec Phase 2. ASA1(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS
- RMF Control
- SC-13
- Severity
- M
- CCI
- CCI-002450
- Version
- CASA-VN-000170
- Vuln IDs
-
- V-239953
- Rule IDs
-
- SV-239953r916122_rule
Checks: C-43186r916120_chk
Verify the ASA uses a NIST FIPS-validated cryptography for IKE Phase 1 as shown in the example below. crypto ikev2 policy 1 encryption aes-256 If the ASA is not configured to use NIST FIPS-validated cryptography for IKE Phase 1, this is a finding.
Fix: F-43145r916121_fix
Configure the ASA to use NIST FIPS-validated cryptography for IKE Phase 1. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# encryption aes-256
- RMF Control
- SC-8
- Severity
- M
- CCI
- CCI-002418
- Version
- CASA-VN-000180
- Vuln IDs
-
- V-239954
- Rule IDs
-
- SV-239954r916233_rule
Checks: C-43187r666266_chk
Review crypto maps that reference an IPsec proposal. Verify the ASA is configured to specify PFS as shown in the example below. crypto map IPSEC_CRYPTO_MAP 1 set pfs group5 crypto map IPSEC_CRYPTO_MAP 1 set peer x.x.x.x crypto map IPSEC_CRYPTO_MAP 1 set ikev2 ipsec-proposal IPSEC_TRANS If the ASA is not configured to specify PFS for the IPsec SA during IKE Phase 2 negotiation, this is a finding.
Fix: F-43146r666267_fix
Configure the ASA to specify PFS for the IPsec SA during IKE Phase 2 negotiation as shown in the example below. ASA3(config)# crypto map IPSEC_CRYPTO_MAP 1 set pfs group5
- RMF Control
- SC-13
- Severity
- M
- CCI
- CCI-002450
- Version
- CASA-VN-000190
- Vuln IDs
-
- V-239955
- Rule IDs
-
- SV-239955r916125_rule
Checks: C-43188r916123_chk
Verify the ASA is configured to use a FIPS-validated cryptographic module to generate cryptographic hashes. Step 1: Verify that a FIPS-validated hash is used for IKE Phase 1 as shown in the example below. crypto ikev2 policy 1 … … … integrity sha384 Step 2: Verify that a FIPS-validated hash is used for the IPsec SA. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp integrity sha-384 If the ASA is not configured to use a FIPS-validated cryptographic module to generate cryptographic hashes, this is a finding.
Fix: F-43147r916124_fix
Configure the ASA to use a FIPS-validated cryptographic module to generate cryptographic hashes as shown in the examples below. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# integrity sha384 ASA1(config-ikev2-policy)# exit ASA1(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS ASA1(config-ipsec-proposal)# protocol esp integrity sha-384 ASA1(config-ipsec-proposal)# end
- RMF Control
- SC-13
- Severity
- M
- CCI
- CCI-002450
- Version
- CASA-VN-000200
- Vuln IDs
-
- V-239956
- Rule IDs
-
- SV-239956r916128_rule
Checks: C-43189r916126_chk
Verify the ASA uses a FIPS-validated cryptographic module to implement IPsec encryption services. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp encryption aes-256 If the ASA is not configured to use a FIPS-validated cryptographic module to implement IPsec encryption services, this is a finding.
Fix: F-43148r916127_fix
Configure the ASA to use a FIPS-validated cryptographic module to implement IPsec encryption services as shown in the example below. ASA2(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS ASA2(config-ipsec-proposal)# protocol esp encryption aes-256
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- CASA-VN-000210
- Vuln IDs
-
- V-239957
- Rule IDs
-
- SV-239957r916149_rule
Checks: C-43190r916129_chk
Review the ASA configuration to determine if DH Group of 16 or greater has been specified for IKE Phase 1 as shown in the example below. crypto ikev2 policy 1 encryption aes-256 … group 24 If DH Group of 16 or greater has not been specified for IKE Phase 1, this is a finding.
Fix: F-43149r916130_fix
Configure the ASA to use a DH Group of 16 or greater as shown in the example below. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# group 24
- RMF Control
- IA-7
- Severity
- M
- CCI
- CCI-000803
- Version
- CASA-VN-000230
- Vuln IDs
-
- V-239958
- Rule IDs
-
- SV-239958r916134_rule
Checks: C-43191r916132_chk
Review the ASA configuration to verify that SHA-2 at 384 bits or higher is specified for IKE Phase 1 as shown in the example below. crypto ikev2 policy 1 … integrity sha384 If the ASA is not configured to use SHA-2 at 384 bits or higher for IKE Phase 1, this is a finding.
Fix: F-43150r916133_fix
Configure the ASA to use FIPS-validated SHA-2 at 384 bits or higher for IKE Phase 1 as shown in the example below. ASA2(config)# crypto ikev2 policy 1 ASA2(config-ikev2-policy)# integrity sha384
- RMF Control
- SC-23
- Severity
- H
- CCI
- CCI-001184
- Version
- CASA-VN-000240
- Vuln IDs
-
- V-239959
- Rule IDs
-
- SV-239959r916152_rule
Checks: C-43192r769247_chk
Review the ASA configuration to verify that SHA-2 or higher is specified for IKE Phase 2 as shown in the example below. Step 1: Review the crypto map for IKE Phase 2. crypto map IPSEC_MAP 10 set ikev2 ipsec-proposal AES_SHA Step 2: Verify that the proposal specifies SHA-2 or higher. crypto ipsec ikev2 ipsec-proposal AES_SHA protocol esp encryption … protocol esp integrity sha-384 sha-256 If the ASA is not configured to use SHA-2 or higher for IKE Phase 2, this is a finding.
Fix: F-43151r769248_fix
Configure the ASA to use FIPS-validated SHA-2 or higher for IKE Phase 2. Step 1: Configure the IKE Phase 2 proposal as shown in the example below. ASA1(config)# crypto ipsec ikev2 ipsec-proposal AES_SHA ASA1(config-ipsec-proposal)# protocol esp integrity sha-384 sha-256 ASA1(config-ipsec-proposal)# exit Step 2: Configure the crypto map using the configured proposal. ASA1(config)# crypto map IPSEC_MAP 10 set ikev2 ipsec-proposal ASA1(config)# end
- RMF Control
- AC-4
- Severity
- M
- CCI
- CCI-001414
- Version
- CASA-VN-000300
- Vuln IDs
-
- V-239960
- Rule IDs
-
- SV-239960r666286_rule
Checks: C-43193r666284_chk
Step 1: Determine the ACL that is used to define what traffic will be transported via the IPsec tunnel. crypto map IPSEC_MAP 10 match address SITE1_SITE2 crypto map IPSEC_MAP 10 set peer x.x.x.x Step 2: Verify that the traffic defined in the ACL is in accordance with flow control policies. access-list SITE1_SITE2 extended permit ip 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0 If the VPN gateway is not configured to restrict what traffic is transported via the IPsec tunnel, this is a finding.
Fix: F-43152r666285_fix
Step 1: Define what traffic will be transported via the IPsec tunnel as shown in the example below. ASA1(config)# access-list SITE1_SITE2 extended permit ip 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0 Step 2: Apply the ACL to the IPsec crypto map. ASA1(config)# crypto map IPSEC_MAP 10 match address SITE1_SITE2
- RMF Control
- IA-3
- Severity
- M
- CCI
- CCI-000778
- Version
- CASA-VN-000310
- Vuln IDs
-
- V-239961
- Rule IDs
-
- SV-239961r666289_rule
Checks: C-43194r666287_chk
Verify the VPN Gateway authenticate all peers before establishing a connection as shown in the example below. tunnel-group x.x.x.x type ipsec-l2l tunnel-group x.x.x.x ipsec-attributes ikev2 remote-authentication pre-shared-key ***** ikev2 local-authentication pre-shared-key ***** Note: Authentication can be either pre-shared key or certificate. If the VPN Gateway does not uniquely identify and authenticate all peers establishing a connection, this is a finding.
Fix: F-43153r666288_fix
Configure the VPN Gateway to authenticate all peers before establishing a connection. ASA1(config)# tunnel-group x.x.x.x type ipsec-l2l ASA1(config)# tunnel-group x.x.x.x ipsec-attributes ASA1(config-tunnel-ipsec)# ikev2 remote-authentication pre-shared-key xxxxxxx ASA1(config-tunnel-ipsec)# ikev2 local-authentication pre-shared-key xxxxxxx ASA1(config-tunnel-ipsec)# end Note: The password complexity of pre-shared keys must be in compliance with NIST SP 800-53 control IA-5.
- RMF Control
- SC-13
- Severity
- H
- CCI
- CCI-002450
- Version
- CASA-VN-000340
- Vuln IDs
-
- V-239962
- Rule IDs
-
- SV-239962r878134_rule
Checks: C-43195r856169_chk
Verify the VPN gateway is configured to use cryptography that is compliant with CSNA/CNSSP when transporting classified traffic across an unclassified network. Step 1: Verify CSNA/CNSSP-15 parameters have been configured for IKE Phase 1 as shown in the example below. crypto ikev2 policy 2 encryption aes-256 integrity null group 19 prf sha384 Step 2: Determine the crypto map for IKE Phase 2 used in compliance with CSNA/CNSSP-15. crypto map CSNA_MAP 10 set ikev2 ipsec-proposal aes-256 Step 3: Verify the proposal specifies AES 256 parameters. crypto ipsec ikev2 ipsec-proposal AES-256 protocol esp encryption aes-256 If the VPN gateway is not configured to use cryptography that is compliant with CSNA/CNSSP-15 parameters when transporting classified traffic across an unclassified network, this is a finding.
Fix: F-43154r856170_fix
Configure the VPN gateway to use cryptography that is compliant with CSNA/CNSSP-15 parameters when transporting classified traffic across an unclassified network as shown in the example below. Step 1: Configure the IKE Phase 1. ASA2(config)# crypto ikev2 policy 2 ASA2(config-ikev2-policy)# encryption aes-256 ASA2(config-ikev2-policy)# integrity null ASA2(config-ikev2-policy)# group 20 ASA2(config-ikev2-policy)# prf sha384 ASA2(config-ikev2-policy)# exit Step 2: Configure the IPsec proposal for AES 256 and apply to a crypto map as shown in the example below. ASA2(config-ipsec-proposal)# protocol esp encryption aes-256 ASA2(config-ipsec-proposal)# exit ASA2(config)# crypto map CSNA_MAP 10 set ikev2 ipsec-proposal AES-256 ASA2(config)# end
- RMF Control
- Severity
- M
- CCI
- CCI-004895
- Version
- CASA-VN-000350
- Vuln IDs
-
- V-239963
- Rule IDs
-
- SV-239963r991817_rule
Checks: C-43196r666293_chk
Verify the VPN gateway renegotiates the security association after eight hours or less as shown in the example below. crypto map IPSEC_MAP 10 match address SITE1_SITE2 crypto map IPSEC_MAP 10 set peer x.x.x.x … … … crypto map IPSEC_MAP 10 set security-association lifetime seconds 3600 If the VPN Gateway does not renegotiate the security association after eight hours or less, this is a finding.
Fix: F-43155r666294_fix
Configure the VPN gateway to renegotiate the security association after eight hours or less as shown in the example below. ASA1(config)# crypto map IPSEC_MAP 10 set security-association lifetime seconds 28800 ASA1(config)# end
- RMF Control
- Severity
- M
- CCI
- CCI-004895
- Version
- CASA-VN-000360
- Vuln IDs
-
- V-239964
- Rule IDs
-
- SV-239964r991818_rule
Checks: C-43197r666296_chk
Verify the VPN gateway renegotiates the IKE security association after 24 hours or less as shown in the example below. crypto ikev2 policy 2 encryption … … … … lifetime seconds 86400 If the VPN gateway does not renegotiate the IKE security association after 24 hours or less, this is a finding.
Fix: F-43156r666297_fix
Configure the VPN gateway to renegotiate the IKE security association after 24 hours or less as shown in the example below. ASA2(config)# crypto ikev2 policy 2 ASA2(config-ikev2-policy)# lifetime seconds 86400 ASA2(config-ikev2-policy)# end
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000187
- Version
- CASA-VN-000390
- Vuln IDs
-
- V-239965
- Rule IDs
-
- SV-239965r666301_rule
Checks: C-43198r666299_chk
In the example below, radius server at 10.1.1.2 is used for administrative access authentication while the LDAP server will be used for granting remote access to the network. aaa-server LDAP protocol ldap aaa-server LDAP (INSIDE) host 10.1.1.1 … … … aaa-server RADIUS_GROUP protocol radius aaa-server RADIUS_GROUP (INSIDE) host 10.1.1.2 key ***** … … … aaa authentication serial console RADIUS_GROUP LOCAL aaa authentication ssh console RADIUS_GROUP LOCAL If the ASA is not configured to use a separate authentication server than that used for administrative access, this is a finding.
Fix: F-43157r666300_fix
Configure the ASA to use a separate authentication server as shown in the example below. ASA2(config)# aaa-server LDAP protocol ldap ASA2(config)# aaa-server LDAP (INSIDE) host 10.1.1.1
- RMF Control
- AC-24
- Severity
- M
- CCI
- CCI-002353
- Version
- CASA-VN-000400
- Vuln IDs
-
- V-239966
- Rule IDs
-
- SV-239966r987748_rule
Checks: C-43199r666302_chk
Step 1: Verify that authorization is enforced as shown in the example below. tunnel-group ANY_CONNECT type remote-access tunnel-group ANY_CONNECT general-attributes authorization-server-group LDAP authorization-required Step 2: Verify that LDAP over SSL has been enabled. aaa-server LDAP protocol ldap aaa-server LDAP (INSIDE) host 10.1.1.1 ldap-over-ssl enable If the ASA is not configured to use LDAP over SSL to determine authorization for granting access to the network, this is a finding.
Fix: F-43158r666303_fix
Step 1: Configure the ASA to use LDAP over SSL as shown in the example below. ASA2(config)# aaa-server LDAP protocol ldap ASA2(config)# aaa-server LDAP (INSIDE) host 10.1.1.1 ASA2(config-aaa-server-host)# ldap-over-ssl enable ASA2(config-aaa-server-host)# exit Step 2: Configure the ASA to enforce authorization using the common name (CN) from the user’s certificate. ASA2(config)# tunnel-group ANY_CONNECT general-attributes ASA2(config-tunnel-general)# authorization-required ASA2(config-tunnel-general)# authorization-server-group LDAP ASA2(config-tunnel-general)# end
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-000764
- Version
- CASA-VN-000410
- Vuln IDs
-
- V-239967
- Rule IDs
-
- SV-239967r666307_rule
Checks: C-43200r666305_chk
Verify the ASA is configured to uniquely identify and authenticate users before granting access to the network as shown in the example below. tunnel-group ANY_CONNECT type remote-access tunnel-group ANY_CONNECT webvpn-attributes authentication certificate If the ASA is not configured to identify and authenticate users before granting access to the network, this is a finding.
Fix: F-43159r666306_fix
Configure the ASA to uniquely identify and authenticate users before granting access to the network. ASA1(config)# tunnel-group ANY_CONNECT webvpn-attributes ASA1(config-tunnel-webvpn)# authentication certificate ASA1(config-tunnel-webvpn)# end
- RMF Control
- IA-2
- Severity
- H
- CCI
- CCI-000766
- Version
- CASA-VN-000440
- Vuln IDs
-
- V-239968
- Rule IDs
-
- SV-239968r954210_rule
Checks: C-43201r666308_chk
Review the ASA configuration to verify that it enforces certificate-based authentication before granting access to the network as shown in the example below. tunnel-group ANY_CONNECT type remote-access tunnel-group ANY_CONNECT webvpn-attributes authentication certificate If the ASA configuration does not enforce certificate-based authentication before granting access to the network, this is a finding.
Fix: F-43160r666309_fix
Configure the ASA to enforce certificate-based authentication before granting access to the network as shown in the example below. ASA1(config)# tunnel-group ANY_CONNECT webvpn-attributes ASA1(config-tunnel-webvpn)# authentication certificate ASA1(config-tunnel-webvpn)# end
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000187
- Version
- CASA-VN-000450
- Vuln IDs
-
- V-239969
- Rule IDs
-
- SV-239969r929014_rule
Checks: C-43202r929012_chk
Review the tunnel group configured for remote access and verify that the DN or UPN from the client’s certificate is used to map to entries in the authentication server to determine authorization as shown in the example below. tunnel-group ANY_CONNECT type remote-access tunnel-group ANY_CONNECT general-attributes authorization-server-group LDAP authorization-required username-from-certificate use-entire-name If the ASA is not configured to map the distinguished name or UPN from the client’s certificate to entries in the authentication server to determine authorization, this is a finding.
Fix: F-43161r929013_fix
Configure the ASA to map the DN or UPN from the client’s certificate to entries in the authentication server to determine authorization as shown in the example. ASA2(config)# tunnel-group ANY_CONNECT general-attributes ASA2(config-tunnel-general)# authorization-required ASA2(config-tunnel-general)# authorization-server-group LDAP ASA2(config-tunnel-general)# username-from-certificate username-from-certificate use-entire-name ASA2(config-tunnel-general)# end
- RMF Control
- AC-8
- Severity
- M
- CCI
- CCI-000048
- Version
- CASA-VN-000460
- Vuln IDs
-
- V-239970
- Rule IDs
-
- SV-239970r666316_rule
Checks: C-43203r666314_chk
Verify that the ASA is configured to display the Standard Mandatory DoD Notice and Consent Banner before granting remote access to the network as shown in the example below. group-policy GROUP_POLICY_ANYCONNECT attributes banner value I've read & consent to terms in IS user agreem't. If the ASA is not configured to display the Standard Mandatory DoD Notice and Consent Banner before granting remote access to the network, this is a finding.
Fix: F-43162r666315_fix
Configure the ASA to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the network as shown in the example below. ASA3(config)# group-policy GROUP_POLICY_ANYCONNECT attributes ASA3(config-group-policy)# banner value I've read & consent to terms in IS user agreem't. ASA3(config-group-policy)# end
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-001487
- Version
- CASA-VN-000500
- Vuln IDs
-
- V-239971
- Rule IDs
-
- SV-239971r666319_rule
Checks: C-43204r666317_chk
Review the ASA configuration to determine if VPN events are logged as shown in the example below. logging class vpn trap notifications logging class vpnc trap notifications logging class vpnfo trap notifications logging class webfo trap notifications logging class webvpn trap notifications logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA is not configured to log entries containing information to establish the identity of any individual or process associated with the event, this is a finding.
Fix: F-43163r666318_fix
Configure the ASA to generate logs containing information to establish the identity of any individual or process associated with the event as shown in the example below. ciscoasa(config)# logging class vpn trap notifications ciscoasa(config)# logging class vpnc trap notifications ciscoasa(config)# logging class vpnfo trap notifications ciscoasa(config)# logging class webvpn trap notifications ciscoasa(config)# logging class webfo trap notifications ciscoasa(config)# logging class svc trap notifications ciscoasa(config)# end
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000132
- Version
- CASA-VN-000510
- Vuln IDs
-
- V-239972
- Rule IDs
-
- SV-239972r666322_rule
Checks: C-43205r666320_chk
Review the ASA configuration to determine if VPN events are logged as shown in the example below. logging class vpn trap notifications logging class vpnc trap notifications logging class vpnfo trap notifications logging class webfo trap notifications logging class webvpn trap notifications logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA does not generate log records containing information to establish where the events occurred, this is a finding.
Fix: F-43164r666321_fix
Configure the ASA to generate log records containing information to establish where the events occurred as shown in the example below. ciscoasa(config)# logging class vpn trap notifications ciscoasa(config)# logging class vpnc trap notifications ciscoasa(config)# logging class vpnfo trap notifications ciscoasa(config)# logging class webvpn trap notifications ciscoasa(config)# logging class webfo trap notifications ciscoasa(config)# logging class svc trap notifications ciscoasa(config)# end
- RMF Control
- AU-3
- Severity
- L
- CCI
- CCI-000133
- Version
- CASA-VN-000520
- Vuln IDs
-
- V-239973
- Rule IDs
-
- SV-239973r666325_rule
Checks: C-43206r666323_chk
Verify the ASA generates log records containing information to establish the source of the events as shown in the example below. logging class vpn trap notifications logging class vpnc trap notifications logging class vpnfo trap notifications logging class webfo trap notifications logging class webvpn trap notifications logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA does not generate log records containing information to establish the source of the events, this is a finding.
Fix: F-43165r666324_fix
Configure the ASA to generate log records containing information to establish the source of the events as shown in the example below. ciscoasa(config)# logging class vpn trap notifications ciscoasa(config)# logging class vpnc trap notifications ciscoasa(config)# logging class vpnfo trap notifications ciscoasa(config)# logging class webvpn trap notifications ciscoasa(config)# logging class webfo trap notifications ciscoasa(config)# logging class svc trap notifications ciscoasa(config)# end
- RMF Control
- AU-3
- Severity
- M
- CCI
- CCI-000134
- Version
- CASA-VN-000530
- Vuln IDs
-
- V-239974
- Rule IDs
-
- SV-239974r666328_rule
Checks: C-43207r666326_chk
Verify the ASA generates log records containing information to establish the outcome of the events as shown in the example below. logging class vpn trap notifications logging class vpnc trap notifications logging class vpnfo trap notifications logging class webfo trap notifications logging class webvpn trap notifications logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA does not generate log records containing information to establish the source of the events, this is a finding.
Fix: F-43166r666327_fix
Configure the ASA to generate log entries containing information to establish the outcome of the events as shown in the example below. ciscoasa(config)# logging class vpn trap notifications ciscoasa(config)# logging class vpnc trap notifications ciscoasa(config)# logging class vpnfo trap notifications ciscoasa(config)# logging class webvpn trap notifications ciscoasa(config)# logging class webfo trap notifications ciscoasa(config)# logging class svc trap notifications ciscoasa(config)# end
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- CASA-VN-000550
- Vuln IDs
-
- V-239975
- Rule IDs
-
- SV-239975r666331_rule
Checks: C-43208r666329_chk
Verify the TLS ASA is configured to use TLS 1.2 or higher as shown in the example below. ssl server-version tlsv1.2 dtlsv1.2 Note: ASA supports TLS version 1.2 starting from software version 9.3.1 for secure message transmission for Clientless SSL VPN and AnyConnect VPN. If the ASA is not configured to use TLS 1.2 or higher to protect the confidentiality of sensitive data during transmission, this is a finding.
Fix: F-43167r666330_fix
Configure the ASA to use TLS 1.2 or higher as shown in the example below. ASA1(config)# ssl server-version tlsv1.2 dtlsv1.2
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-001453
- Version
- CASA-VN-000560
- Vuln IDs
-
- V-239976
- Rule IDs
-
- SV-239976r769253_rule
Checks: C-43209r666332_chk
Verify the remote access ASA uses a FIPS-validated algorithms and hash function as shown in the example below. ssl server-version tlsv1.2 ssl cipher tlsv1.2 fips If the remote access ASA does not use a digital signature generated using FIPS-validated algorithms and hash function, this is a finding.
Fix: F-43168r666333_fix
Configure the remote access ASA to use a digital signature generated using FIPS-validated algorithms and an approved hash. ASA1(config)# ssl cipher tlsv1.2 fips ASA1(config)# end
- RMF Control
- SC-23
- Severity
- M
- CCI
- CCI-001188
- Version
- CASA-VN-000610
- Vuln IDs
-
- V-239977
- Rule IDs
-
- SV-239977r666337_rule
Checks: C-43210r666335_chk
Review the ASA configuration to verify that FIPS mode has been enabled as shown in the example below. ASA Version x.x ! hostname ASA1 fips enable If the ASA is not configured to be enabled in FIPS mode, this is a finding.
Fix: F-43169r666336_fix
Configure the ASA to have FIPS-mode enabled as shown in the example below. ASA1(config)# fips enable ASA1(config)# end Note: FIPS mode change will not take effect until the configuration is saved and the device rebooted.
- RMF Control
- AC-17
- Severity
- M
- CCI
- CCI-001453
- Version
- CASA-VN-000630
- Vuln IDs
-
- V-239978
- Rule IDs
-
- SV-239978r916146_rule
Checks: C-43211r916135_chk
Verify that the ASA uses SHA-2 at 384 bits or greater for hashing to protect the integrity of IPsec remote access sessions as shown in the example below. Step 1: Verify that SHA-2 at 384 bits or greater is used for IKE Phase 1 as shown in the example below. crypto ikev2 policy 1 … … … integrity sha384 Step 2: Verify that SHA-2 at 384 bits or greater is used for the IPsec Security Association. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp integrity sha-384 If the ASA does not use SHA-2 at 384 bits or greater for hashing to protect the integrity of IPsec remote access sessions, this is a finding.
Fix: F-43170r916136_fix
Configure the ASA to use SHA-2 at 384 bits or greater for hashing to protect the integrity of IPsec remote access sessions as shown in the example below. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# integrity sha384 ASA1(config-ikev2-policy)# exit ASA1(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS ASA1(config-ipsec-proposal)# protocol esp integrity sha-384 ASA1(config-ikev2-policy)# end
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- CASA-VN-000640
- Vuln IDs
-
- V-239979
- Rule IDs
-
- SV-239979r987747_rule
Checks: C-43212r916138_chk
Verify IKE Phase 1 is set to use an AES256 or greater encryption algorithm as shown in the example below. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp encryption aes-256 If the value of the encryption algorithm for IKE Phase 1 is not set to use an AES256 or greater algorithm, this is a finding.
Fix: F-43171r916139_fix
Configure the ASA to use AES256 or greater encryption algorithm for IKE Phase 1 as shown in the example below. ASA1(config)# crypto ikev2 policy 1 ASA1(config-ikev2-policy)# encryption aes-256
- RMF Control
- AC-17
- Severity
- H
- CCI
- CCI-000068
- Version
- CASA-VN-000650
- Vuln IDs
-
- V-239980
- Rule IDs
-
- SV-239980r916158_rule
Checks: C-43213r916141_chk
Verify all IPsec proposals are set to use the AES256 or greater encryption algorithm as shown in the example below. crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS protocol esp encryption aes-256 If the value of the encryption algorithm for any IPsec proposal is not set to use an AES256 or greater algorithm, this is a finding.
Fix: F-43172r916142_fix
Configure the ASA to use AES256 or greater encryption algorithm to implement IPsec encryption services as shown in the example below. ASA2(config)# crypto ipsec ikev2 ipsec-proposal IPSEC_TRANS ASA2(config-ipsec-proposal)# protocol esp encryption aes-256 ASA2(config-ipsec-proposal)# end
- RMF Control
- IA-2
- Severity
- M
- CCI
- CCI-001953
- Version
- CASA-VN-000660
- Vuln IDs
-
- V-239981
- Rule IDs
-
- SV-239981r856175_rule
Checks: C-43214r666347_chk
Verify the ASA accepts CAC credentials as shown in the example below. tunnel-group ANY_CONNECT type remote-access tunnel-group ANY_CONNECT webvpn-attributes authentication certificate If the ASA does not accept PIV credentials, this is a finding.
Fix: F-43173r666348_fix
Configure the ASA to accept CAC credentials as shown in the example below. ASA1(config)# tunnel-group ANY_CONNECT webvpn-attributes ASA1(config-tunnel-webvpn)# authentication certificate ASA1(config-tunnel-webvpn)# end
- RMF Control
- SC-7
- Severity
- M
- CCI
- CCI-002397
- Version
- CASA-VN-000700
- Vuln IDs
-
- V-239982
- Rule IDs
-
- SV-239982r929016_rule
Checks: C-43215r929015_chk
Verify the ASA disables split-tunneling for remote clients VPNs as shown in the example below. group-policy ANY_CONNECT_GROUP attributes … … … split-tunnel-policy tunnelall If the ASA does not disable split-tunneling for remote clients VPNs, this is a finding. Note: Certain cloud products require direct connectivity to operate correctly. These items may be excluded from the split tunneling restriction if documented and approved. If split-tunneling for remote client VPNs is enabled by the above exception, verify only authorized external destinations are excluded from tunneling as shown in the example below: Webvpn anyconnect-custom-attr dynamic-split-exclude-domains description DoD IL5 Authorized Destinations anyconnect-custom-data dynamic-split-exclude-domains DoD-IL5 dod.teams.microsoft.us,azureedge.net,core.usgovcloudapi.net,streaming.media.usgovcloudapi.net,wvd.azure.us,cdn.office365.us anyconnect-custom dynamic-split-exclude-domains value DoD-IL5 If any unauthorized exempted connections exist, this is a finding.
Fix: F-43174r666351_fix
Configure the ASA to disable split-tunneling for remote clients VPNs as shown in the example below. ASA2(config)# group-policy ANY_CONNECT_GROUP attributes ASA2(config-group-policy)# split-tunnel-policy tunnelall ASA2(config-group-policy)# end
- RMF Control
- AU-12
- Severity
- M
- CCI
- CCI-000172
- Version
- CASA-VN-000720
- Vuln IDs
-
- V-239983
- Rule IDs
-
- SV-239983r666355_rule
Checks: C-43216r666353_chk
Verify the ASA generates log records when successful and/or unsuccessful VPN connection attempts occur as shown in the example below. logging host INDM_INTERFACE 10.1.1.12 logging class svc trap notifications Note: A logging list can be used as an alternative to using class. If the ASA does not generate log records when successful and/or unsuccessful VPN connection attempts occur, this is a finding.
Fix: F-43175r666354_fix
Configure the ASA to generate log records when successful and/or unsuccessful VPN connection attempts occur as shown in the example below. ASA2(config)# logging class svc trap notifications
- RMF Control
- IA-5
- Severity
- M
- CCI
- CCI-000185
- Version
- CASA-VN-000730
- Vuln IDs
-
- V-239984
- Rule IDs
-
- SV-239984r666358_rule
Checks: C-43217r666356_chk
Verify the ASA validates TLS certificates by performing RFC 5280-compliant certification path validation. Review the ASA configuration to determine if a CA trust point has been configured as shown in the example below. crypto ca trustpoint CA_X enrollment … validation-usage ipsec-client validation-usage ssl-client If the ASA does not validate certificates used for TLS functions by performing RFC 5280-compliant certification path validation, this is a finding.
Fix: F-43176r666357_fix
Configure the ASA to validate certificates used for TLS functions by performing RFC 5280- compliant certification path validation as shown in the example below. ASA2(config)# crypto ca trustpoint CA_X ASA2(config-ca-trustpoint)# validation-usage ssl-client ASA2(config-ca-trustpoint)# validation-usage ipsec-client
- RMF Control
- SC-13
- Severity
- H
- CCI
- CCI-002450
- Version
- CASA-VN-000760
- Vuln IDs
-
- V-239985
- Rule IDs
-
- SV-239985r878134_rule
Checks: C-43218r856177_chk
Verify the ASA uses an approved High Assurance CSfC cryptographic algorithm for remote access to a classified network. Step 1: Verify IKE Phase 1 is configured in compliance with CSNA/CNSSP-15 parameters as shown in the example below. crypto ikev2 policy 2 encryption aes-256 integrity null group 19 prf sha384 Step 2: Determine the crypto map for IKE Phase 2 used is in compliance with CSNA/CNSSP-15 as in the example below. crypto map CSNA_MAP 10 set ikev2 ipsec-proposal AES-256 Step 3: Verify the proposal specifies CSNA/CNSSP-15 parameters. crypto ipsec ikev2 ipsec-proposal AES-256 protocol esp encryption aes-256 If the ASA is not configured to use an approved High Assurance CSfC cryptographic algorithm for remote access to a classified network, this is a finding.
Fix: F-43177r856178_fix
Configure the ASA to use an approved High Assurance CSfC cryptographic algorithm for remote access to a classified network. Step 1: Configure the IKE Phase 1. ASA2(config)# crypto ikev2 policy 2 ASA2(config-ikev2-policy)# encryption aes-256 ASA2(config-ikev2-policy)# integrity null ASA2(config-ikev2-policy)# group 20 ASA2(config-ikev2-policy)# prf sha384 ASA2(config-ikev2-policy)# exit Step 2: Configure the IPsec proposal in compliance with CNSA/CNSSP-15 and apply to a crypto map as shown in the example below. ASA2(config-ipsec-proposal)# protocol esp encryption aes-256 ASA2(config-ipsec-proposal)# exit ASA2(config)# crypto map CSNA_MAP 10 set ikev2 ipsec-proposal AES-256 ASA2(config)# end