Fortinet FortiGate Firewall NDM Security Technical Implementation Guide

  • Version/Release: V1R4
  • Published: 2023-06-01
  • Expand All:
  • Severity:
  • Sort:
Compare

Select any two versions of this STIG to compare the individual requirements

View

Select any old version/release of this STIG to view the previous requirements

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 email to the following address: disa.stig_spt@mail.mil.
b
The FortiGate device must automatically audit account creation.
AC-2 - Medium - CCI-000018 - V-234162 - SV-234162r879525_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-000018
Version
FGFW-ND-000005
Vuln IDs
  • V-234162
Rule IDs
  • SV-234162r879525_rule
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: C-37347r611673_chk

If the System category of Event Logging is enabled, then account creation is audited. To check that System and Event Logging are enabled, log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. Verify Event Logging is set to "All" (for most verbose logging) or "Customize", and includes at least the System activity event. If Event Logging is not set to "All" or "Customize" with System enabled, then account creation will not be audited, and this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If event and system parameters are set to disable, the account creation is not audited, and this is a finding.

Fix: F-37312r628858_fix

This fix can be performed on the FortiGate GUI or on the CLI. Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. For Event Logging options, click "All" (for most verbose logging) or "Customize", and include at least the System activity event. 5. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # set endpoint enable # set user enable # end

b
The FortiGate device must automatically audit account modification.
AC-2 - Medium - CCI-001403 - V-234163 - SV-234163r879526_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-001403
Version
FGFW-ND-000010
Vuln IDs
  • V-234163
Rule IDs
  • SV-234163r879526_rule
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: C-37348r611676_chk

If the System category of Event Logging is enabled, then account modification is audited. To check that Event and System Logging are enabled, log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. Verify Event Logging is set to "All" (for most verbose logging) or "Customize", and include at least the System activity event. If Event Logging is not set to "All" or "Customize" with System enabled, then account modification is not audited, and this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system\|user' The output should be: set event enable set system enable set user enable If event, system, and user parameters are set to disable, then account modification is not audited, and this is a finding.

Fix: F-37313r611677_fix

