-
The Cisco Secure PIX Firewall interprets FTP (File Transfer Protocol) commands out of context and inappropriately opens temporary access through the firewall. This is an interim notice describing two related vulnerabilities.
The first vulnerability is exercised when the firewall receives an error message from an internal FTP server containing an encapsulated command such that the firewall interprets it as a distinct command. This vulnerability can be exploited to open a separate connection through the firewall. This vulnerability is documented as Cisco Bug ID CSCdp86352.
The second vulnerability is exercised when a client inside the firewall browses to an external server and selects a link that the firewall interprets as two or more FTP commands. The client begins an FTP connection as expected and at the same time unexpectedly executes another command opening a separate connection through the firewall. This vulnerability is documented as Cisco Bug ID CSCdr09226.
Either vulnerability can be exploited to transmit information through the firewall without authorization.
Both vulnerabilities are addressed more completely in this updated interim security advisory.
This advisory is posted at https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20000316-pix-ftp.
-
This section provides details on affected products.
Vulnerable Products
All users of Cisco Secure PIX Firewalls with software versions up to and including 4.2(5), 4.4(4), and 5.0(3) that provide access to FTP services are at risk from both vulnerabilities.
Cisco Secure PIX Firewall with software version 5.1(1) is affected by the second vulnerability only.
Products Confirmed Not Vulnerable
Cisco Secure Integrated Software (formerly Cisco IOSĀ® Software Firewall Feature Set) is not affected by either vulnerability.
No other Cisco products are currently known to be affected by these vulnerabilities.
-
The first vulnerability has been assigned Cisco bug ID CSCdp86352. The second vulnerability has been assigned Cisco bug ID CSCdr09226.
The behavior is due to the command fixup protocol ftp [portnum], which is enabled by default on the Cisco Secure PIX Firewall.
If you do not have protected FTP hosts with the accompanying configuration (configuration example below) you are not vulnerable to the attack which causes a server to send a valid command, encapsulated within an error message, and causes the firewall to read the encapsulated partial command as a valid command (CSCdp86352).
To exploit this vulnerability, attackers must be able to make connections to an FTP server protected by the PIX Firewall. If your Cisco Secure PIX Firewall has configuration lines similar to the following:
fixup protocol ftp 21
and either
conduit permit tcp host 192.168.0.1 eq 21 any
or
conduit permit tcp 192.168.0.1 255.255.255.0 eq 21 any
It is possible to fool the PIX stateful inspection into opening up arbitrary TCP ports, which could allow attackers to circumvent defined security policies.
If you permit internal clients to make arbitrary FTP connections outbound, you may be vulnerable to the second vulnerability (CSCdr09226). This is an attack based on CERT advisory CA-2000-02: Malicious HTML Tags Embedded in Client Web Requests http://www.cert.org/advisories/CA-2000-02.html.
The recommendation in the workarounds section of this document will provide protection against this vulnerability.
Response for the first vulnerability (CSCdp86352)
The following changes have been made to the "fixup protocol FTP" behavior of the PIX Firewall:
-
Enforce that only the server can generate a reply indicating the
PASV command was accepted.
-
Enforce that only the client can generate a
PORT command.
-
Enforce that data channel is initiated from the expected side in an
FTP transaction.
-
Verify that the "227" reply code and the
PORT command are complete commands and not part of a
"500" error code string broken into fragments.
-
Enforce that the port is not 0 or in the range between [1,1024]
These or equivalent changes will be carried forward into all PIX Firewall software versions after version 5.1(1).
Response for the second vulnerability (CSCdr09226)
We have added an additional command keyword to address this problem:
fixup protocol ftp [strict] <port1>[-<port2>]
The "strict" keyword directs the fixup protocol ftp command to maintain strict command state, and may impact some FTP features such as command pipelining or command grouping. This will be fixed in version 5.1(2) and subsequent versions, as well as in version 4.4(5).
-
Enforce that only the server can generate a reply indicating the
PASV command was accepted.
-
The behaviors described in this document are a result of the default command fixup protocol ftp [portnum]. To disable this functionality, enter the command no fixup protocol ftp. This will disable support of the fixup of the FTP protocol in the PIX, and will eliminate the vulnerabilities. The command fixup protocol ftp 21 is the default setting of this feature, and is enabled by default on the Cisco Secure PIX Firewall.
This workaround will force your clients to use FTP in passive mode, and inbound FTP service will not be supported. Outbound standard FTP will not work without fixup protocol ftp 21, however, passive FTP will function correctly with no fixup protocol ftp configured.
-
When considering software upgrades, also consult http://www.cisco.com/go/psirt and any subsequent advisories to determine exposure and a complete upgrade solution.
In all cases, customers should exercise caution to be certain the devices to be upgraded contain sufficient memory and that current hardware and software configurations will continue to be supported properly by the new release. If the information is not clear, contact the Cisco Technical Assistance Center ("TAC") or your contracted maintenance provider for assistance.
Version Affected
Interim Release**(fix will carry forward into all later versions)
Available Now through the TAC
First fixed regular release (fix will carry forward into all later versions)
All versions of Cisco Secure PIX up to version 4.2(5) (including 2.7, 3.0, 3.1, 4.0, 4.1)
4.2(5)205**
Upgrade to 4.4(5) available now.
All 4.3.x and 4.4.x up to and including version 4.4(4)
4.4(4)202**
4.4(5) available as of 30 May, 2000.
All 5.0.x up to and including version 5.0(1)
5.0(3)202**
Upgrade to 5.1(2) available now.
Version 5.1(1) - not affected by CSCdp86352
5.1(1)207**
5.1(2) available as of 9 June, 2000.
** Interim releases are subjected to less internal testing and verification than are regular releases, may have serious bugs, and should be installed with great care.
Schedules have been updated to include released versions that fix both vulnerabilities addressed by this interim security advisory.
If version 4.3 or 4.4 is utilized on a PIX 'Classic' (excludes PIX10000, PIX-510, PIX-520, and PIX-515)
or
If version 5.0 is utilized on a PIX 'Classic', PIX10000, or PIX-510 (excludes PIX-520 and PIX-515)
A 128MB upgrade for the PIX Firewall is necessary. As with any new software installation, customers planning to upgrade should carefully read the release notes and other relevant documentation before beginning any upgrade. Also, it is important to be certain that the new version of Cisco Secure PIX Firewall software is supported by your hardware, and especially that enough memory is available.
-
This vulnerability was proposed on the BUGTRAQ list, and in follow-ups to the article, the Cisco Secure PIX Firewall was also identified as susceptible. As the vulnerabilities have been widely discussed, Cisco is posting this advisory prior to having a full fix. We will update this notice again, when we have a full fix available.
Cisco has had no reports of malicious exploitation of this vulnerability. However, versions of exploit scripts have been posted to various security related lists.
This vulnerability was reported to Cisco via several sources, shortly after the time of the original supposition.
-
To learn about Cisco security vulnerability disclosure policies and publications, see the Security Vulnerability Policy. This document also contains instructions for obtaining fixed software and receiving security vulnerability information from Cisco.
-
Revision 1.7
2000-June-27
- Changed to FINAL status in the Status of This Notice section, and changes to the first fixed regular releases in the Software Version and Fixes section.
Revision 1.6
2000-May-19
Changes to date in Status of This Notice INTERIM section, and date change in the Software Version and Fixes section.
Revision 1.5
2000-April-28
Changes to Summary, Response for the second vulnerability (CSCdr09226), Software Versions and Fixes, and Status of This Notice sections.
Revision 1.4
2000-April-4
Changes to dates for fixed software and Status of This Notice section.
Revision 1.3
2000-March-16
Addition of 2nd vulnerability issues.
Revision 1.1
2000-March-16
Link corrections, table head clarification.
Revision 1.0
2000-March-16
Initial public release.
-
THIS DOCUMENT IS PROVIDED ON AN "AS IS" BASIS AND DOES NOT IMPLY ANY KIND OF GUARANTEE OR WARRANTY, INCLUDING THE WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR USE. YOUR USE OF THE INFORMATION ON THE DOCUMENT OR MATERIALS LINKED FROM THE DOCUMENT IS AT YOUR OWN RISK. CISCO RESERVES THE RIGHT TO CHANGE OR UPDATE THIS DOCUMENT AT ANY TIME.
A stand-alone copy or paraphrase of the text of this document that omits the distribution URL is an uncontrolled copy, and may lack important information or contain factual errors. The information in this document is intended for end-users of Cisco products.