FNFG-FW-000005 - The FortiGate firewall must use filters that use packet headers and packet attributes, including source and destination IP addresses and ports.

Information

Information flow control regulates where information is allowed to travel within a network and between interconnected networks. Blocking or restricting detected harmful or suspicious communications between interconnected networks enforces approved authorizations for controlling the flow of traffic.

The firewall that filters traffic outbound to interconnected networks with different security policies must be configured with filters (i.e., rules, access control lists [ACLs], screens, and policies) that permit, restrict, or block traffic based on organization-defined traffic authorizations. Filtering must include packet header and packet attribute information, such as IP addresses and port numbers.

Configure filters to perform certain actions when packets match specified attributes, including the following actions:

- Apply a policy
- Accept, reject, or discard the packets
- Classify the packets based on their source address
- Evaluate the next term in the filter
- Increment a packet counter
- Set the packets' loss priority
- Specify an IPsec SA (if IPsec is used in the implementation)
- Specify the forwarding path
- Write an alert or message to the system log.

NOTE: Nessus has not performed this check. Please review the benchmark to ensure target compliance.

Solution

The fix can be performed on FortiGate GUI or CLI.
Log in to the FortiGate GUI with Super- or Firewall Policy-Admin privilege.

1. Click Policy and Objects.
2. Click IPv4 or IPv6 Policy.
3. Click +Create New to configure application specific policies, with Action set to ACCEPT.
4. Configure Logging Options to log All Sessions.
5. Confirm each Policy is Enabled.
6. Click OK.

or

1. Open a CLI console, via SSH or available from the GUI.
2. For IPv4 policy, run the following command:
# config firewall policy
# edit {policyid}
# set srcintf {interface_name_ext}
# set dstintf {interface_name_int}
# set srcaddr {address_a}
# set dstaddr {address_b}
# set schedule {always}
# set service {HTTPS}
# set action {accept}
# set logtraffic all
# end

For IPv6 policy, run the following command:
# config firewall policy6
# edit {policyid}
# set srcintf {interface_name_ext}
# set dstintf {interface_name_int}
# set srcaddr {address_a}
# set dstaddr {address_b}
# set schedule {always}
# set service {HTTPS}
# set action {accept}
# set logtraffic all
# end

The {} indicate the object is defined by the organization policy. The firewall performs IP integrity header checking on all incoming packets to verify if the protocol packet is a valid TCP, UDP, ICMP, SCTP, or GRE length. Stateful inspection is done to verify TCP SYN and FIN flags are set as needed.

See Also

https://dl.dod.cyber.mil/wp-content/uploads/stigs/zip/U_FN_FortiGate_Firewall_Y22M10_STIG.zip

Item Details

Category: ACCESS CONTROL

References: 800-53|AC-4, CAT|I, CCI|CCI-001414, Rule-ID|SV-234133r611399_rule, STIG-ID|FNFG-FW-000005, Vuln-ID|V-234133

Plugin: FortiGate

Control ID: 90ee5c4026069f6130e5cc77b3c5bf05902b5ab5fb85bcc11bd2423bea05fba6