This fix can be performed on the FortiGate GUI or on the CLI. Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. For Event Logging options, click "All" (for most verbose logging, or "Customize" and include at least the System activity event. 5. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # set user enable # end

b
The FortiGate device must automatically audit account removal actions.
AC-2 - Medium - CCI-001405 - V-234164 - SV-234164r879528_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-001405
Version
FGFW-ND-000020
Vuln IDs
  • V-234164
Rule IDs
  • SV-234164r879528_rule
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: C-37349r611679_chk

If the System category of Event Logging is enabled, then account removal is audited. To check that System and Event Logging is configured, log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. Verify Event Logging is set to "All" (for most verbose logging) or "Customize" and include at least the System activity event. If the Event Logging is not set to "All" or "Customize" with System enabled, then account removal is not audited, and this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If event and system parameters are set to disable, then account removal is not audited, and this is a finding.

Fix: F-37314r611680_fix

This fix can be performed on the FortiGate GUI or on the CLI. Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings. 4. For Event Logging options, click "All" (for most verbose logging) or "Customize" and include at least System activity event. 5. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # set endpoint enable # set user enable # end

b
The FortiGate device must have only one local account to be used as the account of last resort in the event the authentication server is unavailable.
AC-2 - Medium - CCI-001358 - V-234165 - SV-234165r879589_rule
RMF Control
AC-2
Severity
Medium
CCI
CCI-001358
Version
FGFW-ND-000030
Vuln IDs
  • V-234165
Rule IDs
  • SV-234165r879589_rule
Authentication for administrative (privilege-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 must be added to the envelope as a record. Administrators must secure the credentials and disable the root account (if possible) when not needed for system administration functions.
Checks: C-37350r611682_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Verify the admin account is the only account configured as Type Local. If more than one local user account exists, this is a finding.

Fix: F-37315r850510_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Review list of administrators and determine if any besides admin have Type listed as Local 4. For any with type Local, click Administrator, and then click Edit to change to remote authentication, or Delete to remove the administrator 5. To change the administrator to remote authentication, in Type select "Match a user on a remote server group". 6. In Remote User Group, select the appropriate configured remote user group. 7. Click OK. 8. Repeat for all administrators, besides admin that have local authentication listed. 9. Click OK.

b
The FortiGate device must allow full access to only those individuals or roles designated by the ISSM.
AC-4 - Medium - CCI-001368 - V-234166 - SV-234166r879533_rule
RMF Control
AC-4
Severity
Medium
CCI
CCI-001368
Version
FGFW-ND-000035
Vuln IDs
  • V-234166
Rule IDs
  • SV-234166r879533_rule
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: C-37351r611685_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the administrator who is authorized to access System Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to System is set to Read/Write. Then, 1. Click System. 2. Click Administrators. 3. Click other administrators and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to System is set to Read or None. If any low-privileged administrator not designated by the ISSM has Read/Write access to System, this is a finding.

Fix: F-37316r628860_fix

Log in to the FortiGate GUI with Super-Admin privilege. First, set a single admin profile with full System access. 1. Click System. 2. Click Admin Profiles. 3. Click +Create New (Admin Profile). 4. Assign a meaningful name to the Profile. 5. Set System Access Permissions to Read/Write. 6. Click OK to save this Profile. Then, 1. Click System. 2. Click Administrators. 3. Click +Create New (Administrator). 4. Configure Administrator settings with unique Username, Type, and Password. 5. While assigning the Administrator Profile, use the Admin profile configured above with full access to System settings. 6. Go to Restrict login to trusted hosts. 7. Add appropriate IP address in the field Trusted Host 1. 8. Click OK to save. Note: Do not assign this admin profile to any users other than designated administrators that are allowed full access to System Settings. To limit the System access to existing low-privilege administrators: 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to System settings. 4. Select the admin role and hover over the profile assigned to the role. 4. Click Edit. 5. On System access permission, click None. 6. Go to Restrict login to trusted hosts. 7. Add appropriate IP address in the field Trusted Host 1. 8. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization.

b
The FortiGate device must audit the execution of privileged functions.
AC-6 - Medium - CCI-002234 - V-234167 - SV-234167r879720_rule
RMF Control
AC-6
Severity
Medium
CCI
CCI-002234
Version
FGFW-ND-000040
Vuln IDs
  • V-234167
Rule IDs
  • SV-234167r879720_rule
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: C-37352r860663_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37317r611689_fix

This fix can be performed on the FortiGate GUI or on the CLI. Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must enforce the limit of three consecutive invalid logon attempts, after which time it must lock out the user account from accessing the device for 15 minutes.
AC-7 - Medium - CCI-000044 - V-234168 - SV-234168r879546_rule
RMF Control
AC-7
Severity
Medium
CCI
CCI-000044
Version
FGFW-ND-000045
Vuln IDs
  • V-234168
Rule IDs
  • SV-234168r879546_rule
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: C-37353r611691_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Confirm the output from the following command: # show full-configuration system global | grep -i admin-lockout The output should be: set admin-lockout-duration 900 set admin-lockout-threshold 3 If the admin-lockout-duration is not set to 900 and admin-lockout-threshold is not set to 3, this is a finding.

Fix: F-37318r611692_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system global # set admin-lockout-duration 900 # set admin-lockout-threshold 3 # end

b
The FortiGate device must display the Standard Mandatory DoD Notice and Consent Banner before granting access to the device.
AC-8 - Medium - CCI-000048 - V-234169 - SV-234169r879547_rule
RMF Control
AC-8
Severity
Medium
CCI
CCI-000048
Version
FGFW-ND-000050
Vuln IDs
  • V-234169
Rule IDs
  • SV-234169r879547_rule
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: C-37354r628862_chk

Access the FortiGate GUI login page. Verify DoD-approved banner is displayed on the login landing page. "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 correct DoD required banner text is not displayed, this is a finding. and Open a CLI console via SSH and connect to the FortiGate device: Verify the FortiGate CLI displays the Standard Mandatory DoD Notice and Consent Banner before granting access to the system via SSH. "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 DoD-approved banner is not displayed before granting access, this is a finding.

Fix: F-37319r611695_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system global # set pre-login-banner enable # end # config system replacemsg admin pre_admin-disclaimer-text # set buffer "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." #end

b
The FortiGate device must retain the Standard Mandatory DoD Notice and Consent Banner on the screen until the administrator acknowledges the usage conditions and takes explicit actions to log on for further access.
AC-8 - Medium - CCI-000050 - V-234170 - SV-234170r879548_rule
RMF Control
AC-8
Severity
Medium
CCI
CCI-000050
Version
FGFW-ND-000055
Vuln IDs
  • V-234170
Rule IDs
  • SV-234170r879548_rule
The banner must be acknowledged by the administrator prior to the device allowing the administrator access to the network device. This ensures the administrator has seen the message and accepted the conditions for access. If the consent banner is not acknowledged by the administrator, DoD will not be in compliance with system use notifications required by law. To establish acceptance of the network administration policy, a click-through banner at management session logon is required. The device must prevent further activity until the administrator executes a positive action to manifest agreement. In the case of CLI access using a terminal client, entering the username and password when the banner is presented is considered an explicit action of acknowledgement. Entering the username, viewing the banner, then entering the password is also acceptable.
Checks: C-37355r611697_chk

1. Attempt to access the FortiGate device using HTTPS URL. 2. Verify Standard Mandatory DoD Notice and Consent Banner is displayed and retained on the screen. 3. Verify a user has to explicitly ACCEPT the banner before to log on for further access. If Standard Mandatory DoD Notice and Consent Banner is not retained, and a user is not forced to ACCEPT the banner to log on for further access, this is a finding. And, 1. Attempt to login to the FortiGate via SSH: 2. Enter username. 3. Verify the Standard Mandatory DoD Notice and Consent Banner before prompting to enter a password. If Standard Mandatory DoD Notice and Consent Banner is not retained before entering the password to log on for further access, this is a finding.

Fix: F-37320r611698_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set pre-login-banner enable # end # config system replacemsg admin pre_admin-disclaimer-text # set buffer "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." # end

b
The FortiGate device must log all user activity.
AU-10 - Medium - CCI-000166 - V-234171 - SV-234171r879554_rule
RMF Control
AU-10
Severity
Medium
CCI
CCI-000166
Version
FGFW-ND-000060
Vuln IDs
  • V-234171
Rule IDs
  • SV-234171r879554_rule
This requirement supports non-repudiation of actions taken by an administrator and is required 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: C-37356r611700_chk

Log in to the FortiGate GUI with Super-Admin privilege: To verify that logging is enabled: 1. Click Log and Report. 2. Click Log Settings. 3. Scroll down to Log Settings and ensure that Event Logging is set to "All" or "Customize" with System activity events checked. If Event Logging is not set to ALL or Customize with System activity event checked, this is a finding.

Fix: F-37321r611701_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Log Settings. 3. Scroll to Log Settings. 4. For Event Logging, select ALL or Customize. 5. If Customize is selected, ensure to configure, at least, System activity event. 6. Click Apply.

b
The FortiGate device must generate audit records when successful/unsuccessful attempts to modify administrator privileges occur.
AU-12 - Medium - CCI-000172 - V-234172 - SV-234172r879866_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000065
Vuln IDs
  • V-234172
Rule IDs
  • SV-234172r879866_rule
Without generating audit records 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: C-37357r835170_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37322r611704_fix

When Event Logging is enabled, the device will audit attempts to modify administrator privileges. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records when successful/unsuccessful attempts to delete administrator privileges occur.
AU-12 - Medium - CCI-000172 - V-234173 - SV-234173r879870_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000070
Vuln IDs
  • V-234173
Rule IDs
  • SV-234173r879870_rule
Without generating audit records 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: C-37358r835172_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37323r611707_fix

When Event Logging is enabled, the device will audit attempts to delete administrator privileges. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records when successful/unsuccessful logon attempts occur.
AU-12 - Medium - CCI-000172 - V-234174 - SV-234174r879874_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000075
Vuln IDs
  • V-234174
Rule IDs
  • SV-234174r879874_rule
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: C-37359r835174_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37324r611710_fix

When Event Logging is enabled, the device will audit successful/unsuccessful logon attempts. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records for privileged activities or other system-level access.
AU-12 - Medium - CCI-000172 - V-234175 - SV-234175r879875_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000080
Vuln IDs
  • V-234175
Rule IDs
  • SV-234175r879875_rule
Without generating audit records 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: C-37360r835176_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37325r611713_fix

When Event Logging is enabled, the device will audit privileged activities or other system-level access. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records showing starting and ending time for administrator access to the system.
AU-12 - Medium - CCI-000172 - V-234176 - SV-234176r879876_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000085
Vuln IDs
  • V-234176
Rule IDs
  • SV-234176r879876_rule
Without generating audit records 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: C-37361r835178_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37326r611716_fix

When Event Logging is enabled the device will audit starting and ending time for administrator access to the system. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records when concurrent logons from different workstations occur.
AU-12 - Medium - CCI-000172 - V-234177 - SV-234177r879877_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000172
Version
FGFW-ND-000090
Vuln IDs
  • V-234177
Rule IDs
  • SV-234177r879877_rule
Without generating audit records 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: C-37362r835180_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log eventfilter | grep -i 'event\|system' The output should be: set event enable set system enable If the event and system parameters are set to disable, this is a finding.

Fix: F-37327r611719_fix

When Event Logging is enabled, the device will audit concurrent logons from different workstations. To enable event logging, log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log eventfilter # set event enable # set system enable # end

b
The FortiGate device must generate audit records containing information that establishes the identity of any individual or process associated with the event.
AU-3 - Medium - CCI-001487 - V-234178 - SV-234178r879568_rule
RMF Control
AU-3
Severity
Medium
CCI
CCI-001487
Version
FGFW-ND-000095
Vuln IDs
  • V-234178
Rule IDs
  • SV-234178r879568_rule
Without information that establishes the identity of the subjects (i.e., administrators or processes acting on behalf of administrators) associated with the events, security personnel cannot determine responsibility for the potentially harmful event. Event identifiers (if authenticated or otherwise known) include, but are not limited to, user database tables, primary key values, user names, or process identifiers.
Checks: C-37363r611721_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # show full-configuration log setting | grep -i anonymize The output should be: set user-anonymize disable If the log setting user-anonymize is set to enable, this is a finding.

Fix: F-37328r611722_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config log setting # set user-anonymize disable # end

b
The FortiGate device must generate audit records containing the full-text recording of privileged commands.
AU-3 - Medium - CCI-000135 - V-234179 - SV-234179r879569_rule
RMF Control
AU-3
Severity
Medium
CCI
CCI-000135
Version
FGFW-ND-000100
Vuln IDs
  • V-234179
Rule IDs
  • SV-234179r879569_rule
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: C-37364r611724_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system global | grep -i cli-audit The output should be: set cli-audit-log enable If cli-audit-log is set to disable, this is a finding.

Fix: F-37329r611725_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set cli-audit-log enable # end

b
The FortiGate device must allocate audit record storage capacity in accordance with organization-defined audit record storage requirements.
AU-4 - Medium - CCI-001849 - V-234180 - SV-234180r879730_rule
RMF Control
AU-4
Severity
Medium
CCI
CCI-001849
Version
FGFW-ND-000105
Vuln IDs
  • V-234180
Rule IDs
  • SV-234180r879730_rule
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: C-37365r860665_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log disk setting | grep -i max-log-file-size The output should be: set max-log-file-size {INTEGER} If max-log-file-size for local disk storage is not set to the organization-defined audit record storage, this is a finding.

Fix: F-37330r835183_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config log disk setting # set max-log-file-size {INTEGER 1 - 100 MB} # set diskfull overwrite # end

b
The FortiGate device must off-load audit records on to a different system or media than the system being audited.
AU-4 - Medium - CCI-001851 - V-234181 - SV-234181r879886_rule
RMF Control
AU-4
Severity
Medium
CCI
CCI-001851
Version
FGFW-ND-000110
Vuln IDs
  • V-234181
Rule IDs
  • SV-234181r879886_rule
Information stored in one location is vulnerable to accidental or incidental deletion or alteration. Offloading is a common process in information systems with limited audit storage capacity.
Checks: C-37366r863252_chk

Verify remote logging is configured. Via the GUI: Login via the FortiGate GUI with super-admin privileges. - Navigate to Log and Report. - Navigate to Log Settings. - Verify the Remote and Archiving settings. or Via the CLI: Open a CLI console via SSH or from the "CLI Console" button in the GUI. Run the following commands to verify which logging settings are enabled: # show full-configuration log fortianalyzer setting | grep -i 'status\|server' # show full-configuration log fortianalyzer2 setting | grep -i 'status\|server' # show full-configuration log fortianalyzer3 setting | grep -i 'status\|server' # show full-configuration log syslogd setting | grep -i 'status\|server' # show full-configuration log syslogd2 setting | grep -i 'status\|server' # show full-configuration log syslogd3 setting | grep -i 'status\|server' # show full-configuration log syslogd4 setting | grep -i 'status\|server' - The output should indicate enabled and an IP address. If the FortiGate is not logging to a fortianalyzer or syslog server, this is a finding.

Fix: F-37331r863253_fix

Login via the GUI with super-admin privileges. 1. Click Log and Report. 2. Click Log Settings. To add a FortiAnalyzer: - In the Remote Logging and Archiving, enable logging to FortiAnalyzer and provide the IP address. To add a Syslog server: - In the Remote Logging and Archiving, enable Send logs to Syslog and provide the IP address. 3. Apply changes. or 1. Open a CLI console via SSH or from the "CLI Console" button in the GUI. 2. Configure a fortianalyzer or syslog server with the following commands: FortiAnalyzer: # config log fortianalyzer setting # set status enable # set server {IP Address} # set upload-option realtime # end Syslog: # config log syslogd setting # set status enable # set server {IP Address} # set mode reliable # end

b
The FortiGate device must generate an immediate real-time alert of all audit failure events requiring real-time alerts.
AU-5 - Medium - CCI-001858 - V-234182 - SV-234182r879733_rule
RMF Control
AU-5
Severity
Medium
CCI
CCI-001858
Version
FGFW-ND-000115
Vuln IDs
  • V-234182
Rule IDs
  • SV-234182r879733_rule
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: C-37367r611733_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Security Fabric. 2. Click Automation. 3. Verify Automation Stitches are configured to send alerts related to audit processing failure. 4. For each Automation Stitch, verify a valid Action Email has been configured. If Automation Stitches are not defined to trigger an immediate real-time alert of all audit processing failures, this is a finding. Note: Relevant events for an Automation Stitch are below: Disk Full Disk Log access failed Disk log directory deleted Disk log file deleted Disk log full over first warning Disk logs failed to back up Disk logs failed to back up to USB Disk partitioning or formatting Error Disk unavailable FortiAnalyzer connection down FortiAnalyzer connection failed FortiAnalyzer is not configured for Security Fabric service FortiAnalyzer log access failed Log disk failure imminent Log disk full Log disk unavailable Memory log access failed Memory log full over final warning level Memory log full over first warning level Memory log full over second warning level Memory logs failed to back up

Fix: F-37332r611734_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Security Fabric. 2. Click Automation. 3. Click +Create New (Automation Stitch). 4. Assign a meaningful name. 5. For Trigger, select FortiOS Event Log. 6. For Event field, Click + (and choose a specific event type). 7. For Action, select Email, specify recipients, and Email subject. 8. Click OK. Note: The following are all relevant Event Log entries. For most complete coverage, configure an Automation Stitch for each of the Event Log entries below: Disk Full Disk Log access failed Disk log directory deleted Disk log file deleted Disk log full over first warning Disk logs failed to back up Disk logs failed to back up to USB Disk partitioning or formatting Error Disk unavailable FortiAnalyzer connection down FortiAnalyzer connection failed FortiAnalyzer is not configured for Security Fabric service FortiAnalyzer log access failed Log disk failure imminent Log disk full Log disk unavailable Memory log access failed Memory log full over final warning level Memory log full over first warning level Memory log full over second warning level Memory logs failed to back up

b
The FortiGate device must synchronize internal information system clocks using redundant authoritative time sources.
CM-6 - Medium - CCI-000366 - V-234183 - SV-234183r879746_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000120
Vuln IDs
  • V-234183
Rule IDs
  • SV-234183r879746_rule
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: C-37368r860667_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system ntp | grep server The output should be: set server {IP address of NTP server 1} set server {IP address of NTP server 2} If the internal information system clocks are not configured to synchronize with the primary and secondary time sources, this is a finding.

Fix: F-37333r611737_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system ntp # set ntpsync enable # set type custom # set syncinterval {INTEGER} To add NTP server 1: # config ntpserver # edit {ID} # set server {IP ADDRESS} # set authentication enable # set key {PASSWORD} # set key-id {INTEGER} # next To add NTP server 2: # config ntpserver # edit {ID} # set server {IP ADDRESS} # set authentication enable # set key {PASSWORD} # set key-id {INTEGER} # next # end

b
The FortiGate device must record time stamps for audit records that can be mapped to Coordinated Universal Time (UTC) or Greenwich Mean Time (GMT).
AU-8 - Medium - CCI-001890 - V-234184 - SV-234184r879747_rule
RMF Control
AU-8
Severity
Medium
CCI
CCI-001890
Version
FGFW-ND-000125
Vuln IDs
  • V-234184
Rule IDs
  • SV-234184r879747_rule
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: C-37369r860669_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Log and Report. 2. Click Events. 3. On the Events page, double-click on an event for detail. 4. Verify in the log details that the mapped time zone reflects GMT. If the time zone is not mapped to GMT, this is a finding.

Fix: F-37334r611740_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Go to Settings. 3. On Time Zone, select the time zone in which the FortiGate device is located. 4. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set timezone {TIMEZONE INDEX} # end

b
The FortiGate device must protect audit information from unauthorized deletion.
AU-9 - Medium - CCI-000164 - V-234185 - SV-234185r879578_rule
RMF Control
AU-9
Severity
Medium
CCI
CCI-000164
Version
FGFW-ND-000130
Vuln IDs
  • V-234185
Rule IDs
  • SV-234185r879578_rule
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, to make access decisions regarding the deletion of audit data.
Checks: C-37370r611742_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Click on each administrator who is not authorized to access Log and Report Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to Log and Report is set to None or Read. If any low-privileged administrator has Read/Write access to Log and Report, this is a finding.

Fix: F-37335r628866_fix

Log in to the FortiGate GUI with Super-Admin privilege. To limit the Log and Report access to existing low-privileged administrators: 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to Log and Report settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On Log and Report access permission, click None or Read. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization.

b
The FortiGate device must protect audit tools from unauthorized access.
AU-9 - Medium - CCI-001493 - V-234186 - SV-234186r879579_rule
RMF Control
AU-9
Severity
Medium
CCI
CCI-001493
Version
FGFW-ND-000135
Vuln IDs
  • V-234186
Rule IDs
  • SV-234186r879579_rule
Protecting audit data also includes identifying and protecting the tools used to view and manipulate log data. Therefore, protecting audit tools is necessary to prevent unauthorized operation on audit data. Network devices providing tools to interface with audit data will leverage user permissions and roles, identifying the user accessing the tools and the corresponding rights the user enjoys, to make access decisions regarding the access to audit tools. Audit tools include, but are not limited to, vendor-provided and open source audit tools needed to successfully view and manipulate audit information system activity and records. Audit tools include custom queries and report generators.
Checks: C-37371r611745_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Click each administrator who is not authorized to access Log and Report Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify the permission to Log and Report is set to None. If any low-privileged administrator has Read/Write or Read access to Log and Report settings, this is a finding.

Fix: F-37336r628782_fix

Log in to the FortiGate GUI with Super-Admin privilege. To limit the Log and Report access to existing low-privileged administrators: 1. Click System. 2. Click Administrators. 3. Identify any administrator that is not authorized to access Log and Report settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On Log and Report access permission, click None. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege-separation requirements for the organization.

b
The FortiGate device must protect audit tools from unauthorized modification.
AU-9 - Medium - CCI-001494 - V-234187 - SV-234187r879580_rule
RMF Control
AU-9
Severity
Medium
CCI
CCI-001494
Version
FGFW-ND-000140
Vuln IDs
  • V-234187
Rule IDs
  • SV-234187r879580_rule
Protecting audit data also includes identifying and protecting the tools used to view and manipulate log data. Therefore, protecting audit tools is necessary to prevent unauthorized operation on audit data. Network devices providing tools to interface with audit data will leverage user permissions and roles identifying the user accessing the tools, and the corresponding rights the user enjoys, to make access decisions regarding the access to audit tools. Audit tools include, but are not limited to, vendor-provided and open source audit tools needed to successfully view and manipulate audit information system activity and records. Audit tools include custom queries and report generators.
Checks: C-37372r611748_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Click on each administrator who is not authorized to access Log and Report settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to Log and Report is set to None or Read. If any low-privileged administrator has Read/Write access to Log and Report, this is a finding.

Fix: F-37337r628868_fix

Log in to the FortiGate GUI with Super-Admin privilege. To limit the Log and Report access to existing low-privileged administrators: 1. Click System. 2. Click Administrators. 3. Identify the admin role that is not authorized access to Log and Report settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On Log and Report access permission, click None or Read. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization.

b
The FortiGate device must prohibit installation of software without explicit privileged status.
CM-11 - Medium - CCI-001812 - V-234188 - SV-234188r879751_rule
RMF Control
CM-11
Severity
Medium
CCI
CCI-001812
Version
FGFW-ND-000145
Vuln IDs
  • V-234188
Rule IDs
  • SV-234188r879751_rule
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: C-37373r850523_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the administrator that is not authorized to access System Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to System is set to Read or None. If any unauthorized administrator has Read/Write access to System, this is a finding.

Fix: F-37338r850524_fix

To limit the System access to existing low-privileged administrators, log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to System settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On System access permission, click None or Read only. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization.

b
The FortiGate device must enforce access restrictions associated with changes to device configuration.
CM-5 - Medium - CCI-001813 - V-234189 - SV-234189r879753_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001813
Version
FGFW-ND-000150
Vuln IDs
  • V-234189
Rule IDs
  • SV-234189r879753_rule
Failure to provide logical access restrictions associated with changes to device configuration may have significant effects on the overall security of the system. When dealing with access restrictions pertaining to change control, it should be noted that any changes to the hardware, software, and/or firmware components of the device can potentially have significant effects on the overall security of the device. Accordingly, only qualified and authorized individuals should be allowed to obtain access to device components for the purposes of initiating changes, including upgrades and modifications. Logical access restrictions include, for example, controls that restrict access to workflow automation, media libraries, abstract layers (e.g., changes implemented into third-party interfaces rather than directly into information systems), and change windows (e.g., changes occur only during specified times, making unauthorized changes easy to discover).
Checks: C-37374r611754_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the administrator that is not authorized to access System Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify the permission to System is set to Read or None. If any unauthorized administrators have Read/Write access to System, this is a finding.

Fix: F-37339r850526_fix

To limit the System access to existing low-privileged administrators, log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to System settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On System access permission, click None or Read only. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege-separation requirements for the organization.

b
The FortiGate device must limit privileges to change the software resident within software libraries.
CM-5 - Medium - CCI-001499 - V-234190 - SV-234190r879586_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001499
Version
FGFW-ND-000155
Vuln IDs
  • V-234190
Rule IDs
  • SV-234190r879586_rule
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: C-37375r611757_chk

Log in to the FortiGate GUI with an Administrator that does not have System setting privileges. 1. Click System. 2. Attempt to click Firmware; this option will not be available. If the FortiGate device does not limit privileges to change the software resident within software libraries, this is a finding.

Fix: F-37340r611758_fix

Log in to the FortiGate GUI with Super-Admin privilege. To remove System access permission from an existing low-privileged administrator: 1. Click System. 2. Click Administrators. 3. Identify the administrator role that is unauthorized to update software. 4. Select the administrator role and hover over the profile assigned to the role. 5. Click Edit. 6. For System access, click None. 7. Click OK to save.

b
The FortiGate device must enforce access restrictions associated with changes to the system components.
CM-5 - Medium - CCI-000345 - V-234191 - SV-234191r879887_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-000345
Version
FGFW-ND-000160
Vuln IDs
  • V-234191
Rule IDs
  • SV-234191r879887_rule
Changes to the hardware or 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. This requirement applies to updates of the application files, configuration, ACLs, and policy filters.
Checks: C-37376r611760_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Identify the administrator who is authorized to access System Settings and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to System is set to Read/Write. If the authorized administrator does not have Read/Write access to System, this is a finding. Then, 1. Click System. 2. Click Administrators. 3. Click other administrators and hover over the profile assigned to the role. 4. Click Edit. 5. Verify that the permission to System is set to Read or None. If any low-privileged administrator has Read/Write access to System, this is a finding.

Fix: F-37341r628870_fix

Log in to the FortiGate GUI with Super-Admin privilege. Set one admin profile with full System access. 1. Click System. 2. Click Admin Profiles. 3. Click +Create New (Admin Profile). 4. Assign a meaningful name to the Profile. 5. Set System Access Permissions to Read/Write. 6. Click OK to save this Profile. Then, 1. Click System. 2. Click Administrators. 3. Click on +Create New (Administrator). 4. Configure Administrator settings with unique Username, Type, and Password. 5. While assigning the Administrator Profile, use the Admin profile configured above with limited access to System settings. 6. Go to Restrict login to trusted hosts. 7. Add appropriate IP address in the field Trusted Host 1. 8. Click OK to save. Note: Do not assign this admin profile to any users other than designated administrator that can have full access to System Settings. To limit the System access to existing low-privilege administrators: 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to System settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On System access permission, click None or Read only. 7. Go to Restrict login to trusted hosts. 8. Add appropriate IP address in the field Trusted Host 1. 9. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization.

b
The FortiGate device must use LDAP for authentication.
CM-6 - Medium - CCI-000366 - V-234192 - SV-234192r916111_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000165
Vuln IDs
  • V-234192
Rule IDs
  • SV-234192r916111_rule
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: C-37377r611763_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Verify all users except admin are assigned to a remote LDAP user group. If all administrators except admin are not configured to use remote LDAP authentication, this is a finding.

Fix: F-37342r611764_fix

Log in to the FortiGate GUI with Super-Admin privilege. Configure the LDAP server connection. 1. Go to User and Device. 2. Go to LDAP Servers and select +Create New. 3. Enter the server Name, Server IP address, or Name. 4. Enter the Common Name Identifier and Distinguished Name. 5. Set the Bind Type to Regular and enter the LDAP bind Username and Password. 6. Ensure the Secure Connection button is toggled to enable. 7. In Protocol, select LDAPS. Select certificate. 8. Click OK. Add the LDAP server to a user group. 1. Go to User and Device. 2. Under User Groups, select +Create New. 3. Enter a Name for the group. 4. In the Remote groups section, select +Add. 5. Select the Remote Server from the dropdown list. 6. Click OK. Then, configure the administrator account. 1. Click System. 2. Click Administrators. 3. Click +Create New and choose Administrator. 4. Specify the Username. 5. Set Type to Match a user on a remote server group. 6. In Remote User Group, select the user group that was created. or 1. Open a CLI console, via SSH or available from the GUI. 2. Configure the LDAP server in the CLI: # config user ldap # edit {ldap_server_name} # set server {server_ip} # set cnid {cn} # set dn {dc=XYZ,dc=fortinet,dc=COM} # set type regular # set username {cn=Administrator,dc=XYA, dc=COM} # set password {bind password} # set secure ldaps # set ca-cert {CA certificate name} # next # end 3. Create a user group in the CLI: # config user group # edit {Group_name} # set member {ldap_server_name} # next # end 4. Create an administrator in the CLI: # config system admin # edit {admin_name} # set remote-auth enable # set accprofile {profile name} # set remote-group ldap # end

c
The FortiGate device must be running an operating system release that is currently supported by the vendor.
CM-6 - High - CCI-000366 - V-234193 - SV-234193r879887_rule
RMF Control
CM-6
Severity
High
CCI
CCI-000366
Version
FGFW-ND-000170
Vuln IDs
  • V-234193
Rule IDs
  • SV-234193r879887_rule
Network devices running an unsupported operating system lack current security fixes required to mitigate the risks associated with recent vulnerabilities.
Checks: C-37378r628873_chk

Log in to the Fortinet Support Portal and review the Product Life Cycle Software "End of Support Date". Log in to the FortiGate with Super-Admin privilege in the GUI and review the Dashboard >> Status >> System Information widget for Firmware version. If the firmware listed in the FortiGate is not supported based on the Product Life Cycle page, this is a finding.

Fix: F-37343r628872_fix

Go to the Fortinet Upgrade Path Tool and select the platform that is being upgraded, the current FortiOS version, and the desired FortiOS version, and then click "Go". Log in to the Fortinet Support Portal and go to Download >> Firmware Images and download the listed firmware versions from the Upgrade Path Tool. Log in to the FortiGate GUI with Super-Admin privilege and go to System >> Firmware. Upload the target firmware file under "Upload Firmware >> Browse" and then click "Backup config and upgrade”. Repeat as necessary as defined by the Upgrade Path Tool.

b
The FortiGate device must generate log records for a locally developed list of auditable events.
AU-12 - Medium - CCI-000169 - V-234194 - SV-234194r879887_rule
RMF Control
AU-12
Severity
Medium
CCI
CCI-000169
Version
FGFW-ND-000175
Vuln IDs
  • V-234194
Rule IDs
  • SV-234194r879887_rule
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: C-37379r611769_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration log setting Compare the output to the locally developed list to ensure enabled events match the local list. 3. Run the following command: # show full-configuration log eventfilter Compare the output to the locally developed list to ensure enabled events match the local list. If the FortiGate device does not generate log records for a locally developed list of auditable events, this is a finding.

Fix: F-37344r611770_fix

Obtain local audit list and enable event logging to match requirements within the list. Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command and set to enable any events that match a requirement in the local policy: # config log setting # set resolve-ip {enable | disable} # set resolve-port {enable | disable} # set log-user-in-upper {enable | disable} # set fwpolicy-implicit-log {enable | disable} # set fwpolicy6-implicit-log {enable | disable} # set log-invalid-packet {enable | disable} # set local-in-allow {enable | disable} # set local-in-deny-unicast {enable | disable} # set local-in-deny-broadcast {enable | disable} # set local-out {enable | disable} # set daemon-log {enable | disable} # set neighbor-event {enable | disable} # set brief-traffic-format {enable | disable} # set user-anonymize {enable | disable} # set expolicy-implicit-log {enable | disable} # set log-policy-comment {enable | disable} # set log-policy-name {enable | disable} # end # config log eventfilter # set event {enable | disable} # set system {enable | disable} # set vpn {enable | disable} # set user {enable | disable} # set router {enable | disable} # set wireless-activity {enable | disable} # set wan-opt {enable | disable} # set endpoint {enable | disable} # set ha {enable | disable} # set compliance-check {enable | disable} # set security-rating {enable | disable} # set fortiextender {enable | disable} # set connector {enable | disable} # end

b
The FortiGate device must conduct backups of system-level information contained in the information system when changes occur.
CM-6 - Medium - CCI-000366 - V-234195 - SV-234195r916221_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000180
Vuln IDs
  • V-234195
Rule IDs
  • SV-234195r916221_rule
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: C-37380r611772_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click the admin menu available on the upper right-hand corner of the screen. 2. Click Configuration. 3. Click Revisions. 4. Verify a list of saved backed-up configurations are available. If saved backups of system configuration do not exist, this is a finding.

Fix: F-37345r611773_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set revision-backup-on-logout enable # end 3. Integrate FortiGate with FortiManager or the organization’s central backup server using SSH to pull saved backups. Note: All backups performed by super admin contain global setting and settings for any VDOMs.

b
The FortiGate device must support organizational requirements to conduct backups of information system documentation, including security-related documentation, when changes occur or weekly, whichever is sooner.
CM-6 - Medium - CCI-000366 - V-234196 - SV-234196r879887_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000185
Vuln IDs
  • V-234196
Rule IDs
  • SV-234196r879887_rule
Information system backup is a critical step in maintaining data assurance and availability. Information system and security-related documentation contains information pertaining to system configuration and security settings. If this information was not backed up, and a system failure occurred, the security settings would be difficult to reconfigure quickly and accurately. Maintaining a backup of information system and security-related documentation provides for a quicker recovery time when system outages occur. This control requires the network device to support the organizational central backup process for user account 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: C-37381r611775_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click the admin menu available on the upper right-hand corner of the screen. 2. Click Configuration. 3. Click Revisions. 4. Verify at least one saved backed-up occurred within the last week. If a backup of system configuration was not performed within the last week, this is a finding.

Fix: F-37346r611776_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set revision-backup-on-logout enable # end 3. Integrate FortiGate with FortiManager or the organization’s central backup server using SSH to pull saved backups.

b
FortiGate devices performing maintenance functions must restrict use of these functions to authorized personnel only.
CM-6 - Medium - CCI-000366 - V-234197 - SV-234197r879781_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000190
Vuln IDs
  • V-234197
Rule IDs
  • SV-234197r879781_rule
There are security-related issues arising from software brought into the network device specifically for diagnostic and repair actions (e.g., a software packet sniffer installed on a device to troubleshoot system traffic, or a vendor installing or running a diagnostic application to troubleshoot an issue with a vendor-supported device). If maintenance tools are used by unauthorized personnel, they may accidentally or intentionally damage or compromise the system. This requirement addresses security-related issues associated with maintenance tools used specifically for diagnostic and repair actions on organizational network devices. Maintenance tools can include hardware, software, and firmware items. Maintenance tools are potential vehicles for transporting malicious code, either intentionally or unintentionally, into a facility and subsequently into organizational information systems. Maintenance tools can include, for example, hardware/software diagnostic test equipment and hardware/software packet sniffers. This requirement does not cover hardware/software components that may support information system maintenance, yet are a part of the system (e.g., the software implementing "ping," "ls," "ipconfig," or the hardware and software implementing the monitoring port of an Ethernet switch).
Checks: C-37382r850528_chk

Log in to the FortiGate GUI with Super-Admin privilege: 1. Click System. 2. Click Administrators. 3. Identify the administrator designated to perform maintenance functions and hover over the profile assigned to the role. 4. Click Edit. 5. Verify the permission to System is set to Read/Write or Custom with Maintenance set to Read/Write. If an authorized administrator does not have Read/Write access to System Maintenance Settings, this is a finding. Then, 1. Click System. 2. Click Administrators. 3. Click all other low-privileged administrators and hover over the profile assigned to the role. 4. Click Edit. 5. Verify the permission to System Maintenance is customized set to Read or None. If any low-privileged administrator has Read/Write access to System Settings, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command for all low privileged admin user: # show system admin {ADMIN NAME} | grep -i accprofile The output should be: set accprofile {PROFILE NAME} Use the profile name from the output result of above command. # show system accprofile {PROFILE NAME} | grep -i sysgrp The output should be: set sysgrp read or set sysgrp none If any low privileged admin user has sysgrp parameter set to value Read/Write, this is a finding.

Fix: F-37347r611779_fix

Log in to the FortiGate GUI with Super-Admin privilege. First, set one admin profile with access to System Maintenance. 1. Click System. 2. Click Admin Profiles. 3. Click +Create New (Admin Profile). 4. Assign a meaningful name to the Profile. 5. Set System Access Permissions to Read/Write or Custom with Maintenance set to Read/Write. 6. Click OK to save this Profile. Then, 1. Click System. 2. Click Administrators. 3. Click +Create New (Administrator). 4. Configure Administrator settings with unique Username, Type, and Password. 5. Assign the Administrator Profile that was configured above. 6. Click OK to save. Note: Do not assign this admin profile to any other users other than the authorized administrator. To limit the System access to existing low-privilege administrators: 1. Click System. 2. Click Administrators. 3. Identify the admin role that has unauthorized access to System settings. 4. Select the admin role and hover over the profile assigned to the role. 5. Click Edit. 6. On System access permission, click Read or None. 7. Click OK to save. Repeat this process to define all the Administrators needed to meet privilege separation requirements for the organization. or 1. Open a CLI console, via SSH or available from the GUI 2. First edit the admin profile by running the following command: # config system accprofile # edit {PROFILE NAME} # set sysgrp read or none # next # end Then, assign this admin profile to the authorized administrator account. # config system admin # edit {ADMIN NAME} # set accprofile {PROFILE NAME} # next # end Note: Do not assign this admin profile to any other users other than the authorized administrator.

b
The FortiGate device must use DoD-approved Certificate Authorities (CAs) for public key certificates.
CM-6 - Medium - CCI-000366 - V-234198 - SV-234198r879887_rule
RMF Control
CM-6
Severity
Medium
CCI
CCI-000366
Version
FGFW-ND-000195
Vuln IDs
  • V-234198
Rule IDs
  • SV-234198r879887_rule
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 CA will suffice.
Checks: C-37383r611781_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Certificates. 3. Verify CAs are approved providers. If the public key certificates are not from an approved service provider, this is a finding.

Fix: F-37348r611782_fix

1. Obtain CA certificate from a DoD-approved provider. 2. Log in to the FortiGate GUI with Super-Admin privilege. 3. Click System. 4. Click Certificates. 5. Click Import in the toolbar. 6. Click CA Certificate. 7. On the Import CA Certificate page, select Type File. 8. Locate the certificate file and upload the certificate file. 9. Click OK to import the certificate.

c
The FortiGate device must prohibit the use of all unnecessary and/or non-secure functions, ports, protocols, and/or services.
CM-7 - High - CCI-000382 - V-234199 - SV-234199r879588_rule
RMF Control
CM-7
Severity
High
CCI
CCI-000382
Version
FGFW-ND-000200
Vuln IDs
  • V-234199
Rule IDs
  • SV-234199r879588_rule
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: C-37384r611784_chk

Log in to FortiGate GUI with Super-Admin privileges. 1. Click Policy and Objects. 2. Click Services, and then review services, functions, and ports that are allowed by the firewall. 3. Next, open a CLI console, via SSH or available from the GUI. 4. Run the following commands: # show firewall policy # show firewall policy6 Review policies to ensure that no restricted services, ports, protocols or functions are allowed. FortiGate is configured to deny by default, so if a service, port, protocol, or function is not specifically allowed, it will be denied. If restricted functions, ports, protocols, and/or services are allowed by the firewall, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console over SSH or available from the GUI. 2. Run the following # show full-configuration system interface 3. Review configuration for unnecessary services. If unnecessary services are configured, this is a finding. Review the PPSM CAL and determine which functions, ports, protocols, and/or services must be disabled or restricted.

Fix: F-37349r628877_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Policy and Objects. 2. Click IPv4 or IPv6 Policy. 3. Click +Create New. 4. Name the policy, and then select Incoming and Outgoing Interfaces. 5. Create policies with authorized sources and destinations. 6. Set action to DENY. 7. Ensure Enable this policy is toggled to right. 8. Click OK. 9. Ensure a policy is created for each interface and that every PPSM CAL and VA mitigation is covered. Traffic is denied by default and policies must be configured to allow traffic that meets PPSM CAL and VA guidelines. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following # config system interface # edit {INTERFACE-NAME} # set {DHCP-RELAY-SERVICE | PPTP-CLIENT | ARPFORWARD | BROADCAST-FORWARD | L2FORWARD | ICMP-REDIRECT | VLANFORWARD | STPFORWARD | LLDP-TRANSMISSION} disable # end Create a new line for each service in {} that needs to be removed.

b
The FortiGate device must implement replay-resistant authentication mechanisms for network access to privileged accounts.
IA-2 - Medium - CCI-001941 - V-234200 - SV-234200r879597_rule
RMF Control
IA-2
Severity
Medium
CCI
CCI-001941
Version
FGFW-ND-000205
Vuln IDs
  • V-234200
Rule IDs
  • SV-234200r879597_rule
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: C-37385r611787_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system global | grep -i 'tls\|ssh-v' The output should be: # set admin-https-ssl-versions tlsv1-2 tlsv1-3 # set admin-ssh-v1 disable # set ssl-min-proto-version TLSv1-2 #end If admin-https-ssl-versions is not set to tlsv1-2 tlsv1-3 or admin-ssh-v1 is enable, this is a finding.

Fix: F-37350r611788_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set admin-https-ssl-versions tlsv1-2 tlsv1-3 # set admin-ssh-v1 disable # end

b
The FortiGate device must authenticate SNMP messages using a FIPS-validated Keyed-Hash Message Authentication Code (HMAC).
IA-3 - Medium - CCI-001967 - V-234201 - SV-234201r879768_rule
RMF Control
IA-3
Severity
Medium
CCI
CCI-001967
Version
FGFW-ND-000210
Vuln IDs
  • V-234201
Rule IDs
  • SV-234201r879768_rule
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., 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: C-37386r611790_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click SNMP. 3. Verify the SNMPv3 settings are configured and enabled. 4. Select each SNMPv3 user and click Edit. 5. On Security Level, verify the SNMPv3 user is configured to use SHA256 as the Authentication Algorithm. If the FortiGate device is not configured to authenticate SNMP messages using a FIPS-validated HMAC, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system snmp user | grep -i 'security-level\ |auth-proto' For each SNMPv3 user, the output should be similar to: set security-level auth set auth-proto sha256 If the security-level parameter is not set to auth or auth-priv, and the auth-proto is not set to SHA, this is a finding.

Fix: F-37351r850531_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click SNMP. 3. Select each SNMPv3 user. 4. Click Edit. 5. On Security Level, click Authentication. 6. Select SHA256 for the Authentication Algorithm. 7. Change the Password if required. 8. Click OK. 9. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system snmp user # edit {NAME} # set status enable # set security-level auth # set auth-proto sha256 # set auth-pwd {PASSWORD} # next # end

b
The FortiGate device must authenticate Network Time Protocol (NTP) sources using authentication that is cryptographically based.
IA-3 - Medium - CCI-001967 - V-234202 - SV-234202r879768_rule
RMF Control
IA-3
Severity
Medium
CCI
CCI-001967
Version
FGFW-ND-000215
Vuln IDs
  • V-234202
Rule IDs
  • SV-234202r879768_rule
If NTP is not authenticated, an attacker can introduce a rogue NTP server. This rogue server can then be used to send incorrect time information to network devices, which will make log timestamps inaccurate and affect scheduled actions. NTP authentication is used to prevent this tampering by authenticating the time source.
Checks: C-37387r611793_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # diagnose sys ntp status The output should be similar to: ipv4 server(URL of NTP server) 123.123.123.123 -- reachable(0xbf) S:1 T:242 selected server-version=4, stratum=2 reference time is e213a5fb.2250b45e -- UTC Wed Mar 11 18:01:31 2020 clock offset is 0.000801 sec, root delay is 0.000381 sec root dispersion is 0.053268 sec, peer dispersion is 287 msec If the output does not return server-version is equal to 4, this is a finding.

Fix: F-37352r611794_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system ntp # set ntpsync enable # set type custom # set syncinterval {INTEGER} # config ntpserver # edit {ID} # set server {IP ADDRESS} # set authentication enable # set key {PASSWORD} # set key-id {INTEGER} # next # end

b
The FortiGate device must enforce a minimum 15-character password length.
IA-5 - Medium - CCI-000205 - V-234203 - SV-234203r879601_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000205
Version
FGFW-ND-000220
Vuln IDs
  • V-234203
Rule IDs
  • SV-234203r879601_rule
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: C-37388r628879_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. Verify Password scope is enabled for Admin. 5. Verify the Minimum length is set to 15. If the Password scope is OFF and the Minimum length is not set to 15, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege: 1. Open a CLI console, via SSH or available from the GUI 2. Run the following command: # show full-configuration system password-policy | grep -i minimum set minimum-length 15 If the minimum-length parameter is not set to 15, this is a finding.

Fix: F-37353r611797_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. On the Password scope option, click Admin. 5. Enter the Minimum length value of 15. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system password-policy # set status enable # set minimum-length 15 # end--+

b
The FortiGate device must enforce password complexity by requiring that at least one uppercase character be used.
IA-5 - Medium - CCI-000192 - V-234204 - SV-234204r879603_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000192
Version
FGFW-ND-000225
Vuln IDs
  • V-234204
Rule IDs
  • SV-234204r879603_rule
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, 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: C-37389r835189_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. Verify Password scope is enabled for Admin and Character requirements is toggled to right. 5. Verify the Uppercase value is set to 1 or greater. If the Uppercase parameter is not set to 1 or greater, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system password-policy | grep -i upper-case If the min-upper-case-letter parameter is not set to 1 or greater, this is a finding.

Fix: F-37354r835190_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. On the Password scope option, click Admin. 5. Toggle Character requirements to right. 6. Enter the Uppercase value of 1 or greater. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system password-policy # set min-upper-case-letter 1 (or greater) # end

b
The FortiGate device must enforce password complexity by requiring that at least one lowercase character be used.
IA-5 - Medium - CCI-000193 - V-234205 - SV-234205r917456_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000193
Version
FGFW-ND-000230
Vuln IDs
  • V-234205
Rule IDs
  • SV-234205r917456_rule
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: C-37390r917455_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. Verify Password scope is enabled for Admin and Character requirements is toggled to right. 5. Verify the Lowercase value is set to 1 or greater. If the Lowercase parameter is not set to 1 or greater, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system password-policy | grep -i lower-case If the min-lower-case-letter parameter is not set to 1 or greater, this is a finding.

Fix: F-37355r611803_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. On the Password scope option, click Admin. 5. Toggle Character requirements to right. 6. Enter the Lowercase value of 1. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system password-policy # set min-lower-case-letter 1 # end

b
The FortiGate device must enforce password complexity by requiring at least one numeric character be used.
IA-5 - Medium - CCI-000194 - V-234206 - SV-234206r879605_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000194
Version
FGFW-ND-000235
Vuln IDs
  • V-234206
Rule IDs
  • SV-234206r879605_rule
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: C-37391r835194_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. Verify Password scope is enabled for Admin and Character requirements is toggled to right. 5. Verify the Numbers value is set to 1 or greater. If the Numbers parameter is not set to 1 or greater, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system password-policy | grep -i number If the min-number parameter is not set to 1 or greater, this is a finding.

Fix: F-37356r835195_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. On the Password scope option, click Admin. 5. Toggle Character requirements to right. 6. Enter the Numbers value of 1 or greater. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system password-policy # set min-number 1 (or greater) # end

b
The FortiGate device must enforce password complexity by requiring that at least one special character be used.
IA-5 - Medium - CCI-001619 - V-234207 - SV-234207r879606_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-001619
Version
FGFW-ND-000240
Vuln IDs
  • V-234207
Rule IDs
  • SV-234207r879606_rule
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: C-37392r835197_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. Verify Password scope is enabled for Admin and Character requirements is toggled to right. 5. Verify the Special value is set to 1 or greater. If the Special parameter is not set to 1 or greater, this is a finding. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system password-policy | grep -i non-alphanumeric If the min-non-alphanumeric parameter is not set to 1 greater, this is a finding.

Fix: F-37357r835198_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Navigate to Password Policy. 4. On the Password scope option, click Admin. 5. Toggle Character requirements to right. 6. Enter the Special value of 1 or greater. or Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system password-policy # set min-non-alphanumeric 1 (or greater) # end

c
The FortiGate device must use LDAPS for the LDAP connection.
IA-5 - High - CCI-000197 - V-234208 - SV-234208r879609_rule
RMF Control
IA-5
Severity
High
CCI
CCI-000197
Version
FGFW-ND-000245
Vuln IDs
  • V-234208
Rule IDs
  • SV-234208r879609_rule
Passwords need to be protected at all times, and encryption is the standard method for protecting passwords. If passwords are not encrypted, they can be plainly read (i.e., clear text) and easily compromised. Network devices can accomplish this by making direct function calls to encryption modules or by leveraging operating system encryption capabilities.
Checks: C-37393r611811_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration user ldap | grep -i ldaps The output should be: set secure ldaps If set secure is not set to ldaps, this is a finding.

Fix: F-37358r611812_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config user ldap # edit {ldap_server_name} # set server {server_ip} # set cnid {cn} # set dn {dc=XYZ,dc=fortinet,dc=COM} # set type regular # set username {cn=Administrator,dc=XYA, dc=COM} # set password {bind password} # set secure ldaps # set ca-cert {CA certificate name} # next # end

b
The FortiGate device must not have any default manufacturer passwords when deployed.
IA-5 - Medium - CCI-002041 - V-234209 - SV-234209r879554_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-002041
Version
FGFW-ND-000250
Vuln IDs
  • V-234209
Rule IDs
  • SV-234209r879554_rule
Network devices not protected with strong password schemes provide the opportunity for anyone to crack the password and gain access to the device, which can result in loss of availability, confidentiality, or integrity of network traffic. Many default vendor passwords are well known or are easily guessed; therefore, not removing them prior to deploying the network device into production provides an opportunity for a malicious user to gain unauthorized access to the device.
Checks: C-37394r611814_chk

Attempt to log in to the FortiGate GUI using the username admin with the default (blank) password. Attempt to log in to the CLI over SSH with the username admin with the default (blank) password. If either of these logins are successful, this is a finding.

Fix: F-37359r611815_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following commands: # config system admin # edit admin # set password {password} # end

c
The FortiGate device must use FIPS 140-2 approved algorithms for authentication to a cryptographic module.
IA-7 - High - CCI-000803 - V-234210 - SV-234210r879616_rule
RMF Control
IA-7
Severity
High
CCI
CCI-000803
Version
FGFW-ND-000255
Vuln IDs
  • V-234210
Rule IDs
  • SV-234210r879616_rule
Unapproved mechanisms that are used for authentication to the cryptographic module are not validated and therefore cannot be relied upon to provide confidentiality or integrity, and DoD data may be compromised. Network devices utilizing encryption are required to use FIPS-compliant mechanisms for authenticating to cryptographic modules. FIPS 140-2 is the current standard for validating that mechanisms used to access cryptographic modules utilize authentication that meets DoD requirements. However, authentication algorithms must configure security processes to use only FIPS-approved and NIST-recommended authentication algorithms.
Checks: C-37395r611817_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # get system status | grep -i fips The output should be: FIPS-CC mode: enable If FIPS-CC mode parameter is not set to enable, this is a finding.

Fix: F-37360r611818_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system fips-cc # set status enable # end

c
The FortiGate devices must use FIPS-validated Keyed-Hash Message Authentication Code (HMAC) to protect the integrity of nonlocal maintenance and diagnostic communications.
MA-4 - High - CCI-002890 - V-234211 - SV-234211r879784_rule
RMF Control
MA-4
Severity
High
CCI
CCI-002890
Version
FGFW-ND-000260
Vuln IDs
  • V-234211
Rule IDs
  • SV-234211r879784_rule
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: C-37396r611820_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Network, Interfaces. 2. Click the interface designated for device management traffic. 3. On Administrative Access, verify HTTPS and SSH are selected, and HTTP is not. If HTTPS and SSH are not selected for administrative access, or HTTP is selected, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system interface port{Management Port Integer #} | grep -i allowaccess The output should include: set allowaccess ping https ssh If the allowaccess parameter does not include https and ssh, this is a finding. If the allowaccess parameter includes http, this is a finding.

Fix: F-37361r611821_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Network, Interfaces 2. Click the interface designated for device management traffic and pick Edit. 3. On Administrative Access, select HTTPS and SSH. Deselect HTTP. 4. Click OK. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system interface # edit port{Management Port Integer #} # set allowaccess ping https ssh # end Note: When adding or removing a protocol, the entire list of protocols must be typed again. For example, in an existing access list of HTTPS and SSH, if HTTP needs to be added, use the following CLI command: # set allowaccess https ssh ping http

c
The FortiGate device must implement cryptographic mechanisms using a FIPS 140-2 approved algorithm to protect the confidentiality of remote maintenance sessions.
MA-4 - High - CCI-003123 - V-234212 - SV-234212r879785_rule
RMF Control
MA-4
Severity
High
CCI
CCI-003123
Version
FGFW-ND-000265
Vuln IDs
  • V-234212
Rule IDs
  • SV-234212r879785_rule
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: C-37397r611823_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Network, Interfaces. 2. Click the interface designated for device management traffic. 3. On Administrative Access, verify HTTPS and SSH are selected. If HTTPS and SSH are not selected for administrative access, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command for all low privileged admin user: # show full-configuration system interface port{Management Port Integer #} | grep -i allowaccess The output should include: set allowaccess ping https ssh If https and ssh are not returned, this is a finding. If http is returned, this is a finding.

Fix: F-37362r850536_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Network, Interfaces. 2. Click the interface designated for device management traffic and pick Edit. 3. On Administrative Access, select HTTPS and SSH. Deselect HTTP. 4. Click OK. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command for all low privileged admin users: # config system interface # edit port{Management Port Integer #} # set allowaccess ping https ssh # end Note: When a protocol is added or removed, the entire list of protocols must be typed in again. For example, to add PING to an access list of HTTPS and SSH, use the following CLI command: # set allowaccess https ssh ping

b
The FortiGate device must terminate idle sessions after 10 minutes of inactivity.
MA-4 - Medium - CCI-000879 - V-234213 - SV-234213r879621_rule
RMF Control
MA-4
Severity
Medium
CCI
CCI-000879
Version
FGFW-ND-000270
Vuln IDs
  • V-234213
Rule IDs
  • SV-234213r879621_rule
If a device management session or connection remains open after management is completed, it may be hijacked by an attacker and used to compromise or damage the network device. Nonlocal device management 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. In the event the remote node has abnormally terminated or an upstream link from the managed device is down, the management session will be terminated, thereby freeing device resources and eliminating any possibility of an unauthorized user being orphaned to an open idle session of the managed device.
Checks: C-37398r611826_chk

Verify the FortiGate device terminates all network connections when non-local device maintenance is complete. Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Go to Administrative Settings. 4. Verify Idle Timeout is configured to 10 minutes. If the idle-timeout value is not 10 minutes, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration sys global | grep -i admintimeout The output should be: set admintimeout 10 If the admintimeout parameter is not set to 10 minutes, this is a finding.

Fix: F-37363r611827_fix

To configure the device to terminate all network connections when non-local maintenance is complete: Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Go to Administrative Settings. 4. Enter the Idle Timeout value of 10. 5. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set admintimeout 10 # end

c
The FortiGate device must terminate idle sessions after 10 minutes of inactivity.
SC-10 - High - CCI-001133 - V-234214 - SV-234214r916342_rule
RMF Control
SC-10
Severity
High
CCI
CCI-001133
Version
FGFW-ND-000275
Vuln IDs
  • V-234214
Rule IDs
  • SV-234214r916342_rule
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: C-37399r611829_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Go to Administrative Settings. 4. Verify Idle Timeout is configured to 10 minutes. If the idle-timeout value is not 10 minutes, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration sys global | grep -i admintimeout The output should be: set admintimeout 10 If the admintimeout parameter is not set to 10 minutes, this is a finding.

Fix: F-37364r611830_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Settings. 3. Go to Administrative Settings. 4. Enter the Idle Timeout value of 10. 5. Click Apply. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system global # set admintimeout 10 # end

b
The FortiGate device must generate unique session identifiers using a FIPS 140-2-approved random number generator.
SC-23 - Medium - CCI-001188 - V-234215 - SV-234215r879639_rule
RMF Control
SC-23
Severity
Medium
CCI
CCI-001188
Version
FGFW-ND-000280
Vuln IDs
  • V-234215
Rule IDs
  • SV-234215r879639_rule
Sequentially generated session IDs can be easily guessed by an attacker. Employing the concept of randomness in the generation of unique session identifiers helps to protect against brute-force attacks to determine future session identifiers. Unique session IDs address man-in-the-middle attacks, including session hijacking or insertion of false information into a session. If the attacker is unable to identify or guess the session information related to pending application traffic, they will have more difficulty in hijacking the session or otherwise manipulating valid sessions. This requirement is applicable to devices that use a web interface for device management.
Checks: C-37400r628883_chk

Session IDs are generated using the FIPS random generator if the device is in FIPS mode. To verify login to the FortiGate GUI with Super-Admin privilege: 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # get system status | grep -i fips The output should be: FIPS-CC mode: enable If FIPS-CC mode parameter is not set to enable, this is a finding.

Fix: F-37365r611833_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system fips-cc # set status enable # end

c
The FortiGate device must only allow authorized administrators to view or change the device configuration, system files, and other files stored either in the device or on removable media (such as a flash drive).
SC-28 - High - CCI-001199 - V-234216 - SV-234216r879642_rule
RMF Control
SC-28
Severity
High
CCI
CCI-001199
Version
FGFW-ND-000285
Vuln IDs
  • V-234216
Rule IDs
  • SV-234216r879642_rule
This requirement is intended to address the confidentiality and integrity of system information at rest (e.g., network device rule sets) when it is located on a storage device within the network device or as a component of the network device. This protection is required to prevent unauthorized alteration, corruption, or disclosure of information when not stored directly on the network device. Files on the network device or on removable media used by the device must have their permissions set to allow read or write access to those accounts that are specifically authorized to access or change them. Note that different administrative accounts or roles will have varying levels of access. File permissions must be set so that only authorized administrators can read or change their contents. Whenever files are written to removable media and the media removed from the device, the media must be handled appropriately for the classification and sensitivity of the data stored on the device.
Checks: C-37401r611835_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click System. 2. Click Administrators. 3. Click each administrator and hover over the profile that is assigned to the role. 4. Click Edit. 5. Verify that the permission on System is set to READ or Read/Write. If any unauthorized administrator has Read/Write access to System, this is a finding. or 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command for all low privileged admin users: # show system admin {ADMIN NAME} | grep -i accprofile The output should be: set accprofile {PROFILE NAME} Use the profile name from the output result of above command. # show system accprofile {PROFILE NAME} | grep -i sysgrp The output should be: set sysgrp none If any low privileged admin user has sysgrp parameter set to values other than NONE, this is a finding.

Fix: F-37366r611836_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. First edit the admin profile by running the following command: # config system accprofile # edit {PROFILE NAME} # set sysgrp read-write # next # end Then, assign appropriate admin profiles to the administrator account. # config system admin # edit {ADMIN NAME} # set accprofile {PROFILE NAME} # next # end This profile should only be assigned to administrators authorized to change system configurations.

b
The FortiGate device must protect against known types of denial-of-service (DoS) attacks by employing organization-defined security safeguards.
SC-5 - Medium - CCI-002385 - V-234217 - SV-234217r879806_rule
RMF Control
SC-5
Severity
Medium
CCI
CCI-002385
Version
FGFW-ND-000290
Vuln IDs
  • V-234217
Rule IDs
  • SV-234217r879806_rule
DoS prohibit a resource from being 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: C-37402r611838_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Policy and Objects. 2. Click on IPv4 DoS Policy or IPv6 DoS Policy. 3. Identify the port designated for FortiGate device management. 4. Select the policy and click Edit. 5. Verify appropriate L3 Anomalies and L4 Anomalies are configured to meet the organization requirement. 6. Verify the policy is Enabled. If appropriate DoS policies are not defined or are disabled, this is a finding.

Fix: F-37367r611839_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Click Policy and Objects. 2. Click IPv4 DoS Policy or IPv6 DoS Policy. 3. Identify the port designated for FortiGate device management. 4. Click +Create New. 5. Define the Incoming Interface, Source Address, Destination Address, and Services. 6. Configure L3 Anomalies, and L4 Anomalies to meet the organization requirement. 7. Click OK.

c
The FortiGate device must be configured to send log data to a central log server for the purpose of forwarding alerts to the administrators and the ISSO.
SI-2 - High - CCI-002605 - V-234218 - SV-234218r917639_rule
RMF Control
SI-2
Severity
High
CCI
CCI-002605
Version
FGFW-ND-000295
Vuln IDs
  • V-234218
Rule IDs
  • SV-234218r917639_rule
The aggregation of log data kept on a syslog server can be used to detect attacks and trigger an alert to the appropriate security personnel. The stored log data can be used to detect weaknesses in security that enable the network IA team to find and address these weaknesses before breaches can occur. Reviewing these logs, whether before or after a security breach, is important in showing whether someone is an internal employee or an outside threat.
Checks: C-37403r917638_chk

Verify that FortiGate is configured to send logs to a central log server. Log in via the FortiGate GUI with super-admin privileges. 1. Navigate to Log and Report. 2. Navigate to Log Settings. 3. Locate the Remote Logging and Archiving section. 4. Verify FortiGate is configured to log to a FortiAnalyzer or a syslog server. or Open a CLI console via SSH or from the "CLI Console" button in the GUI. Run the following commands and verify that at least one of the settings reflects "set status enable" in the output: # show full-configuration | grep -A1 'log fortianalyzer' # show full-configuration | grep -A1 'log syslogd.* setting' The CLI output will indicate "set status enable" if configured. If the FortiGate is not logging to a central log server, this is a finding.

Fix: F-37368r917639_fix

Log in via the GUI with super-admin privileges. 1. Click Log and Report. 2. Click Log Settings. 3. Locate the Remote Logging and Archiving section. 4. Configure FortiGate to log to a FortiAnalyzer or syslog server. - Enable logging to FortiAnalyzer and provide the IP address. Additional FortiAnalyzer logging destinations can be configured in the CLI. - Enable the "Send logs to syslog" toggle and provide the IP address. Additional syslog logging destinations can be configured in the CLI. 5. Apply changes. or 1. Open a CLI console via SSH or from the "CLI Console" button in the GUI. 2. Configure a FortiAnalyzer or syslog server with the following commands: FortiAnalyzer Logging: config log fortianalyzer setting set status enable set server {IP Address} set upload-option realtime end syslog Logging: config log syslogd setting set status enable set server {IP Address} set mode reliable end

b
The FortiGate device must limit the number of logon and user sessions.
AC-10 - Medium - CCI-000054 - V-234219 - SV-234219r917462_rule
RMF Control
AC-10
Severity
Medium
CCI
CCI-000054
Version
FGFW-ND-000300
Vuln IDs
  • V-234219
Rule IDs
  • SV-234219r917462_rule
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: C-37404r917460_chk

Log in to the FortiGate GUI with Super-Admin privilege and open a CLI console available from the GUI. or Connect via SSH. Run the following command: show full-configuration sys global | grep -i admin Check the output of the following lines: set admin-concurrent disable set admin-login-max <number as defined by the organization> If set admin-concurrent is not set to disable, this is a finding. If set admin-login-max is not set to a number defined by the organization, this is a finding. The default setting is 100.

Fix: F-37369r917461_fix

Log in to the FortiGate GUI with Super-Admin privilege and open a CLI console available from the GUI. or Connect via SSH. Execute the following commands: config system global set admin-concurrent disable set admin-login-max <number defined by the organization> end With the implementation of this requirement, the organization can limit each administrator to one active session and limit the total number of concurrent administrator sessions to a value deemed appropriate.

b
The FortiGate device must only install patches or updates that are validated by the vendor via digital signature or hash.
CM-5 - Medium - CCI-001749 - V-234220 - SV-234220r879584_rule
RMF Control
CM-5
Severity
Medium
CCI
CCI-001749
Version
FGFW-ND-000305
Vuln IDs
  • V-234220
Rule IDs
  • SV-234220r879584_rule
Changes to any software components can have significant effects on the overall security of the network device. Verifying software components have been digitally signed or hashed ensures that the software has not been tampered with and has been provided by a trusted vendor. Accordingly, patches, service packs, or application components must be signed with a certificate or verified with an integrity hash provided by the vendor. Verifying the authenticity of the software prior to installation validates the integrity of the patch or upgrade received from a vendor. This ensures the software has not been tampered with and has been provided by a trusted vendor.
Checks: C-37405r611847_chk

Verify the process used to apply updates and patches to the system. If the system is updated via a FortiGuard or FortiManager server, those solutions meet the requirement and this is NOT a finding. If the system is not using a FortiGuard or FortiManager server, and a process is not defined to manually verify the update hash value with the vendor site, this is a finding.

Fix: F-37370r611848_fix

Administrators can download software directly from a FortiGuard or FortiManager server. These servers are authenticated using digital certificates that ensure identity and non-repudiation of the source packages. This is a preferred method of applying updates. The Administrator can also download the software from Fortinet's support website portal. The website includes a file checksum to verify file integrity prior to uploading. Develop a process to download the update files from the Fortinet website, and manually compare the download hash to the hash value provided on the vendor site before applying the update files to the system.

b
The FortiGate device must require that when a password is changed, the characters are changed in at least eight of the positions within the password.
IA-5 - Medium - CCI-000195 - V-234221 - SV-234221r879607_rule
RMF Control
IA-5
Severity
Medium
CCI
CCI-000195
Version
FGFW-ND-000311
Vuln IDs
  • V-234221
Rule IDs
  • SV-234221r879607_rule
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: C-37406r628891_chk

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # show full-configuration system password-policy | grep -i change The output should be: # set change-4-characters enable If the change-4-characters parameter is set to disable, this is a finding. If the change-4-characters parameter is set to enable, this mitigates to a CAT III finding, as this is a mitigation to at least changing four characters when changing the account of last resort. This is a limitation of the device. It is not possible to mitigate to "Not A Finding".

Fix: F-37371r611851_fix

Log in to the FortiGate GUI with Super-Admin privilege. 1. Open a CLI console, via SSH or available from the GUI. 2. Run the following command: # config system password-policy # set change-4-characters enable # end Note that this setting only mitigates the requirement to a CAT III finding, as this is a mitigation to change at least four characters when changing the account of last resort. This is a limitation of the device. It is not possible to mitigate to "Not A Finding".