Juniper Router NDM Security Technical Implementation Guide

V1R1 2018-11-14       U_Juniper_Router_NDM_STIG_V1R1_Manual-xccdf.xml
V1R0 2018-08-30       U_Juniper_Router_NDM_STIG_V1R0-1_Manual-xccdf.xml
This Security Technical Implementation Guide is published as a tool to improve the security of Department of Defense (DoD) information systems. The requirements are derived from the National Institute of Standards and Technology (NIST) 800-53 and related documents. Comments or proposed revisions to this document should be sent via e-mail to the following address: [email protected]
Comparison
All 110
No Change 0
Updated 0
Added 55
Removed 55
V-91093 Added
Findings ID: JUNI-ND-000010 Rule ID: SV-101193r1_rule Severity: medium CCI: CCI-000054

Discussion

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. This 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.

Checks

Note: This requirement is not applicable to file transfer actions such as SCP and SFTP. Review the router configuration to determine if concurrent SSH sessions are limited as show in the example below: system { services { ssh { max-sessions-per-connection 1; connection-limit 2; } } Note: the max-sessions-per-connection must be set to 1 to limit the number of sessions per connection which is limited by the connection-limit. If the router is not configured to limit the number of concurrent sessions, this is a finding.

Fix

Configure the router to limit the number of concurrent sessions as shown in the example below: [edit system services] set ssh connection-limit 2 set ssh max-sessions-per-connection 1
V-91095 Added
Findings ID: JUNI-ND-000090 Rule ID: SV-101195r1_rule Severity: medium CCI: CCI-000018

Discussion

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.

Checks

Review the router configuration to determine if it audits account creation. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If account creation is not audited, this is a finding.

Fix

Configure the router to audit the creation of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91097 Added
Findings ID: JUNI-ND-000100 Rule ID: SV-101197r1_rule Severity: medium CCI: CCI-001403

Discussion

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.

Checks

Review the router configuration to determine if it audits account modification. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If account modification is not audited, this is a finding.

Fix

Configure the router to audit the modification of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91099 Added
Findings ID: JUNI-ND-000110 Rule ID: SV-101199r1_rule Severity: medium CCI: CCI-001404

Discussion

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.

Checks

Review the router configuration to determine if it audits the disabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the disabling of accounts is not audited, this is a finding. Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions).

Fix

Configure the router to audit the disabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91101 Added
Findings ID: JUNI-ND-000120 Rule ID: SV-101201r1_rule Severity: medium CCI: CCI-001405

Discussion

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.

Checks

Review the router configuration to determine if it audits the deletion of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the deletion of accounts is not audited, this is a finding.

Fix

Configure the router to audit the deletion of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91103 Added
Findings ID: JUNI-ND-000140 Rule ID: SV-101203r1_rule Severity: medium CCI: CCI-001368

Discussion

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. Application-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). Applications 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. Step 1: Verify that an input filter has been configured for the loopback interfaces as shown in the example below. interfaces { … … … } lo0 { unit 0 { family inet { filter { input RESTRICT_MGMT_ACCESS; } address 2.2.2.2/32; } } } } Step 2: Verify that the filter restricts management traffic. The configuration example below restricts management access to specific IP addresses via SSH. filter RESTRICT_MGMT_ACCESS { term ALLOW_SSH { from { source-address { x.x.x.x/24; } protocol tcp; port ssh; } then accept; } term DENY_SSH { from { protocol tcp; port ssh; } then { log; discard; } } } Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface. If the Juniper 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.

Fix

Step 1: Configure the router to restrict management access to specific IP addresses via SSH as shown in the example below. [edit firewall family inet] set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from source-address x.x.x.x/24 set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH then accept set filter RESTRICT_MGMT_ACCESS term DENY_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term DENY_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term DENY_SSH then log set filter RESTRICT_MGMT_ACCESS term DENY_SSH then discard Step 2: Apply the filter to the loopback interface. [edit interfaces lo0 unit 0 family inet] set filter input RESTRICT_MGMT_ACCESS Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface. Step 1: Configure the router to restrict management access to specific IP addresses via SSH as shown in the example below. [edit firewall family inet] set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from source-address x.x.x.x/24 set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH then accept set filter RESTRICT_MGMT_ACCESS term DENY_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term DENY_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term DENY_SSH then log set filter RESTRICT_MGMT_ACCESS term DENY_SSH then discard Step 2: Apply the filter to the loopback interface. [edit interfaces lo0 unit 0 family inet] set filter input RESTRICT_MGMT_ACCESS Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface.
V-91105 Added
Findings ID: JUNI-ND-000150 Rule ID: SV-101205r1_rule Severity: medium CCI: CCI-000044

Discussion

By limiting the number of failed login attempts, the risk of unauthorized system access via user password guessing, otherwise known as brute-forcing, is reduced.

Checks

Review the router configuration to verify that it enforces the limit of three consecutive invalid logon attempts after which time it will lockout the user account from accessing the router for 15 minutes as shown in the example below. login { retry-options { tries-before-disconnect 3; lockout-period 15; } If the router is not configured to enforce the limit of three consecutive invalid logon attempts after which time it will lockout the user account from accessing the router for 15 minutes, this is a finding.

Fix

Configure the router to enforce the limit of three consecutive invalid logon attempts and lock out the user account from accessing the device for 15 minutes as shown in the example below. [edit system login] set retry-options tries-before-disconnect 3 set retry-options lockout-period 15
V-91107 Added
Findings ID: JUNI-ND-000160 Rule ID: SV-101207r1_rule Severity: medium CCI: CCI-000048

Discussion

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. System use notifications are required only for access via logon interfaces with human users.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. login { message "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."; } If the router is not configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device, this is a finding.

Fix

Configure the router to display the Standard Mandatory DoD Notice and Consent Banner before granting access as shown in the following example: [edit system login] set message "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."
V-91109 Added
Findings ID: JUNI-ND-000210 Rule ID: SV-101209r1_rule Severity: medium CCI: CCI-000166

Discussion

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. To meet this requirement, the network device must log administrator access and activity.

Checks

Review the router configuration to determine if it logs configuration changes as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If configuration change activity is not logged, this is a finding.

Fix

Configure the router to log configuration changes as shown in the following example: set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91111 Added
Findings ID: JUNI-ND-000230 Rule ID: SV-101211r1_rule Severity: medium CCI: CCI-000169

Discussion

Without the capability to generate audit records, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. Audit records can be generated from various components within the network device (e.g., process, module). Certain specific device functionalities may be audited as well. The list of audited events is the set of events for which audits are to be generated. This set of events is typically a subset of the list of all events for which the system is capable of generating audit records. DoD has defined the list of events for which the device will provide an audit record generation capability as the following: (i) Successful and unsuccessful attempts to access, modify, or delete privileges, security objects, security levels, or categories of information (e.g., classification levels); (ii) Access actions, such as successful and unsuccessful logon attempts, privileged activities or other system level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system; and (iii) All account creation, modification, disabling, and termination actions.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below various types of events to be logged. syslog { file LOG_FILE { authorization info; security info; firewall info; change-log info; } } Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate log records for DoD-defined auditable events, this is a finding.

Fix

Configure the router to generate log records for DoD-defined auditable events as shown in the configuration example below. [edit system] set syslog file LOG_FILE authorization info set syslog file LOG_FILE security info set syslog file LOG_FILE firewall info set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91113 Added
Findings ID: JUNI-ND-000240 Rule ID: SV-101213r1_rule Severity: medium CCI: CCI-000171

Discussion

Without the capability to restrict which roles and individuals can select which events are audited, unauthorized personnel may be able to prevent the auditing of critical events. Misconfigured audits may degrade the system's performance by overwhelming the audit log. Misconfigured audits may also make it more difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows only users belonging to the AUDITOR class to configure the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } class SR_ENGINEER { permissions all; deny-configuration "(system syslog)"; } } } If the router is not configured to allow only the ISSM (or individuals or roles appointed by the ISSM) to select which auditable events are to be audited, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters as well as a classes that do not allow configuration of logging parameters as shown in the example below. set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" Note: The auditor must also be allowed to view the configuration to verify. set login class SR_ENGINEER permissions all set login class SR_ENGINEER deny-configuration "(system syslog)" Note: A user assigned to the Superuser class would have the ability to change logging parameters. It is NOT recommended to assign this class to any router administrator.
V-91115 Added
Findings ID: JUNI-ND-000250 Rule ID: SV-101215r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the information system (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all logon attempts. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate audit records when successful/unsuccessful attempts to logon, this is a finding.

Fix

Configure the router to log all logon attempts as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91117 Added
Findings ID: JUNI-ND-000330 Rule ID: SV-101217r1_rule Severity: medium CCI: CCI-000135

Discussion

Reconstruction of harmful events or forensic analysis is not possible if audit records do not contain enough information. Organizations 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all configuration changes. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate audit records of configuration changes, this is a finding.

Fix

Configure the router to log all configuration changes as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91119 Added
Findings ID: JUNI-ND-000380 Rule ID: SV-101219r1_rule Severity: medium CCI: CCI-000163

Discussion

Audit information includes all information (e.g., audit records, audit settings, and audit reports) needed to successfully audit network device activity. If audit data were to become compromised, then forensic analysis and discovery of the true source of potentially malicious system activity is impossible to achieve. To ensure the veracity of audit data, the network device must protect audit information from unauthorized modification. This requirement can be achieved through multiple methods, which will depend upon system architecture and design. Some commonly employed methods include ensuring log files receive the proper file system permissions and limiting log data locations. Network devices providing a user interface to audit data will leverage user permissions and roles identifying the user accessing the data and the corresponding rights that the user enjoys in order to make access decisions regarding the modification of audit data.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows only users belonging to the AUDITOR class to configure the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } class SR_ENGINEER { permissions all; deny-configuration "(system syslog)"; } } } If the router is not configured to protect audit information from unauthorized modification, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters as well as a classes that do not allow configuration of logging parameters as shown in the example below. [edit system] set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" set login class SR_ENGINEER permissions all set login class SR_ENGINEER deny-configuration "(system syslog)"
V-91121 Added
Findings ID: JUNI-ND-000390 Rule ID: SV-101221r1_rule Severity: medium CCI: CCI-000164

Discussion

Audit information includes all information (e.g., audit records, audit settings, and audit reports) needed to successfully audit information system activity. If audit data were to become compromised, then forensic analysis and discovery of the true source of potentially malicious system activity is impossible to achieve. To ensure the veracity of audit data, the network device must protect audit information from unauthorized deletion. This requirement can be achieved through multiple methods, which will depend upon system architecture and design. Some commonly employed methods include: ensuring log files receive the proper file system permissions utilizing file system protections, restricting access, and backing up log data to ensure log data is retained. Network devices providing a user interface to audit data will leverage user permissions and roles identifying the user accessing the data and the corresponding rights the user enjoys in order to make access decisions regarding the deletion of audit data.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class "JR_ENGINEER" which does not permit users belonging to the class to delete files or make changes to logging parameters. login { class JR_ENGINEER { permissions all; deny-commands "(file delete)"; deny-configuration "(system syslog)"; } } Note: The predefined classes "Operator" and "Read-only" do not have permissions to delete files. If the router is not configured to protect audit information from unauthorized deletion, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to delete files or make changes to logging parameters. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-configuration "(system syslog)" set login class JR_ENGINEER deny-commands “(file delete)”
V-91123 Added
Findings ID: JUNI-ND-000460 Rule ID: SV-101223r1_rule Severity: medium CCI: CCI-001499

Discussion

