M-018: Cisco - Multiple Vulnerabilities in ACL Implementations Privacy and Legal Notice

CIAC INFORMATION BULLETIN

M-018: Cisco - Multiple Vulnerabilities in ACL Implementations

[Cisco Security Advisory: Revision 1.1]

November 20, 2001 15:00 GMT

PROBLEM: Six vulnerabilities involving Access Control List (ACL) has been discovered in multiple releases of Cisco IOSŪ Software Release for Cisco 12000 Series Internet Routers.
PLATFORM: Cisco 12000 Series Internet Routers with line cards based on Engine 2
DAMAGE: Exploiting these vulnerabilities could result in Denial of Service attacks or allow some undesired traffic to pass into the protected network thus violating security policy.
SOLUTION: Apply available patches or workarounds listed below.

VULNERABILITY
ASSESSMENT:
The risk is MEDIUM. Because of the range of vulnerabilities listed in this advisory it is advisable to apply the patches as soon as possible.

LINKS:  
  CIAC BULLETIN: http://www.ciac.org/ciac/bulletins/m-018.shtml
  ORIGINAL BULLETIN: http://www.cisco.com/warp/public/707/GSR-ACL-pub.shtml

[***** Start Cisco Security Advisory: Revision 1.1 *****]


Cisco Security Advisory: Multiple Vulnerabilities in Access Control List 
Implementation for Cisco 12000 Series Internet Router

Revision 1.1

For Public Release 2001 November 14 08:00 (UTC -0800)

Last Update 2001 November 15 12:00 (UTC -0800)


Summary

Six vulnerabilities involving Access Control List (ACL) has been discovered in 
multiple releases of Cisco IOSŪ Software Release for Cisco 12000 Series Internet 
Routers. Not all vulnerabilities are present in all IOS releases and only line 
cards based on the Engine 2 are affected by them. 

No other Cisco product is vulnerable. 

The workarounds are described in the Workarounds section. 

This advisory is available at 
http://www.cisco.com/warp/public/707/GSR-ACL-pub.shtml 


Affected Products

Only Cisco 12000 Series Internet Routers with line cards based on Engine 2 are 
affected with these vulnerabilities. Not all line cards of a Cisco 12000 Series are 
affected by all vulnerabilities. Vulnerabilities are present in the underlying 
technology an individual line card is based upon. That technology is called 

"Engine". Currently Cisco is shipping line cards based on the following Engines: 0, 
1, 2, 3 and 4. 

To determine what Engine your card is based on, you need to log on the Cisco 12000 
router and issue "sh diag" command while in enable mode. The engine type will be 
displayed as "L3 Engine: x" where x will be the corresponding number. 

The following example shows the output for an Engine 2 based line card. 

  c12000#sh diag
  SLOT 1 (RP/LC 1 ): 1 Port Packet Over SONET OC-48c/STM-16 Single Mode/SR SC-SC   
  connector
     MAIN: type 41, 800-5271-01 rev A0 dev 0
        HW config: 0x04 SW key: 00-00-00
     PCA: 73-3295-05 rev A0 ver 5
        HW version 1.1 S/N SDK034004AY
     MBUS: Embedded Agent
        Test hist: 0x00 RMA#: 00-00-00 RMA hist: 0x00
      DIAG: Test count: 0x00000000 Test results: 0x00000000
      L3 Engine: 2 - Backbone OC48 (2.5 Gbps)
      ^^^^^^^^^^^ <- Note the engine type

      [further output truncated] 

These vulnerabilities are affecting line cards based on Engine 2. 


Details

Six vulnerabilities were found in IOS releases that are supporting Cisco 12000 
platforms. Only line cards based on Engine 2 are affected. 

CSCdm44976 
ACL will not block non initial fragments of a packet. This Cisco bug ID is adding a 
support for "fragment" keyword in the ACL. The White Paper Access Control Lists and 
IP Fragments describes how keyword fragment modifies behavior of ACL. 

CSCdu57417 
The keyword "fragment" in the compiled ACL (Turbo ACL) is ignored if a packet is 
destined to the router itself. 

CSCdu03323 
The implicit "deny ip any any" rule at the end of an ACL is ignored if an ACL of 
exactly 448 entries is applied on an interface as an outgoing ACL. An ACL with any 
other number of rules, greater or less than 448, is unaffected by this 
vulnerability. 

CSCdu35175 
A support for "fragment" keyword in an outgoing ACL is added. Previously, only 
incoming ACL supported this keyword and outgoing ACL was ignoring it. 

CSCdt96370 
An outbound Access Control List (ACL) may not block all intended traffic on a 
router when an input ACL is configured on some, but not all, interfaces of a multi 
port Engine 2 line card. The prerequisite is that, the traffic in question, was not 
filtered by an inbound ACL on the ingress port. An ACL applied at the ingress point 
will work as expected and block desired traffic. 

CSCdt69741 
Packet fragments are not filtered by the ACL despite using "fragment" keyword. The 
White Paper Access Control Lists and IP Fragments describes how keyword fragment 
modifies behavior of ACL. 


