FIPS 140-2 Security Policy FortiGate-3600C and 3950B FortiGate 3600C USB MGMT HA CONSOLE 10G-SFP+ 1 3 5 7 9 11 13 15 17 19 21 23 25 27 STATUS ALARM HA USB MGMT FAN POWER 2 4 6 8 10 12 14 16 18 20 22 24 26 28 FMC FMC FMC3 FMC1 FMC FMC FMC4 FMC2 FMC 1 3 5 (SFP+) MGMT 1 CONSOLE FortiGate 3950B FMC5 SWITCH STATUS 9 1 5 13 17 21 USB MGMT I/O ALARM 2 6 18 22 10 14 11 15 3 7 19 23 HA 20 4 12 16 24 8 POWER USB MGMT 2 2 4 6 (SFP+) FortiGate-3600C and 3950B FIPS 140-2 Security Policy Document Version: 1.1 Publication Date: April 29, 2015 Description: Documents FIPS 140-2 Level 2 Security Policy issues, compliancy and requirements for FIPS compliant operation. Firmware Version: FortiOS 5.0, build0305, 141216 Hardware Version: FortiGate-3600C (C4MH12) Blank Face Plate for FG-3950B (P06698-02) FortiGate-3950B (C4DE23) FortiGate-3600C and 3950B FIPS 140-2 Security Policy 01-506-228731-20140106 for FortiOS 5.0 © Copyright 2015 Fortinet, Inc. This document may be freely reproduced and distributed whole and intact including this copyright notice. Trademarks Dynamic Threat Prevention System (DTPS), APSecure, FortiASIC, FortiBIOS, FortiBridge, FortiClient, FortiGate®, FortiGate Unified Threat Management System, FortiGuard®, FortiGuard-Antispam, FortiGuard-Antivirus, FortiGuard-Intrusion, FortiGuard-Web, FortiLog, FortiAnalyzer, FortiManager, Fortinet®, FortiOS, FortiPartner, FortiProtect, FortiReporter, FortiResponse, FortiShield, FortiVoIP, and FortiWiFi are trademarks of Fortinet, Inc. in the United States and/or other countries. The names of actual companies and products mentioned herein may be the trademarks of their respective owners. Contents Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Security Level Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 Module Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 Cryptographic Module Ports and Interfaces . . . . . . . . . . . . . . . . . . . . . 5 FortiGate-3600C Chassis Module . . . . . . . . . . . . . . . . . . . . . . . . 5 FortiGate-3950B Chassis Module . . . . . . . . . . . . . . . . . . . . . . . . 7 Web-Based Manager. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Command Line Interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 Roles, Services and Authentication . . . . . . . . . . . . . . . . . . . . . . . . . 9 Roles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 FIPS Approved Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Physical Security . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Operational Environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Cryptographic Key Management . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Random Number Generation . . . . . . . . . . . . . . . . . . . . . . . . . 16 Entropy Token . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Key Zeroization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Cryptographic Keys and Critical Security Parameters . . . . . . . . . . . . . 17 Alternating Bypass Feature . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Key Archiving . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 Electromagnetic Interference/Electromagnetic Compatibility (EMI/EMC) . . . . . 20 Mitigation of Other Attacks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 FIPS 140-2 Compliant Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 Enabling FIPS-CC mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Self-Tests . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 Non-FIPS Approved Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 1 http://docs.fortinet.com/ • Feedback Overview This document is a FIPS 140-2 Security Policy for Fortinet Incorporated’s FortiGate- 3600C and 3950B Multi-Threat Security Systems. This policy describes how the FortiGate-3600C and 3950B (hereafter referred to as the ‘modules’) meet the FIPS 140-2 security requirements and how to operate the modules in a FIPS compliant manner. This policy was created as part of the Level 2 FIPS 140-2 validation of the modules. This document contains the following sections: • Introduction • Security Level Summary • Module Description • Mitigation of Other Attacks • FIPS 140-2 Compliant Operation • Self-Tests • Non-FIPS Approved Services The Federal Information Processing Standards Publication 140-2 - Security Requirements for Cryptographic Modules (FIPS 140-2) details the United States Federal Government requirements for cryptographic modules. Detailed information about the FIPS 140-2 standard and validation program is available on the NIST (National Institute of Standards and Technology) website at http://csrc.nist.gov/groups/STM/cmvp/index.html. References This policy deals specifically with operation and implementation of the module in the technical terms of the FIPS 140-2 standard and the associated validation program. Other Fortinet product manuals, guides and technical notes can be found at the Fortinet technical documentation website at http://docs.forticare.com. Additional information on the entire Fortinet product line can be obtained from the following sources: • Find general product information in the product section of the Fortinet corporate website at http://www.fortinet.com/products. • Find on-line product support for registered products in the technical support section of the Fortinet corporate website at http://www.fortinet.com/support • Find contact information for technical or sales related questions in the contacts section of the Fortinet corporate website at http://www.fortinet.com/contact. • Find security information and bulletins in the FortiGuard Center of the Fortinet corporate website at http://www.fortinet.com/FortiGuardCenter. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 2 http://docs.fortinet.com/ • Feedback Introduction Introduction The FortiGate product family spans the full range of network environments, from SOHO to service provider, offering cost effective systems for any size of application. FortiGate appliances detect and eliminate the most damaging, content-based threats from email and Web traffic such as viruses, worms, intrusions, inappropriate Web content and more in real time — without degrading network performance. In addition to providing application level firewall protection, FortiGate appliances deliver a full range of network-level services — VPN, intrusion prevention, web filtering, antivirus, antispam and traffic shaping — in dedicated, easily managed platforms. All FortiGate appliances employ Fortinet’s unique FortiASIC™ content processing chip and the powerful, secure, FortiOS™ firmware achieve breakthrough price/performance. The unique, ASIC-based architecture analyzes content and behavior in real time, enabling key applications to be deployed right at the network edge where they are most effective at protecting enterprise networks. They can be easily configured to provide antivirus protection, antispam protection and content filtering in conjunction with existing firewall, VPN, and related devices, or as complete network protection systems. The modules support High Availability (HA) in both Active-Active (AA) and Active-Passive (AP) configurations. FortiGate appliances support the IPSec industry standard for VPN, allowing VPNs to be configured between a FortiGate appliance and any client or gateway/firewall that supports IPSec VPN. FortiGate appliances also provide SSL VPN services using TLS 1.0 in the FIPS-CC mode of operation. Security Level Summary The module meets the overall requirements for a FIPS 140-2 Level 2 validation. . Table 1: Summary of FIPS security requirements and compliance levels Security Requirement Compliance Level Cryptographic Module Specification 2 Cryptographic Module Ports and Interfaces 3 Roles, Services and Authentication 3 Finite State Model 2 Physical Security 2 Operational Environment N/A Cryptographic Key Management 2 EMI/EMC 2 Self-Tests 2 Design Assurance 3 Mitigation of Other Attacks 2 FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 3 http://docs.fortinet.com/ • Feedback Module Description Module Description The FortiGate-3600C and 3950B are multiple chip, standalone cryptographic modules consisting of production grade components contained in a physically protected enclosure in accordance with FIPS 140-2 Level 2 requirements. The modules have a similar appearance and perform the same functions, but have different numbers and types of network interfaces in order to support different network configurations: • The FortiGate-3600C has 30 network interfaces with a status LED for each network interface (12x 10GB SFP+, 16x 1GB SFP, 2x 10/100/1000 Base-T • The FortiGate-3950B has 8 network interfaces with a status LED for each network interface (2x 10GB SFP+, 4x 1GB SFP, 2x 10/100/1000 Base-T) The FortiGate-3600C has one, 8 core, x86 compatible CPU. The FortiGate-3950B has one, 4 core, x86 compatible CPU. The modules is are 3u rackmount devices. The modules have external ventilation fans on the back panel of the chassis. The FortiGate-3950B module supports up to 5 Fortinet Mezzanine Card (FMC) components. The FMC components provide additional input/output interfaces. The FMC components are not included in the scope of this FIPS 140-2 validation. The validated firmware version is FortiOS 5.0, build0305,141216. Figure 1 and Figure 2 are representative of the modules tested. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 4 http://docs.fortinet.com/ • Feedback Module Description Cryptographic Module Ports and Interfaces FortiGate-3600C Chassis Module Figure 1: FortiGate-3600C Front and Rear Panels Managment HA Console USB port port port ports FortiGate 3600C USB MGMT HA CONSOLE 10G-SFP+ 1 3 5 7 9 11 13 15 17 19 21 23 25 27 STATUS ALARM HA USB MGMT FAN POWER 2 4 6 8 10 12 14 16 18 20 22 24 26 28 LEDs USB Managment SFP+ SFP port ports ports Ground Power Supplies Table 2: FortiGate-3600C Status LEDs LED State Description Power Green The module is powered on. Off The module is powered off. Status Flashing Green The module is starting up. Green The module is running normally. Off The module is powered off. HA Green HA is enabled and in normal mode. Red HA is enabled but in failover mode. Off The unit is in stand-alone mode. Alarm Red A critical error has occurred. Amber A minor error has occurred. Off The module is running normally. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 5 http://docs.fortinet.com/ • Feedback Module Description SFP and SFP+ Link Green Port is online. Ports Off Port is offline. Activity Flashing Green Port is receiving or sending data. Off Port may be on, but is not receiving or sending data. Management Link Green Port is online. and HA Ports Flashing Green Port is receiving or sending data. Activity Green Connected at 1000 Mbps. Amber Connected at 100 Mbps. Off Connected at 10Mbps. AC Power Green AC power is connected and has power. Amber AC power is not connected. Fan Green The fan is running and within the speed range. Off The fan is not running or is over the speed range. Table 3: FortiGate-3600C Front Panel Connectors and Ports Connector Type Speed Supported Logical Description Interfaces Ports 1 to 12 SFP 1 Gbps Data input, data Multimode fiber optic output, control input connections to gigabit and status output optical networks. Ports 13 to 28 SFP+ 10Gbps Data input, data Multimode fiber optic output, control input connections to gigabit and status output optical networks. Management and RJ-45 10/100/1000 Data input, data Copper gigabit HA Ports Base-T output, control input connection to and status output 10/100/1000 copper networks. CONSOLE RJ-45 9600 bps Control input, status Optional connection to output the management computer. Provides access to the command line interface (CLI). USB USB A N/A Key loading and Optional USB token and archiving, entropy entropy token. input USB MGMT USB N/A Control input, status Optional connection for Mini-B output management or configuration using FortiExplorer. Table 4: FortiGate-3600C Rear Panel Connectors and Ports Connector Type Speed Supported Logical Description Interfaces POWER N/A N/A Power 120/240VAC power connection. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 6 http://docs.fortinet.com/ • Feedback Module Description FortiGate-3950B Chassis Module Figure 2: FortiGate-3950B Front and Rear Panels Front FMC FMC FMC3 FMC1 FMC FMC FMC4 FMC2 FMC 1 3 5 (SFP+) MGMT 1 CONSOLE FortiGate 3950B-LENC FMC5 SWITCH STATUS 9 1 5 13 17 21 USB MGMT I/O ALARM 2 6 18 22 10 14 11 15 3 7 19 23 HA 20 4 12 16 24 8 POWER USB MGMT 2 2 4 6 (SFP+) LEDs USB USB SFP+ Managment FMC faceplates Managment ports SFP port ports ports Console port PSU 2 PSU 1 FAN R2 FAN R3 FAN R1 Power Power Ground Fan LED Supply 1 Supply 2 Back Table 5: FortiGate-3950B Status LEDs LED State Description Power Green The module is powered on. Off The module is powered off. Status Flashing Green The module is starting up. Green The module is running normally. Off The module is powered off. HA Green HA is enabled and in normal mode. Red HA is enabled but in failover mode. Off The unit is in stand-alone mode. Alarm N/A Future use. Ports 1 to 6 Link Green Port is online. Off Port is offline. Activity Flashing Green Port is receiving or sending data. Off Port may be on, but is not receiving or sending data. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 7 http://docs.fortinet.com/ • Feedback Module Description Management Link Green Port is online. Ports 1 and 2 Flashing Green Port is receiving or sending data. Activity Green Connected at 1000 Mbps. Amber Connected at 100 Mbps. Off Connected at 10Mbps. AC Power Green AC power is connected and has power. Amber AC power is not connected. Fan Green The fan is running and within the speed range. Off The fan is not running or is over the speed range. Switch LEDS Green The FMC module is inserted properly and the interfaces are online. Off The FMC module is unavailable, offline, or there is an interface problem. Table 6: FortiGate-3950B Front Panel Connectors and Ports Connector Type Speed Supported Logical Description Interfaces Ports 1 to 4 SFP 1 Gbps Data input, data Multimode fiber optic output, control input connections to gigabit and status output optical networks. Ports 5 and 6 SFP+ 10Gbps Data input, data Multimode fiber optic output, control input connections to gigabit and status output optical networks. Management 1 RJ-45 10/100/1000 Data input, data Copper gigabit and 2 Base-T output, control input connection to and status output 10/100/1000 copper networks. CONSOLE RJ-45 9600 bps Control input, status Optional connection to output the management computer. Provides access to the command line interface (CLI). USB USB A N/A Key loading and Optional USB token and archiving, entropy entropy token. input USB MGMT USB B N/A N/A Future use. Table 7: FortiGate-3950B Rear Panel Connectors and Ports Connector Type Speed Supported Logical Description Interfaces POWER N/A N/A Power 120/240VAC power connection. Web-Based Manager The FortiGate web-based manager provides GUI based access to the module and is the primary tool for configuring the module. The manager requires a web browser on the management computer and an Ethernet connection between the FortiGate unit and the management computer. A web-browser that supports Transport Layer Security (TLS) 1.0 is required for remote access to the web-based manager when the module is operating in FIPS-CC mode. HTTP access to the web-based manager is not allowed in FIPS-CC mode and is disabled. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 8 http://docs.fortinet.com/ • Feedback Module Description Figure 3: The FortiGate web-based manager Command Line Interface The FortiGate Command Line Interface (CLI) is a full-featured, text based management tool for the module. The CLI provides access to all of the possible services and configuration options in the module. The CLI uses a console connection or a network (Ethernet) connection between the FortiGate unit and the management computer. The console connection is a direct serial connection. Terminal emulation software is required on the management computer using either method. For network access, a Telnet or SSH client that supports the SSH v2.0 protocol is required (SSH v1.0 is not supported in FIPS- CC mode). Telnet access to the CLI is not allowed in FIPS-CC mode and is disabled. Roles, Services and Authentication Roles When configured in FIPS-CC mode, the module provides the following roles: • Crypto Officer • Network User The Crypto Officer role is initially assigned to the default ‘admin’ operator account. The Crypto Officer role has read-write access to all of the module’s administrative services. The initial Crypto Officer can create additional operator accounts. These additional accounts are assigned the Crypto Officer role and can be assigned a range of read/write or read only access permissions including the ability to create operator accounts. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 9 http://docs.fortinet.com/ • Feedback Module Description The module provides a Network User role for end-users (Users). Network users can make use of the encrypt/decrypt services, but cannot access the module for administrative purposes. The module does not provide a Maintenance role. FIPS Approved Services The following tables detail the types of FIPS approved services available to each role in each mode of operation, the types of access for each role and the Keys or CSPs they affect. The role names are abbreviated as follows: Crypto Officer CO User U The access types are abbreviated as follows: Read Access R Write Access W Execute Access E Table 8: Services available to Crypto Officers Service Access Key/CSP authenticate to module* WE Operator Password, Diffie-Hellman Key, HTTP/TLS and SSH Server/Host Keys, HTTPS/TLS and SSH Session Authentication Keys, and HTTPS/TLS Session Encryption Keys, DRBG Output, DRBG Seed, DRBG Input String show system status WE N/A show FIPS-CC mode WE N/A enabled/disabled (console/CLI only) enable FIPS-CC mode of operation WE Configuration Integrity Key (console only) execute factory reset (zeroize keys, E See “Key Zeroization” on page 16 disable FIPS-CC mode, console/CLI only) execute FIPS-CC on-demand self- E Configuration Integrity Key, Firmware tests (console only) Integrity Key add/delete operators and network WE Operator Password, users Network User Password set/reset operator and network user WE Operator Password, passwords Network User Password backup/restore configuration file WE Configuration Encryption Key, Configuration Backup Key read/set/delete/modify module WE N/A configuration enable/disable alternating bypass WE N/A mode FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 10 http://docs.fortinet.com/ • Feedback Module Description Table 8: Services available to Crypto Officers Service Access Key/CSP read/set/delete/modify IPSec/SSL N/A IPSec: IPSec Manual Authentication VPN configuration* Key, IPSec Manual Encryption Key, IKE Pre-Shared Key, IKE RSA Key SSL: HTTPS/TLS Server/Host Key, HTTPS/TLS Session Authentication Key, HTTPS/TLS SSH Session Encryption Key read/set/modify HA configuration WE HA Password, HA Encryption Key execute firmware update E Firmware Update Key read log data WE N/A delete log data (console/CLI only) N/A N/A execute system diagnostics WE N/A (console/CLI only) Table 9: Services available to Network Users in FIPS-CC mode Service/CSP Access Key/CSP authenticate to module* E Network User Password, Diffie-Hellman Key, HTTPS/TLS Server/Host Key, HTTPS/TLS Session Authentication Key, HTTPS/TLS Session Encryption Key, DRBG Output, DRBG Seed, DRBG Input String IPSec VPN controlled by firewall E Diffie-Hellman Key, IKE and IPSec Keys, policies* DRBG Output, DRBG Seed, DRBG Input String SSL VPN controlled by firewall E Network User Password, Diffie-Hellman policies* Key, HTTPS/TLS Server/Host Key, HTTPS/TLS Session Authentication Key, HTTPS/TLS Session Encryption Key, DRBG Output, DRBG Seed, DRBG Input String Note: Services marked with an asterisk (*) may use non-compliant encryption strengths for Diffie-Hellman and RSA. Refer to Table 11 for descriptions of the minimum required encryption strengths for compliance. Authentication The module implements identity based authentication. Operators must authenticate with a user-id and password combination to access the modules remotely or locally via the console. Remote operator authentication is done over HTTPS (TLS) or SSH. The password entry feedback mechanism does not provide information that could be used to guess or determine the authentication data. By default, Network User access to the modules is based on firewall policy and authentication by IP address or fully qualified domain names. Network Users can optionally be forced to authenticate to the modules using a username/password combination to enable use of the IPSec VPN encrypt/decrypt or bypass services. For Network Users invoking the SSL-VPN encrypt/decrypt services, the modules support authentication with a user-id/password combination. Network User authentication is done over HTTPS and does not allow access to the modules for administrative purposes. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 11 http://docs.fortinet.com/ • Feedback Module Description Note that operator authentication over HTTPS/SSH and Network User authentication over HTTPS are subject to a limit of 3 failed authentication attempts in 1 minute. Operator authentication using the console is not subject to a failed authentication limit, but the number of authentication attempts per minute is limited by the bandwidth available over the serial connection. The minimum password length is 8 characters when in FIPS-CC mode (maximum password length is 32 characters). The password may contain any combination of upper- and lower-case letters, numbers, and printable symbols; allowing for 94 possible characters. The odds of guessing a password are 1 in 94^8 which is significantly lower than one in a million. Recommended procedures to increase the password strength are explained in “FIPS 140-2 Compliant Operation” on page 21. For Network Users invoking the IPSec VPN encrypt/decrypt services, the module acts on behalf of the Network User and negotiates a VPN connection with a remote module. The strength of authentication for IPSec services is based on the authentication method defined in the specific firewall policy: IPSec manual authentication key, IKE pre-shared key or IKE RSA key (RSA certificate). The odds of guessing the authentication key for each IPSec method is: 1 in 1640 for the IPSec Manual Authentication key (based on a 40 digit, hexadecimal • key) 1 in 948 for the IKE Pre-shared Key (based on an 8 character, ASCII printable key) • 1 in 280 for the IKE RSA Key (based on a 1024bit RSA key size) • Therefore the minimum odds of guessing the authentication key for IPSec is 1 in 948, based on the IKE Pre-shared key. Physical Security The modules meet FIPS 140-2 Security Level 2 requirements by using production grade components and an opaque, sealed enclosure. Access to the enclosure is restricted through the use of tamper-evident seals to secure the overall enclosure. The seals are serialized red wax/plastic with black lettering that reads “Fortinet Security Seal”. The tamper seals are not applied at the factory prior to shipping. It is the responsibility of the Crypto Officer to apply the seals before use to ensure full FIPS 140-2 compliance. Once the seals have been applied, the Crypto Officer must develop an inspection schedule to verify that the external enclosure of the module and the tamper seals have not been damaged or tampered with in any way. Upon viewing any signs of tampering, the Crypto Officer must assume that the device has been fully compromised. The Crypto Officer is required to zeroize the cryptographic module by following the steps in the Key Zeroization section of the SP. The Crypto Officer is also responsible for securing and controlling any unused seals. The surfaces should be cleaned with 99% Isopropyl alcohol to remove dirt and oil before applying the seals. Ensure the surface is completely clean and dry before applying the seals. If a seal needs to be re-applied, completely remove the old seal and clean the surface with an adhesive remover before following the instructions for applying a new seal. The seals require a curing time of 24 hours to ensure proper adhesion. Additional seals can be ordered through your Fortinet sales contact. Reference the following SKU when ordering: FIPS-SEAL-RED. Specify the number of seals required based on the specific module as described below. The FortiGate-3600C uses 3 seals to secure: • the front cover plate (seals 1 and 2 of 3, see Figure 7 and Figure 5), FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 12 http://docs.fortinet.com/ • Feedback Module Description • the external enclosure (seal 3 of 3, see Figure 6). The FortiGate-3950B uses 10 seals to secure: • the FMC slots on the front panel (seals 1 to 5 of 10, see Figure 7), • the power supplies on the rear panel (seals 6 and 7 of 10, see Figure 7), • the fan access panels (seals 8 and 9 of 10, see Figure 8), • the external enclosure (seal 10 of 10, see Figure 9). Figure 4: FortiGate-3600C Front Cover Plate Seal, left side Figure 5: FortiGate-3600C Front Cover Plate Seal, right side FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 13 http://docs.fortinet.com/ • Feedback Module Description Figure 6: FortiGate-3600C External Enclosure Seal, top, right side Figure 7: FortiGate-3950B Front and Rear Panel Seals Front FMC FMC Fortinet Security Seal 01000 FMC3 FMC FMC1 MC1 Fortinet Security Seal 01000 FMC FMC Fortinet Security Seal 01000 FMC4 FMC FMC2 MC2 Fortinet Security Seal 01000 FMC Fortinet Security Seal 1 3 5 (SFP+) MGMT 1 01000 CONSOLE FortiGate 3950B-LENC FMC5 FMC SWITCH STATUS 9 1 5 13 17 21 USB MGMT I/O ALARM 2 6 18 22 10 14 11 15 3 7 19 23 HA 20 4 12 16 24 8 POWER USB MGMT 2 2 4 6 (SFP+) Seals 1 to 5 of 10 Fortinet Security Seal Fortinet Security Seal 01000 01000 PSU 2 PSU 1 FAN R2 FAN R3 FAN R1 Seals 6 and 7 of 10 FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 14 http://docs.fortinet.com/ • Feedback Module Description Figure 8: FortiGate-3950B Fan Access Panel Seals, top Figure 9: FortiGate-3950B External Enclosure Seal, top, left side Operational Environment The module consists of the combination of the FortiOS operating system and the FortiGate appliances. The FortiOS operating system can only be installed, and run, on a FortiGate appliance. The FortiOS operating system provides a proprietary and non- modifiable operating system. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 15 http://docs.fortinet.com/ • Feedback Module Description Cryptographic Key Management Random Number Generation The modules use a firmware based, deterministic random bit generator (DRBG) that conforms to NIST Special Publication 800-90A. The module generates cryptographic keys whose strengths are modified by available entropy. There is no assurance of the minimum strength of generated keys. Entropy Token The modules use an entropy token to seed the DRBG during the module’s boot process and to periodically reseed the DRBG. The entropy token is not included in the boundary of the module and therefore no assurance can be made for the correct operation of the entropy token nor is there a guarantee of stated entropy. The default reseed period is once every 24 hours (1440 minutes). The token must be installed to complete the boot process and to reseed of the DRBG. The entropy token is responsible for loading a minimum of 256 bits of entropy. Key Zeroization The zeroization process must performed under the direct control of the operator. The operator must be present to observe that the zeroization method has completed successfully. All keys except the following are zeroized by executing a factory reset: • Firmware Update Key • Firmware Integrity Key • Configuration Integrity Key • Configuration Backup Key • SSH Server/Host Key • HTTPS/TLS Server/Host Key All keys and CSPs are zeroized by formatting the modules’ flash memory storage. To format the flash memory, connect a computer to the modules’ console port and reboot the module. Access the configuration menu by pressing any key when prompted (see example below). Select “F” to format the flash memory (boot device). Press any key to display configuration menu... [G]: Get firmware image from TFTP server. [F]: Format boot device. [B]: Boot with backup firmware and set as default. [I]: Configuration and information. [Q]: Quit menu and continue to boot with default firmware. [H]: Display this list of options. Enter G,F,B,I,Q,or H: FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 16 http://docs.fortinet.com/ • Feedback Module Description Algorithms Table 10: FIPS Approved Algorithms Algorithm NIST Certificate Number DRBG (NIST SP 800-90A) with AES 256 bit keys 652 Triple-DES in CBC mode with 168-bits 1805, 1806, 1807, 1808 AES in CBC mode (128-, 192-, 256-bits) 3167, 3168, 3169, 3171 SHA-1 2620, 2621, 2622, 2624 SHA-256 2620, 2621, 2622, 2624 HMAC SHA-1 1995, 1996, 1997, 1999 HMAC SHA-256 1995, 1996, 1997, 1999 RSA PKCS1 1605, 1606, 1607 - Signature Generation: 2048 and 3072-bit - Signature Verification: 1024, 2048 and 3072-bit CVL (IKE v1) Triple-DES (168 bits - three key Triple 415 DES only), AES (128/256 bits) CVL (IKE v2) (224-, 8192- key size) 415 CVL (SSH) with TDES-, AES128-, AES256-CBC (using 416 SHA1) CVL (TLS) - TLS1.0/1.1 and TLS1.2 (using SHA 256) 416 Table 11: FIPS Allowed Algorithms Algorithm RSA (key wrapping; key establishment methodology provides 112 or 132 bits of encryption strength; non-compliant less than 112-bits of encryption strength) Diffie-Hellman (key agreement; key establishment methodology provides between 112 and 201 bits of encryption strength; non-compliant less than 112-bits of encryption strength) Table 12: Non-FIPS Approved Algorithms Algorithm DES (disabled in FIPS-CC mode) MD5 (disabled in FIPS-CC mode except for use in the TLS protocol) HMAC MD5 (disabled in FIPS-CC mode) NDRNG Note that the IKE, SSH and TLS protocols have not been tested by the CMVP or CAVP. Cryptographic Keys and Critical Security Parameters The following table lists all of the cryptographic keys and critical security parameters used by the module. The following definitions apply to the table: Key or CSP The key or CSP description. Storage Where and how the keys are stored FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 17 http://docs.fortinet.com/ • Feedback Module Description Usage How the keys are used Zeroization The key zeroization method Table 13: Cryptographic Keys and Critical Parameters used in FIPS-CC Mode Key or CSP Storage Usage Zeroization Diffie-Hellman Keys SDRAM Key agreement and key By formatting the flash establishment memory storage or by Plaintext executing a factory reset IPSec Manual Flash RAM Used as IPSec Session By formatting the flash Authentication Key Authentication Key memory storage or by AES encrypted executing a factory reset IPSec Manual Encryption Flash RAM Used as IPSec Session By formatting the flash Key Encryption Key memory storage or by AES encrypted executing a factory reset IPSec Session SDRAM IPSec peer-to-peer By formatting the flash Authentication Key authentication using HMAC memory storage or by Plain-text SHA-1 or HMAC SHA-256 executing a factory reset IPSec Session Encryption SDRAM VPN traffic By formatting the flash Key encryption/decryption using memory storage or by Plain-text Triple-DES or AES executing a factory reset IKE Pre-Shared Key Flash RAM Used to generate IKE By formatting the flash protocol keys memory storage or by AES encrypted executing a factory reset IKE Authentication Key SDRAM IKE peer-to-peer By formatting the flash authentication using HMAC memory storage or by Plain-text SHA-1 or HMAC SHA-256 executing a factory (SKEYID_A) reset IKE Key Generation Key SDRAM IPSec SA keying material By formatting the flash (SKEYID_D) memory storage or by Plain-text executing a factory reset IKE Session Encryption SDRAM Encryption of IKE peer-to- By formatting the flash Key peer key negotiation using memory storage or by Plain-text Triple-DES or AES executing a factory (SKEYID_E) reset IKE RSA Key Flash Ram Used to generate IKE By formatting the flash protocol keys memory storage or by Plain text executing a factory reset NDRBG input string Flash RAM Entropy input string for the By formatting the flash NDRBG (output from memory storage or by Plain-text TRNG) executing a factory reset DRBG seed Flash RAM Seed used by the DRBG By formatting the flash (output from NDRNG) memory storage or by Plain-text executing a factory reset DRBG output Flash RAM Random numbers used in By formatting the flash cryptographic algorithms memory storage or by Plain-text executing a factory reset FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 18 http://docs.fortinet.com/ • Feedback Module Description Table 13: Cryptographic Keys and Critical Parameters used in FIPS-CC Mode Key or CSP Storage Usage Zeroization DRBG v and key values Flash Ram Internal state values for the By formatting the flash DRBG memory storage or by Plain-text executing a factory reset Firmware Update Key Flash RAM Verification of firmware By formatting the flash integrity when updating to memory storage Plain-text new firmware versions using RSA public key (firmware load test) Firmware Integrity Key Flash RAM Verification of firmware By formatting the flash integrity in the firmware memory storage Plain-text integrity test using RSA public key (firmware integrity test) HTTPS/TLS Server/Host Flash RAM RSA private key used in the By formatting the flash Key HTTPS/TLS protocols (key memory storage Plain-text establishment) HTTPS/TLS Session SDRAM HMAC SHA-1 or HMAC By formatting the flash Authentication Key SHA-256 key used for memory storage or by Plain-text HTTPS/TLS session executing a factory authentication reset HTTPS/TLS Session SDRAM AES or Triple-DES key By formatting the flash Encryption Key used for HTTPS/TLS memory storage or by Plain-text session encryption executing a factory reset SSH Server/Host Key Flash RAM RSA private key used in the By formatting the flash SSH protocol (key memory storage Plain-text establishment) SSH Session SDRAM HMAC SHA-1 key used for By formatting the flash Authentication Key SSH session authentication memory storage or by Plain-text executing a factory reset SSH Session Encryption SDRAM AES or Triple-DES key By formatting the flash Key used for SSH session memory storage or by Plain-text encryption executing a factory reset Operator Password Flash RAM Used to authenticate By formatting the flash operator access to the memory storage or by SHA-1 hash module executing a factory reset Configuration Integrity Flash RAM HMAC SHA-256 hash used By formatting the flash Key for configuration/VPN memory storage Plain-text bypass test Configuration Encryption Flash RAM AES key used to encrypt By formatting the flash Key CSPs on the flash RAM memory storage Plain-text and in the backup configuration file (except for operator passwords in the backup configuration file) Configuration Backup Key Flash RAM HMAC SHA-256 key used By formatting the flash to encrypt operator memory storage or by Plain-text passwords in the backup executing a factory configuration file reset Network User Password Flash RAM Used during network user By formatting the flash authentication memory storage or by AES encrypted executing a factory reset FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 19 http://docs.fortinet.com/ • Feedback Module Description Table 13: Cryptographic Keys and Critical Parameters used in FIPS-CC Mode Key or CSP Storage Usage Zeroization HA Password Flash RAM Used to authenticate By formatting the flash FortiGate units in an HA memory storage or by AES encrypted cluster executing a factory reset HA Encryption Key Flash RAM Encryption of traffic By formatting the flash between units in an HA memory storage or by AES encrypted cluster using AES executing a factory reset Alternating Bypass Feature The primary cryptographic function of the module is as a firewall and VPN device. The module implements two forms of alternating bypass for VPN traffic: policy based (for IPSec and SSL VPN) and interface based (for IPSec VPN only). Policy Based VPN Firewall policies with an action of IPSec or SSL-VPN mean that the firewall is functioning as a VPN start/end point for the specified source/destination addresses and will encrypt/decrypt traffic according to the policy. Firewall policies with an action of allow mean that the firewall is accepting/sending plaintext data for the specified source/destination addresses. A firewall policy with an action of accept means that the module is operating in a bypass state for that policy. A firewall policy with an action of IPSec or SSL-VPN means that the module is operating in a non-bypass state for that policy. Interface Based VPN Interface based VPN is supported for IPSec only. A virtual interface is created and any traffic routed to the virtual interface is encrypted and sent to the VPN peer. Traffic received from the peer is decrypted. Traffic through the virtual interface is controlled using firewall policies. However, unlike policy based VPN, the action is restricted to Accept or Deny and all traffic controlled by the policy is encrypted/decrypted. When traffic is routed over the non-virtual interfaced, the module is operating in a bypass state. When traffic is routed over the virtual interface, the module is operating in a non- bypass state. In both cases, two independent actions must be taken by a CO to create bypass firewall policies: the CO must create the bypass policy and then specifically enable that policy. Key Archiving The module supports key archiving to a management computer or USB token as part of a module configuration file backup. Operator entered keys are archived as part of the module configuration file. The configuration file is stored in plain text, but keys in the configuration file are either AES encrypted using the Configuration Encryption Key or stored as a keyed hash using HMAC-SHA-1 using the Configuration Backup Key. Electromagnetic Interference/Electromagnetic Compatibility (EMI/EMC) The modules comply with EMI/EMC requirements for Class A (business use) devices as specified by Part 15, Subpart B, of the FCC rules. The following table lists the specific lab and FCC report information for the modules. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 20 http://docs.fortinet.com/ • Feedback Mitigation of Other Attacks Table 14: FCC Report Information Module Lab Information FCC Report Number FG-3600C Bay Area Compliance Laboratories Corp. R1211012 1274 Anvilwood Ave. Sunnyvale, CA 94089 408-732-9162 408-732-9164 FG-3950B Bay Area Compliance Laboratories Corp. R10031911A 1274 Anvilwood Ave. Sunnyvale, CA 94089 408-732-9162 408-732-9164 Mitigation of Other Attacks The module includes a real-time Intrusion Prevention System (IPS) as well as antivirus protection, antispam and content filtering. Use of these capabilities is optional. The FortiOS IPS has two components: a signature based component for detecting attacks passing through the FortiGate appliance and a local attack detection component that protects the firewall from direct attacks. Functionally, signatures are similar to virus definitions, with each signature designed to detect a particular type of attack. The IPS signatures are updated through the FortiGuard IPS service. The IPS engine can also be updated through the FortiGuard IPS service. FortiOS antivirus protection removes and optionally quarantines files infected by viruses from web (HTTP), file transfer (FTP), and email (POP3, IMAP, and SMTP) content as it passes through the FortiGate modules. FortiOS antivirus protection also controls the blocking of oversized files and supports blocking by file extension. Virus signatures are updated through the FortiGuard antivirus service. The antivirus engine can also be updated through the FortiGuard antivirus service. FortiOS antispam protection tags (SMTP, IMAP, POP3) or discards (SMTP only) email messages determined to be spam. Multiple spam detection methods are supported including the FortiGuard managed antispam service. FortiOS web filtering can be configured to provide web (HTTP) content filtering. FortiOS web filtering uses methods such as banned words, address block/exempt lists, and the FortiGuard managed content service. Whenever a IPS, antivirus, antispam or filtering event occurs, the modules can record the event in the log and/or send an alert email to an operator. For complete information refer to the FortiGate Installation Guide for the specific module in question, the FortiGate Administration Guide and the FortiGate IPS Guide. FIPS 140-2 Compliant Operation FIPS 140-2 compliant operation requires both that you use the module in its FIPS-CC mode of operation and that you follow secure procedures for installation and operation of the FortiGate unit. You must ensure that: • The FortiGate unit is configured in the FIPS-CC mode of operation. • The FortiGate unit is installed in a secure physical location. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 21 http://docs.fortinet.com/ • Feedback FIPS 140-2 Compliant Operation • The entropy token is installed and enabled. • Physical access to the FortiGate unit is restricted to authorized operators. • AAdministrative passwords are at least 8 characters long. • Administrative passwords are changed regularly. • Administrator account passwords must have the following characteristics: • One (or more) of the characters must be capitalized • One (or more) of the characters must be numeric • One (or more) of the characters must be non alpha-numeric (e.g. punctuation mark) • Administration of the module is permitted using only validated administrative methods. These are: • Console connection • Web-based manager via HTTPS • Command line interface (CLI) access via SSH • Diffie-Hellman groups of less than less than 2048 bits are not used. • Client side RSA certificates must use 2048 bit or greater key sizes. • Only approved and allowed algorithms are used (see “Algorithms” on page 17). The module can be used in either of its two operation modes: NAT/Route or Transparent. NAT/Route mode applies security features between two or more different networks (for example, between a private network and the Internet). Transparent mode applies security features at any point in a network. The current operation mode is displayed on the web- based manager Status page and in the output of the get system status CLI command. Enabling FIPS-CC mode To enable the FIPS 140-2 compliant mode of operation, the operator must execute the following command from the Local Console: config system fips-cc set entropy-token enable set status enable end The Operator is required to supply a password for the admin account which will be assigned to the Crypto Officer role. The supplied password must be at least 8 characters long and correctly verified before the system will restart in FIPS-CC mode. Upon restart, the module will execute self-tests to ensure the correct initialization of the module’s cryptographic functions. After restarting, the Crypto Officer can confirm that the module is running in FIPS-CC mode by executing the following command from the CLI: get system status If the module is running in FIPS-CC mode, the system status output will display the line: FIPS-CC mode: enable Note that enabling/disabling the FIPS-CC mode of operation will automatically invoke the key zeroization service. The key zeroization is performed immediately after FIPS-CC mode is enabled/disabled. FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 22 http://docs.fortinet.com/ • Feedback Self-Tests Self-Tests The module executes the following self-tests during startup and initialization: • Firmware integrity test using RSA signatures • Configuration/VPN bypass test using HMAC SHA-1 • Triple-DES, CBC mode, encrypt known answer test • Triple-DES, CBC mode, decrypt known answer test • AES, CBC mode, encrypt known answer test • AES, CBC mode, decrypt known answer test • HMAC SHA-1 known answer test • SHA-1 known answer test (test as part of HMAC SHA-1 known answer test) • HMAC SHA-256 known answer test • SHA-256 known answer test (test as part of HMAC SHA-256 known answer test) • RSA signature generation known answer test • RSA signature verification known answer test • DRBG known answer test The results of the startup self-tests are displayed on the console during the startup process. The startup self-tests can also be initiated on demand using the CLI command execute fips kat all (to initiate all self-tests) or execute fips kat (to initiate a specific self-test). When the self-tests are run, each implementation of an algorithm is tested - e.g. when the AES self-test is run, all AES implementations are tested. The module executes the following conditional tests when the related service is invoked: • Continuous TRNG test • Continuous NDRNG test • Continuous DRBG test • RSA pairwise consistency test • Configuration/VPN bypass test using HMAC SHA-1 • Firmware load test using RSA signatures If any of the self-tests or conditional tests fail, the module enters an error state as shown by the console output below: Self-tests failed Entering error mode... The system is going down NOW !! The system is halted. All data output and cryptographic services are inhibited in the error state. Non-FIPS Approved Services The module also provides the following non-FIPS approved services: • Configuration backups using password protection • LLTP and PPTP VPN FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 23 http://docs.fortinet.com/ • Feedback Non-FIPS Approved Services Services marked with an asterisk (*) in Table 8 and Table 9 are considered non-approved when using the following algorithms: • Non-compliant-strength Diffie-Hellman • Non-compliant-strength RSA key wrapping • DES • HMAC-MD5 FortiGate-1000C/1240B/3140B/3240C FIPS 140-2 Security Policy 01-506-228731-20140106 24 http://docs.fortinet.com/ • Feedback