Changes to any software components of the network device can have significant effects on the overall security of the network. Therefore, only qualified and authorized individuals should be allowed administrative access to the network device for implementing any changes or upgrades. If the network device were to enable non-authorized users to make changes to software libraries, those changes could be implemented without undergoing testing, validation, and approval.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class JR_ENGINEER that is not permitted to add, change, or delete software installed on the router. login { class JR_ENGINEER { permissions all; deny-commands "request system software"; } Note: The following are the options under request system software: abort - Abort software upgrade add - Add extension or upgrade package delete - Remove extension or upgrade package rollback - Roll back to previous set of packages validate - Verify package compatibility with current configuration If the router is not configured to limit privileges to change the software resident within software libraries, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to add, change, or delete software installed on the router. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-commands “(request system software)” Note: The predefined classes "operator" and "Read-only" do not have permissions to install or delete software.
V-91125 Added
Findings ID: JUNI-ND-000470 Rule ID: SV-101225r1_rule Severity: high CCI: CCI-000382

Discussion

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. To 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.

Checks

Review the services that have been enabled as shown in the following configuration example: services { finger; telnet; xnm-clear-text; netconf { ssh; } } Services such as finger, telnet, and clear text-based JUNOScript connections should never be enabled. Other services such as Netconf, FTP, DHCP, and SSL-based JUNOScript connections should only be enabled if operationally required. If the router is not configured to prohibit the use of all unnecessary and non-secure functions and services, this is a finding.

Fix

Disable the following services if enabled as shown in the example below. [edit system services] delete telnet delete finger delete xnm-clear-text
V-91127 Added
Findings ID: JUNI-ND-000490 Rule ID: SV-101227r1_rule Severity: medium CCI: CCI-001358

Discussion

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. The 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. Administrators should secure the credentials and disable the root account (if possible) when not needed for system administration functions.

Checks

Review the router configuration to verify that a local account for last resort has been configured with privileges that will enable the administrator to troubleshoot network outage and restore operations as shown in the following example: system { authentication-order radius; } login { class JR_ENGINEER { permissions all; deny-commands "(file delete)"; deny-configuration "(system syslog)"; } user Last_Resort { uid 2000; class JR_ENGINEER; authentication { encrypted-password "$1$CYrhql/I$v2ydLnac9EPdA1F/KvROT1"; ## SECRET-DATA } } Note: If there is no response from the authentication server, JUNOS will authenticate using a local account as last resort. It is recommended to not configure password at the end of the authentication order, as JUNOS will attempt to authenticate using a local account upon a rejection from the authentication server. 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.

Fix

Step 1: Configure a class with the necessary privileges to troubleshoot network outage and restore operations as shown in the following example: [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-configuration "(system syslog)" set login class JR_ENGINEER deny-commands “(file delete)” Step 2: Assign the account of last resort to the JR_ENGINEER class set user LAST_RESORT class JR_ENGINEER authentication plain-text-password New password: xxxxxxxxxxxxx Step 3: Configure the authentication order to use the local account if the authentication server is not reachable as shown in the example below. [edit system] set authentication-order radius Note: If there is no response from the authentication server, JUNOS will authenticate using a local account as last resort. It is recommended to not configure password at the end of the authentication order, as JUNOS will attempt to authenticate using a local account upon a rejection from the authentication server.
V-91129 Added
Findings ID: JUNI-ND-000530 Rule ID: SV-101229r1_rule Severity: medium CCI: CCI-001941

Discussion

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. An authentication process resists replay attacks if it is impractical to achieve a successful authentication by recording and replaying a previous authentication message. Techniques used to address this include protocols using nonces (e.g., numbers generated for a specific one-time use) or challenges (e.g., TLS, WS_Security). Additional techniques include time-synchronous or challenge-response one-time authenticators.

Checks

Review the router configuration to verify that SSH is configured to use FIPS-140-2 compliant HMACs as shown in the example below. system { … … … services { ssh { protocol-version v2; macs [hmac-sha2-256 hmac-sha2-512]; } Note: An SSH configuration enables a server and client to authorize the negotiation of only those algorithms that are configured from the allowed list. If a remote party tries to negotiate using an algorithm that is not part of the allowed list, the request is rejected and the session is not established. If the router is not configured to implement replay-resistant authentication mechanisms for network access to privileged accounts, this is a finding.

Fix

Configure SSH to use FIPS-140-2 compliant HMACs as shown in the example below. [edit system services] set ssh protocol-version v2 set ssh macs [hmac-sha2-256 hmac-sha2-512] Note: An SSH configuration enables a server and client to authorize the negotiation of only those algorithms that are configured from the allowed list. If a user tries to negotiate using an algorithm that is not part of the allowed list, the request is rejected and the session is not established.
V-91131 Added
Findings ID: JUNI-ND-000550 Rule ID: SV-101231r1_rule Severity: medium CCI: CCI-000205

Discussion

Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks. Password length is one factor of several that helps to determine strength and how long it takes to crack a password. The shorter the password, the lower the number of possible combinations that need to be tested before the password is compromised. Use of more characters in a password helps to exponentially increase the time and/or resources required to compromise the password.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-length 7; } } If the router is not configured to enforce a minimum 15-character password length, this is a finding.

Fix

Configure the router to enforce a minimum 15-character password length as shown in the example below. [edit system login] set password minimum-length 15
V-91133 Added
Findings ID: JUNI-ND-000570 Rule ID: SV-101233r1_rule Severity: medium CCI: CCI-000192

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-upper-cases 1; } } If the router is not configured to enforce password complexity by requiring that at least one upper-case character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one upper-case character be used as shown in the example below. [edit system login] set password minimum-upper-cases 1
V-91135 Added
Findings ID: JUNI-ND-000580 Rule ID: SV-101235r1_rule Severity: medium CCI: CCI-000193

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-lower-cases 1; } } If the router is not configured to enforce password complexity by requiring that at least one lower-case character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one lower-case character be used as shown in the example below. [edit system login] set password minimum-lower-cases 1
V-91137 Added
Findings ID: JUNI-ND-000590 Rule ID: SV-101237r1_rule Severity: medium CCI: CCI-000194

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-numerics 1; } } If the router is not configured to enforce password complexity by requiring that at least one numeric character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one numeric character be used as shown in the example below. [edit system login] set password minimum-numerics 1
V-91139 Added
Findings ID: JUNI-ND-000600 Rule ID: SV-101239r1_rule Severity: medium CCI: CCI-001619

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-punctuations 1; } } If the router is not configured to enforce password complexity by requiring that at least one special character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one special character be used as shown in the example below. [edit system login] set password minimum-punctuations 1
V-91141 Added
Findings ID: JUNI-ND-000710 Rule ID: SV-101241r1_rule Severity: high CCI: CCI-001133

Discussion

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. Terminating 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.

Checks

Review the router configuration to verify that all login classes have the idle-timeout value to 10 minutes or less as shown in the following example: system { … … … } login { class ADMIN { idle-timeout 10; permissions admin-control; } } If the router is not configured to terminate all network connections associated with a device management after 10 minutes of inactivity, this is a finding.

Fix

Set the idle timeout value to 10 minutes or less on all configured login classes as shown in the example below. [edit system login] set class ADMIN idle-timeout 10
V-91143 Added
Findings ID: JUNI-ND-000830 Rule ID: SV-101243r1_rule Severity: medium CCI: CCI-002361

Discussion

Automatic session termination addresses the termination of administrator-initiated logical sessions in contrast to the termination of network connections that are associated with communications sessions (i.e., network disconnect). A logical session (for local, network, and remote access) is initiated whenever an administrator (or process acting on behalf of a user) accesses a network device. Such administrator sessions can be terminated (and thus terminate network administrator access) without terminating network sessions. Session termination terminates all processes associated with an administrator's logical session except those processes that are specifically created by the administrator (i.e., session owner) to continue after the session is terminated. Conditions or trigger events requiring automatic session termination can include, for example, organization-defined periods of user inactivity, targeted responses to certain types of incidents, and time-of-day restrictions on information system use. These conditions will vary across environments and network device types.

Checks

Review the router configuration to verify that it is compliant with this requirement. As shown in the example below, a condition or event could be a period of inactivity such as 5 minutes for a specific user class. system { … … … } login { class ADMIN { idle-timeout 5; permissions admin-control; } } If the router is not configured to automatically terminate a network administrator session after organization-defined conditions or trigger events requiring session disconnect, this is a finding.

Fix

Set the idle timeout value for specific login classes to a value less than 10 minutes as shown in the example below. [edit system login] set class ADMIN idle-timeout 5
V-91145 Added
Findings ID: JUNI-ND-000870 Rule ID: SV-101245r1_rule Severity: medium CCI: CCI-002130

Discussion

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.

Checks

Review the router configuration to determine if it audits the enabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the enabling of accounts is not audited, this is a finding. Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions). Hence, accounts can be enabled by changing the assigned class for the user to a class other than unauthorized.

Fix

Configure the router to audit the enabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions). Hence, accounts can be enabled by changing the assigned class for the user to a class other than unauthorized.
V-91147 Added
Findings ID: JUNI-ND-000890 Rule ID: SV-101247r1_rule Severity: medium CCI: CCI-000366

Discussion

Protecting access authorization information (i.e., access control decisions) ensures that authorization information cannot be altered, spoofed, or otherwise compromised during transmission. In distributed information systems, authorization processes and access control decisions may occur in separate parts of the systems. In such instances, authorization information is transmitted securely so timely access control decisions can be enforced at the appropriate locations. To support the access control decisions, it may be necessary to transmit, as part of the access authorization information, supporting security attributes. This is because, in distributed information systems, there are various access control decisions that need to be made, and different entities (e.g., services) make these decisions in a serial fashion, each requiring some security attributes to make the decisions. The network device must be compliant with at least one IETF standard authentication protocol such as Remote Authentication Dial-In User Service (RADIUS), Extensible Authentication Protocol (EAP), Lightweight Directory Access Protocol (LDAP), and Terminal Access Controller Access-Control System Plus (TACACS+). Protocols that are clearly defined in IETF RFC Internet standards (a.k.a. full standards), and are capable of securely conveying authorization information, are suitable for use.

Checks

Review the router configuration to verify that the device is configured to use an authentication server as primary source for authentication as shown in the following example: system { authentication-order radius; } radius-server { 10.1.58.2 secret "$8$xYW-dsq.5zF/wYnC"; ## SECRET-DATA } or system { authentication-order [tacplus password ]; root-authentication { encrypted-password "$1$4Ou0B0Nk$IXPAsRmgLqLM./.I1XUuh1"; ## SECRET-DATA } tacplus-server { 10.1.58.2 secret "$8$emHMWxZGiq.5X7PQ"; ## SECRET-DATA } If the router is not configured to use an authentication server as primary source for authentication, this is a finding.

Fix

Step 1: Configure the router to use an authentication server as shown in the following examples: [edit system] set radius-server 10.1.58.2 secret xxxxxxxxx or set tacplus-server 10.1.58.2 secret xxxxxxxxx Step 2: Configure the authentication order to use the authentication server as primary source for authentication as shown in the following examples: set authentication-order radius or set authentication-order tacplus Note: If there is no response from the authentication server, JUNOS will authenticate using a local account as last resort. It is recommended to not configure password at the end of the authentication order, as JUNOS will attempt to authenticate using a local account upon a rejection from the authentication server.
V-91149 Added
Findings ID: JUNI-ND-000930 Rule ID: SV-101249r1_rule Severity: medium CCI: CCI-002234

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all commands entered from the command line interface as well as log all configuration changes. syslog { file LOG_FILE { interactive-commands; change-log info } } Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } If the router is not configured to log all commands entered from the command line interface as well as log all configuration changes, this is a finding.

Fix

Configure the router to log all commands entered from the command line interface as well as log all configuration changes as shown in the following example: [edit system] set syslog file LOG_FILE interactive-commands set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
V-91151 Added
Findings ID: JUNI-ND-000960 Rule ID: SV-101251r1_rule Severity: medium CCI: CCI-001914

Discussion

If authorized individuals do not have the ability to modify auditing parameters in response to a changing threat environment, the organization may not be able to effectively respond, and important forensic information may be lost. This requirement enables organizations to extend or limit auditing as necessary to meet organizational requirements. Auditing that is limited to conserve information system resources may be extended to address certain threat situations. In addition, auditing may be limited to a specific set of events to facilitate audit reduction, analysis, and reporting. Organizations can establish time thresholds in which audit actions are changed, for example, near-real-time, within minutes, or within hours. The individuals or roles to change the auditing are dependent on the security configuration of the network device--for example, it may be configured to allow only some administrators to change the auditing, while other administrators can review audit logs but not reconfigure auditing. Because this capability is so powerful, organizations should be extremely cautious about only granting this capability to fully authorized security personnel.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows users from the AUDITOR class to view the configuration and to make changes to the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } } Note: The auditor must also be allowed to view the configuration to verify. If the router is not configured to enable organization-identified individuals or roles to change the auditing to be performed based on all selectable event criteria, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters. [edit system] set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" Note: The auditor must also be allowed to view the configuration to verify.
V-91153 Added
Findings ID: JUNI-ND-000970 Rule ID: SV-101253r1_rule Severity: medium CCI: CCI-001849

