Cisco Security Advisory
Cisco IOS XR Software Border Gateway Protocol Vulnerability
AV:N/AC:L/Au:N/C:N/I:N/A:P/E:F/RL:OF/RC:C
-
Cisco IOS XR Software contains a vulnerability in the Border Gateway Protocol (BGP) feature. The vulnerability manifests itself when a BGP peer announces a prefix with a specific, valid but unrecognized transitive attribute. On receipt of this prefix, the Cisco IOS XR device will corrupt the attribute before sending it to the neighboring devices. Neighboring devices that receive this corrupted update may reset the BGP peering session.
Affected devices running Cisco IOS XR Software corrupt the unrecognized attribute before sending to neighboring devices, but neighboring devices may be running operating systems other than Cisco IOS XR Software and may still reset the BGP peering session after receiving the corrupted update. This is per standards defining the operation of BGP.
Cisco has released software updates that address this vulnerability.
Cisco IOS devices will not corrupt the unrecognized attribute, however they will reset a BGP session upon receipt of a corrupted or malformed update.
This advisory is posted at https://sec.cloudapps.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20100827-bgp.
-
This vulnerability affects all Cisco IOS XR Software devices configured with BGP routing.
Vulnerable Products
To determine the Cisco IOS XR Software release that is running on a Cisco product, administrators can log in to the device and issue the show version command to display the system banner. The system banner confirms that the device is running Cisco IOS XR Software by displaying text similar to "Cisco IOS XR Software". The software version is displayed after the text "Cisco IOS XR Software".
The following example identifies a Cisco CRS-1 that is running Cisco IOS XR Software Release 3.6.2:
RP/0/RP0/CPU0:CRS#show version Tue Aug 18 14:25:17.407 AEST Cisco IOS XR Software, Version 3.6.2[00] Copyright (c) 2008 by Cisco Systems, Inc. ROM: System Bootstrap, Version 1.49(20080319:195807) [CRS-1 ROMMON], CRS uptime is 4 weeks, 4 days, 1 minute System image file is "disk0:hfr-os-mbi-3.6.2/mbihfr-rp.vm" cisco CRS-8/S (7457) processor with 4194304K bytes of memory. 7457 processor at 1197Mhz, Revision 1.2 17 Packet over SONET/SDH network interface(s) 1 DWDM controller(s) 17 SONET/SDH Port controller(s) 8 TenGigabitEthernet/IEEE 802.3 interface(s) 2 Ethernet/IEEE 802.3 interface(s) 1019k bytes of non-volatile configuration memory. 38079M bytes of hard disk. 981440k bytes of ATA PCMCIA card at disk 0 (Sector size 512 bytes). Configuration register on node 0/0/CPU0 is 0x102 Boot device on node 0/0/CPU0 is mem: !--- output truncated
The following example identifies a Cisco 12404 router that is running Cisco IOS XR Software Release 3.7.1:
RP/0/0/CPU0:GSR#show version Cisco IOS XR Software, Version 3.7.1[00] Copyright (c) 2008 by Cisco Systems, Inc. ROM: System Bootstrap, Version 12.0(20051020:160303) SOFTWARE Copyright (c) 1994-2005 by cisco Systems, Inc. GSR uptime is 3 weeks, 6 days, 3 hours, 20 minutes System image file is "disk0:c12k-os-mbi-3.7.1/mbiprp-rp.vm" cisco 12404/PRP (7457) processor with 2097152K bytes of memory. 7457 processor at 1266Mhz, Revision 1.2 1 Cisco 12000 Series Performance Route Processor 1 Cisco 12000 Series - Multi-Service Blade Controller 1 1 Port ISE Packet Over SONET OC-48c/STM-16 Controller (1 POS) 1 Cisco 12000 Series SPA Interface Processor-601/501/401 3 Ethernet/IEEE 802.3 interface(s) 1 SONET/SDH Port controller(s) 1 Packet over SONET/SDH network interface(s) 4 PLIM QoS controller(s) 8 FastEthernet/IEEE 802.3 interface(s) 1016k bytes of non-volatile configuration memory. 1000496k bytes of disk0: (Sector size 512 bytes). 65536k bytes of Flash internal SIMM (Sector size 256k). Configuration register on node 0/0/CPU0 is 0x2102 Boot device on node 0/0/CPU0 is disk0: !--- output truncated
Additional information about Cisco IOS XR Software release naming conventions is available in the "White Paper: Cisco IOS Reference Guide" at the following link: http://www.cisco.com/web/about/security/intelligence/ios-ref.html#9.
Additional information about Cisco IOS XR Software time-based release model is available in the "White Paper: Guidelines for Cisco IOS XR Software" at the following link: http://www.cisco.com/en/US/prod/collateral/iosswrel/ps8803/ps5845/product_bulletin_c25-478699.html.
BGP is configured in Cisco IOS XR Software with the configuration command router bgp [AS Number] or router bgp [X.Y]. The device is vulnerable if it is running an affected Cisco IOS XR Software version and has BGP configured.
The following example shows a Cisco IOS XR Software device configured with BGP:
RP/0/0/CPU0:GSR#show running-config | begin router bgp Building configuration... router bgp 65535 bgp router-id 192.168.0.1 address-family ipv4 unicast network 192.168.1.1/32 ! address-family vpnv4 unicast ! neighbor 192.168.2.1 remote-as 65534 update-source Loopback0 address-family ipv4 unicast ! !--- output truncated
Products Confirmed Not Vulnerable
The following Cisco products are confirmed not vulnerable:
-
Cisco IOS Software
-
Cisco IOS XR Software not configured for BGP
routing
No other Cisco products are currently known to be affected by these vulnerabilities.
-
Cisco IOS Software
-
This vulnerability affects Cisco IOS XR devices running affected software versions and configured with the BGP routing feature.
The vulnerability manifests itself when a BGP peer announces a prefix with a specific, valid but unrecognized transitive attribute. On receipt of this prefix, the Cisco IOS XR device will corrupt the attribute before sending it to the neighboring devices. Neighboring devices that receive this corrupted update may reset the BGP peering session.
Affected devices running Cisco IOS XR Software corrupt the unrecognized attribute before sending to neighboring devices, but neighboring devices may be running operating systems other than Cisco IOS XR Software and may still reset the BGP peering session after receiving the corrupted update. This is per RFC 4271 that defines the operation of BGP.
After an affected device running Cisco IOS XR Software sends a corrupted update, it will receive a notification from the neighboring router and will create a log message like the following example:
bgp[122]: %ROUTING-BGP-5-ADJCHANGE : neighbor 172.16.1.251 Down - BGP Notification received: update malformed
This vulnerability is documented in Cisco Bug ID CSCti62211 ( registered customers only) and has been assigned Common Vulnerabilities and Exposures (CVE) ID CVE-2010-3035.
-
There are no workarounds to proactively mitigate this vulnerability. If a route flap is observed, the prefix with the unrecognized attribute can be filtered. For further information on filtering on Cisco IOS XR Software, please consult the document "Implementing Routing Policy on Cisco IOS XR Software" at the following link: http://www.cisco.com/en/US/docs/ios_xr_sw/iosxr_r3.0/routing/configuration/guide/rc3rpl.html#wp1118699.
-
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.
Cisco IOS XR Version
SMU ID
SMU Name
Requires Reload
3.4.0
Vulnerable; Migrate to 3.4.3 and apply a SMU
3.4.1
AA04297
AA04303
hfr-rout-3.4.1.CSCti62211
c12k-rout-3.4.1.CSCti62211
No
3.4.2
AA04296
AA04302
hfr-rout-3.4.2.CSCti62211
c12k-rout-3.4.2.CSCti62211
No
3.4.3
AA04295
AA04301
hfr-rout-3.4.3.CSCti62211
c12k-rout-3.4.3.CSCti62211
Yes
3.5.2
AA04292
AA04293
hfr-rout-3.5.2.CSCti62211
c12k-rout-3.5.2.CSCti62211
No
3.5.3
AA04290
AA04291
hfr-rout-3.5.3.CSCti62211
c12k-rout-3.5.3.CSCti62211
No
3.5.4
AA04288
AA04289
hfr-rout-3.5.4.CSCti62211
c12k-rout-3.5.4.CSCti62211
No
3.6.0
AA04285
AA04286
hfr-rout-3.6.0.CSCti62211
c12k-rout-3.6.0.CSCti62211
No
3.6.1
AA04283
AA04284
hfr-rout-3.6.1.CSCti62211
c12k-rout-3.6.1.CSCti62211
Yes
3.6.2
AA04281
AA04282
hfr-rout-3.6.2.CSCti62211
c12k-rout-3.6.2.CSCti62211
No
3.6.3
AA04279
AA04280
hfr-rout-3.6.3.CSCti62211
c12k-rout-3.6.3.CSCti62211
No
3.7.0
AA04299
AA04300
hfr-rout-3.7.0.CSCti62211
c12k-rout-3.7.0.CSCti62211
No
3.7.1
AA04277
AA04278
hfr-rout-3.7.1.CSCti62211
c12k-rout-3.7.1.CSCti62211
No
3.7.2
AA04276
asr9k-rout-3.7.2.CSCti62211
No
3.7.3
AA04275
asr9k-rout-3.7.3.CSCti62211
3.8.0
AA04273
AA04274
hfr-rout-3.8.0.CSCti62211
c12k-rout-3.8.0.CSCti62211
No
3.8.1
AA04271
AA04272
hfr-rout-3.8.1.CSCti62211
c12k-rout-3.8.1.CSCti62211
No
3.8.2
AA04269
AA04270
hfr-rout-3.8.2.CSCti62211
c12k-rout-3.8.2.CSCti62211
No
3.8.3
AA04267
AA04268
hfr-rout-3.8.3.CSCti62211
c12k-rout-3.8.3.CSCti62211
No
3.8.4
AA04262
AA04266
hfr-rout-3.8.4.CSCti62211
c12k-rout-3.8.4.CSCti62211
No
3.9.0
AA04267
AA04265
AA04298
hfr-rout-3.9.0.CSCti62211
c12k-rout-3.9.0.CSCti62211
asr9k-rout-3.9.0.CSCti62211
No
3.9.1
AA04261*
AA04263*
AA04287*
hfr-rout-3.9.1.CSCti62211
c12k-rout-3.9.1.CSCti62211
asr9k-rout-3.9.1.CSCti62211
No
* Restart of the BGP process in 3.9.1 may trigger a separate issue and result in RIB-failure if BGP is configured for attribute-download. This issue is specific to 3.9.1 and only surfaces if attribute-download is configured. Please refer to Cisco Bug ID CSCti08859 ( registered customers only) for more details and workaround.
Please note that applying the above mentioned SMUs will require a restart of the BGP process. Some of the SMUs will also require a system reboot. This is indicated in the fourth column in the above table.
Installation of the SMU needs to performed in admin mode. An example is shown in the following output:
RP/0/RP1/CPU0:crs#admin RP/0/RP1/CPU0:crs(admin)#install add ftp://server/hfr-rout-3.9.1.CSCti62211.pie RP/0/RP1/CPU0:crs(admin)#install activate disk0:hfr-rout-3.9.1.CSCti62211-1.0.0
-
An advertisement of an unrecognized but valid BGP attribute resulted in resetting of several BGP neighbors on 27 August 2010. This advertisement was not malicious but inadvertently triggered this vulnerability.
The Cisco PSIRT is not aware of malicious use of the vulnerability described in this advisory.
-
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
2010-September-10
Added reference to CSCti08859.
Revision 1.6
2010-September-06
Updated software table for 3.4.0, 3.4.1, 3.4.2, and 3.4.3. Changed the status to FINAL.
Revision 1.5
2010-September-02
Updated software table for 3.4.3, 3.5.2, 3.5.3, 3.5.4, 3.6.0, 3.6.3, 3.7.0, 3.7.2, 3.7.3 and 3.8.1
Revision 1.4
2010-September-01
Updated software table for 3.5.4, 3.6.1, 3.6.3 and 3.9.0
Revision 1.3
2010-August-31
Updates CVSS score and software table for 3.6.0, 3.6.1, 3.6.2, 3.7.0, 3.8.0 and 3.8.2
Revision 1.2
2010-August-30
Updated software table for 3.7.1, 3.8.0, 3.8.3 and 3.9.0
Revision 1.1
2010-August-29
Updated summary section and software table for 3.9.1 and 3.8.4.
Revision 1.0
2010-August-27
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.