Select any two versions of this STIG to compare the individual requirements
Select any old version/release of this STIG to view the previous requirements
Note: This requirement is not applicable to file transfer actions such as FTP, SCP and SFTP. Review the router configuration to determine if concurrent management sessions are limited as show in the example below: ip http secure-server ip http max-connections 2 … … … line vty 0 1 transport input ssh line vty 2 4 transport input none If the router is not configured to limit the number of concurrent management sessions, this is a finding.
Configure the router to limit the number of concurrent management sessions to an organization-defined number as shown in the example below. R4(config)#ip http max-connections 2 R4(config)#line vty 0 1 R4(config-line)#transport input ssh R4(config-line)#exit R4(config)#line vty 2 4 R4(config-line)# transport input none R4(config-line)#end
Review the router configuration to determine if it automatically audits account creation. The configuration should look similar to the example below: archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If account creation is not automatically audited, this is a finding.
Configure the router to log account creation using the following commands: R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the router configuration to determine if it automatically audits account modification. The configuration should look similar to the example below: archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If account modification is not automatically audited, this is a finding.
Configure the router to log account modification using the following commands: R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the router configuration to determine if it automatically audits account disabling. The configuration should look similar to the example below: archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If account disabling is not automatically audited, this is a finding.
Configure the router to log account disabling using the following commands: R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the router configuration to determine if it automatically audits account removal. The configuration should look similar to the example below: archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If account removal is not automatically audited, this is a finding.
Configure the router to log account removal using the following commands: R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the Cisco router configuration to verify that it is compliant with this requirement. Step 1: Verify that the line vty has an ACL inbound applied as shown in the example below. line vty 0 1 access-class MANAGEMENT_NET in transport input ssh Step 2: Verify that the ACL permits only hosts from the management network to access the router. ip access-list extended MANAGEMENT_NET permit ip x.x.x.0 0.0.0.255 any deny ip any any log-input If the Cisco router is not configured to enforce approved authorizations for controlling the flow of management information within the device based on control policies, this is a finding.
Configure the Cisco router to restrict management access to specific IP addresses via SSH as shown in the example below. SW2(config)#ip access-list standard MANAGEMENT_NET SW2(config-std-nacl)#permit x.x.x.0 0.0.0.255 SW2(config-std-nacl)#exit SW2(config)#line vty 0 1 SW2(config-line)#transport input ssh SW2(config-line)#access-class MANAGEMENT_NET in SW2(config-line)#end
Review the Cisco router configuration to verify that it enforces the limit of three consecutive invalid logon attempts as shown in the example below. login block-for 900 attempts 3 within 120 Note: The configuration example above will block any login attempt for 15 minutes after three consecutive invalid logon attempts within a two-minute period. If the Cisco router is not configured to enforce the limit of three consecutive invalid logon attempts, this is a finding.
Configure the Cisco router to enforce the limit of three consecutive invalid logon attempts as shown in the example below. R2(config)#login block-for 900 attempts 3 within 120
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. banner login ^C You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only. By using this IS (which includes any device attached to this IS), you consent to the following conditions: -The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations. -At any time, the USG may inspect and seize data stored on this IS. -Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG-authorized purpose. -This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy. -Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details. ^C If the Cisco router is not configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device, this is a finding.
Configure the Cisco router to display the Standard Mandatory DoD Notice and Consent Banner before granting access as shown in the following example: R1(config)#banner login # Enter TEXT message. End with the character '#'. You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only. By using this IS (which includes any device attached to this IS), you consent to the following conditions: -The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law enforcement (LE), and counterintelligence (CI) investigations. -At any time, the USG may inspect and seize data stored on this IS. -Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and search, and may be disclosed or used for any USG-authorized purpose. -This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy. -Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or monitoring of the content of privileged communications, or work product, related to personal representation or services by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and confidential. See User Agreement for details. # R1(config)#end
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. hostname R1 ! logging userinfo ! … … … archive log config logging enable ! Note: The logging userinfo global configuration command will generate a log when a user increases his or her privilege level. If logging of administrator activity is not configured, this is a finding.
Configure the router to log administrator activity as shown in the example below. R1(config)#logging userinfo R1(config)#archive R1(config-archive)#log config R1(config-archive-log-cfg)#logging enable R1(config-archive-log-cfg)#end
Verify that the router is configured to include the date and time on all log records as shown in the configuration example below. service timestamps log datetime localtime If time stamps is not configured, this is a finding.
Configure the router to include the date and time on all log records as shown in the example below. R1(config)#service timestamps log datetime localtime
Review the deny statements in all interface ACLs to determine if the log-input parameter has been configured as shown in the example below. NOTE: log-input can only apply to interface bound ACLs. ip access-list extended BLOCK_INBOUND deny icmp any any log-input If the router is not configured with the log-input parameter after any deny statements to note where packets have been dropped via an ACL, this is a finding.
Configure the log-input parameter after any deny statements to provide the location as to where packets have been dropped via an ACL. R1(config)#ip access-list extended BLOCK_INBOUND R1(config-ext-nacl)#deny icmp any any log-input
Review the Cisco router configuration to verify that it is compliant with this requirement. The configuration example below will log all configuration changes. archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If the Cisco router is not configured to generate audit records of configuration changes, this is a finding.
Configure the Cisco router to log all configuration changes as shown in the example below. R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the Cisco router configuration to verify that it is compliant with this requirement. Step 1: If persistent logging is enabled as shown in the example below, go to step 2. Otherwise, this requirement is not applicable. logging persistent url disk0:/logfile size 134217728 filesize 16384 Step 2: Verify that the router is not configured with a privilege level other than "15" to allow access to the file system as shown in the example below. file privilege 10 Note: The default privilege level required for access to the file system is "15"; hence, the command file privilege "15" will not be shown in the configuration. If the router is configured with a privilege level other than "15" to allow access to the file system, this is a finding.
If persistent logging is enabled, configure the router to only allow administrators with privilege level "15" access to the file system as shown in the example below. R4(config)#file privilege 15
Review the Cisco router configuration to verify that it is compliant with this requirement. Step 1: If persistent logging is enabled as shown in the example below, go to step 2. Otherwise, this requirement is not applicable. logging persistent url disk0:/logfile size 134217728 filesize 16384 Step 2: Verify that the router is not configured with a privilege level other than "15" to allow access to the file system as shown in the example below. file privilege 10 Note: The default privilege level required for access to the file system is "15"; hence, the command file privilege "15" will not be shown in the configuration. If the router is configured with a privilege level other than "15" to allow access to the file system, this is a finding.
If persistent logging is enabled, configure the router to only allow administrators with privilege level "15" access to the file system as shown in the example below. R4(config)#file privilege 15
Verify that the router is not configured with a privilege level other than "15" to allow access to the file system as shown in the example below. file privilege 10 Note: The default privilege level required for access to the file system is "15"; hence, the command file privilege "15" will not be shown in the configuration. If the router is configured with a privilege level other than "15" to allow access to the file system, this is a finding.
Configure the router to only allow administrators with privilege level "15" access to the file system as shown in the example below. R4(config)#file privilege 15
Verify that the router does not have any unnecessary or nonsecure ports, protocols, and services enabled. For example, the following commands should not be in the configuration: boot network ip boot server ip bootp server ip dns server ip identd ip finger ip http server ip rcmd rcp-enable ip rcmd rsh-enable service config service finger service tcp-small-servers service udp-small-servers service pad service call-home Note: Certain legacy devices may require 'service call-home' be enabled to support Smart Licensing as they do not support the newer smart transport configuration. Those devices do not incur a finding for having call-home enabled for Smart Licensing. If any unnecessary or nonsecure ports, protocols, or services are enabled, this is a finding.
Disable the following services if enabled as shown in the example below. R2(config)#no boot network R2(config)#no ip boot server R2(config)#no ip bootp server R2(config)#no ip dns server R2(config)#no ip identd R2(config)#no ip finger R2(config)#no ip http server R2(config)#no ip rcmd rcp-enable R2(config)#no ip rcmd rsh-enable R2(config)#no service config R2(config)#no service finger R2(config)#no service tcp-small-servers R2(config)#no service udp-small-servers R2(config)#no service pad R2(config)#no service call-home R2(config)#end
Step 1: Review the router configuration to verify that a local account for last resort has been configured with a privilege level that will enable the administrator to troubleshoot connectivity to the authentication server. username xxxxxxxxxxx privilege 10 common-criteria-policy PASSWORD_POLICY password xxxxxxxxxx Note: The configured Common Criteria policy must be used when creating or changing the local account password as shown in the example above. Step 2: Verify that local is defined after radius or tacacs+ in the authentication order as shown in the example below: aaa authentication login default group tacacs+ local If the router is not configured with only one local account to be used as the account of last resort in the event the authentication server is unavailable, this is a finding.
Step 1: Configure a local account as shown in the example below. R2(config)#username xxxxxxxxx privilege nn secret xxxxxxx Step 2: Configure the authentication order to use the local account if the authentication server is not reachable as shown in the following example: R2(config)#aaa authentication login default group tacacs+ local
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY min-length 15 If the Cisco router is not configured to enforce a minimum 15-character password length, this is a finding.
Configure the Cisco router to enforce a minimum 15-character password length as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#min-length 15 R1(config-cc-policy)#exit
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY upper-case 1 If the Cisco router is not configured to enforce password complexity by requiring that at least one uppercase character be used, this is a finding.
Configure the Cisco router to enforce password complexity by requiring that at least one uppercase character be used as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#upper-case 1 R1(config-cc-policy)#exit
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY lower-case 1 If the Cisco router is not configured to enforce password complexity by requiring that at least one lowercase character be used, this is a finding.
Configure the Cisco router to enforce password complexity by requiring that at least one lowercase character be used as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#lower-case 1 R1(config-cc-policy)#exit
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY numeric-count 1 If the Cisco router is not configured to enforce password complexity by requiring that at least one numeric character be used, this is a finding.
Configure the Cisco router to enforce password complexity by requiring that at least one numeric character be used as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#numeric-count 1 R1(config-cc-policy)#exit
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY special-case 1 If the Cisco router is not configured to enforce password complexity by requiring that at least one special character be used, this is a finding.
Configure the Cisco router to enforce password complexity by requiring that at least one special character be used as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#special-case 1 R1(config-cc-policy)#exit
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. aaa new-model ! ! aaa common-criteria policy PASSWORD_POLICY char-changes 8 If the Cisco router is not configured to require that when a password is changed, the characters are changed in at least eight of the positions within the password, this is a finding.
Configure the Cisco router to enforce password complexity by requiring that when a password is changed, the characters are changed in at least eight of the positions within the password as shown in the example below. R1(config)#aaa common-criteria policy PASSWORD_POLICY R1(config-cc-policy)#char-changes 8 R1(config-cc-policy)#exit
Review the router configuration to determine if passwords are encrypted as shown in the example below. service password-encryption If the router is not configured to encrypt passwords, this is a finding.
Configure the router to encrypt all passwords. R4(config)#service password-encryption R4(config)#end
Review the Cisco router configuration to verify that all network connections associated with a device management have an idle timeout value set to five minutes or less as shown in the following example: ip http secure-server ip http timeout-policy idle 300 life nnnn requests nn … … … line con 0 exec-timeout 5 0 line vty 0 1 exec-timeout 5 0 If the Cisco router is not configured to terminate all network connections associated with a device management after five minutes of inactivity, this is a finding.
Set the idle timeout value to five minutes or less on all configured login classes as shown in the example below: R1(config)#line vty 0 1 R1(config-line)#exec-timeout 5 0 R1(config-line)#exit R1(config)#line con 0 R1(config-line)#exec-timeout 5 0 R1(config-line)#exit R2(config)#ip http timeout-policy idle 300 life nnnn requests nn
Review the router configuration to determine if it automatically audits account enabling. The configuration should look similar to the example below: archive log config logging enable Note: Configuration changes can be viewed using the show archive log config all command. If account enabling is not automatically audited, this is a finding.
Configure the router to log account enabling using the following commands: R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Verify that the Cisco router is configured with a logging buffer size. The configuration should look like the example below: logging buffered xxxxxxxx informational If a logging buffer size is not configured, this is a finding. If the Cisco router is not configured to allocate audit record storage capacity in accordance with organization-defined audit record storage requirements, this is a finding.
Configure the buffer size for logging as shown in the example below. R2(config)#logging buffered xxxxxxxx informational
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. logging trap critical Note: The parameter "critical" can replaced with a lesser severity level (i.e., error, warning, notice, informational). Informational is the default severity level; hence, if the severity level is configured to informational, the logging trap command will not be shown in the configuration. If the Cisco router is not configured to generate an alert for all audit failure events, this is a finding.
Configure the Cisco router to send critical to emergency log messages to the syslog server as shown in the example below. R4(config)#logging trap critical Note: The parameter "critical" can replaced with a lesser severity level (i.e., error, warning, notice, informational).
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the configuration example below. ntp server x.x.x.x ntp server y.y.y.y If the Cisco router is not configured to synchronize its clock with redundant authoritative time sources, this is a finding.
Configure the Cisco router to synchronize its clock with redundant authoritative time sources as shown in the example below. R2(config)#ntp server x.x.x.x R2(config)#ntp server y.y.y.y
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. snmp-server group V3GROUP v3 auth read V3READ write V3WRITE snmp-server view V3READ iso included snmp-server view V3WRITE iso included snmp-server host x.x.x.x version 3 auth V3USER Authentication used by the SNMP users can be viewed via the show snmp user command as shown in the example below. R4#show snmp user User name: V3USER Engine ID: 800000090300C2042B540000 storage-type: nonvolatile active Authentication Protocol: SHA Privacy Protocol: None Group-name: V3GROUP If the Cisco router is not configured to authenticate SNMP messages using a FIPS-validated HMAC, this is a finding.
Configure the Cisco router to authenticate SNMP messages as shown in the example below. R4(config)#snmp-server group V3GROUP v3 auth read V3READ write V3WRITE R4(config)#snmp-server user V3USER V3GROUP v3 auth sha xxxxxxx R4(config)#snmp-server view V3READ iso included R4(config)#snmp-server view V3WRITE iso included R4(config)#snmp-server host x.x.x.x version 3 auth V3USER
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. snmp-server group V3GROUP v3 priv read V3READ write V3WRITE snmp-server view V3READ iso included snmp-server view V3WRITE iso included snmp-server host x.x.x.x version 3 auth V3USER Encryption used by the SNMP users can be viewed via the show snmp user command as shown in the example below. R4#show snmp user User name: V3USER Engine ID: 800000090300C2042B540000 storage-type: nonvolatile active Authentication Protocol: SHA Privacy Protocol: AES256 Group-name: V3GROUP If the Cisco router is not configured to encrypt SNMP messages using a FIPS 140-2 approved algorithm, this is a finding.
Configure the Cisco router to encrypt SNMP messages using a FIPS 140-2 approved algorithm as shown in the example below. R4(config)#snmp-server group V3GROUP v3 priv read V3READ write V3WRITE R4(config)#snmp-server user V3USER V3GROUP v3 auth sha xxxxxx priv aes 256 xxxxxx
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the configuration example below. ntp authentication-key 1 md5 121B0A151012 7 ntp authenticate ntp trusted-key 1 ntp server x.x.x.x key 1 ntp server y.y.y.y key 1 If the Cisco router is not configured to authenticate NTP sources using authentication that is cryptographically based, this is a finding.
Configure the Cisco router to authenticate NTP sources using authentication that is cryptographically based as shown in the example below. R2(config)#ntp authenticate R2(config)#ntp authentication-key 1 md5 xxxxxx R2(config)#ntp trusted-key 1 R2(config)#ntp server x.x.x.x key 1 R2(config)#ntp server y.y.y.y key 1
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. NOTE: Although allowed by SP800-131Ar2 for some applications, SHA-1 is considered a compromised hashing standard and is being phased out of use by industry and Government standards. Unless required for legacy use, DoD systems should not be configured to use SHA-1 for integrity of remote access sessions. SSH Example ip ssh version 2 ip ssh server algorithm mac hmac-sha2-256 If the Cisco router is not configured to use FIPS-validated HMAC to protect the integrity of remote maintenance sessions, this is a finding.
Configure SSH to use FIPS-validated HMAC for remote maintenance sessions as shown in the following example: SSH Example R1(config)#ip ssh version 2 R1(config)#ip ssh server algorithm mac hmac-sha2-256
Review the Cisco router configuration to verify that it is compliant with this requirement. SSH Example ip ssh version 2 ip ssh server algorithm encryption aes256-ctr aes192-ctr aes128-ctr HTTPS Example ip http secure-server ip http secure-ciphersuite aes-128-cbc-sha ip http secure-client-auth ip http secure-trustpoint CA_XXX If the router is not configured to implement cryptographic mechanisms to protect the confidentiality of remote maintenance sessions using a FIPS 140-2 approved algorithm, this is a finding.
Configure the Cisco router to implement cryptographic mechanisms to protect the confidentiality of remote maintenance sessions using a FIPS 140-2 approved algorithm as shown in the examples below. SSH Example R1(config)#ip ssh server algorithm encryption aes256-ctr aes192-ctr aes128-ctr HTTPS Example R2(config)#ip http secure-ciphersuite aes-128-cbc-sha
Review the Cisco router configuration to verify that it is compliant with this requirement. Step 1: Verify traffic types have been classified based on importance levels. The following is an example configuration: class-map match-all CoPP_CRITICAL match access-group name CoPP_CRITICAL class-map match-any CoPP_IMPORTANT match access-group name CoPP_IMPORTANT match protocol arp class-map match-all CoPP_NORMAL match access-group name CoPP_NORMAL class-map match-any CoPP_UNDESIRABLE match access-group name CoPP_UNDESIRABLE class-map match-all CoPP_DEFAULT match access-group name CoPP_DEFAULT Step 2: Review the ACLs referenced by the class maps to determine if the traffic is being classified appropriately. The following is an example configuration: ip access-list extended CoPP_CRITICAL remark our control plane adjacencies are critical permit ospf host [OSPF neighbor A] any permit ospf host [OSPF neighbor B] any permit pim host [PIM neighbor A] any permit pim host [PIM neighbor B] any permit pim host [RP addr] any permit igmp any 224.0.0.0 15.255.255.255 permit tcp host [BGP neighbor] eq bgp host [local BGP addr] permit tcp host [BGP neighbor] host [local BGP addr] eq bgp deny ip any any ip access-list extended CoPP_IMPORTANT permit tcp host [TACACS server] eq tacacs any permit tcp [management subnet] 0.0.0.255 any eq 22 permit udp host [SNMP manager] any eq snmp permit udp host [NTP server] eq ntp any deny ip any any ip access-list extended CoPP_NORMAL remark we will want to rate limit ICMP traffic permit icmp any any echo permit icmp any any echo-reply permit icmp any any time-exceeded permit icmp any any unreachable deny ip any any ip access-list extended CoPP_UNDESIRABLE remark other management plane traffic that should not be received permit udp any any eq ntp permit udp any any eq snmp permit tcp any any eq 22 permit tcp any any eq 23 remark other control plane traffic not configured on router permit eigrp any any permit udp any any eq rip deny ip any any ip access-list extended CoPP_DEFAULT permit ip any any Note: Explicitly defining undesirable traffic with ACL entries enables the network operator to collect statistics. Excessive ARP packets can potentially monopolize Route Processor resources, starving other important processes. Currently, ARP is the only Layer 2 protocol that can be specifically classified using the match protocol command. Step 3: Review the policy-map to determine if the traffic is being policed appropriately for each classification. The following is an example configuration: policy-map CONTROL_PLANE_POLICY class CoPP_CRITICAL police 512000 8000 conform-action transmit exceed-action transmit class CoPP_IMPORTANT police 256000 4000 conform-action transmit exceed-action drop class CoPP_NORMAL police 128000 2000 conform-action transmit exceed-action drop class CoPP_UNDESIRABLE police 8000 1000 conform-action drop exceed-action drop class CoPP_DEFAULT police 64000 1000 conform-action transmit exceed-action drop Step 4: Verify that the CoPP policy is enabled. The following is an example configuration: control-plane service-policy input CONTROL_PLANE_POLICY Note: Control Plane Protection (CPPr) can be used to filter as well as police control plane traffic destined to the RP. CPPr is very similar to CoPP and has the ability to filter and police traffic using finer granularity by dividing the aggregate control plane into three separate categories: (1) host, (2) transit, and (3) CEF-exception. Hence, a separate policy-map could be configured for each traffic category. If the Cisco router is not configured to protect against known types of DoS attacks by employing organization-defined security safeguards, this is a finding.
Configure the Cisco router to protect against known types of DoS attacks on the route processor. Implementing a CoPP policy as shown in the example below is a best practice method. Step 1: Configure ACLs specific traffic types. R1(config)#ip access-list extended CoPP_CRITICAL R1(config-ext-nacl)#remark our control plane adjacencies are critical R1(config-ext-nacl)#permit ospf host x.x.x.x any R1(config-ext-nacl)#permit ospf host x.x.x.x any R1(config-ext-nacl)#permit pim host x.x.x.x any R1(config-ext-nacl)#permit pim host x.x.x.x any R1(config-ext-nacl)#permit igmp any 224.0.0.0 15.255.255.255 R1(config-ext-nacl)#permit tcp host x.x.x.x eq bgp host x.x.x.x R1(config-ext-nacl)#deny ip any any R1(config-ext-nacl)#exit R1(config)#ip access-list extended CoPP_IMPORTANT R1(config-ext-nacl)#permit tcp host x.x.x.x eq tacacs any R1(config-ext-nacl)#permit tcp x.x.x.x 0.0.0.255 any eq 22 R1(config-ext-nacl)#permit udp host x.x.x.x any eq snmp R1(config-ext-nacl)#permit udp host x.x.x.x eq ntp any R1(config-ext-nacl)#deny ip any any R1(config-ext-nacl)#exit R1(config)#ip access-list extended CoPP_NORMAL R1(config-ext-nacl)#remark we will want to rate limit ICMP traffic R1(config-ext-nacl)#permit icmp any any echo R1(config-ext-nacl)#permit icmp any any echo-reply R1(config-ext-nacl)#permit icmp any any time-exceeded R1(config-ext-nacl)#permit icmp any any unreachable R1(config-ext-nacl)#deny ip any any R1(config-ext-nacl)#exit R1(config)#ip access-list extended CoPP_UNDESIRABLE R1(config-ext-nacl)#remark management plane traffic that should not be received R1(config-ext-nacl)#permit udp any any eq ntp R1(config-ext-nacl)#permit udp any any eq snmp R1(config-ext-nacl)#permit tcp any any eq 22 R1(config-ext-nacl)#permit tcp any any eq 23 R1(config-ext-nacl)#remark control plane traffic not configured on router R1(config-ext-nacl)#permit eigrp any any R1(config-ext-nacl)#permit udp any any eq rip R1(config-ext-nacl)#deny ip any any R1(config-ext-nacl)#exit R1(config)#ip access-list extended CoPP_DEFAULT R1(config-ext-nacl)#permit ip any any R1(config-ext-nacl)#exit Step 2: Configure class maps referencing each of the ACLs. R1(config)#class-map match-all CoPP_CRITICAL R1(config-cmap)#match access-group name CoPP_CRITICAL R1(config-cmap)#class-map match-any CoPP_IMPORTANT R1(config-cmap)#match access-group name CoPP_IMPORTANT R1(config-cmap)#match protocol arp R1(config-cmap)#class-map match-all CoPP_NORMAL R1(config-cmap)#match access-group name CoPP_NORMAL R1(config-cmap)#class-map match-any CoPP_UNDESIRABLE R1(config-cmap)#match access-group name CoPP_UNDESIRABLE R1(config-cmap)#class-map match-all CoPP_DEFAULT R1(config-cmap)#match access-group name CoPP_DEFAULT R1(config-cmap)#exit Step 3: Configure a policy map referencing the configured class maps and apply appropriate bandwidth allowance and policing attributes. R1(config)#policy-map CONTROL_PLANE_POLICY R1(config-pmap)#class CoPP_CRITICAL R1(config-pmap-c)#police 512000 8000 conform-action transmit exceed-action transmit R1(config-pmap-c-police)#class CoPP_IMPORTANT R1(config-pmap-c)#police 256000 4000 conform-action transmit exceed-action drop R1(config-pmap-c-police)#class CoPP_NORMAL R1(config-pmap-c)#police 128000 2000 conform-action transmit exceed-action drop R1(config-pmap-c-police)#class CoPP_UNDESIRABLE R1(config-pmap-c)#police 8000 1000 conform-action drop exceed-action drop R1(config-pmap-c-police)#class CoPP_DEFAULT R1(config-pmap-c)#police 64000 1000 conform-action transmit exceed-action drop R1(config-pmap-c-police)#exit R1(config-pmap-c)#exit R1(config-pmap)#exit Step 4: Apply the policy map to the control plane. R1(config)#control-plane R1(config-cp)#service-policy input CONTROL_PLANE_POLICY R1(config-cp)#end
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example below. archive log config logging enable If the Cisco router is not configured to generate log records when administrator privileges are deleted, this is a finding.
Configure the Cisco router to generate log records when administrator privileges are deleted as shown in the example below. R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the examples below. login on-failure log login on-success log If the Cisco router is not configured to generate audit records when successful/unsuccessful logon attempts occur, this is a finding.
Configure the Cisco router to generate audit records when successful/unsuccessful logon attempts occur as shown in the example below. R5(config)#login on-failure log R5(config)#login on-success log
Review the Cisco router configuration to verify that it is compliant with this requirement as shown in the example configurations below. archive log config logging enable If the Cisco router is not configured to generate log records for privileged activities, this is a finding.
Configure the Cisco router to generate log records for privileged activities as shown in the example below. R4(config)#archive R4(config-archive)#log config R4(config-archive-log-cfg)#logging enable R4(config-archive-log-cfg)#end
Review the Cisco router configuration to verify that the device is configured to use at least two authentication servers as primary source for authentication as shown in the following example: aaa new-model ! aaa authentication CONSOLE local aaa authentication login LOGIN_AUTHENTICATION group radius local … … … ip http authentication aaa login-authentication LOGIN_AUTHENTICATION ip http secure-server … … … radius-server host x.x.x.x auth-port 1812 acct-port 1813 key xxxxxxx radius-server host x.x.x.x auth-port 1812 acct-port 1813 key xxxxxxx … … … line con 0 exec-timeout 5 0 login authentication CONSOLE line vty 0 1 exec-timeout 5 0 login authentication LOGIN_AUTHENTICATION If the Cisco router is not configured to use at least two authentication servers for the purpose of authenticating users prior to granting administrative access, this is a finding.
Step 1: Configure the Cisco router to use at least two authentication servers as shown in the following example: R4(config)#radius host 10.1.48.2 key xxxxxx R4(config)#radius host 10.1.48.3 key xxxxxx Step 2: Configure the authentication order to use the authentication servers as primary source for authentication as shown in the following example: R4(config)#aaa authentication CONSOLE local R4(config)#aaa authentication login LOGIN_AUTHENTICATION group radius local Step 3: Configure all network connections associated with a device management to use the authentication servers for the purpose of login authentication. R4(config)#line vty 0 1 R4(config-line)#login authentication LOGIN_AUTHENTICATION R4(config-line)#exit R4(config)#line con 0 R4(config-line)#login authentication CONSOLE R4(config-line)#exit R4(config)#ip http authentication aaa login-authentication LOGIN_AUTHENTICATION
Review the Cisco router configuration to verify that it is compliant with this requirement. The example configuration below will send the configuration to a TFTP server when a configuration change occurs. event manager applet BACKUP_CONFIG event syslog pattern "%SYS-5-CONFIG_I" action 1 info type routername action 2 cli command "enable" action 3 cli command "copy run tftp" pattern "remote host" action 4 cli command "x.x.x.x" pattern "filename" action 5 cli command "$_info_routername-config" action 6 syslog priority informational msg "Configuration backup was executed" If the Cisco router is not configured to conduct backups of the configuration when changes occur, this is a finding.
Configure the Cisco router to send the configuration to an TFTP or FTP server when a configuration change occurs as shown in the example below. R4(config)#event manager applet BACKUP_CONFIG R4(config-applet)#event syslog pattern "%SYS-5-CONFIG_I" R4(config-applet)#action 1 cli command "enable" R4(config-applet)#action 2 info type routername R4(config-applet)#action 3 cli command "copy run tftp" pattern "remote host" R4(config-applet)#action 4 cli command "x.x.x.x" pattern "filename" R4(config-applet)#action 5 cli command "$_info_routername-config" R4(config-applet)#action 6 syslog priority informational msg "Configuration backup was executed" R4(config-applet)#end
Review the router configuration to determine if a CA trust point has been configured. The CA trust point will contain the URL of the CA in which the router has enrolled with. Verify this is a DOD or DOD-approved CA. This will ensure the router has enrolled and received a certificate from a trusted CA. The CA trust point configuration would look similar to the example below. crypto pki trustpoint CA_X enrollment url http://trustpoint1.example.com Note: A remote end-point's certificate will always be validated by the router by verifying the signature of the CA on the certificate using the CA's public key, which is contained in the router's certificate it received at enrollment. Note: This requirement is not applicable if the router does not have any public key certificates. If the Cisco router is not configured to obtain its public key certificates from an appropriate certificate policy through an approved service provider, this is a finding.
Configure the router to obtain its public key certificates from an appropriate certificate policy through an approved service provider as shown in the example below. R2(config)# crypto pki trustpoint CA_X R2(ca-trustpoint)#enrollment url http://trustpoint1.example.com
Verify that the router is configured to send logs to at least two syslog servers. The configuration should look similar to the example below: logging x.x.x.x logging x.x.x.x If the router is not configured to send log data to the syslog servers, this is a finding.
Configure the router to send log messages to the syslog server as shown in the example below. R4(config)#logging host x.x.x.x R4(config)#logging host x.x.x.x
Verify that the router is in compliance with this requirement by having the router administrator enter the following command: show version Verify that the release is still supported by Cisco. All releases supported by Cisco can be found on the following URL: www.cisco.com/c/en/us/support/ios-nx-os-software If the router is not running a supported release, this is a finding.
Upgrade the router to a supported release.