Impact

CSCdm44976 
The router will not block all traffic. By sending an offending traffic in packet 
fragments it is possible to circumvent the protection offered by ACL and cause 
Denial-of-Service for the protected IP address. 

CSCdu57417 
It is possible to cause the Denial-of-Service on the router itself if sufficient 
amount of traffic is sent to the router. This offending traffic should be send as 
packet fragments. 

CSCdu03323 
If an outgoing ACL contains exactly 448 entries and if explicit rule "deny ip any 
any" is not present as the last statement, the ACL will fail to drop packets. Our 
tests shows that only 50% of packets are dropped. This may allow some undesired 
traffic to pass into the protected network thus violating security policy. 

CSCdu35175 
Fragmented packets may be allowed into the protected network if the keyword 
"fragment" was applied to an outgoing ACL. 

CSCdt96370 
This vulnerability can cause unwanted traffic to be allowed in and out of the 
protected network. The security based on an ACL will be breached completely. 

CSCdt69741 
This vulnerability can be exploited to attack systems that are supposed to be 
protected by the ACL on the router. 


Software Versions and Fixes

Each row of the table describes a release train and the platforms or products for 
which it is intended. If a given release train is vulnerable, then the earliest
possible releases that contain the fix and the anticipated date of availability for 
each are listed in the "Rebuild", "Interim", and "Maintenance" columns. A device 
running any release in the given train that is earlier than the release in a 
specific column (less than the earliest fixed release) is known to be vulnerable, 
and it should be upgraded at least to the indicated release or a later version 
(greater than the earliest fixed release label). 

When selecting a release, keep in mind the following definitions: 

Maintenance 
Most heavily tested and highly recommended release of any label in a given row of 
the table. 

Rebuild 
Constructed from the previous maintenance or major release in the same train, it 
contains the fix for a specific defect. Although it receives less testing, it 
contains only the minimal changes necessary to effect the repair. 

Interim 
Built at regular intervals between maintenance releases and receives less testing. 

Interim releases should be selected only if there is no other suitable release that 
addresses the vulnerability, and interim images should be upgraded to the next 
available maintenance release as soon as possible. Interim releases are not 
available via manufacturing, and usually they are not available for customer 
download from CCO without prior arrangement with the Cisco TAC. 


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 TAC for assistance as shown in the 
following section. 

More information on Cisco IOS software release names and abbreviations is available 
at http://www.cisco.com/warp/public/620/1.html. 

Train Description of Image or Platform Availability of Fixed Releases* 

Vulnerability CSCdm4476 Rebuild Interim** Maintenance 

12.0S Core/ISP support: GSR, RSP, c7200   12.0(10.1)S 12.0(11)S 

Vulnerability CSCdu57417 Rebuild Interim** Maintenance 

12.0S Core/ISP support: GSR, RSP, c7200   12.0(19.3)S 12.0(19)S 
12.0ST Early deployment (ED) release for the Cisco 7200, 7500/7000RSP and 12000 
series routers for Service Providers (ISPs). 12.0(18.6)ST1 12.0(19.3)ST 12.0(19)ST 

Vulnerability CSCdu03323 Rebuild Interim** Maintenance 

12.0S Core/ISP support: GSR, RSP, c7200 12.0(16)S2 12.0(17.5)S 12.0(17)S 
12.0ST Early deployment (ED) release for the Cisco 7200, 7500/7000RSP and 12000 
series routers for Service Providers (ISPs). 12.0(16.6)ST1 12.0(17.5)ST 12.0(17)ST
 
Vulnerability CSCdu35175 Rebuild Interim** Maintenance 

12.0S Core/ISP support: GSR, RSP, c7200   12.0(19.6)S   
12.0ST Early deployment (ED) release for the Cisco 7200, 7500/7000RSP and 12000 
series routers for Service Providers (ISPs).   12.0(19.6)ST 
  
Vulnerability CSCdt96370 Rebuild Interim** Maintenance 

12.0S Core/ISP support: GSR, RSP, c7200 12.0(16)S1 12.0(17.1)S 12.0(17)S 
12.0ST Cisco IOS software Release 12.OST is an early deployment (ED) release for 
the Cisco 7200, 7500/7000RSP and 12000 (GSR) series routers for Service Providers 

(ISPs). 12.0(15.6)ST3 12.0(17.1)ST 12.0(16)ST 

Vulnerability CSCdt69741 Rebuild Interim** Maintenance
 
12.0S Core/ISP support: GSR, RSP, c7200 12.0(16.6)S2 12.0(17.3)S 12.0(17)S 
12.0ST Cisco IOS software Release 12.OST is an early deployment (ED) release for 
the Cisco 7200, 7500/7000RSP and 12000 (GSR) series routers for Service Providers 
(ISPs).   12.0(17.3)ST 12.0(18)ST 


Notes 

* All dates are estimates and subject to change. 

** Interim releases are subjected to less rigorous testing than regular maintenance 
releases, and may have serious bugs. 
 