Discussion

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. The 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below specifies 12 archive log files and the maximum size of the active log file to be reached prior to archiving. syslog { file LOG_FILE { any info; archive size 1000000 files 12; } } Note: To prevent log files from growing too large, by default the Junos logging utility writes messages to a sequence of files of a defined size. The files in the sequence are referred to as archive files to distinguish them from the active file to which messages are currently being written. The default maximum size depends on the platform type. By default, the logging utility creates up to 10 archive files in this manner. When the maximum number of archive files is reached and when the size of the active file reaches the configured maximum size, the contents of the last archived file are overwritten by the current active file. If the router is not configured to allocate audit record storage capacity in accordance with organization-defined audit record storage requirements, this is a finding.

Fix

Configure the number or archive files and the maximum size of the active log file to be reached prior to archiving as shown in the example below. [edit system] set syslog file LOG_FILE any info set syslog file LOG_FILE archive files 12 size 1000000
V-91155 Added
Findings ID: JUNI-ND-000990 Rule ID: SV-101255r1_rule Severity: medium CCI: CCI-001858

Discussion

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. Alerts 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).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { syslog { host x.x.x.x { any critical; } } Note: The parameter "critical" can be replaced with a lesser severity level (i.e., error, warning, notice, info). If the router is not configured to generate an alert for all audit failure events, this is a finding.

Fix

Configure the router to send critical to emergency log messages to the syslog server as shown in the example below. set syslog host x.x.x.x any critical Note: The parameter "critical" can replaced with a lesser severity level (i.e., error, warning, notice, info).
V-91157 Added
Findings ID: JUNI-ND-001020 Rule ID: SV-101257r1_rule Severity: medium CCI: CCI-000366

Discussion

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. Multiple 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. DoD-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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the configuration example below. system { … … … } ntp { server x.x.x.x prefer; server x.x.x.x; } If the router is not configured to synchronize its clock with redundant authoritative time sources, this is a finding.

Fix

Configure the router to synchronize its clock with redundant authoritative time sources as shown in the example below. [edit system ntp] set server x.x.x.x set server x.x.x.x prefer
V-91159 Added
Findings ID: JUNI-ND-001030 Rule ID: SV-101259r1_rule Severity: medium CCI: CCI-001890

Discussion

If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analysis. Time 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { time-zone UTC; Note: 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. If the router is not configured record time stamps for log records that can be mapped to UTC or GMT, this is a finding.

Fix

[edit system] set time-zone UTC
V-91161 Added
Findings ID: JUNI-ND-001060 Rule ID: SV-101261r1_rule Severity: medium CCI: CCI-001812

Discussion

Allowing anyone to install software, without explicit privileges, creates the risk that untested or potentially malicious software will be installed on the system. This requirement applies to code changes and upgrades for all network devices.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class JR_ENGINEER that is not permitted to add or change software installed on the router. login { class JR_ENGINEER { permissions all; deny-commands "request system software"; } Note: The following are the options under request system software: abort -Abort software upgrade add -Add extension or upgrade package delete -Remove extension or upgrade package rollback -Roll back to previous set of packages validate -Verify package compatibility with current configuration If the router is not configured to prohibit installation of software without explicit privileged status, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to add or change software installed on the router. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-commands “(request system software)” Note: The predefined classes operator and Read-only do not have permissions to install software.
V-91163 Added
Findings ID: JUNI-ND-001120 Rule ID: SV-101263r1_rule Severity: medium CCI: CCI-001967

Discussion

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. A 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). Because 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. snmp { v3 { usm { local-engine { user R5_NMS { authentication-sha { authentication-key "$8$vOiLX-Vb2oaUwsJDiHmPz3690BcSevM"; ## SECRET-DATA } } } } target-address NMS_HOST { address x.x.x.x; address-mask 255.255.255.0; tag-list NMS; target-parameters TP1; } target-parameters TP1 { parameters { message-processing-model v3; security-model usm; security-level authentication; security-name R5_NMS; } } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } If the router is not configured to authenticate SNMP messages using a FIPS-validated HMAC, this is a finding.

Fix

Configure the router to authenticate SNMP messages as shown in the example below. [edit snmp] set v3 usm local-engine user R5_NMS authentication-sha authentication-password xxxxxxxxxx set v3 target-address NMS_HOST address x.x.x.x edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS set target-parameters TP1 exit [edit snmp] set v3 target-parameters TP1 parameters message-processing-model v3 set v3 target-parameters TP1 parameters security-model usm set v3 target-parameters TP1 parameters security-name R5_NMS set v3 target-parameters TP1 parameters security-level authentication set v3 snmp-community index1 security-name R5_NMS tag NMS set v3 notify SEND_TRAPS type trap tag NMS
V-91165 Added
Findings ID: JUNI-ND-001130 Rule ID: SV-101265r1_rule Severity: medium CCI: CCI-000068

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. snmp { v3 { usm { local-engine { user R5_NMS { authentication-sha { authentication-key "$8$vOiLX-Vb2oaUwsJDiHmPz3690BcSevM"; ## SECRET-DATA } privacy-aes128 { privacy-key "$8$3Q4T9CuOBESyK1IrvW87NwYgoDiPfz3nCs24Z"; ## SECRET-DATA } } } } target-address NMS_HOST { address 10.1.58.2; address-mask 255.255.255.0; tag-list NMS; target-parameters TP1; } target-parameters TP1 { parameters { message-processing-model v3; security-model usm; security-level privacy; security-name R5_NMS; } } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } Note: SNMPv3 security level privacy also authenticates the messages using the configured HMAC. If the router is not configured to encrypt SNMP messages using a FIPS 140-2 approved algorithm, this is a finding.

Fix

Configure the router to encrypt SNMP messages using a FIPS 140-2 approved algorithm as shown in the example below. [edit snmp] set v3 usm local-engine user R5_NMS authentication-sha authentication-password xxxxxxxxxx set v3 usm local-engine user R5_NMS privacy-aes128 privacy-password xxxxxxxxxx set v3 target-address NMS_HOST address 10.1.58.2 edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS set target-parameters TP1 exit [edit snmp] set v3 target-parameters TP1 parameters message-processing-model v3 set v3 target-parameters TP1 parameters security-model usm set v3 target-parameters TP1 parameters security-name R5_NMS set v3 target-parameters TP1 parameters security-level privacy set v3 snmp-community index1 security-name R5_NMS tag NMS set v3 notify SEND_TRAPS type trap tag NMS Note: SNMPv3 security level privacy also authenticates the messages using the configured HMAC; hence, the authentication key must also be configured as shown in the example above.
V-91167 Added
Findings ID: JUNI-ND-001140 Rule ID: SV-101267r1_rule Severity: medium CCI: CCI-001967

Discussion

If Network Time Protocol 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the configuration example below. system { … … … } ntp { authentication-key 1 type md5 value "$8$LMK7NbHkPTQnVwF/"; ## SECRET-DATA authentication-key 2 type md5 value "$8$I3KceWbwgJUH"; ## SECRET-DATA server x.x.x.x key 1 prefer; ## SECRET-DATA server x.x.x.x key 2; ## SECRET-DATA trusted-key [1 2]; } If the router is not configured to authenticate NTP sources using authentication that is cryptographically based, this is a finding.

Fix

Configure the router to authenticate NTP sources using authentication that is cryptographically based as shown in the example below. [edit system ntp] set authentication-key 1 type md5 value xxxxxxxxx set authentication-key 2 type md5 value xxxxxxxxx set server x.x.x.x key 1 prefer set server x.x.x.x key 2 set trusted-key [1 2] Note: SHA1 and SHA2-256 are supported with release 18.2.
V-91169 Added
Findings ID: JUNI-ND-001190 Rule ID: SV-101269r1_rule Severity: high CCI: CCI-002890

Discussion

Unapproved mechanisms that are used for authentication to the cryptographic module are not verified and therefore cannot be relied upon to provide confidentiality or integrity, and DoD data may be compromised. Nonlocal 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. Currently, 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. Separate 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … } services { ssh { protocol-version v2; macs hmac-sha2-256; } } If the router is not configured to use FIPS-validated HMAC to protect the integrity of remote maintenance sessions, this is a finding.

Fix

Configure SSH to use FIPS-validated HMAC for remote maintenance sessions as shown in the following example: [edit system services] set ssh protocol-version v2 set ssh macs hmac-sha2-256
V-91171 Added
Findings ID: JUNI-ND-001200 Rule ID: SV-101271r1_rule Severity: high CCI: CCI-003123

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement. system { … … … } services { ssh { protocol-version v2; ciphers aes128-cbc; } } 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.

Fix

Configure the router to implement cryptographic mechanisms to protect the confidentiality of remote maintenance sessions using a FIPS 140-2 approved algorithm as shown in the example below. [edit system services] set ssh ciphers aes128-cbc
V-91173 Added
Findings ID: JUNI-ND-001210 Rule ID: SV-101273r1_rule Severity: medium CCI: CCI-002385

Discussion

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. This 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. The 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 (for example, firewalls performing packet filtering to block DoS attacks).

Checks

Review the router configuration to verify that it is compliant with this requirement. Step 1: Verify that the loopback interfaces has been configured with an input filter. The example below defined a control plane policing (CoPP) filter named CoPP_Policy. interfaces { … … … lo0 { unit 0 { family inet { filter { input CoPP_Policy; } address 5.5.5.5/32; } } } } Step 2: Verify that the filter will protect against DoS attacks. firewall { … … … } filter CoPP_Policy { term CRITICAL { from { protocol [ ospf pim tcp ]; source-port bgp; destination-port bgp; } then policer CRITICAL; } term IMPORTANT { from { source-address { 10.1.1.0/24; } protocol tcp; destination-port [ ssh snmp ntp ]; } then { policer IMPORTANT; discard; } } term NORMAL { from { protocol icmp; icmp-type [ echo-reply echo-request ]; icmp-code [ ttl-eq-zero-during-transit port-unreachable ]; } then policer NORMAL; } term UNDESIRABLE { from { protocol udp; destination-port 1434; } then policer UNDESIRABLE; } term ALL-OTHER { from { address { 0.0.0.0/0; } } then policer ALL-OTHER; } } } Step 3: verify that policers configured will restrict bandwidth based on traffic types as shown in the example below. firewall { … … … } policer CRITICAL { filter-specific; if-exceeding { bandwidth-limit 4m; burst-size-limit 1500; } then discard; } policer IMPORTANT { filter-specific; if-exceeding { bandwidth-limit 512k; burst-size-limit 16k; } then discard; } policer NORMAL { filter-specific; if-exceeding { bandwidth-limit 64k; burst-size-limit 2k; } then discard; } policer UNDESIRABLE { filter-specific; if-exceeding { bandwidth-limit 32k; burst-size-limit 1500; } then discard; } policer ALL-OTHER { filter-specific; if-exceeding { bandwidth-limit 32k; burst-size-limit 1500; } then discard; } If the router is not configured to protect against known types of DoS attacks by employing organization-defined security safeguards, this is a finding.

Fix

Configure the router 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 policers for specific traffic types. set firewall policer CRITICAL filter-specific set firewall policer CRITICAL if-exceeding bandwidth-limit 4000000 burst-size-limit 1500 set firewall policer CRITICAL then discard set firewall policer IMPORTANT filter-specific set firewall policer IMPORTANT if-exceeding bandwidth-limit 512000 burst-size-limit 16000 set firewall policer IMPORTANT then discard set firewall policer NORMAL filter-specific set firewall policer NORMAL if-exceeding bandwidth-limit 64000 burst-size-limit 2000 set firewall policer NORMAL then discard set firewall policer UNDESIRABLE filter-specific set firewall policer UNDESIRABLE if-exceeding bandwidth-limit 32000 burst-size-limit 1500 set firewall policer UNDESIRABLE then discard set firewall policer ALL-OTHER filter-specific set firewall policer ALL-OTHER if-exceeding bandwidth-limit 32000 burst-size-limit 1500 set firewall policer ALL-OTHER then discard Step 2: Configure the CoPP filter by applying policers to the appropriate traffic types. set firewall filter CoPP_Policy term CRITICAL from protocol ospf set firewall filter CoPP_Policy term CRITICAL from protocol pim set firewall filter CoPP_Policy term CRITICAL from protocol tcp destination-port bgp set firewall filter CoPP_Policy term CRITICAL from protocol tcp source-port bgp set firewall filter CoPP_Policy term CRITICAL then policer CRITICAL set firewall filter CoPP_Policy term IMPORTANT from source-address 10.1.1.0/24 set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ssh set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port snmp set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ntp set firewall filter CoPP_Policy term IMPORTANT then policer IMPORTANT set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ssh set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port snmp set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ntp set firewall filter CoPP_Policy term IMPORTANT then discard set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-code ttl-eq-zero-during-transit set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-code port-unreachable set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-type echo-reply set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-type echo-request set firewall filter CoPP_Policy term NORMAL then policer NORMAL set firewall filter CoPP_Policy term UNDESIRABLE from protocol udp destination-port 1434 set firewall filter CoPP_Policy term UNDESIRABLE then policer UNDESIRABLE set firewall filter CoPP_Policy term ALL-OTHER from address 0.0.0.0/0 set firewall filter CoPP_Policy term ALL-OTHER then policer ALL-OTHER Step 3: Apply the CoPP filter to the loopback interface. set interface lo0 unit 0 family inet filter input CoPP_Policy
V-91175 Added
Findings ID: JUNI-ND-001230 Rule ID: SV-101275r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "authorization info" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when administrator privileges are modified, this is a finding.

Fix

Configure the router to generate log records when account privileges are modified as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
V-91177 Added
Findings ID: JUNI-ND-001240 Rule ID: SV-101277r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when administrator privileges are deleted, this is a finding.

Fix

Configure the router to generate log records when administrator privileges are deleted as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
V-91179 Added
Findings ID: JUNI-ND-001250 Rule ID: SV-101279r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate audit records when successful/unsuccessful logon attempts occur, this is a finding.

Fix

Configure the router to generate audit records when successful/unsuccessful logon attempts occur as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
V-91181 Added
Findings ID: JUNI-ND-001260 Rule ID: SV-101281r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example configurations below. syslog { file LOG_FILE { change-log info; interactive-commands info; } } Note: The parameter "any" can be in place of "change-log" and “interactive-commands” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records for privileged activities, this is a finding.

Fix

Configure the router to generate log records for privileged activities as shown in the example below. [edit system] set syslog file LOG_FILE change-log info set syslog file LOG_FILE interactive-commands info Note: The parameter "any" can be in place of "change-log" and “interactive-commands” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
V-91183 Added
Findings ID: JUNI-ND-001280 Rule ID: SV-101283r1_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when concurrent logons from different workstations occur, this is a finding.

Fix

Configure the router to generate log records when concurrent logons from different workstations occur as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
V-91185 Added
Findings ID: JUNI-ND-001300 Rule ID: SV-101285r1_rule Severity: medium CCI: CCI-001851

Discussion

Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Off-loading is a common process in information systems with limited audit storage capacity.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to off-load log records onto a different system than the system being audited, this is a finding.

Fix

Configure the router to send log records to a syslog server as shown in the example below. [edit system] set syslog host x.x.x.x any info
V-91187 Added
Findings ID: JUNI-ND-001340 Rule ID: SV-101287r1_rule Severity: medium CCI: CCI-000169

Discussion

Auditing and logging are key components of any security architecture. Logging the actions of specific events provides a means to investigate an attack; to recognize resource utilization or capacity thresholds; or to identify an improperly configured network device. If auditing is not comprehensive, it will not be useful for intrusion monitoring, security investigations, and forensic analysis.

Checks

Review the router configuration to verify that it is compliant with this requirement. The example below illustrates how selected events can be logged. syslog { file LOG_FILE { authorization info; security info; firewall info; change-log info; } } Note: A syslog server can be configured in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { authorization info; security info; firewall info; change-log info; } } If the router is not configured to generate log records for a locally developed list of auditable events, this is a finding.

Fix

Configure the router to generate log records for a locally developed list of auditable events as shown in the example below. [edit system] set syslog file LOG_FILE authorization info set syslog file LOG_FILE security info set syslog file LOG_FILE firewall info set syslog file LOG_FILE change-log info Note: A syslog server can be configured in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x authorization info set syslog host x.x.x.x security info set syslog host x.x.x.x firewall info set syslog host x.x.x.x change-log info
V-91189 Added
Findings ID: JUNI-ND-001360 Rule ID: SV-101289r1_rule Severity: high CCI: CCI-000366

Discussion

Centralized management of user accounts and authentication increases the administrative access to the router. 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.

Checks

Review the router configuration to verify that the device is configured to use an authentication server as primary source for authentication as shown in the following example: system { authentication-order radius; } radius-server { x.x.x.x secret "$8$xYW-dsq.5zF/wYnC"; ## SECRET-DATA } If the router is not configured to use an authentication server for the purpose of authenticating users prior to granting administrative access, this is a finding.

Fix

Step 1: Configure the authentication server as shown in the following example: [edit system] set radius-server x.x.x.x secret xxxxxxxxx Step 2: Configure the authentication order to use the authentication server as primary source for authentication as shown in the following example: set authentication-order radius Note: If there is no response from the authentication server, JUNOS will authenticate using a local account as last resort. It is recommended to not configure password at the end of the authentication order, as JUNOS will attempt to authenticate using a local account upon a rejection from the authentication server.
V-91191 Added
Findings ID: JUNI-ND-001400 Rule ID: SV-101291r1_rule Severity: medium CCI: CCI-000366

Discussion

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. This 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The example configuration below will send the router configuration to an SCP server upon the commit command. system { … … … archival { configuration { transfer-on-commit; archive-sites { "scp://[email protected]:/configs" password "$9$CMJKpu1LX-bwgBIYo"; ## SECRET-DATA } } } } If the router is not configured to conduct backups of the configuration when changes occur, this is a finding.

Fix

Configure the router to send the configuration to an SCP server up a commit command as shown in the example below. set archival configuration transfer-on-commit archive-sites scp://[email protected]:/configs" password "xxxxxxxx"
V-91193 Added
Findings ID: JUNI-ND-001430 Rule ID: SV-101293r1_rule Severity: medium CCI: CCI-000366

Discussion

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 at medium assurance or higher, this Certification Authority will suffice.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration below is an example of a Certificate Authority profile defining name of the CA, the location of CRL for revocation check and to refresh the CRL every 24 hours, and the email address to send a certificate request. security { pki { ca-profile DODXX_CA { ca-identity xxxxx.mil; revocation-check { crl { url http://server1.xxxxx.mil/CertEnroll/example.crl; refresh-interval 24; } } administrator { email-address "[email protected]"; } } } } If the router is not configured to obtain its public key certificates from an appropriate certificate policy through an approved service provider, this is a finding.

Fix

Step 1. Create a trusted profile and email address to send certificate request to. [edit security] set pki ca-profile DODXX_CA ca-identity xxxxx.mil set pki ca-profile DODXX_CA administrator email-address [email protected] Step 2. Create a revocation check to specify a method for checking certificate revocation. set pki ca-profile DODXX_CA revocation-check crl url http://server1.example.mil/CertEnroll/example.crl set pki ca-profile DODXX_CA revocation-check crl refresh-interval 24
V-91195 Added
Findings ID: JUNI-ND-001440 Rule ID: SV-101295r1_rule Severity: medium CCI: CCI-000366

Discussion

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 create a new account. Notification of account creation is one method for mitigating this risk. A comprehensive account management process will ensure an audit trail which documents the creation of accounts and notifies administrators and Information System Security Officers (ISSOs). Such a process greatly reduces the risk that accounts will be surreptitiously created and provides logging that can be used for forensic purposes.

Checks

Verify that the router is configured to send logs to a syslog server. The configuration should look similar to the example below: system { syslog { host x.x.x.x { any info; } } If the router is not configured to send log data to the syslog server, this is a finding.

Fix

Configure the router to send log data to a syslog server as shown in the example below. set syslog host x.x.x.x any info
V-91197 Added
Findings ID: JUNI-ND-001450 Rule ID: SV-101297r1_rule Severity: medium CCI: CCI-000366

Discussion

If appropriate actions are not taken when a network device failure occurs, a denial of service condition may occur which could result in mission failure since the network would be operating without a critical security monitoring and prevention function. Upon detecting a failure of any router components, the router must activate a system alert message, send an alarm, or shut down. By immediately displaying an alarm message, potential security violations can be identified more quickly even when administrators are not logged into the device. This can be facilitated by the router sending SNMP traps to the SNMP manager that can then have the necessary action taken by automatic or operator intervention.

Checks

Verify that the router is configured to send traps to the SNMP manager. The SNMP configuration should contain commands similar to the example below. snmp { v3 { … … … } target-address NMS_HOST { address x.x.x.x; address-mask 255.255.255.0; tag-list NMS; } … … … } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } If the router is not configured to send traps to the SNMP manager, this is a finding.

Fix

Configure the router to send SNMP traps to the SNMP manager. [edit snmp] set v3 target-address NMS_HOST address x.x.x.x edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS exit [edit snmp] set v3 notify SEND_TRAPS type trap tag NMS
V-91199 Added
Findings ID: JUNI-ND-001460 Rule ID: SV-101299r1_rule Severity: medium CCI: CCI-000366

Discussion

By default, shared secrets in a Junos configuration only use an obfuscation algorithm ($9$ format), which is not very strong and can easily be decrypted. Strong encryption for configured secrets can be enabled by configuring a master password to be used as input to the password based key derivation function (PBKDF2) to generate an encryption key. The key is used as input to the Advanced Encryption Standard in Galois/Counter Mode (AES256-GCM).

Checks

Verify that a master password has been configured as by entering the following command: show configuration system master-password The output will appear as follows: password-configured; Note: The master password is hidden from the configuration. If a master password has not been configured, this is a finding.

Fix

Configure the master password to be used to generate encrypted keys for shared secrets as shown in the example below. [edit] set system master-password plain-text-password Master password: xxxxxxxxxx Repeat master password: xxxxxxxxxx
V-91201 Added
Findings ID: JUNI-ND-001470 Rule ID: SV-101301r1_rule Severity: high CCI: CCI-000366

Discussion

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.

Checks

Verify that the router is in compliance with this requirement by having the router administrator enter the following command: show version End of support dates for all Junos releases can be found at the URL listed below. https://support.juniper.net/support/eol/software/junos/ If the Juniper router is not running a supported Junos release, this is a finding.

Fix

Upgrade the Juniper router to a supported release.
JUNI-ND-000010 Removed
Findings ID: JUNI-ND-000010 Rule ID: JUNI-ND-000010_rule Severity: medium CCI: CCI-000054

Discussion

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. This 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.

Checks

Review the router configuration to determine if concurrent SSH sessions are limited as show in the example below: system { services { ssh { max-sessions-per-connection 1; connection-limit 2; } } Note: the max-sessions-per-connection must be set to 1 to limit the number of sessions per connection which is limited by the connection-limit. If the router is not configured to limit the number of concurrent sessions, this is a finding.

Fix

Configure the router to limit the number of concurrent sessions as shown in the example below: [edit system services] set ssh connection-limit 2 set ssh max-sessions-per-connection 1
JUNI-ND-000090 Removed
Findings ID: JUNI-ND-000090 Rule ID: JUNI-ND-000090_rule Severity: medium CCI: CCI-000018

Discussion

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.

Checks

Review the router configuration to determine if it audits account creation. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If account creation is not audited, this is a finding.

Fix

Configure the router to audit the creation of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000100 Removed
Findings ID: JUNI-ND-000100 Rule ID: JUNI-ND-000100_rule Severity: medium CCI: CCI-001403

Discussion

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.

Checks

Review the router configuration to determine if it audits account modification. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If account modification is not audited, this is a finding.

Fix

Configure the router to audit the modification of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000110 Removed
Findings ID: JUNI-ND-000110 Rule ID: JUNI-ND-000110_rule Severity: medium CCI: CCI-001404

Discussion

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.

Checks

Review the router configuration to determine if it audits the disabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the disabling of accounts is not audited, this is a finding. Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions).

Fix

Configure the router to audit the disabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000120 Removed
Findings ID: JUNI-ND-000120 Rule ID: JUNI-ND-000120_rule Severity: medium CCI: CCI-001405

Discussion

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.

Checks

Review the router configuration to determine if it audits the deletion of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the deletion of accounts is not audited, this is a finding.

Fix

Configure the router to audit the deletion of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: [edit system] set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000140 Removed
Findings ID: JUNI-ND-000140 Rule ID: JUNI-ND-000140_rule Severity: medium CCI: CCI-001368

Discussion

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. Application-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). Applications 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. Step 1: Verify that an input filter has been configured for the loopback interfaces as shown in the example below. interfaces { … … … } lo0 { unit 0 { family inet { filter { input RESTRICT_MGMT_ACCESS; } address 2.2.2.2/32; } } } } Step 2: Verify that the filter restricts management traffic. The configuration example below restricts management access to specific IP addresses via SSH. filter RESTRICT_MGMT_ACCESS { term ALLOW_SSH { from { source-address { x.x.x.x/24; } protocol tcp; port ssh; } then accept; } term DENY_SSH { from { protocol tcp; port ssh; } then { log; discard; } } } Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface. If the Juniper 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.

Fix

Step 1: Configure the router to restrict management access to specific IP addresses via SSH as shown in the example below. [edit firewall family inet] set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from source-address x.x.x.x/24 set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH then accept set filter RESTRICT_MGMT_ACCESS term DENY_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term DENY_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term DENY_SSH then log set filter RESTRICT_MGMT_ACCESS term DENY_SSH then discard Step 2: Apply the filter to the loopback interface. [edit interfaces lo0 unit 0 family inet] set filter input RESTRICT_MGMT_ACCESS Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface. Step 1: Configure the router to restrict management access to specific IP addresses via SSH as shown in the example below. [edit firewall family inet] set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from source-address x.x.x.x/24 set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term ALLOW_SSH then accept set filter RESTRICT_MGMT_ACCESS term DENY_SSH from protocol tcp set filter RESTRICT_MGMT_ACCESS term DENY_SSH from port ssh set filter RESTRICT_MGMT_ACCESS term DENY_SSH then log set filter RESTRICT_MGMT_ACCESS term DENY_SSH then discard Step 2: Apply the filter to the loopback interface. [edit interfaces lo0 unit 0 family inet] set filter input RESTRICT_MGMT_ACCESS Note: Management and control plane traffic destined to the router is punted to the routing engine. Hence, applying the filter to the loopback ensures that this traffic can be monitored regardless of the ingress physical interface.
JUNI-ND-000150 Removed
Findings ID: JUNI-ND-000150 Rule ID: JUNI-ND-000150_rule Severity: medium CCI: CCI-000044

Discussion

By limiting the number of failed login attempts, the risk of unauthorized system access via user password guessing, otherwise known as brute-forcing, is reduced.

Checks

Review the router configuration to verify that it enforces the limit of three consecutive invalid logon attempts and shown in the example below. login { retry-options { tries-before-disconnect 3; } If the router is not configured to enforce the limit of three consecutive invalid logon attempts, this is a finding.

Fix

Configure the router to enforce the limit of three consecutive invalid logon attempts as shown in the example below. [edit system login] set retry-options tries-before-disconnect
JUNI-ND-000160 Removed
Findings ID: JUNI-ND-000160 Rule ID: JUNI-ND-000160_rule Severity: medium CCI: CCI-000048

Discussion

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. System use notifications are required only for access via logon interfaces with human users.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. login { message "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. "; retry-options { tries-before-disconnect 3; } } If the router is not configured to display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device, this is a finding.

Fix

Configure the router to display the Standard Mandatory DoD Notice and Consent Banner before granting access as shown in the following example: [edit system login] set message "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. "
JUNI-ND-000210 Removed
Findings ID: JUNI-ND-000210 Rule ID: JUNI-ND-000210_rule Severity: medium CCI: CCI-000166

Discussion

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. To meet this requirement, the network device must log administrator access and activity.

Checks

Review the router configuration to determine if it logs configuration changes as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If configuration change activity is not logged, this is a finding.

Fix

Configure the router to log configuration changes as shown in the following example: set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000230 Removed
Findings ID: JUNI-ND-000230 Rule ID: JUNI-ND-000230_rule Severity: medium CCI: CCI-000169

Discussion

Without the capability to generate audit records, it would be difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one. Audit records can be generated from various components within the network device (e.g., process, module). Certain specific device functionalities may be audited as well. The list of audited events is the set of events for which audits are to be generated. This set of events is typically a subset of the list of all events for which the system is capable of generating audit records. DoD has defined the list of events for which the device will provide an audit record generation capability as the following: (i) Successful and unsuccessful attempts to access, modify, or delete privileges, security objects, security levels, or categories of information (e.g., classification levels); (ii) Access actions, such as successful and unsuccessful logon attempts, privileged activities or other system level access, starting and ending time for user access to the system, concurrent logons from different workstations, successful and unsuccessful accesses to objects, all program initiations, and all direct access to the information system; and (iii) All account creation, modification, disabling, and termination actions.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below various types of events to be logged. syslog { file LOG_FILE { authorization info; security info; firewall info; change-log info; } } Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate log records for DoD-defined auditable events, this is a finding.

Fix

Configure the router to generate log records for DoD-defined auditable events as shown in the configuration example below. [edit system] set syslog file LOG_FILE authorization info set syslog file LOG_FILE security info set syslog file LOG_FILE firewall info set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000240 Removed
Findings ID: JUNI-ND-000240 Rule ID: JUNI-ND-000240_rule Severity: medium CCI: CCI-000171

Discussion

Without the capability to restrict which roles and individuals can select which events are audited, unauthorized personnel may be able to prevent the auditing of critical events. Misconfigured audits may degrade the system's performance by overwhelming the audit log. Misconfigured audits may also make it more difficult to establish, correlate, and investigate the events relating to an incident or identify those responsible for one.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows only users belonging to the AUDITOR class to configure the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } class SR_ENGINEER { permissions all; deny-configuration "(system syslog)"; } } } If the router is not configured to allow only the ISSM to select which auditable events are to be audited, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters as well as a classes that do not allow configuration of logging parameters as shown in the example below. set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" Note: The auditor must also be allowed to view the configuration to verify. set login class SR_ENGINEER permissions all set login class SR_ENGINEER deny-configuration "(system syslog)"
JUNI-ND-000250 Removed
Findings ID: JUNI-ND-000250 Rule ID: JUNI-ND-000250_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the information system (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all logon attempts. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate audit records when successful/unsuccessful attempts to logon, this is a finding.

Fix

Configure the router to log all logon attempts as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000330 Removed
Findings ID: JUNI-ND-000330 Rule ID: JUNI-ND-000330_rule Severity: medium CCI: CCI-000135

Discussion

Reconstruction of harmful events or forensic analysis is not possible if audit records do not contain enough information. Organizations 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all configuration changes. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } } If the router is not configured to generate audit records of configuration changes, this is a finding.

Fix

Configure the router to log all configuration changes as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000380 Removed
Findings ID: JUNI-ND-000380 Rule ID: JUNI-ND-000380_rule Severity: medium CCI: CCI-000163

Discussion

Audit information includes all information (e.g., audit records, audit settings, and audit reports) needed to successfully audit network device activity. If audit data were to become compromised, then forensic analysis and discovery of the true source of potentially malicious system activity is impossible to achieve. To ensure the veracity of audit data, the network device must protect audit information from unauthorized modification. This requirement can be achieved through multiple methods, which will depend upon system architecture and design. Some commonly employed methods include ensuring log files receive the proper file system permissions and limiting log data locations. Network devices providing a user interface to audit data will leverage user permissions and roles identifying the user accessing the data and the corresponding rights that the user enjoys in order to make access decisions regarding the modification of audit data.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows only users belonging to the AUDITOR class to configure the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } class SR_ENGINEER { permissions all; deny-configuration "(system syslog)"; } } } If the router is not configured to protect audit information from unauthorized modification, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters as well as a classes that do not allow configuration of logging parameters as shown in the example below. [edit system] set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" set login class SR_ENGINEER permissions all set login class SR_ENGINEER deny-configuration "(system syslog)"
JUNI-ND-000390 Removed
Findings ID: JUNI-ND-000390 Rule ID: JUNI-ND-000390_rule Severity: medium CCI: CCI-000164

Discussion

Audit information includes all information (e.g., audit records, audit settings, and audit reports) needed to successfully audit information system activity. If audit data were to become compromised, then forensic analysis and discovery of the true source of potentially malicious system activity is impossible to achieve. To ensure the veracity of audit data, the network device must protect audit information from unauthorized deletion. This requirement can be achieved through multiple methods, which will depend upon system architecture and design. Some commonly employed methods include: ensuring log files receive the proper file system permissions utilizing file system protections, restricting access, and backing up log data to ensure log data is retained. Network devices providing a user interface to audit data will leverage user permissions and roles identifying the user accessing the data and the corresponding rights the user enjoys in order to make access decisions regarding the deletion of audit data.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class JR_ENGINEER which does not permit users belonging to the class to delete files or make changes to logging parameters. login { class JR_ENGINEER { permissions all; deny-commands "(file delete)"; deny-configuration "(system syslog)"; } } Note: The predefined classes operator and Read-only do not have permissions to delete files. If the router is not configured to protect audit information from unauthorized deletion, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to delete files or make changes to logging parameters. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-configuration "(system syslog)" set login class JR_ENGINEER deny-commands “(file delete)”
JUNI-ND-000460 Removed
Findings ID: JUNI-ND-000460 Rule ID: JUNI-ND-000460_rule Severity: medium CCI: CCI-001499

Discussion

Changes to any software components of the network device can have significant effects on the overall security of the network. Therefore, only qualified and authorized individuals should be allowed administrative access to the network device for implementing any changes or upgrades. If the network device were to enable non-authorized users to make changes to software libraries, those changes could be implemented without undergoing testing, validation, and approval.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class JR_ENGINEER that is not permitted to add, change, or delete software installed on the router. login { class JR_ENGINEER { permissions all; deny-commands "request system software"; } Note: The following are the options under request system software: abort - Abort software upgrade add - Add extension or upgrade package delete - Remove extension or upgrade package rollback - Roll back to previous set of packages validate - Verify package compatibility with current configuration If the router is not configured to limit privileges to change the software resident within software libraries, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to add, change, or delete software installed on the router. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-commands “(request system software)” Note: The predefined classes "operator" and "Read-only" do not have permissions to install or delete software.
JUNI-ND-000470 Removed
Findings ID: JUNI-ND-000470 Rule ID: JUNI-ND-000470_rule Severity: high CCI: CCI-000382

Discussion

In order to prevent unauthorized connection of devices, unauthorized transfer of information, or unauthorized tunneling (i.e., embedding of data types within data types), organizations must disable unused or unnecessary physical and logical ports/protocols on information systems. 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. To 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.

Checks

Review the services that have been enabled as shown in the following configuration example: services { finger; telnet; xnm-clear-text; netconf { ssh; } } Services such as finger, telnet, and clear text-based JUNOScript connections should never be enabled. Other services such as Netconf, FTP, DHCP, and SSL-based JUNOScript connections should only be enabled if operationally required. If the router is not configured to prohibit the use of all unnecessary and non-secure functions, ports, protocols, and services, this is a finding.

Fix

Disable the following services if enabled as shown in the example below. [edit system services] delete telnet delete finger delete xnm-clear-text
JUNI-ND-000490 Removed
Findings ID: JUNI-ND-000490 Rule ID: JUNI-ND-000490_rule Severity: medium CCI: CCI-002111

Discussion

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. The 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. Administrators should secure the credentials and disable the root account (if possible) when not needed for system administration functions.

Checks

Review the router configuration to verify that a local account for last resort has been configured with privileges that will enable the administrator to troubleshoot network outage and restore operations as shown in the following example: system { authentication-order [ radius password ]; } login { class JR_ENGINEER { permissions all; deny-commands "(file delete)"; deny-configuration "(system syslog)"; } user Last_Resort { uid 2000; class JR_ENGINEER; authentication { encrypted-password "$1$CYrhql/I$v2ydLnac9EPdA1F/KvROT1"; ## SECRET-DATA } } 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.

Fix

Step 1: Configure a class with the necessary privileges to troubleshoot network outage and restore operations as shown in the following example: [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-configuration "(system syslog)" set login class JR_ENGINEER deny-commands “(file delete)” Step 2: Assign the account of last resort to the JR_ENGINEER class set user LAST_RESORT class JR_ENGINEER authentication plain-text-password New password: xxxxxxxxxxxxx Step 3: Configure the authentication order to use the local account if the authentication server is not reachable as shown in the following example: [edit system] set authentication-order [radius password]
JUNI-ND-000530 Removed
Findings ID: JUNI-ND-000530 Rule ID: JUNI-ND-000530_rule Severity: medium CCI: CCI-001941

Discussion

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. An authentication process resists replay attacks if it is impractical to achieve a successful authentication by recording and replaying a previous authentication message. Techniques used to address this include protocols using nonces (e.g., numbers generated for a specific one-time use) or challenges (e.g., TLS, WS_Security). Additional techniques include time-synchronous or challenge-response one-time authenticators.

Checks

Review the router configuration to verify that SSH is configured to use FIPS-140-2 compliant HMACs as shown in the example below. system { … … … services { ssh { protocol-version v2; macs [hmac-sha1-96 hmac-sha2-256 hmac-sha2-512]; } Note: An SSH configuration enables a server and client to authorize the negotiation of only those algorithms that are configured from the allowed list. If a remote party tries to negotiate using an algorithm that is not part of the allowed list, the request is rejected and the session is not established. If the router is not configured to implement replay-resistant authentication mechanisms for network access to privileged accounts, this is a finding.

Fix

Configure SSH to use FIPS-140-2 compliant HMACs as shown in the example below. [edit system services] set ssh protocol-version v2 set ssh macs [hmac-sha1-96 hmac-sha2-256 hmac-sha2-512] Note: An SSH configuration enables a server and client to authorize the negotiation of only those algorithms that are configured from the allowed list. If a user tries to negotiate using an algorithm that is not part of the allowed list, the request is rejected and the session is not established.
JUNI-ND-000550 Removed
Findings ID: JUNI-ND-000550 Rule ID: JUNI-ND-000550_rule Severity: medium CCI: CCI-000205

Discussion

Password complexity, or strength, is a measure of the effectiveness of a password in resisting attempts at guessing and brute-force attacks. Password length is one factor of several that helps to determine strength and how long it takes to crack a password. The shorter the password, the lower the number of possible combinations that need to be tested before the password is compromised. Use of more characters in a password helps to exponentially increase the time and/or resources required to compromise the password.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-length 7; } } If the router is not configured to enforce a minimum 15-character password length, this is a finding.

Fix

Configure the router to enforce a minimum 15-character password length as shown in the example below. [edit system login] set password minimum-length 15
JUNI-ND-000570 Removed
Findings ID: JUNI-ND-000570 Rule ID: JUNI-ND-000570_rule Severity: medium CCI: CCI-000192

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-upper-cases 1; } } If the router is not configured to enforce password complexity by requiring that at least one upper-case character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one upper-case character be used as shown in the example below. [edit system login] set password minimum-upper-cases 1
JUNI-ND-000580 Removed
Findings ID: JUNI-ND-000580 Rule ID: JUNI-ND-000580_rule Severity: medium CCI: CCI-000193

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-lower-cases 1; } } If the router is not configured to enforce password complexity by requiring that at least one lower-case character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one lower-case character be used as shown in the example below. [edit system login] set password minimum-lower-cases 1
JUNI-ND-000590 Removed
Findings ID: JUNI-ND-000590 Rule ID: JUNI-ND-000590_rule Severity: medium CCI: CCI-000194

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-numerics 1; } } If the router is not configured to enforce password complexity by requiring that at least one numeric character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one numeric character be used as shown in the example below. [edit system login] set password minimum-numerics 1
JUNI-ND-000600 Removed
Findings ID: JUNI-ND-000600 Rule ID: JUNI-ND-000600_rule Severity: medium CCI: CCI-001619

Discussion

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. Password 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. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-punctuations 1; } } If the router is not configured to enforce password complexity by requiring that at least one special character be used, this is a finding.

Fix

Configure the router to enforce password complexity by requiring that at least one special character be used as shown in the example below. [edit system login] set password minimum-punctuations 1
JUNI-ND-000610 Removed
Findings ID: JUNI-ND-000610 Rule ID: JUNI-ND-000610_rule Severity: medium CCI: CCI-000195

Discussion

: If the application allows the user to consecutively reuse extensive portions of passwords, this increases the chances of password compromise by increasing the window of opportunity for attempts at guessing and brute-force attacks. The number of changed characters refers to the number of changes required with respect to the total number of positions in the current password. In other words, characters may be the same within the two passwords; however, the positions of the like characters must be different. Multifactor 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … login { password { minimum-changes 8; } } If the 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.

Fix

Configure the 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. [edit system login] set minimum-changes 8
JUNI-ND-000710 Removed
Findings ID: JUNI-ND-000710 Rule ID: JUNI-ND-000710_rule Severity: high CCI: CCI-001133

Discussion

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. Terminating 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.

Checks

Review the router configuration to verify that all login classes have the idle-timeout value to 10 minutes or less as shown in the following example: system { … … … } login { class ADMIN { idle-timeout 10; permissions admin-control; } } If the router is not configured to terminate all network connections associated with a device management after 10 minutes of inactivity, this is a finding.

Fix

Set the idle timeout value to 10 minutes or less on all configured login classes as shown in the example below. [edit system login] set class ADMIN idle-timeout 10
JUNI-ND-000830 Removed
Findings ID: JUNI-ND-000830 Rule ID: JUNI-ND-000830_rule Severity: medium CCI: CCI-002361

Discussion

Automatic session termination addresses the termination of administrator-initiated logical sessions in contrast to the termination of network connections that are associated with communications sessions (i.e., network disconnect). A logical session (for local, network, and remote access) is initiated whenever an administrator (or process acting on behalf of a user) accesses a network device. Such administrator sessions can be terminated (and thus terminate network administrator access) without terminating network sessions. Session termination terminates all processes associated with an administrator's logical session except those processes that are specifically created by the administrator (i.e., session owner) to continue after the session is terminated. Conditions or trigger events requiring automatic session termination can include, for example, organization-defined periods of user inactivity, targeted responses to certain types of incidents, and time-of-day restrictions on information system use. These conditions will vary across environments and network device types.

Checks

Review the router configuration to verify that it is compliant with this requirement. As shown in the example below, a condition or event could be a period of inactivity such as 5 minutes for a specific user class. system { … … … } login { class ADMIN { idle-timeout 5; permissions admin-control; } } If the router is not configured to automatically terminate a network administrator session after organization-defined conditions or trigger events requiring session disconnect, this is a finding.

Fix

Set the idle timeout value for specific login classes to a value less than 10 minutes as shown in the example below. [edit system login] set class ADMIN idle-timeout 5
JUNI-ND-000870 Removed
Findings ID: JUNI-ND-000870 Rule ID: JUNI-ND-000870_rule Severity: medium CCI: CCI-002130

Discussion

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.

Checks

Review the router configuration to determine if it audits the enabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: system { syslog { file LOG_FILE { change-log info; } } } Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } file LOG_FILE { change-log info; } console { any error; } } } If the enabling of accounts is not audited, this is a finding. Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions). Hence, accounts can be enabled by changing the assigned class for the user to a class other than unauthorized.

Fix

Configure the router to audit the enabling of accounts. This requirement can be met by ensuring that configuration changes are logged as shown in the following example: set syslog file LOG_FILE change-log info Note: The parameter “any” can be in place of “change-log” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info Note: Accounts can be disabled by changing the assigned class to unauthorized (no permissions). Hence, accounts can be enabled by changing the assigned class for the user to a class other than unauthorized.
JUNI-ND-000890 Removed
Findings ID: JUNI-ND-000890 Rule ID: JUNI-ND-000890_rule Severity: medium CCI: CCI-000366

Discussion

Protecting access authorization information (i.e., access control decisions) ensures that authorization information cannot be altered, spoofed, or otherwise compromised during transmission. In distributed information systems, authorization processes and access control decisions may occur in separate parts of the systems. In such instances, authorization information is transmitted securely so timely access control decisions can be enforced at the appropriate locations. To support the access control decisions, it may be necessary to transmit, as part of the access authorization information, supporting security attributes. This is because, in distributed information systems, there are various access control decisions that need to be made, and different entities (e.g., services) make these decisions in a serial fashion, each requiring some security attributes to make the decisions. The network device must be compliant with at least one IETF standard authentication protocol such as Remote Authentication Dial-In User Service (RADIUS), Extensible Authentication Protocol (EAP), Lightweight Directory Access Protocol (LDAP), and Terminal Access Controller Access-Control System Plus (TACACS+). Protocols that are clearly defined in IETF RFC Internet standards (a.k.a. full standards), and are capable of securely conveying authorization information, are suitable for use.

Checks

Review the router configuration to verify that the device is configured to use an authentication server as primary source for authentication as shown in the following example: system { authentication-order [radius password ]; } radius-server { 10.1.58.2 secret "$9$xYW-dsq.5zF/wYnC"; ## SECRET-DATA } or system { authentication-order [tacplus password ]; root-authentication { encrypted-password "$1$4Ou0B0Nk$IXPAsRmgLqLM./.I1XUuh1"; ## SECRET-DATA } tacplus-server { 10.1.58.2 secret "$9$emHMWxZGiq.5X7PQ"; ## SECRET-DATA } If the router is not configured to use an authentication server as primary source for authentication, this is a finding.

Fix

Step 1: Configure the router to use an authentication server as shown in the following examples: [edit system] set radius-server 10.1.58.2 secret xxxxxxxxx or set tacplus-server 10.1.58.2 secret xxxxxxxxx Step2: Configure the authentication order to use the authentication server as primary source for authentication as shown in the following examples: set authentication-order [radius password] or set authentication-order [tacplus password]
JUNI-ND-000930 Removed
Findings ID: JUNI-ND-000930 Rule ID: JUNI-ND-000930_rule Severity: medium CCI: CCI-002234

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below will log all commands entered from the command line interface as well as log all configuration changes. syslog { file LOG_FILE { interactive-commands; change-log info } } Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host 10.1.58.2 { any info; } } If the router is not configured to log all commands entered from the command line interface as well as log all configuration changes, this is a finding.

Fix

Configure the router to log all commands entered from the command line interface as well as log all configuration changes as shown in the following example: [edit system] set syslog file LOG_FILE interactive-commands set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of configuring specific events as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host 10.1.58.2 any info
JUNI-ND-000960 Removed
Findings ID: JUNI-ND-000960 Rule ID: JUNI-ND-000960_rule Severity: medium CCI: CCI-001914

Discussion

If authorized individuals do not have the ability to modify auditing parameters in response to a changing threat environment, the organization may not be able to effectively respond, and important forensic information may be lost. This requirement enables organizations to extend or limit auditing as necessary to meet organizational requirements. Auditing that is limited to conserve information system resources may be extended to address certain threat situations. In addition, auditing may be limited to a specific set of events to facilitate audit reduction, analysis, and reporting. Organizations can establish time thresholds in which audit actions are changed, for example, near-real-time, within minutes, or within hours. The individuals or roles to change the auditing are dependent on the security configuration of the network device--for example, it may be configured to allow only some administrators to change the auditing, while other administrators can review audit logs but not reconfigure auditing. Because this capability is so powerful, organizations should be extremely cautious about only granting this capability to fully authorized security personnel.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below allows users from the AUDITOR class to view the configuration and to make changes to the logging parameters. system { login { class AUDITOR { permissions [configure view-configuration]; allow-configuration "(system syslog)"; } } Note: The auditor must also be allowed to view the configuration to verify. If the router is not configured to enable organization-identified individuals or roles to change the auditing to be performed based on all selectable event criteria, this is a finding.

Fix

Create a login class that provides the permission to configure logging parameters. [edit system] set login class AUDITOR permissions [configure view-configuration] set login class AUDITOR allow-configuration "(system syslog)" Note: The auditor must also be allowed to view the configuration to verify.
JUNI-ND-000970 Removed
Findings ID: JUNI-ND-000970 Rule ID: JUNI-ND-000970_rule Severity: medium CCI: CCI-001849

Discussion

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. The 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below specifies 12 archive log files and the maximum size of the active log file to be reached prior to archiving. syslog { file LOG_FILE { any info; archive size 1000000 files 12; } } Note: To prevent log files from growing too large, by default the Junos logging utility writes messages to a sequence of files of a defined size. The files in the sequence are referred to as archive files to distinguish them from the active file to which messages are currently being written. The default maximum size depends on the platform type. By default, the logging utility creates up to 10 archive files in this manner. When the maximum number of archive files is reached and when the size of the active file reaches the configured maximum size, the contents of the last archived file are overwritten by the current active file. If the router is not configured to allocate audit record storage capacity in accordance with organization-defined audit record storage requirements, this is a finding.

Fix

Configure the number or archive files and the maximum size of the active log file to be reached prior to archiving as shown in the example below. [edit system] set syslog file LOG_FILE any info set syslog file LOG_FILE archive files 12 size 1000000
JUNI-ND-000990 Removed
Findings ID: JUNI-ND-000990 Rule ID: JUNI-ND-000990_rule Severity: medium CCI: CCI-001858

Discussion

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. Alerts 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).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { syslog { host x.x.x.x { any critical; } } Note: The parameter "critical" can be replaced with a lesser severity level (i.e., error, warning, notice, info). If the router is not configured to generate an alert for all audit failure events, this is a finding.

Fix

Configure the router to send critical to emergency log messages to the syslog server as shown in the example below. set syslog host x.x.x.x any critical Note: The parameter "critical" can replaced with a lesser severity level (i.e., error, warning, notice, info).
JUNI-ND-001020 Removed
Findings ID: JUNI-ND-001020 Rule ID: JUNI-ND-001020_rule Severity: medium CCI: CCI-001893

Discussion

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. Multiple 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. DoD-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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the configuration example below. system { … … … } ntp { server x.x.x.x prefer; server x.x.x.x; } If the router is not configured to synchronize its clock with redundant authoritative time sources, this is a finding.

Fix

Configure the router to synchronize its clock with redundant authoritative time sources as shown in the example below. [edit system ntp] set server x.x.x.x set server x.x.x.x prefer
JUNI-ND-001030 Removed
Findings ID: JUNI-ND-001030 Rule ID: JUNI-ND-001030_rule Severity: medium CCI: CCI-001890

Discussion

If time stamps are not consistently applied and there is no common time reference, it is difficult to perform forensic analysis. Time 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { time-zone UTC; Note: 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 If the router is not configured record time stamps for log records that can be mapped to UTC or GMT, this is a finding.

Fix

[edit system] set time-zone UTC
JUNI-ND-001060 Removed
Findings ID: JUNI-ND-001060 Rule ID: JUNI-ND-001060_rule Severity: medium CCI: CCI-001812

Discussion

Allowing anyone to install software, without explicit privileges, creates the risk that untested or potentially malicious software will be installed on the system. This requirement applies to code changes and upgrades for all network devices.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration example below depicts a class JR_ENGINEER that is not permitted to add or change software installed on the router. login { class JR_ENGINEER { permissions all; deny-commands "request system software"; } Note: The following are the options under request system software: abort -Abort software upgrade add -Add extension or upgrade package delete -Remove extension or upgrade package rollback -Roll back to previous set of packages validate -Verify package compatibility with current configuration If the router is not configured to prohibit installation of software without explicit privileged status, this is a finding.

Fix

Configure one or more classes as shown in the example below whose users will not be permitted to add or change software installed on the router. [edit system] set login class JR_ENGINEER permissions all set login class JR_ENGINEER deny-commands “(request system software)” Note: The predefined classes operator and Read-only do not have permissions to install software.
JUNI-ND-001120 Removed
Findings ID: JUNI-ND-001120 Rule ID: JUNI-ND-001120_rule Severity: medium CCI: CCI-001967

Discussion

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. A 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). Because 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. snmp { v3 { usm { local-engine { user R5_NMS { authentication-sha { authentication-key "$9$vOiLX-Vb2oaUwsJDiHmPz3690BcSevM"; ## SECRET-DATA } } } } target-address NMS_HOST { address x.x.x.x; address-mask 255.255.255.0; tag-list NMS; target-parameters TP1; } target-parameters TP1 { parameters { message-processing-model v3; security-model usm; security-level authentication; security-name R5_NMS; } } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } If the router is not configured to authenticate SNMP messages using a FIPS-validated HMAC, this is a finding.

Fix

Configure the router to authenticate SNMP messages as shown in the example below. [edit snmp] set v3 usm local-engine user R5_NMS authentication-sha authentication-password xxxxxxxxxx set v3 target-address NMS_HOST address x.x.x.x edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS set target-parameters TP1 exit [edit snmp] set v3 target-parameters TP1 parameters message-processing-model v3 set v3 target-parameters TP1 parameters security-model usm set v3 target-parameters TP1 parameters security-name R5_NMS set v3 target-parameters TP1 parameters security-level authentication set v3 snmp-community index1 security-name R5_NMS tag NMS set v3 notify SEND_TRAPS type trap tag NMS
JUNI-ND-001130 Removed
Findings ID: JUNI-ND-001130 Rule ID: JUNI-ND-001130_rule Severity: medium CCI: CCI-000068

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. snmp { v3 { usm { local-engine { user R5_NMS { authentication-sha { authentication-key "$9$vOiLX-Vb2oaUwsJDiHmPz3690BcSevM"; ## SECRET-DATA } privacy-aes128 { privacy-key "$9$3Q4T9CuOBESyK1IrvW87NwYgoDiPfz3nCs24Z"; ## SECRET-DATA } } } } target-address NMS_HOST { address 10.1.58.2; address-mask 255.255.255.0; tag-list NMS; target-parameters TP1; } target-parameters TP1 { parameters { message-processing-model v3; security-model usm; security-level privacy; security-name R5_NMS; } } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } Note: SNMPv3 security level privacy also authenticates the messages using the configured HMAC. If the router is not configured to encrypt SNMP messages using a FIPS 140-2 approved algorithm, this is a finding.

Fix

Configure the router to encrypt SNMP messages using a FIPS 140-2 approved algorithm as shown in the example below. [edit snmp] set v3 usm local-engine user R5_NMS authentication-sha authentication-password xxxxxxxxxx set v3 usm local-engine user R5_NMS privacy-aes128 privacy-password xxxxxxxxxx set v3 target-address NMS_HOST address 10.1.58.2 edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS set target-parameters TP1 exit [edit snmp] set v3 target-parameters TP1 parameters message-processing-model v3 set v3 target-parameters TP1 parameters security-model usm set v3 target-parameters TP1 parameters security-name R5_NMS set v3 target-parameters TP1 parameters security-level privacy set v3 snmp-community index1 security-name R5_NMS tag NMS set v3 notify SEND_TRAPS type trap tag NMS Note: SNMPv3 security level privacy also authenticates the messages using the configured HMAC; hence, the authentication key must also be configured as shown in the example above.
JUNI-ND-001140 Removed
Findings ID: JUNI-ND-001140 Rule ID: JUNI-ND-001140_rule Severity: medium CCI: CCI-001967

Discussion

If Network Time Protocol 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the configuration example below. system { … … … } ntp { authentication-key 1 type md5 value "$9$LMK7NbHkPTQnVwF/"; ## SECRET-DATA authentication-key 2 type md5 value "$9$I3KceWbwgJUH"; ## SECRET-DATA server x.x.x.x key 1 prefer; ## SECRET-DATA server x.x.x.x key 2; ## SECRET-DATA trusted-key [1 2]; } If the router is not configured to authenticate NTP sources using authentication that is cryptographically based, this is a finding.

Fix

Configure the router to authenticate NTP sources using authentication that is cryptographically based as shown in the example below. [edit system ntp] set authentication-key 1 type md5 value xxxxxxxxx set authentication-key 2 type md5 value xxxxxxxxx set server x.x.x.x key 1 prefer set server x.x.x.x key 2 set trusted-key [1 2]
JUNI-ND-001190 Removed
Findings ID: JUNI-ND-001190 Rule ID: JUNI-ND-001190_rule Severity: high CCI: CCI-002890

Discussion

Unapproved mechanisms that are used for authentication to the cryptographic module are not verified and therefore cannot be relied upon to provide confidentiality or integrity, and DoD data may be compromised. Nonlocal 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. Currently, 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. Separate 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.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { … … … } services { ssh { protocol-version v2; macs hmac-sha1-96; } } If the router is not configured to use FIPS-validated HMAC to protect the integrity of remote maintenance sessions, this is a finding.

Fix

Configure SSH to use FIPS-validated HMAC for remote maintenance sessions as shown in the following example: [edit system services] set ssh protocol-version v2 set ssh macs hmac-sha1-96
JUNI-ND-001200 Removed
Findings ID: JUNI-ND-001200 Rule ID: JUNI-ND-001200_rule Severity: high CCI: CCI-003123

Discussion

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.

Checks

Review the router configuration to verify that it is compliant with this requirement. system { … … … } services { ssh { protocol-version v2; ciphers aes128-cbc; macs hmac-sha1-96; } } 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.

Fix

Configure the router to implement cryptographic mechanisms to protect the confidentiality of remote maintenance sessions using a FIPS 140-2 approved algorithm as shown in the example below. [edit system services] set ssh ciphers aes128-cbc
JUNI-ND-001210 Removed
Findings ID: JUNI-ND-001210 Rule ID: JUNI-ND-001210_rule Severity: medium CCI: CCI-002385

Discussion

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. This 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. The 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 (for example, firewalls performing packet filtering to block DoS attacks).

Checks

Review the router configuration to verify that it is compliant with this requirement. Step 1: Verify that the loopback interfaces has been configured with an input filter. The example below defined a control plane policing (CoPP) filter named CoPP_Policy. interfaces { … … … lo0 { unit 0 { family inet { filter { input CoPP_Policy; } address 5.5.5.5/32; } } } } Step 2: Verify that the filter will protect against DoS attacks. firewall { … … … } filter CoPP_Policy { term CRITICAL { from { protocol [ ospf pim tcp ]; source-port bgp; destination-port bgp; } then policer CRITICAL; } term IMPORTANT { from { source-address { 10.1.1.0/24; } protocol tcp; destination-port [ ssh snmp ntp ]; } then { policer IMPORTANT; discard; } } term NORMAL { from { protocol icmp; icmp-type [ echo-reply echo-request ]; icmp-code [ ttl-eq-zero-during-transit port-unreachable ]; } then policer NORMAL; } term UNDESIRABLE { from { protocol udp; destination-port 1434; } then policer UNDESIRABLE; } term ALL-OTHER { from { address { 0.0.0.0/0; } } then policer ALL-OTHER; } } } Step 3: verify that policers configured will restrict bandwidth based on traffic types as shown in the example below. firewall { … … … } policer CRITICAL { filter-specific; if-exceeding { bandwidth-limit 4m; burst-size-limit 1500; } then discard; } policer IMPORTANT { filter-specific; if-exceeding { bandwidth-limit 512k; burst-size-limit 16k; } then discard; } policer NORMAL { filter-specific; if-exceeding { bandwidth-limit 64k; burst-size-limit 2k; } then discard; } policer UNDESIRABLE { filter-specific; if-exceeding { bandwidth-limit 32k; burst-size-limit 1500; } then discard; } policer ALL-OTHER { filter-specific; if-exceeding { bandwidth-limit 32k; burst-size-limit 1500; } then discard; } If the router is not configured to protect against known types of DoS attacks by employing organization-defined security safeguards, this is a finding.

Fix

Configure the router 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 policers for specific traffic types. set firewall policer CRITICAL filter-specific set firewall policer CRITICAL if-exceeding bandwidth-limit 4000000 burst-size-limit 1500 set firewall policer CRITICAL then discard set firewall policer IMPORTANT filter-specific set firewall policer IMPORTANT if-exceeding bandwidth-limit 512000 burst-size-limit 16000 set firewall policer IMPORTANT then discard set firewall policer NORMAL filter-specific set firewall policer NORMAL if-exceeding bandwidth-limit 64000 burst-size-limit 2000 set firewall policer NORMAL then discard set firewall policer UNDESIRABLE filter-specific set firewall policer UNDESIRABLE if-exceeding bandwidth-limit 32000 burst-size-limit 1500 set firewall policer UNDESIRABLE then discard set firewall policer ALL-OTHER filter-specific set firewall policer ALL-OTHER if-exceeding bandwidth-limit 32000 burst-size-limit 1500 set firewall policer ALL-OTHER then discard Step 2: Configure the CoPP filter by applying policers to the appropriate traffic types. set firewall filter CoPP_Policy term CRITICAL from protocol ospf set firewall filter CoPP_Policy term CRITICAL from protocol pim set firewall filter CoPP_Policy term CRITICAL from protocol tcp destination-port bgp set firewall filter CoPP_Policy term CRITICAL from protocol tcp source-port bgp set firewall filter CoPP_Policy term CRITICAL then policer CRITICAL set firewall filter CoPP_Policy term IMPORTANT from source-address 10.1.1.0/24 set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ssh set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port snmp set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ntp set firewall filter CoPP_Policy term IMPORTANT then policer IMPORTANT set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ssh set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port snmp set firewall filter CoPP_Policy term IMPORTANT from protocol tcp destination-port ntp set firewall filter CoPP_Policy term IMPORTANT then discard set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-code ttl-eq-zero-during-transit set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-code port-unreachable set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-type echo-reply set firewall filter CoPP_Policy term NORMAL from protocol icmp icmp-type echo-request set firewall filter CoPP_Policy term NORMAL then policer NORMAL set firewall filter CoPP_Policy term UNDESIRABLE from protocol udp destination-port 1434 set firewall filter CoPP_Policy term UNDESIRABLE then policer UNDESIRABLE set firewall filter CoPP_Policy term ALL-OTHER from address 0.0.0.0/0 set firewall filter CoPP_Policy term ALL-OTHER then policer ALL-OTHER Step 3: Apply the CoPP filter to the loopback interface. set interface lo0 unit 0 family inet filter input CoPP_Policy
JUNI-ND-001230 Removed
Findings ID: JUNI-ND-001230 Rule ID: JUNI-ND-001230_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "authorization info" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when administrator privileges are modified, this is a finding.

Fix

Configure the router to generate log records when account privileges are modified as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001240 Removed
Findings ID: JUNI-ND-001240 Rule ID: JUNI-ND-001240_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when administrator privileges are deleted, this is a finding.

Fix

Configure the router to generate log records when administrator privileges are deleted as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001250 Removed
Findings ID: JUNI-ND-001250 Rule ID: JUNI-ND-001250_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate audit records when successful/unsuccessful logon attempts occur, this is a finding.

Fix

Configure the router to generate audit records when successful/unsuccessful logon attempts occur as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001260 Removed
Findings ID: JUNI-ND-001260 Rule ID: JUNI-ND-001260_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example configurations below. syslog { file LOG_FILE { change-log info; interactive-commands info; } } Note: The parameter "any" can be in place of "change-log" and “interactive-commands” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records for privileged activities, this is a finding.

Fix

Configure the router to generate log records for privileged activities as shown in the example below. [edit system] set syslog file LOG_FILE change-log info set syslog file LOG_FILE interactive-commands info Note: The parameter "any" can be in place of "change-log" and “interactive-commands” as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001280 Removed
Findings ID: JUNI-ND-001280 Rule ID: JUNI-ND-001280_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { authorization info; } } Note: The parameter "any" can be in place of "authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records when concurrent logons from different workstations occur, this is a finding.

Fix

Configure the router to generate log records when concurrent logons from different workstations occur as shown in the example below. [edit system] set syslog file LOG_FILE authorization info Note: The parameter "any" can be in place of authorization" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001290 Removed
Findings ID: JUNI-ND-001290 Rule ID: JUNI-ND-001290_rule Severity: medium CCI: CCI-000172

Discussion

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. Audit records can be generated from various components within the network device (e.g., module or policy filter).

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the examples below. syslog { file LOG_FILE { change-log info; } } Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to generate log records for all account creations, modifications, disabling, and termination events, this is a finding.

Fix

Configure the router to generate log records for all account creations, modifications, disabling, and termination events as shown in the example below. [edit system] set syslog file LOG_FILE change-log info Note: The parameter "any" can be in place of "change-log" as this will log everything. Also, a syslog server can be configured in addition to or in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001300 Removed
Findings ID: JUNI-ND-001300 Rule ID: JUNI-ND-001300_rule Severity: medium CCI: CCI-001851

Discussion

Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Off-loading is a common process in information systems with limited audit storage capacity.

Checks

Review the router configuration to verify that it is compliant with this requirement as shown in the example below. system { syslog { host x.x.x.x { any info; } } If the router is not configured to off-load log records onto a different system than the system being audited, this is a finding.

Fix

Configure the router to send log records to a syslog server as shown in the example below. [edit system] set syslog host x.x.x.x any info
JUNI-ND-001340 Removed
Findings ID: JUNI-ND-001340 Rule ID: JUNI-ND-001340_rule Severity: medium CCI: CCI-000366

Discussion

Auditing and logging are key components of any security architecture. Logging the actions of specific events provides a means to investigate an attack; to recognize resource utilization or capacity thresholds; or to identify an improperly configured network device. If auditing is not comprehensive, it will not be useful for intrusion monitoring, security investigations, and forensic analysis.

Checks

Review the router configuration to verify that it is compliant with this requirement. The example below illustrates how selected events can be logged. syslog { file LOG_FILE { authorization info; security info; firewall info; change-log info; } } Note: A syslog server can be configured in lieu of logging to a file as shown in the example below. system { syslog { host x.x.x.x { authorization info; security info; firewall info; change-log info; } } If the router is not configured to generate log records for a locally developed list of auditable events, this is a finding.

Fix

Configure the router to generate log records for a locally developed list of auditable events as shown in the example below. [edit system] set syslog file LOG_FILE authorization info set syslog file LOG_FILE security info set syslog file LOG_FILE firewall info set syslog file LOG_FILE change-log info Note: A syslog server can be configured in lieu of logging to a file as shown in the example below. set syslog host x.x.x.x authorization info set syslog host x.x.x.x security info set syslog host x.x.x.x firewall info set syslog host x.x.x.x change-log info
JUNI-ND-001360 Removed
Findings ID: JUNI-ND-001360 Rule ID: JUNI-ND-001360_rule Severity: medium CCI: CCI-000370

Discussion

Centralized management of authentication settings increases the security of remote and nonlocal access methods. 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.

Checks

Review the router configuration to verify that the device is configured to use an authentication server as primary source for authentication as shown in the following example: system { authentication-order [radius password]; } radius-server { x.x.x.x secret "$9$xYW-dsq.5zF/wYnC"; ## SECRET-DATA } If the router is not configured to use an authentication server for the purpose of authenticating users prior to granting administrative access, this is a finding.

Fix

Step 1: Configure the authentication server as shown in the following example: [edit system] set radius-server x.x.x.x secret xxxxxxxxx Step 2: Configure the authentication order to use the authentication server as primary source for authentication as shown in the following example: set authentication-order [radius password]
JUNI-ND-001400 Removed
Findings ID: JUNI-ND-001400 Rule ID: JUNI-ND-001400_rule Severity: medium CCI: CCI-000366

Discussion

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. This 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.

Checks

Review the router configuration to verify that it is compliant with this requirement. The example configuration below will send the router configuration to an FTP server upon the commit command. system { … … … archival { configuration { transfer-on-commit; archive-sites { "ftp://ftpuserxxx:[email protected]"; } } } } If the router is not configured to conduct backups of the configuration when changes occur, this is a finding.

Fix

Configure the router to send the configuration to an FTP server up a commit command as shown in the example below. set archival configuration transfer-on-commit archive-sites ftp://ftpuserxxx:pswdxxx @x.x.x.x
JUNI-ND-001430 Removed
Findings ID: JUNI-ND-001430 Rule ID: JUNI-ND-001430_rule Severity: medium CCI: CCI-000366

Discussion

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 at medium assurance or higher, this Certification Authority will suffice.

Checks

Review the router configuration to verify that it is compliant with this requirement. The configuration below is an example of a Certificate Authority profile defining name of the CA, the location of CRL for revocation check and to refresh the CRL every 24 hours, and the email address to send a certificate request. security { pki { ca-profile DODXX_CA { ca-identity xxxxx.mil; revocation-check { crl { url http://server1.xxxxx.mil/CertEnroll/example.crl; refresh-interval 24; } } administrator { email-address "[email protected]"; } } } } If the router is not configured to obtain its public key certificates from an appropriate certificate policy through an approved service provider, this is a finding.

Fix

Step 1. Create a trusted profile and email address to send certificate request to [edit security] set pki ca-profile DODXX_CA ca-identity xxxxx.mil set pki ca-profile DODXX_CA administrator email-address [email protected] Step2. Create a revocation check to specify a method for checking certificate revocation. set pki ca-profile DODXX_CA revocation-check crl url http://server1.example.mil/CertEnroll/example.crl set pki ca-profile DODXX_CA revocation-check crl refresh-interval 24
JUNI-ND-001440 Removed
Findings ID: JUNI-ND-001440 Rule ID: JUNI-ND-001440_rule Severity: medium CCI: CCI-000366

Discussion

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 create a new account. Notification of account creation is one method for mitigating this risk. A comprehensive account management process will ensure an audit trail which documents the creation of accounts and notifies administrators and Information System Security Officers (ISSOs). Such a process greatly reduces the risk that accounts will be surreptitiously created and provides logging that can be used for forensic purposes.

Checks

Verify that the router is configured to send logs to a syslog server. The configuration should look similar to the example below: system { syslog { host x.x.x.x { any info; } } If the router is not configured to send log data to the syslog server, this is a finding

Fix

Configure the router to send log data to a syslog server as shown in the example below. set syslog host x.x.x.x any info
JUNI-ND-001450 Removed
Findings ID: JUNI-ND-001450 Rule ID: JUNI-ND-001450_rule Severity: medium CCI: CCI-000366

Discussion

If appropriate actions are not taken when a network device failure occurs, a denial of service condition may occur which could result in mission failure since the network would be operating without a critical security monitoring and prevention function. Upon detecting a failure of any router components, the router must activate a system alert message, send an alarm, or shut down. By immediately displaying an alarm message, potential security violations can be identified more quickly even when administrators are not logged into the device. This can be facilitated by the switch sending SNMP traps to the SNMP manager that can then have the necessary action taken by automatic or operator intervention.

Checks

Verify that the router is configured to send traps to the SNMP manager. The SNMP configuration should contain commands similar to the example below. snmp { v3 { … … … } target-address NMS_HOST { address x.x.x.x; address-mask 255.255.255.0; tag-list NMS; } … … … } notify SEND_TRAPS { type trap; tag NMS; } snmp-community index1 { security-name R5_NMS; tag NMS; } } } If the router is not configured to send traps to the SNMP manager, this is a finding.

Fix

Configure the router to send SNMP traps to the SNMP manager. [edit snmp] set v3 target-address NMS_HOST address x.x.x.x edit v3 target-address NMS_HOST [edit snmp v3 target-address NMS_HOST] set address-mask 255.255.255.0 set tag-list NMS exit [edit snmp] set v3 notify SEND_TRAPS type trap tag NMS