Headline
CVE-2023-20070: Cisco Security Advisory: Cisco Firepower Threat Defense Software Snort 3 Detection Engine Denial of Service Vulnerability
A vulnerability in the TLS 1.3 implementation of the Cisco Firepower Threat Defense (FTD) Software could allow an unauthenticated, remote attacker to cause the Snort 3 detection engine to unexpectedly restart. This vulnerability is due to a logic error in how memory allocations are handled during a TLS 1.3 session. Under specific, time-based constraints, an attacker could exploit this vulnerability by sending a crafted TLS 1.3 message sequence through an affected device. A successful exploit could allow the attacker to cause the Snort 3 detection engine to reload, resulting in a denial of service (DoS) condition. While the Snort detection engine reloads, packets going through the FTD device that are sent to the Snort detection engine will be dropped. The Snort detection engine will restart automatically. No manual intervention is required.
At the time of publication, this vulnerability affected devices that were running a vulnerable release of Cisco FTD Software and for which both of the following conditions were true:
- The device was running Snort 3.
- The device was using an SSL policy with TLS 1.3 decryption enabled.
For information about which Cisco software releases are vulnerable, see the Fixed Software section of this advisory.
Determine Cisco FTD Software Snort Configuration
To determine if Snort 3 is running on Cisco FTD Software, see Determine the Active Snort Version that Runs on Firepower Threat Defense (FTD). Snort 3 has to be active for this vulnerability to be exploited.
Determine Cisco FTD Software SSL Policy Configuration
SSL decryption policies are not configured by default.
Determine Cisco FTD Software SSL Policy Configuration Using the FTD Software CLI
To determine whether an SSL policy is configured on a device that is running Cisco FTD Software, log in to the Cisco FTD Software CLI and use the show ssl-policy-config command.
If the command output shows SSL policy not yet applied, the device is not affected by this vulnerability, as shown in the following example:
>show ssl-policy-config
SSL policy not yet applied
If the command output shows a policy, the device has an SSL policy applied and could be affected by this vulnerability if TLS 1.3 decryption is enabled, as shown in the following example:
> show ssl-policy-config
===================[ CSCwc59953 ]===================
=================[ Default Action ]=================
Default Action : Do Not Decrypt
…
Determine Cisco FTD Software SSL Policy Configuration for Devices that Are Managed by Cisco Firepower Device Manager Software
To determine whether an SSL policy is configured on a device that is managed by Cisco Firepower Device Manager (FDM) Software, complete the following steps:
- Log in to the Cisco FTD Software web interface.
- From the main menu, choose Policies.
- Choose the SSL Decryption tab.
- If SSL decryption is not enabled, the device is not affected by this vulnerability.
- If a Policy Name is listed, the device could be affected by this vulnerability if TLS 1.3 Decryption is enabled.
For detailed information about SSL decryption policies, see the SSL Decryption chapter of the Cisco Firepower Threat Defense Configuration Guide for Firepower Device Manager.
Determine Cisco FTD Software SSL Policy Configuration for Devices that Are Managed by Cisco Firepower Management Center Software
To determine whether an SSL policy is configured on a device that is managed by Cisco Firepower Management Center (FMC) Software, complete the following steps:
- Log in to the Cisco FMC Software web interface.
- From the Policies menu, choose Access Control.
- Choose the appropriate Access Control Policy.
- Click the Edit pencil icon.
- Look in the SSL Policy area.
- If None is listed, the device is not affected by this vulnerability.
- If a Policy Name is listed, the device could be affected by this vulnerability if TLS 1.3 Decryption is enabled.
For detailed information about SSL decryption policies, see the SSL Policy chapter of the Cisco Secure Firewall Management Center Configuration Guide.
Determine Cisco FTD Software SSL Policy Configuration for Devices that Are Managed by Cisco Defense Orchestrator
To determine whether an SSL policy is configured on a device that is managed by Cisco Defense Orchestrator, complete the following steps:
- Log in to the Cisco Defense Orchestrator web interface.
- From the Cisco Defense Orchestrator Policies menu, choose the FTD Policies.
- From the FTD Policies menu, choose Access Control.
- Choose the appropriate Access Control Policy.
- Click the Edit pencil icon.
- Look in the Decryption Policy area.
- If None is listed, the device is not affected by this vulnerability.
- If a Policy Name is listed, the device could be affected by this vulnerability if TLS 1.3 Decryption is enabled.
For detailed information about Cisco Defense Orchestrator managed devices, see the Cisco Defense Orchestrator documentation.
For detailed information about SSL decryption policies for Cisco FMC Devices managed with Cisco Defense Orchestrator, see the Decryption Policies chapter of Managing Firewall Threat Defense with Cloud-delivered Firewall Management Center in Cisco Defense Orchestrator.
For detailed information about SSL decryption policies for Cisco FDM Devices managed with Cisco Defense Orchestrator, see the SSL Decryption Policy section of the Managing FDM Devices with Cisco Defense Orchestrator guide.
Determine Cisco FTD Software TLS 1.3 Decryption Configuration
The default setting for TLS 1.3 decryption varies by platform when an SSL policy is configured. Note that TLS 1.3 decryption for Cisco FDM controlled devices is not offered until Cisco FTD Release 7.3.0. TLS 1.3 decryption is offered in Cisco FTD Release 7.2.0 for devices that are managed by Cisco FMC and Cisco Defense Orchestrator.
These are the default settings for the platforms:
- TLS 1.3 decryption is not enabled by default for devices managed by Cisco FDM Software.
- TLS 1.3 decryption is not enabled by default for devices managed by Cisco FMC Software.
- TLS 1.3 decryption is enabled by default for devices managed by Cisco Discovery Orchestrator Software.
Determine Cisco FTD Software TLS 1.3 Decryption Configuration Using the FTD Software CLI
To determine from the CLI whether TLS 1.3 decryption is configured on a device, log in to the Cisco FTD Software CLI and use the grep tls13 /ngfw/var/sf/detection_engines/*/ssl/ssl.rules command.
- If the output of the command shows “tls13_decryption” “false”, the device is not affected by this vulnerability.
- If the output of the command shows nothing, the device is not affected by this vulnerability.
- If the output of command shows “tls13_decryption” “true”, the device has an SSL policy applied and could be affected by this vulnerability if TLS 1.3 Decryption is enabled, as shown in the following example:
> expert
admin@ftd:~$
admin@ftd:~$**grep tls13 /ngfw/var/sf/detection_engines/*/ssl/ssl.rules
** “tls13_decryption” "true";
Determine Cisco FTD Software TLS 1.3 Decryption Configuration for Devices that Are Managed by Cisco FDM Software
To determine whether TLS 1.3 Decryption is configured on a device that is managed by Cisco FDM Software, complete the following steps:
- Log in to the Cisco FTD Software web interface.
- From the main menu, choose Policies.
- Choose the SSL Decryption tab.
- Click the SSL Decryption Settings button.
- Click on the Advanced tab.
- If the TLS 1.3 Decryption slider is not enabled, the device is not affected by this vulnerability.
- If the TLS 1.3 TLS 1.3 Decryption slider is enabled, the device is affected by this vulnerability.
For detailed information about TLS 1.3 decryption, see the Configure Advanced and Undecryptable Traffic Settings section in the Cisco Firepower Threat Defense Configuration Guide for Firepower Device Manager.
Determine Cisco FTD Software TLS 1.3 Decryption Configuration for Devices that Are Managed by Cisco FMC Software
To determine whether TLS 1.3 Decryption is configured on a device that is managed by Cisco FMC Software, complete the following steps:
- Log in to the Cisco FMC Software web interface.
- From the Policies menu, choose SSL.
- Choose the appropriate SSL Policy.
- Click the Edit pencil icon.
- Click the Advanced Settings tab.
- If the Enable TLS 1.3 Decryption box is not checked, the device is not affected by this vulnerability.
- If the Enable TLS 1.3 Decryption box is checked, the device is affected by this vulnerability.
For detailed information about TLS 1.3 decryption, see the SSL Policy Advanced Options section in the Cisco Secure Firewall Management Center Configuration Guide.
Determine Cisco FTD Software TLS 1.3 Decryption Configuration for Devices that Are Managed by Cisco Defense Orchestrator Software
To determine whether TLS 1.3 Decryption is configured on a device that is managed by Cisco Defense Orchestrator, complete the following steps:
- Log in to the Cisco Defense Orchestrator web interface.
- From the Cisco Defense Orchestrator Policies menu, choose FTD Policies.
- From the FTD Policies menu, choose Decryption.
- Choose the appropriate Decryption Policy.
- Click the Edit pencil icon.
- Click the Advanced Settings tab.
- If Enable TLS 1.3 Decryption is not enabled, the device is not affected by this vulnerability.
- If Enable TLS 1.3 Decryption is enabled, the device is affected by this vulnerability.
For detailed information about devices that are managed by Cisco Defense Orchestrator, see the Cisco Defense Orchestrator documentation.
For detailed information about TLS 1.3 decryption, see the Decryption Policy Advanced Options section of Managing Firewall Threat Defense with Cloud-Delivered Firewall Management Center in Cisco Defense Orchestrator.
For detailed information about TLS 1.3 decryption for Cisco FDM Devices managed with Cisco Defense Orchestrator, see the SSL Decryption Policy section of Managing FDM Devices with Cisco Defense Orchestrator.
Only products listed in the Vulnerable Products section of this advisory are known to be affected by this vulnerability.
Cisco has confirmed that this vulnerability does not affect the following products:
- Cisco Adaptive Security Appliance (ASA) Software
- Cisco FMC Software
- Open Source Snort 2
- Open Source Snort 3