Obtaining Fixed Software

Cisco is offering free software upgrades to eliminate this vulnerability for all 
affected customers. 

Customers with contracts should obtain upgraded software through their regular 
update channels. For most customers, this means that upgrades should be obtained 
through the Software Center on Cisco's Worldwide Web site at http://www.cisco.com. 

Customers whose Cisco products are provided or maintained through prior or existing 
agreement with third-party support organizations such as Cisco Partners, authorized 
resellers, or service providers should contact that support organization for 
assistance with the upgrade, which should be free of charge. 

Customers who purchase direct from Cisco but who do not hold a Cisco service 
contract and customers who purchase through third party vendors but are 
unsuccessful at obtaining fixed software through their point of sale should get 
their upgrades by contacting the Cisco Technical Assistance Center (TAC). TAC 
contacts are as follows: 

+1 800 553 2447 (toll-free from within North America) 
+1 408 526 7209 (toll call from anywhere in the world) 
e-mail: tac@cisco.com 

Please have your product serial number available and give the URL of this notice as 
evidence of your entitlement to a free upgrade. Free upgrades for non-contract 
customers must be requested through the TAC. 

Please do not contact either "psirt@cisco.com" or "security-alert@cisco.com" for 
software upgrades. 


Workarounds

CSCddm44976 
There is no direct workaround for this vulnerability. If feasible, packet fragments 
may be filtered before they reach the GSR. 

CSCdu57417 
There is no direct workaround for this vulnerability. If feasible, packet fragments 
may be filtered before they reach the GSR. 

CSCdu03323 
The workaround is to either shorten the ACL to be less than 448 lines in length or 
to explicitly add rule "deny ip any any" as the last statement. 

CSCdu35175 
The workaround is to transform an ACL to an incoming ACL instead of the outgoing 
one. 

CSCdt96370 
Apply an ACL on all ports on the ingress line card. If a particular port is 
supposed to not block any traffic, then apply the ACL of the form access-list xy 
permit ip any any. 

CSCdt69741 
There is no direct workaround for this vulnerability. It is possible to block the 
fragments on an intermediate router, if such exists, that should be placed between 
the affected Cisco 12000 and the final target. The intermediate router must not be 
another Cisco 12000 affected by the same vulnerability. 


Exploitation and Public Announcements

The Cisco PSIRT is not aware of any public announcements or malicious use of the 
vulnerabilities described in this advisory. 


Status of This Notice: FINAL

This is a final notice. Although Cisco cannot guarantee the accuracy of all 
statements in this notice, all of the facts have been checked to the best of our 
ability. Cisco does not anticipate issuing updated versions of this notice unless 
there is some material change in the facts. Should there be a significant change in 
the facts, Cisco may update this notice. 

A standalone copy or paraphrase of the text of this security advisory that omits 
the distribution URL in the following section is an uncontrolled copy, and may lack 
important information or contain factual errors. 


Distribution

This notice will be posted on Cisco's Worldwide Web site at 
http://www.cisco.com/warp/public/707/GSR-ACL-pub.shtml. In addition to Worldwide 
Web posting, a text version of this notice is clear-signed with the Cisco PSIRT PGP 
key and is posted to the following e-mail and Usenet news recipients: 

cust-security-announce@cisco.com 
bugtraq@securityfocus.com 
first-teams@first.org (includes CERT/CC) 
cisco@spot.colorado.edu 
comp.dcom.sys.cisco 
firewalls@lists.gnac.com 
Various internal Cisco mailing lists 

Future updates of this notice, if any, will be placed on Cisco's Worldwide Web 
server, but may or may not be actively announced on mailing lists or newsgroups. 

Users concerned about this problem are encouraged to check the URL given above for 
any updates. 


Revision History

Revision 1.0 2001-November-14 08:00 UTC -0800 Initial public release 
Revision 1.1 2001-November-15 12:00 UTC -08:00 Update table with fixed IOS releases 


Cisco Security Procedures

Complete information on reporting security vulnerabilities in Cisco products, 
obtaining assistance with security incidents, and registering to receive security 
information from Cisco, is available on Cisco's Worldwide Web site at 
http://www.cisco.com/warp/public/707/sec_incident_response.shtml. This includes 
instructions for press inquiries regarding Cisco security notices. 

All Cisco Security Advisories are available at http://www.cisco.com/go/psirt 



--------------------------------------------------------------------------------

This notice is Copyright 2001 by Cisco Systems, Inc. This notice may be 
redistributed freely after the release date given at the top of the text, provided 
that redistributed copies are complete and unmodified, and include all date and 
version information. 


[***** End Cisco Security Advisory: Revision 1.1 *****]

CIAC wishes to acknowledge the contributions of Cisco for the information contained in this bulletin.
DOE-CIRC can be contacted at:
    Voice:          +1 866-941-2472 (7 x 24)
    E-mail:          doecirc@doecirc.energy.gov
    World Wide Web:  http://www.doecirc.energy.gov/