{"stig":{"title":"Cisco NX OS Switch NDM Security Technical Implementation Guide","version":"3","release":"6"},"checks":[{"vulnId":"V-220474","ruleId":"SV-220474r960735_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to limit the number of concurrent management sessions to an organization-defined number.","description":"Device management includes the ability to control the number of administrators and management sessions that manage a device. Limiting the number of allowed administrators and sessions per administrator based on account type, role, or access type is helpful in limiting risks related to DoS attacks.\n\nThis requirement addresses concurrent sessions for administrative accounts and does not address concurrent sessions by a single administrator via multiple administrative accounts. The maximum number of concurrent sessions should be defined based upon mission needs and the operational environment for each system. At a minimum, limits must be set for SSH, HTTPS, account of last resort, and root account sessions.","checkContent":"Review the switch configuration to determine if concurrent management sessions are limited as show in the example below:\n\nline vty \n session-limit 2\n\nIf the switch is not configured to limit the number of concurrent management sessions, this is a finding.","fixText":"Configure the switch to limit the number of concurrent management sessions to an organization-defined number as shown in the example below:\n\nSW4(config)# line vty \nSW4(config)# session-limit 2","ccis":["CCI-000054"]},{"vulnId":"V-220475","ruleId":"SV-220475r960777_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to automatically audit account creation.","description":"Upon gaining access to a network device, an attacker will often first attempt to create a persistent method of reestablishing access. One way to accomplish this is to create a new account. Notification of account creation helps to mitigate this risk. Auditing account creation provides the necessary reconciliation that account management procedures are being followed. Without this audit trail, personnel without the proper authorization may gain access to critical network nodes.","checkContent":"Review the switch configuration to determine if it automatically audits account creation. \n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf account creation is not automatically audited, this is a finding.","fixText":"Configure the switch to log account creation using the following steps:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000018"]},{"vulnId":"V-220476","ruleId":"SV-220476r960780_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to automatically audit account modification.","description":"Since the accounts in the network device are privileged or system-level accounts, account management is vital to the security of the network device. Account management by a designated authority ensures access to the network device is being controlled in a secure manner by granting access to only authorized personnel with the appropriate and necessary privileges. Auditing account modification along with an automatic notification to appropriate individuals will provide the necessary reconciliation that account management procedures are being followed. If modifications to management accounts are not audited, reconciliation of account management procedures cannot be tracked.","checkContent":"Review the switch configuration to determine if it automatically audits account modification.\n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf account modification is not automatically audited, this is a finding.","fixText":"Configure the switch to log account modification using the following steps:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-001403"]},{"vulnId":"V-220477","ruleId":"SV-220477r960783_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to automatically audit account disabling actions.","description":"Account management, as a whole, ensures access to the network device is being controlled in a secure manner by granting access to only authorized personnel. Auditing account disabling actions will support account management procedures. When device management accounts are disabled, user or service accessibility may be affected. Auditing also ensures authorized active accounts remain enabled and available for use when required.","checkContent":"Review the switch configuration to determine if it automatically audits account disabling. \n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf account disabling is not automatically audited, this is a finding.","fixText":"Configure the switch to log account disabling using the following steps:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-001404"]},{"vulnId":"V-220478","ruleId":"SV-220478r960786_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to automatically audit account removal actions.","description":"Account management, as a whole, ensures access to the network device is being controlled in a secure manner by granting access to only authorized personnel. Auditing account removal actions will support account management procedures. When device management accounts are terminated, user or service accessibility may be affected. Auditing also ensures authorized active accounts remain enabled and available for use when required.","checkContent":"Review the switch configuration to determine if it automatically audits account removal. \n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf account removal is not automatically audited, this is a finding.","fixText":"Configure the switch to log account removal using the following steps:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-001405"]},{"vulnId":"V-220479","ruleId":"SV-220479r1137875_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce approved authorizations for controlling the flow of management information within the device based on control policies.","description":"A mechanism to detect and prevent unauthorized communication flow must be configured or provided as part of the system design. If management information flow is not enforced based on approved authorizations, the network device may become compromised. Information flow control regulates where management information is allowed to travel within a network device. The flow of all management information must be monitored and controlled so it does not introduce any unacceptable risk to the network device or data. \n\nApplication-specific examples of enforcement occur in systems that employ rule sets or establish configuration settings that restrict information system services or message-filtering capability based on message content (e.g., implementing key word searches or using document characteristics).\n\nApplications providing information flow control must be able to enforce approved authorizations for controlling the flow of management information within the system in accordance with applicable policy.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement. \n\nStep 1: Verify that the line vty has an ACL inbound applied as shown in the example below:\n\nline vty\n access-class MGMT_NET in\n\nStep 2: Verify that the ACL permits only hosts from the management network to access the switch.\n\nip access-list MGMT_NET\n 10 permit ip 10.1.48.0/24 any \n 20 deny ip any any log\n\n\nNX-OS v8 and later example:\nStep 1: Verify that an ACL has been applied to the management interface inbound as shown in the example below: \n\ninterface mgmt0\nip access-group MGMT_NET in \n\nStep 2: Verify that the ACL permits only hosts from the management network to access the switch. \n\nip access-list MGMT_NET \n10 permit ip 10.1.48.0/24 any  \n20 deny ip any any log \n\nIf the Cisco switch 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.","fixText":"Configure the Cisco switch to restrict management access to specific IP addresses as shown in the example below:\n\nSW1(config)# ip access-list MGMT_NET \nSW1(config-acl)# permit ip 10.1.48.0/24 any\nSW1(config-acl)# deny ip any any log\nSW1(config-acl)# exit\nSW1(config)# line vty\nSW1(config-line)# access-class MGMT_NET in\nSW1(config-acl)# end\n\n\nNX-OS v8 and later example:\n\nSW1(config)# ip access-list MGMT_NET  \nSW1(config-acl)# permit ip 10.1.48.0/24 any \nSW1(config-acl)# deny ip any any log \nSW1(config-acl)# exit \nSW1(config)# interface mgmt0\nSW1(config-if)#  ip access-group MGMT_NET in \nSW1(config-acl)# end","ccis":["CCI-001368","CCI-004192"]},{"vulnId":"V-220480","ruleId":"SV-220480r960840_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce the limit of three consecutive invalid logon attempts, after which time it must disconnect the session.","description":"By limiting the number of failed logon attempts, the risk of unauthorized system access via user password guessing, otherwise known as brute-forcing, is reduced.","checkContent":"Review the Cisco switch configuration to verify that it enforces the limit of three consecutive invalid logon attempts as shown in the example below:\n\nssh login-attempts 3\n\nIf the Cisco switch is not configured to enforce the limit of three consecutive invalid logon attempts, this is a finding.\n\nNOTE: The NX-OS switch does not lock out the account, it disconnects the session. The AAA server will lock out the user account on three failed attempts.","fixText":"Configure the Cisco switch to enforce the limit of three consecutive invalid logon attempts as shown in the example below:\n\nSW2(config)# ssh login-attempts 3","ccis":["CCI-000044"]},{"vulnId":"V-220481","ruleId":"SV-220481r960843_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device.","description":"Display of the DoD-approved use notification before granting access to the network device ensures privacy and security notification verbiage used is consistent with applicable federal laws, Executive Orders, directives, policies, regulations, standards, and guidance.\n\nSystem use notifications are required only for access via logon interfaces with human users.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nbanner motd #\nYou are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only.\n\nBy using this IS (which includes any device attached to this IS), you consent to the following conditions:\n\n-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.\n\n-At any time, the USG may inspect and seize data stored on this IS.\n\n-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.\n\n-This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your personal benefit or privacy.\n\n-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.\n#\n\nIf the Cisco switch is not configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device, this is a finding.","fixText":"Configure the Cisco switch to display the Standard Mandatory DoD Notice and Consent Banner before granting access as shown in the following example:\n\nSW1(config)# banner motd #\nEnter TEXT message. End with the character '#'.\n> You are accessing a U.S. Government (USG) Information System (IS) that is provided for USG-authorized use only.\n> \n> By using this IS (which includes any device attached to this IS), you consent to the following conditions:\n> \n> -The USG routinely intercepts and monitors communications on this IS for purposes including, but not limited to, \n> penetration testing, COMSEC monitoring, network operations and defense, personnel misconduct (PM), law \n> enforcement (LE), and counterintelligence (CI) investigations.\n> \n> -At any time, the USG may inspect and seize data stored on this IS.\n> \n> -Communications using, or data stored on, this IS are not private, are subject to routine monitoring, interception, and \n> search, and may be disclosed or used for any USG-authorized purpose.\n> \n> -This IS includes security measures (e.g., authentication and access controls) to protect USG interests--not for your \n> personal benefit or privacy.\n> \n> -Notwithstanding the above, using this IS does not constitute consent to PM, LE or CI investigative searching or \n> monitoring of the content of privileged communications, or work product, related to personal representation or services \n> by attorneys, psychotherapists, or clergy, and their assistants. Such communications and work product are private and \n> confidential. See User Agreement for details.\n> #\nSW1(config)# end","ccis":["CCI-000048"]},{"vulnId":"V-220482","ruleId":"SV-220482r960864_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to protect against an individual falsely denying having performed organization-defined actions to be covered by non-repudiation.","description":"This requirement supports non-repudiation of actions taken by an administrator and is required in order to maintain the integrity of the configuration management process. All configuration changes to the network device are logged, and administrators authenticate with two-factor authentication before gaining administrative access. Together, these processes will ensure the administrators can be held accountable for the configuration changes they implement.\n\nTo meet this requirement, the network device must log administrator access and activity.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in steps below:\n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf logging of administrator activity is not configured, this is a finding.","fixText":"Configure the switch to log administrator activity as shown in the steps below:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000166"]},{"vulnId":"V-220484","ruleId":"SV-220484r1026067_rule","severity":"medium","ruleTitle":"The Cisco switch must produce audit records containing information to establish where the events occurred.","description":"In order to compile an accurate risk assessment and provide forensic analysis, it is essential for security personnel to know where events occurred, such as device hardware components, device software modules, session identifiers, filenames, host names, and functionality.\n\nAssociating information about where the event occurred within the network device provides a means of investigating an attack; recognizing resource utilization or capacity thresholds; or identifying an improperly configured device.","checkContent":"Step 1: Review the deny statements in all ACLs to determine if the log parameter has been configured as shown in the example below:\n\nip access-list extended BLOCK_INBOUND\n deny icmp any any log\n\nStep 2: Verify that the Optimized Access-list Logging (OAL) has been configured.\n\nlogging ip access-list cache entries nnnn\n\nNote: Once OAL has been enabled, the logged ACL hits can be viewed via the show logging ip access-list cache command.\n\nIf the switch is not configured with the log parameter after any deny statements to note where packets have been dropped via an ACL, this is a finding.","fixText":"Enable OAL as shown in the example below:\n\nSW1(config)# logging ip access-list cache entries nnnn\n\nSet the 'log' parameter after any 'deny' entries in the ACL as referenced in the check text above.","ccis":["CCI-000132"]},{"vulnId":"V-220485","ruleId":"SV-220485r960909_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate audit records containing the full-text recording of privileged commands.","description":"Reconstruction of harmful events or forensic analysis is not possible if audit records do not contain enough information. \n\nOrganizations consider limiting the additional audit information to only that information explicitly needed for specific audit requirements. The additional information required is dependent on the type of information (i.e., sensitivity of the data and the environment within which it resides). At a minimum, the organization must audit full-text recording of privileged commands. The organization must maintain audit trails in sufficient detail to reconstruct events to determine the cause and impact of compromise.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement. \n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf the Cisco switch is not configured to generate audit records of configuration changes, this is a finding.","fixText":"Configure the Cisco switch to log all configuration changes as shown in the example below:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000135"]},{"vulnId":"V-220486","ruleId":"SV-220486r1043177_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to prohibit the use of all unnecessary and nonsecure functions and services.","description":"Network devices are capable of providing a wide variety of functions and services. Some of the functions and services provided by default may not be necessary to support essential organizational operations. Additionally, it is sometimes convenient to provide multiple services from a single component (e.g., email and web services); however, doing so increases risk over limiting the services provided by any one component. \n\nTo support the requirements and principles of least functionality, the network device must support the organizational requirements providing only essential capabilities and limiting the use of ports, protocols, and/or services to only those required, authorized, and approved. Some network devices have capabilities enabled by default; if these capabilities are not necessary, they must be disabled. If a particular capability is used, then it must be documented and approved.","checkContent":"Verify that the switch does not have any unnecessary or non-secure ports, protocols and services enabled. For example, the following features such as telnet should never be enabled, while other features should only be enabled if required for operations.\n\nfeature telnet\nfeature dhcp\nfeature wccp\nfeature nxapi\nfeature imp\n\nIf any unnecessary or non-secure ports, protocols, or services are enabled, this is a finding.","fixText":"Disable features that should not be enabled unless required for operations.\n\nSW2(config)# no feature telnet\nSW2(config)# no feature dhcp\nSW2(config)# no feature wccp\nSW2(config)# no feature nxapi\nSW2(config)# no feature imp\n\nNote: Telnet must always be disabled.","ccis":["CCI-000382"]},{"vulnId":"V-220487","ruleId":"SV-220487r1051115_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured with only one local account to be used as the account of last resort in the event the authentication server is unavailable.","description":"Authentication for administrative (privileged level) access to the device is required at all times. An account can be created on the device's local database for use when the authentication server is down or connectivity between the device and the authentication server is not operable. This account is referred to as the account of last resort since it is intended to be used as a last resort and when immediate administrative access is absolutely necessary.\n\nThe account of last resort logon credentials must be stored in a sealed envelope and kept in a safe. The safe must be periodically audited to verify the envelope remains sealed. The signature of the auditor and the date of the audit should be added to the envelope as a record.\nAn alternative to using a sealed envelope in a safe would be credential files, separated by technology, located in a secured location on a file server, with the files only accessible to those administrators authorized to use the accounts of last resort, and access to that location monitored by a central log server. \nAdministrators should secure the credentials and disable the root account (if possible) when not needed for system administration functions.","checkContent":"Step 1: Review the Cisco switch 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.\n\nusername xxxxxxxxxxxxx password 5 $5$88SPgpAn$Q6/17o5U/5lz4dNL1iQZuj/1a0wcKdrk29ZH1HJsnF. role priv-9\n\nStep 2: Verify that the fallback to use local account has not been disabled as shown in the example below:\n\nno aaa authentication login default fallback error local\n\nNote: The fallback is enabled by default; hence the above command should not be seen in the configuration.\n\nIf the Cisco switch 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.","fixText":"Step 1: Configure a local account with the necessary privilege level to troubleshoot network outage and restore operations as shown in the following example: \n\nSW2(config)# switch(config)# username xxxxxxx password xxxxxx role priv-9\n\nStep 2: Configure the authentication to use an AAA server with the fallback to use the local account if the authentication server is not reachable as shown in the following example:\n\nSW2(config)# aaa authentication login default group RADIUS_SERVERS\nSW2(config)# aaa authentication login default fallback error local\nSW2(config)# end","ccis":["CCI-001358","CCI-002111"]},{"vulnId":"V-220488","ruleId":"SV-220488r1026069_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to implement replay-resistant authentication mechanisms for network access to privileged accounts.","description":"A replay attack may enable an unauthorized user to gain access to the application. Authentication sessions between the authenticator and the application validating the user credentials must not be vulnerable to a replay attack.\n\nAn authentication process resists replay attacks if it is impractical to achieve a successful authentication by recording and replaying a previous authentication message.","checkContent":"Review the Cisco router configuration to verify it is compliant with this requirement as shown in the example below.\n\nSSH Example\n\nssh macs hmac-sha2-256 hmac-sha2-512\n\nNOTE: Using \"fips mode enable\" to enable all FIPS protocols disables TACACS+ and RADIUS, which is required for authentication server requirements. It is recommended to enable FIPS-validated protocols manually and keep FIPS mode disabled.\n\nIf the Cisco router is not configured to use FIPS-validated HMAC to protect the integrity of remote maintenance sessions, this is a finding.","fixText":"Configure SSH to use FIPS-validated HMAC for remote maintenance sessions as shown in the following example:\n\nSSH Example\n\nR1(config)#ssh macs hmac-sha2-256 hmac-sha2-512","ccis":["CCI-001941"]},{"vulnId":"V-220489","ruleId":"SV-220489r1026157_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce password complexity by requiring that at least one uppercase character be used.","description":"Use of a complex passwords helps to increase the time and resources required to compromise the password. Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks.\n\nPassword complexity is one factor of several that determine how long it takes to crack a password. The more complex the password is, the greater the number of possible combinations that need to be tested before the password is compromised.\n\nMultifactor authentication (MFA) is required for all administrative and user accounts on network devices, except for an account of last resort and (where applicable) a root account. Passwords should only be used when MFA using PKI is not available, and for the account of last resort and root account.","checkContent":"Password complexity is enabled by default. Review the Cisco switch configuration to verify that it is compliant with this requirement. The following command should not be found in the configuration:\n\nno password strength-check\n\nIf the Cisco switch is not configured to enforce password complexity by requiring that at least one uppercase character be used, this is a finding.","fixText":"Configure the Cisco switch to enforce password complexity by requiring that at least one uppercase character be used as shown in the example below:\n\nSW1(config)# password strength-check","ccis":["CCI-004066","CCI-000192"]},{"vulnId":"V-220490","ruleId":"SV-220490r1026158_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce password complexity by requiring that at least one lower-case character be used.","description":"Use of a complex password helps to increase the time and resources required to compromise the password. Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks.\n\nPassword complexity is one factor of several that determine how long it takes to crack a password. The more complex the password, the greater the number of possible combinations that need to be tested before the password is compromised.\n\nMultifactor authentication (MFA) is required for all administrative and user accounts on network devices, except for an account of last resort and (where applicable) a root account. Passwords should only be used when MFA using PKI is not available, and for the account of last resort and root account.","checkContent":"Password complexity is enabled by default. Review the Cisco switch configuration to verify that it is compliant with this requirement. The following command should not be found in the configuration:\n\nno password strength-check\n\nIf the Cisco switch is not configured to enforce password complexity by requiring that at least one lowercase character be used, this is a finding.","fixText":"Configure the Cisco switch to enforce password complexity by requiring that at least one lowercase character be used as shown in the example below:\n\nSW1(config)# password strength-check","ccis":["CCI-004066","CCI-000193"]},{"vulnId":"V-220491","ruleId":"SV-220491r1026159_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce password complexity by requiring that at least one numeric character be used.","description":"Use of a complex password helps to increase the time and resources required to compromise the password. Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks.\n\nPassword complexity is one factor of several that determine how long it takes to crack a password. The more complex the password, the greater the number of possible combinations that need to be tested before the password is compromised.\n\nMultifactor authentication (MFA) is required for all administrative and user accounts on network devices, except for an account of last resort and (where applicable) a root account. Passwords should only be used when MFA using PKI is not available, and for the account of last resort and root account.","checkContent":"Password complexity is enabled by default. Review the Cisco switch configuration to verify that it is compliant with this requirement. The following command should not be found in the configuration:\n\nno password strength-check\n\nIf the Cisco switch is not configured to enforce password complexity by requiring that at least one numeric character be used, this is a finding.","fixText":"Configure the Cisco switch to enforce password complexity by requiring that at least one numeric character be used as shown in the example below:\n\nSW1(config)# password strength-check","ccis":["CCI-004066","CCI-000194"]},{"vulnId":"V-220492","ruleId":"SV-220492r1026160_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to enforce password complexity by requiring that at least one special character be used.","description":"Use of a complex password helps to increase the time and resources required to compromise the password. Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks.\n\nPassword complexity is one factor of several that determine how long it takes to crack a password. The more complex the password, the greater the number of possible combinations that need to be tested before the password is compromised.\n\nMultifactor authentication (MFA) is required for all administrative and user accounts on network devices, except for an account of last resort and (where applicable) a root account. Passwords should only be used when MFA using PKI is not available, and for the account of last resort and root account.","checkContent":"Password complexity is enabled by default. Review the Cisco switch configuration to verify that it is compliant with this requirement. The following command should not be found in the configuration:\n\nno password strength-check\n\nIf the Cisco switch is not configured to enforce password complexity by requiring that at least one special character be used, this is a finding.","fixText":"Configure the Cisco switch to enforce password complexity by requiring that at least one special character be used as shown in the example below:\n\nSW1(config)# password strength-check","ccis":["CCI-004066","CCI-001619"]},{"vulnId":"V-220493","ruleId":"SV-220493r961068_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to terminate all network connections associated with device management after five minutes of inactivity.","description":"Terminating an idle session within a short time period reduces the window of opportunity for unauthorized personnel to take control of a management session enabled on the console or console port that has been left unattended. In addition, quickly terminating an idle session will also free up resources committed by the managed network element. \n\nTerminating network connections associated with communications sessions includes, for example, de-allocating associated TCP/IP address/port pairs at the operating system level, or de-allocating networking assignments at the application level if multiple application sessions are using a single, operating system-level network connection. This does not mean that the device terminates all sessions or network access; it only ends the inactive session and releases the resources associated with that session.","checkContent":"Review the Cisco switch 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:\n\nline console\n exec-timeout 5\nline vty \n exec-timeout 5 \n\nIf the Cisco switch is not configured to terminate all network connections associated with a device management after five minutes of inactivity, this is a finding.","fixText":"Set the idle timeout value to five minutes or less on all configured login classes as shown in the example below:\n\nSW1(config)# line console\nSW1(config-console)# exec-timeout 5 \nSW1(config-console)# exit\nSW1(config)# line vty\nSW1(config-line)# exec-timeout 5","ccis":["CCI-001133"]},{"vulnId":"V-220494","ruleId":"SV-220494r961290_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to automatically audit account enabling actions.","description":"Once an attacker establishes initial access to a system, the attacker often attempts to create a persistent method of reestablishing access. One way to accomplish this is for the attacker to simply enable a new or disabled account. Notification of account enabling is one method for mitigating this risk. A comprehensive account management process will ensure an audit trail which documents the creation of application user accounts and notifies administrators and Information System Security Officers (ISSO). Such a process greatly reduces the risk that accounts will be surreptitiously created and provides logging that can be used for forensic purposes.","checkContent":"Review the switch configuration to determine if it automatically audits account enabling. The configuration should look similar to the example below:\n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf account enabling is not automatically audited, this is a finding.","fixText":"Configure the switch to log account enabling using the following steps:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-002130"]},{"vulnId":"V-220495","ruleId":"SV-220495r961362_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to audit the execution of privileged functions.","description":"Misuse of privileged functions, either intentionally or unintentionally by authorized users, or by unauthorized external entities that have compromised information system accounts, is a serious and ongoing concern and can have significant adverse impacts on organizations. Auditing the use of privileged functions is one way to detect such misuse and identify the risk from insider threats and the advanced persistent threat.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement. The configuration example below will log all configuration changes.\n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf the Cisco switch is not configured to log all configuration changes, this is a finding.","fixText":"Configure the Cisco switch to log all configuration changes as shown in the following example:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-002234"]},{"vulnId":"V-220496","ruleId":"SV-220496r961392_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to allocate audit record storage capacity in accordance with organization-defined audit record storage requirements.","description":"In order to ensure network devices have a sufficient storage capacity in which to write the audit logs, they need to be able to allocate audit record storage capacity. The task of allocating audit record storage capacity is usually performed during initial device setup if it is modifiable. \n\nThe value for the organization-defined audit record storage requirement will depend on the amount of storage available on the network device, the anticipated volume of logs, the frequency of transfer from the network device to centralized log servers, and other factors.","checkContent":"Verify that the Cisco switch is configured with a logfile size. The configuration should look like the example below:\n\nlogging logfile LOGFILE1 6 size nnnnn\n\nIf the Cisco switch is not configured to allocate audit record storage capacity in accordance with organization-defined audit record storage requirements, this is a finding.","fixText":"Configure the buffer size for logging as shown in the example below:\n\nSW2(config)# logging logfile LOGFILE1 6 size nnnnn","ccis":["CCI-001849"]},{"vulnId":"V-220497","ruleId":"SV-220497r991965_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate an alert for all audit failure events.","description":"It is critical for the appropriate personnel to be aware if a system is at risk of failing to process audit logs as required. Without a real-time alert, security personnel may be unaware of an impending failure of the audit capability and system operation may be adversely affected. \n\nAlerts provide organizations with urgent messages. Real-time alerts provide these messages immediately (i.e., the time from event detection to alert occurs in seconds or less).","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nlogging server 10.1.48.10 2\n\nNote: The parameter 2 (critical) can replaced with a lesser severity level 3 through 6 (i.e. error, warning, notice, informational). Informational is the default severity level; hence, if the severity level is configured to informational, the parameter 7 will not be shown in the configuration.\n\nIf the Cisco switch is not configured to generate an alert for all audit failure events, this is a finding.","fixText":"Configure the Cisco switch to send critical to emergency log messages to the syslog server as shown in the example below:\n\nSW4(config)# logging server 10.1.48.10 2\n\nNote: The parameter 2 (critical) can replaced with a lesser severity level 3 through 6 (i.e. error, warning, notice, informational).","ccis":["CCI-001858","CCI-003831"]},{"vulnId":"V-220498","ruleId":"SV-220498r1026071_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to synchronize its clock with the primary and secondary time sources using redundant authoritative time sources.","description":"The loss of connectivity to a particular authoritative time source will result in the loss of time synchronization (free-run mode) and increasingly inaccurate time stamps on audit events and other functions. \n\nMultiple time sources provide redundancy by including a secondary source. Time synchronization is usually a hierarchy; clients synchronize time to a local source while that source synchronizes its time to a more accurate source. The network device must utilize an authoritative time server and/or be configured to use redundant authoritative time sources. This requirement is related to the comparison done in CCI-001891.\n\nDOD-approved solutions consist of a combination of a primary and secondary time source using a combination or multiple instances of the following: a time server designated for the appropriate DOD network (NIPRNet/SIPRNet); United States Naval Observatory (USNO) time servers; and/or the Global Positioning System (GPS). The secondary time source must be located in a different geographic region than the primary time source.","checkContent":"Review the Cisco switch configuration to verify it is compliant with this requirement as shown in the configuration example below:\n\nntp server 10.1.12.10\nntp server 10.1.22.13\n\nIf the Cisco switch is not configured to synchronize its clock with redundant authoritative time sources, this is a finding.","fixText":"Configure the Cisco switch to synchronize its clock with redundant authoritative time sources as shown in the example below:\n\nSW1(config)# feature ntp\nSW1(config)# ntp server 10.1.12.10\nSW1(config)# ntp server 10.1.22.13\nSW1(config)# end","ccis":["CCI-004928","CCI-004922","CCI-004923"]},{"vulnId":"V-220499","ruleId":"SV-220499r961443_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to record time stamps for log records that can be mapped to Coordinated Universal Time (UTC) or Greenwich Mean Time (GMT).","description":"If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analysis.\n\nTime stamps generated by the application include date and time. Time is commonly expressed in Coordinated Universal Time (UTC), a modern continuation of Greenwich Mean Time (GMT), or local time with an offset from UTC.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nclock timezone EST -5 0\n\nNote: UTC is the default; hence, the command set time-zone may not be seen in the configuration. This can be verified using the show system uptime command.\n\nIf the switch is not configured to record time stamps for log records that can be mapped to UTC or GMT, this is a finding.","fixText":"Configure the Cisco switch to record time stamps for audit records that can be mapped to UTC or GMT as shown in the example below:\n\nSW1(config)# clock timezone EST -5 0","ccis":["CCI-001890"]},{"vulnId":"V-220500","ruleId":"SV-220500r961506_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to authenticate SNMP messages using a FIPS-validated Keyed-Hash Message Authentication Code (HMAC).","description":"Without authenticating devices, unidentified or unknown devices may be introduced, thereby facilitating malicious activity. Bidirectional authentication provides stronger safeguards to validate the identity of other devices for connections that are of greater risk.\n\nA local connection is any connection with a device communicating without the use of a network. A network connection is any connection with a device that communicates through a network (e.g., local area or wide area network, Internet). A remote connection is any connection with a device communicating through an external network (e.g., the Internet).\n\nBecause of the challenges of applying this requirement on a large scale, organizations are encouraged to only apply the requirement to those limited number (and type) of devices that truly need to support this capability.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nsnmp-server user NETOPS auth sha 5Er23@#as178 priv aes-128 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n\nsnmp-server host 10.1.48.10 traps version 3 priv NETOPS\n\nAuthentication used by the SNMP users can be viewed via the show snmp user command as shown in the example below:\n\nSW1# show snmp user\n______________________________________________________________\n SNMP USERS \n______________________________________________________________\n\nUser Auth Priv(enforce) Groups acl_filter \n____ ____ ___________ ______ __________ \nNETOPS sha aes-128 network-operator \n\nIf the Cisco switch is not configured to authenticate SNMP messages using a FIPS-validated HMAC, this is a finding.","fixText":"Configure the Cisco switch to authenticate SNMP messages as shown in the example below:\n\nSW1(config)# snmp-server user NETOPS auth sha xxxxxxxxxxxxx priv aes-128 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n\nSW1(config)# snmp-server host 10.1.48.10 traps version 3 priv NETOPS","ccis":["CCI-001967"]},{"vulnId":"V-220501","ruleId":"SV-220501r961506_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to encrypt SNMP messages using a FIPS 140-2 approved algorithm.","description":"Without the strong encryption that is provided by the SNMP Version 3 User-based Security Model (USM), an unauthorized user can gain access to network management information that can be used to create a network outage.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nsnmp-server user NETOPS auth sha 5Er23@#as178 priv aes-128 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n\nsnmp-server host 10.1.48.10 traps version 3 priv NETOPS\n\nEncryption used by the SNMP users can be viewed via the show snmp user command as shown in the example below:\n\nSW1# show snmp user\n______________________________________________________________\n SNMP USERS \n______________________________________________________________\n\nUser Auth Priv(enforce) Groups acl_filter \n____ ____ ___________ ______ __________ \nNETOPS sha aes-128 network-operator \n\nIf the Cisco switch is not configured to encrypt SNMP messages using a FIPS 140-2 approved algorithm, this is a finding.","fixText":"Configure the Cisco switch to encrypt SNMP messages using a FIPS 140-2 approved algorithm as shown in the example below:\n\nSW1(config)# snmp-server user NETOPS auth sha xxxxxxxxxxxxx priv aes-128 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n\nSW1(config)# snmp-server host 10.1.48.10 traps version 3 priv NETOPS","ccis":["CCI-000068"]},{"vulnId":"V-220502","ruleId":"SV-220502r1156823_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to authenticate Network Time Protocol (NTP) sources using authentication with FIPS-compliant algorithms.","description":"If NTP is not authenticated, an attacker can introduce a rogue NTP server. This rogue server can then be used to send incorrect time information to network devices, which will make log timestamps inaccurate and affect scheduled actions. NTP authentication is used to prevent this tampering by authenticating the time source.","checkContent":"Review the Cisco switch configuration to verify it authenticates NTP sources using authentication with FIPS-compliant algorithms as shown in the configuration example below:\n\nshow running-config ntp\n\nntp authentication-key 1 md5 xxxxxx\nntp server 10.1.12.10 key 1\nntp trusted-key 1\nntp authenticate\n\nNote: Cisco NX-OS is limited to MD5 for NTP authentication, and incurs a permanent finding as it is not FIPS compliant. MD5 partially reduces the risk but cannot fully mitigate it.\n\nIf the Cisco switch is not configured to authenticate NTP sources using authentication with FIPS-compliant algorithms, this is a finding.","fixText":"Configure the Cisco switch to authenticate NTP sources using authentication with FIPS-compliant algorithms as shown in the example below:\n\nSW1# configure terminal\nSW1(config)# feature ntp\nSW1(config)# ntp authentication-key 1 md5 xxxxxx\nSW1(config)# ntp trusted-key 1\nSW1(config)# ntp authenticate\nSW1(config)# ntp server 10.1.12.10 key 1\nSW1(config)# ntp commit\nSW1(config)# end\nSW1# copy running-config startup-config\n\nNote: The ntp commit command can be omitted if CFS is not enabled for NTP.","ccis":["CCI-001967"]},{"vulnId":"V-220503","ruleId":"SV-220503r1026073_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to use FIPS-validated Keyed-Hash Message Authentication Code (HMAC) to protect the integrity of remote maintenance sessions.","description":"Unapproved mechanisms used for authentication to the cryptographic module are not verified; therefore, they cannot be relied upon to provide confidentiality or integrity, and DOD data may be compromised.\n\nNonlocal maintenance and diagnostic activities are those activities conducted by individuals communicating through a network, either an external network (e.g., the internet) or an internal network. \n\nCurrently, HMAC is the only FIPS-approved algorithm for generating and verifying message/data authentication codes in accordance with FIPS 198-1. Products that are FIPS 140-2 validated will have an HMAC that meets specification; however, the option must be configured for use as the only message authentication code used for authentication to cryptographic modules.\n\nSeparate requirements for configuring applications and protocols used by each application (e.g., SNMPv3, SSHv2, NTP, HTTPS, and other protocols and applications that require server/client authentication) are required to implement this requirement. Where SSH is used, the SSHv2 protocol suite is required because it includes Layer 7 protocols such as SCP and SFTP, which can be used for secure file transfers.","checkContent":"Review the Cisco router configuration to verify it is compliant with this requirement as shown in the example below.\n\nSSH Example\n\nssh macs hmac-sha2-256 hmac-sha2-512\n\nNOTE: Using \"fips mode enable\" to enable all FIPS protocols disables TACACS+ and RADIUS, which is required for authentication server requirements. It is recommended to enable FIPS-validated protocols manually and keep FIPS mode disabled.\n\nIf the Cisco router is not configured to use FIPS-validated HMAC to protect the integrity of remote maintenance sessions, this is a finding.","fixText":"Configure SSH to use FIPS-validated HMAC for remote maintenance sessions as shown in the following example:\n\nSSH Example\n\nR1(config)#ssh macs hmac-sha2-256 hmac-sha2-512","ccis":["CCI-002890"]},{"vulnId":"V-220504","ruleId":"SV-220504r1026075_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to implement cryptographic mechanisms to protect the confidentiality of remote maintenance sessions.","description":"This requires the use of secure protocols instead of their unsecured counterparts, such as SSH instead of telnet, SCP instead of FTP, and HTTPS instead of HTTP. If unsecured protocols (lacking cryptographic mechanisms) are used for sessions, the contents of those sessions will be susceptible to eavesdropping, potentially putting sensitive data (including administrator passwords) at risk of compromise and potentially allowing hijacking of maintenance sessions.","checkContent":"Review the Cisco router configuration to verify it is compliant with this requirement.\n\nSSH Example\n\nssh ciphers aes128-ctr aes256-ctr\n\nNOTE: Using \"fips mode enable\" to enable all FIPS protocols disables TACACS+ and RADIUS, which is required for authentication server requirements. It is recommended to enable FIPS-validated protocols manually and keep FIPS mode disabled.\n\nIf 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.","fixText":"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.\n\nSSH Example\n\nR1(config)#ssh ciphers aes128-ctr aes256-ctr","ccis":["CCI-003123"]},{"vulnId":"V-220506","ruleId":"SV-220506r961800_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate log records when administrator privileges are modified.","description":"Without generating audit records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.\n\nAudit records can be generated from various components within the network device (e.g., module or policy filter).","checkContent":"Step 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf the Cisco switch is not configured to generate log records when administrator privileges are modified, this is a finding.","fixText":"Configure the Cisco switch to generate log records when account privileges are modified as shown in the example below:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000172"]},{"vulnId":"V-220507","ruleId":"SV-220507r961812_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate log records when administrator privileges are deleted.","description":"Without generating audit records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.\n\nAudit records can be generated from various components within the network device (e.g., module or policy filter).","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nStep 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf the Cisco switch is not configured to generate log records when administrator privileges are deleted, this is a finding.","fixText":"Configure the Cisco switch to generate log records when administrator privileges are deleted as shown in the example below:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000172"]},{"vulnId":"V-220508","ruleId":"SV-220508r961824_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate audit records when successful/unsuccessful logon attempts occur.","description":"Without generating audit records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.\n\nAudit records can be generated from various components within the network device (e.g., module or policy filter).","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the examples below:\n\nlogging logfile LOG_FILE 6\nlogging level authpri 6\n\nIf the Cisco switch is not configured to generate audit records when successful/unsuccessful logon attempts occur, this is a finding.","fixText":"Configure the Cisco switch to generate audit records when successful/unsuccessful logon attempts occur as shown in the example below:\n\nStep 1: Lower the authpriv level to 6.\n\nSW1(config)# logging level authpriv 6\n\nStep 2: Configure a logfile to record log messages at level 6.\n\nSW1(config)# logging logfile LOG_FILE 6","ccis":["CCI-000172"]},{"vulnId":"V-220509","ruleId":"SV-220509r961827_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to generate log records for privileged activities.","description":"Without generating audit records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.\n\nAudit records can be generated from various components within the network device (e.g., module or policy filter).","checkContent":"Step 1: Verify that account records will be sent to an AAA server as shown in the example below:\n\naaa accounting default group RADIUS_SERVERS\n\nStep 2: Verify that the referenced group name has defined AAA servers that are online.\n\naaa group server radius RADIUS_SERVERS \n server 10.1.48.10 \n server 10.1.48.12\n\nNote: Cisco NX-OS devices report configuration activity to TACACS+ or RADIUS servers in the form of accounting records. Each accounting record contains accounting attribute-value (AV) pairs and is stored on the AAA server.\n\nIf the Cisco switch is not configured to generate log records for privileged activities, this is a finding.","fixText":"Configure the Cisco switch to generate log records for privileged activities as shown in the example below:\n\nStep 1: Configure the AAA servers as shown in the example below:\n\nSW1(config)# radius-server host 10.1.48.10 \nSW1(config)# radius-server host 10.1.48.12\n\nStep 2: Configure an AAA server group as shown in the example below:\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10 \nSW1(config-radius)# server 10.1.48.12\nSW1(config-radius)# exit\n\nStep 3: Enable AAA accounting as shown in the example below:\n\nSW1(config)# aaa accounting default group RADIUS_SERVERS\nSW1(config)# end","ccis":["CCI-000172"]},{"vulnId":"V-220510","ruleId":"SV-220510r961830_rule","severity":"medium","ruleTitle":"The Cisco switch must generate audit records showing starting and ending time for administrator access to the system.","description":"Without generating audit records that are specific to the security and mission needs of the organization, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. \n\nAudit records can be generated from various components within the network device (e.g., module or policy filter).","checkContent":"Verify that the switch is configured to generate log records showing starting and ending time for administrator access as shown in the example below:\n\nlogging level authpri 6\n\nIf the switch is not configured to generate log records showing starting and ending time for administrator access, this is a finding.","fixText":"Configure the switch to log session start and ending per admin session as shown in the example below:\n\nSW1(config)# logging level authpriv 6","ccis":["CCI-000172"]},{"vulnId":"V-220512","ruleId":"SV-220512r961860_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to off-load log records onto a different system than the system being audited.","description":"Information stored in one location is vulnerable to accidental or incidental deletion or alteration.\n\nOff-loading is a common process in information systems with limited audit storage capacity.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement as shown in the example below:\n\nlogging server 10.1.48.10 6\n\nIf the Cisco switch is not configured to off-load log records onto a different system than the system being audited, this is a finding.","fixText":"Configure the Cisco switch to send log records to a syslog server as shown in the example below:\n\nSW4(config)# logging server 10.1.48.10 6","ccis":["CCI-001851"]},{"vulnId":"V-220513","ruleId":"SV-220513r1137887_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to use at least two authentication servers for the purpose of authenticating users prior to granting administrative access.","description":"Centralized management of user accounts and authentication increases the administrative access to the switch. This control is particularly important protection against the insider threat. With robust centralized management, audit records for administrator account access to the organization's network devices can be more readily analyzed for trends and anomalies. The alternative method of defining administrator accounts on each device exposes the device configuration to remote access authentication attacks and system administrators with multiple authenticators for each network device.","checkContent":"Review the Cisco switch configuration to verify that the device is configured to use at least two authentication servers as primary source for authentication.\n\nStep 1: Verify that an AAA server group is configured for login authentication for both in-band and console access methods.\n\naaa authentication login default group RADIUS_SERVERS \naaa authentication login console group RADIUS_SERVERS\n\nStep 2: Verify that at least two AAA servers have been defined for the server group as shown in the example below:\n\nradius-server host 10.1.48.10 key 7 \"xxxxxx\" \nradius-server host 10.1.48.11 key 7 \"xxxxxx\" \nauthentication accounting \naaa group server radius RADIUS_SERVERS \n server 10.1.48.10\n server 10.1.48.11\n\nIf the Cisco switch 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.","fixText":"Configure the Cisco switch to use at least two authentication servers as shown in the following example:\n\nStep 1: Define the authentication servers. \n\nSW1(config)# radius-server host 10.1.48.10 key xxxxxx\nSW1(config)# radius-server host 10.1.48.11 key xxxxxx\n\nStep 2: Configure the AAA group.\n\nSW1(config)# aaa group server radius RADIUS_SERVERS\nSW1(config-radius)# server 10.1.48.10\nSW1(config-radius)# server 10.1.48.11\n\nStep 3: Use the AAA servers for login authentication for both in-band and console access methods.\n\nSW1(config)# aaa authentication login default group RADIUS_SERVERS \nSW1(config)# aaa authentication login console group RADIUS_SERVERS","ccis":["CCI-000370"]},{"vulnId":"V-220514","ruleId":"SV-220514r1135491_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to support organizational requirements to conduct backups of the configuration when changes occur.","description":"System-level information includes default and customized settings and security attributes, including ACLs that relate to the network device configuration, as well as software required for the execution and operation of the device. Information system backup is a critical step in ensuring system integrity and availability. If the system fails and there is no backup of the system-level information, a denial-of-service condition is possible for all who utilize this critical network component.\n\nThis control requires the network device to support the organizational central backup process for system-level information associated with the network device. This function may be provided by the network device itself; however, the preferred best practice is a centralized backup rather than each network device performing discrete backups.","checkContent":"Review the Cisco switch configuration to verify that it is compliant with this requirement. The example configuration below will send the configuration to an SCP server when a configuration change occurs.\n\nevent manager applet BACKUP_CONFIG\n event syslog pattern \"SYSLOG_CONFIG_I\"\n action 1 cli \"copy startup-config scp://user@10.1.48.10/nx-config.bak\" \n action 2 syslog priority informational msg \"Configuration backup was executed\"\n\nIf the Cisco switch is not configured to conduct backups of the configuration when changes occur, this is a finding.","fixText":"Configure the Cisco switch to send the configuration to an SCP server when a configuration change occurs as shown in the example below:\n\nSW4(config)# event manager applet BACKUP_CONFIG\nSW4(config-applet)# event syslog pattern \"SYSLOG_CONFIG_I\"\nSW4(config-applet)# action 1 cli \"copy startup-config scp://user@10.1.48.10/nx-config.bak”\nSW4(config-applet)# action 2 syslog priority informational msg \"Configuration backup was executed\"\nSW4(config-applet)# end","ccis":["CCI-000366","CCI-000537"]},{"vulnId":"V-220515","ruleId":"SV-220515r991969_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to obtain its public key certificates from an appropriate certificate policy through an approved service provider.","description":"For user certificates, each organization obtains certificates from an approved, shared service provider, as required by OMB policy. For federal agencies operating a legacy public key infrastructure cross-certified with the Federal Bridge Certification Authority (CA) at medium assurance or higher, this CA will suffice.","checkContent":"If PKI certificates are not implemented on the switch, this requirement is not applicable.\n\nStep 1: Review the switch configuration to determine if a CA trust point has been configured as shown in the example below:\n\ncrypto ca trustpoint CA_X \n enrollment terminal\n\nStep 2: Verify the CA is a DOD or DOD-approved service provider by entering the following command: show crypto ca certificates\n\nThe output will list the following information for each certificate:\n\nTrustpoint (will map to a configured trustpoint from step 1)\nCommon Name (CN) of the issuer\nOrganization (O) of the issuer\nOrganization Unit (OU) of the issuer\n\nNote: Cisco NX-OS software supports only the manual cut-and-paste method for certificate enrollment.\n\nIf the switch is not configured to obtain its public key certificates from a DOD or DOD-approved service provider, this is a finding.","fixText":"Ensure that certificate requests are only sent to DOD or DOD-approved service providers.","ccis":["CCI-001159","CCI-004909"]},{"vulnId":"V-220516","ruleId":"SV-220516r1137890_rule","severity":"high","ruleTitle":"The Cisco switch must be configured to send log data to at least two central log servers for the purpose of forwarding alerts to the administrators and the information system security officer (ISSO).","description":"The aggregation of log data kept on a syslog server can be used to detect attacks and trigger an alert to the appropriate security personnel. The stored log data can used to detect weaknesses in security that enable the network IA team to find and address these weaknesses before breaches can occur. Reviewing these logs, whether before or after a security breach, are important in showing whether someone is an internal employee or an outside threat.","checkContent":"Verify that the switch is configured to send logs to at least two syslog servers. The configuration should look similar to the example below:\n\nlogging server 10.1.48.10 6\nlogging server 10.1.48.11 6\n\nIf the switch is not configured to send log data to the syslog servers, this is a finding.","fixText":"Configure the switch to send log messages to the syslog servers as shown in the example below:\n\nSW4(config)# logging server 10.1.48.10 6\nSW4(config)# logging server 10.1.48.11 6","ccis":["CCI-001851"]},{"vulnId":"V-220517","ruleId":"SV-220517r961863_rule","severity":"high","ruleTitle":"The Cisco switch must be running an IOS release that is currently supported by Cisco Systems.","description":"Network devices running an unsupported operating system lack current security fixes required to mitigate the risks associated with recent vulnerabilities. Running a supported release also enables operations to maintain a stable and reliable network provided by improved quality of service and security features.","checkContent":"Verify that the switch is in compliance with this requirement by having the switch administrator enter the following command: show version\n\nVerify that the release is still supported by Cisco. All releases supported by Cisco can be found on the following URL:\n\nwww.cisco.com/c/en/us/support/ios-nx-os-software\n\nIf the switch is not running a supported release, this is a finding.","fixText":"Upgrade the switch to a supported release.","ccis":["CCI-000366","CCI-002605"]},{"vulnId":"V-260464","ruleId":"SV-260464r1082186_rule","severity":"medium","ruleTitle":"The Cisco switch must be configured to protect against known types of denial-of-service (DoS) attacks by employing organization-defined security safeguards.","description":"DoS is a condition when a resource is not available for legitimate users. When this occurs, the organization either cannot accomplish its mission or must operate at degraded capacity.\n\nThis requirement addresses the configuration of network devices to mitigate the impact of DoS attacks that have occurred or are ongoing on device availability. For each network device, known and potential DoS attacks must be identified and solutions for each type implemented. A variety of technologies exist to limit or, in some cases, eliminate the effects of DoS attacks (e.g., limiting processes or restricting the number of sessions the device opens at one time). Employing increased capacity and bandwidth, combined with service redundancy, may reduce the susceptibility to some DoS attacks.\n\nThe security safeguards cannot be defined at the DOD level because they vary according to the capabilities of the individual network devices and the security controls applied on the adjacent networks (e.g., firewalls performing packet filtering to block DoS attacks).","checkContent":"Review the Cisco switch configuration to verify it is compliant with this requirement. \n\nStep 1: Verify traffic types have been classified based on importance levels. The following is an example configuration: \n\nclass-map type control-plane match-all CoPP_CRITICAL \nmatch access-group name CoPP_CRITICAL \nclass-map type control-plane match-any CoPP_IMPORTANT \nmatch access-group name CoPP_IMPORTANT \nmatch protocol arp \nclass-map type control-plane match-all CoPP_NORMAL \nmatch access-group name CoPP_NORMAL \nclass-map type control-plane match-any CoPP_UNDESIRABLE \nmatch access-group name CoPP_UNDESIRABLE \nclass-map type control-plane match-all CoPP_DEFAULT \nmatch access-group name CoPP_DEFAULT \n\nStep 2: Review the ACLs referenced by the class maps to determine if the traffic is being classified appropriately. The following is an example configuration: \n\nip access-list extended CoPP_CRITICAL \nremark our control plane adjacencies are critical \npermit ospf host [OSPF neighbor A] any \npermit ospf host [OSPF neighbor B] any \npermit pim host [PIM neighbor A] any \npermit pim host [PIM neighbor B] any \npermit pim host [RP addr] any \npermit igmp any 224.0.0.0 15.255.255.255 \npermit tcp host [BGP neighbor] eq bgp host [local BGP addr] \npermit tcp host [BGP neighbor] host [local BGP addr] eq bgp \ndeny ip any any \n\nip access-list extended CoPP_IMPORTANT \npermit tcp host [TACACS server] eq tacacs any \npermit tcp [management subnet] 0.0.0.255 any eq 22 \npermit udp host [SNMP manager] any eq snmp \npermit udp host [NTP server] eq ntp any \ndeny ip any any \n\nip access-list extended CoPP_NORMAL \nremark we will want to rate limit ICMP traffic \npermit icmp any any echo \npermit icmp any any echo-reply \npermit icmp any any time-exceeded \npermit icmp any any unreachable \ndeny ip any any \n\nip access-list extended CoPP_UNDESIRABLE \nremark other management plane traffic that should not be received \npermit udp any any eq ntp \npermit udp any any eq snmp\npermit tcp any any eq 22 \npermit tcp any any eq 23 \nremark other control plane traffic not configured on switch \npermit eigrp any any \npermit udp any any eq rip \ndeny ip any any \n\nip access-list extended CoPP_DEFAULT \npermit ip any any \n\nNote: 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. \n\nStep 3: Review the policy-map type control-plane to determine if the traffic is being policed appropriately for each classification. The following is an example configuration: \n\npolicy-map type control-plane CONTROL_PLANE_POLICY \nclass CoPP_CRITICAL \npolice 512000 8000 conform-action transmit exceed-action transmit \nclass CoPP_IMPORTANT \npolice 256000 4000 conform-action transmit exceed-action drop \nclass CoPP_NORMAL \npolice 128000 2000 conform-action transmit exceed-action drop \nclass CoPP_UNDESIRABLE \npolice 8000 1000 conform-action drop exceed-action drop \nclass CoPP_DEFAULT\npolice 64000 1000 conform-action transmit exceed-action drop \n\nStep 4: Verify the CoPP policy is enabled. The following is an example configuration: \n\ncontrol-plane \nservice-policy input CONTROL_PLANE_POLICY \n\nIf the Cisco switch is not configured to protect against known types of DoS attacks by employing organization-defined security safeguards, this is a finding.","fixText":"Configure the Cisco switch 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.\n\nStep 1: Configure ACLs' specific traffic types.\n\nSW1(config)# ip access-list CoPP_CRITICAL\nSW1(config-acl)# remark our control plane adjacencies are critical \nSW1(config-acl)# permit ospf host 10.1.12.1 any\nSW1(config-acl)# permit ospf host 10.1.22.1 any\nSW1(config-acl)# permit pim host 10.1.12.1 any\nSW1(config-acl)# permit pim host 10.1.22.1 any\nSW1(config-acl)# permit pim host 10.1.33.4 any\nSW1(config-acl)# permit igmp any 224.0.0.0 15.255.255.255\nSW1(config-acl)# permit tcp host 10.2.33.3 eq bgp host 10.2.33.4\nSW1(config-acl)# permit tcp host 10.2.33.3 host 10.2.33.4 eq bgp\nSW1(config-acl)# deny ip any any\nSW1(config-acl)# exit\n\nSW1(config)# ip access-list CoPP_IMPORTANT\nSW1(config-acl)# permit tcp host 10.1.33.5 eq tacacs any\nSW1(config-acl)# permit tcp 10.1.33.0 0.0.0.255 any eq 22\nSW1(config-acl)# permit udp host 10.1.33.7 any eq snmp\nSW1(config-acl)# permit udp host 10.1.33.9 eq ntp any\nSW1(config-acl)# deny ip any any\nSW1(config-acl)# exit\n\nSW1(config)# ip access-list CoPP_NORMAL\nSW1(config-acl)# remark we will want to rate limit ICMP traffic\nSW1(config-acl)# permit icmp any any echo \nSW1(config-acl)# permit icmp any any echo-reply \nSW1(config-acl)# permit icmp any any time-exceeded \nSW1(config-acl)# permit icmp any any unreachable \nSW1(config-acl)# deny ip any any \nSW1(config-acl)# exit\n\nSW1(config)# ip access-list CoPP_UNDESIRABLE \nSW1(config-acl)# remark other management plane traffic that should not be received \nSW1(config-acl)# permit udp any any eq ntp \nSW1(config-acl)# permit udp any any eq snmp\nSW1(config-acl)# permit tcp any any eq 22 \nSW1(config-acl)# permit tcp any any eq 23 \nSW1(config-acl)# remark other control plane traffic not configured on switch \nSW1(config-acl)# permit eigrp any any \nSW1(config-acl)# permit udp any any eq rip \nSW1(config-acl)# deny ip any any \nSW1(config-acl)# exit\n\nSW1(config)# ip access-list CoPP_DEFAULT \nSW1(config-acl)# permit ip any any\nSW1(config-acl)# exit\n\nStep 2: Configure class maps referencing each of the ACLs.\n\nSW1(config)# class-map type control-plane match-all CoPP_CRITICAL\nSW1(config-cmap)# match access-group name CoPP_CRITICAL\nSW1(config-cmap)# class-map type control-plane match-any CoPP_IMPORTANT\nSW1(config-cmap)# match access-group name CoPP_IMPORTANT\nSW1(config-cmap)# match protocol arp\nSW1(config-cmap)# class-map type control-plane match-all CoPP_NORMAL\nSW1(config-cmap)# match access-group name CoPP_NORMAL\nSW1(config-cmap)# class-map type control-plane match-any CoPP_UNDESIRABLE\nSW1(config-cmap)# match access-group name CoPP_UNDESIRABLE\nSW1(config-cmap)# class-map type control-plane match-all CoPP_DEFAULT\nSW1(config-cmap)# match access-group name CoPP_DEFAULT\nSW1(config-cmap)# exit\n\nStep 3: Configure a policy map referencing the configured class maps and apply appropriate bandwidth allowance and policing attributes.\n\nSW1(config)# policy-map type control-plane CONTROL_PLANE_POLICY\nSW1(config-pmap)# class CoPP_CRITICAL\nSW1(config-pmap-c)# police 512000 8000 conform-action transmit exceed-action transmit\nSW1(config-pmap-c-police)# class CoPP_IMPORTANT\nSW1(config-pmap-c)# police 256000 4000 conform-action transmit exceed-action drop\nSW1(config-pmap-c-police)# class CoPP_NORMAL\nSW1(config-pmap-c)# police 128000 2000 conform-action transmit exceed-action drop\nSW1(config-pmap-c-police)# class CoPP_UNDESIRABLE\nSW1(config-pmap-c)# police 8000 1000 conform-action drop exceed-action drop\nSW1(config-pmap-c-police)# class CoPP_DEFAULT\nSW1(config-pmap-c)# police 64000 1000 conform-action transmit exceed-action drop\nSW1(config-pmap-c-police)# exit\nSW1(config-pmap-c)# exit\nSW1(config-pmap)# exit\n\nStep 4: Apply the policy map to the control plane.\n\nSW1(config)# control-plane\nSW1(config-cp)# service-policy input CONTROL_PLANE_POLICY\nSW1(config-cp)# end","ccis":["CCI-002385"]}]}