Summary
Affected Products
Details
Impact
Software Versions and Fixes
Workarounds
Obtaining Fixed Software
Exploitation and Public Announcements
Status of This Notice: INTERIM
Distribution
Revision History
Cisco Security Procedures
Multiple Cisco IOS® Software and CatOS software releases contain several independent but related vulnerabilities involving the unexpected creation and exposure of SNMP community strings. These vulnerabilities can be exploited to permit the unauthorized viewing or modification of affected devices.
To remove the vulnerabilities, Cisco is offering free software upgrades for all affected platforms. The defects are documented in DDTS records CSCds32217, CSCds16384, CSCds19674, CSCdr59314, CSCdr61016, and CSCds49183.
In addition to specific workarounds for each vulnerability, affected systems can be protected by preventing SNMP access.
This notice will be posted at http://www.cisco.com/warp/public/707/cisco-sa-20010228-ios-snmp-community.shtml.
This section provides details on affected products.
The vulnerabilities described in this notice are present in Cisco router and switch products that are running certain releases of Cisco IOS software or CatOS software. Only Cisco products running affected releases are vulnerable. No other Cisco products are affected.
To determine the software running on a Cisco product, log in to the device and display the system banner with the command "show version". Cisco IOS software will identify itself as "Internetwork Operating System Software" or simply "IOS (tm)". The image name will be displayed between parentheses, usually on the next line of output, followed by "Version" and the IOS release name. Other Cisco devices will not have the "show version" command or will give different output.
The following example identifies a Cisco product running IOS release 12.0(3) with an installed image name of C2500-IS-L:
Cisco Internetwork Operating System Software IOS (tm) 2500 Software (C2500-IS-L), Version 12.0(3), RELEASE SOFTWARE
To determine if the Cisco product is affected, compare the information obtained above to the lists of affected platforms and releases shown below.
Cisco devices that may be running an affected IOS software release include, but are not limited to:
Cisco products that do not run Cisco IOS software and are not affected by the vulnerabilities described in this notice include, but are not limited to:
No other Cisco products are currently known to be affected by these vulnerabilities.
These vulnerabilities are the result of defects in the functions responsible for Simple Network Management Protocol (SNMP), an Internet standard for the remote administration of network devices. SNMP makes use of one or more labels called "community strings" to delimit groups of "objects" (variables) that can be viewed or modified on a device. The SNMP data in such a group is organized in a tree structure called a Management Information Base (MIB). A single device may have multiple MIBs connected together into one large structure, and various community strings may provide read-only or read-write access to different, possibly overlapping portions of the larger data structure. An example of a read-only variable might be a counter showing the total number of octets sent or received through an interface. An example of a read-write variable might be the speed of an interface, or the hostname of a device.
Community strings also provide a weak form of access control in earlier versions of SNMP, v1 and v2c. (SNMPv3 provides much improved access control using strong authentication and should be preferred over SNMPv1 and SNMPv2c wherever it is supported.) If a community string is defined, then it must be provided in any basic SNMP query if the requested operation is to be permitted by the device. Community strings usually allow read-only or read-write access to the entire device. In some cases, a given community string will be limited to one group of read-only or read-write objects described in an individual MIB.
In the absence of additional configuration options to constrain access, knowledge of the single community string for the device is all that is required to gain access to all objects, both read-only and read-write, and to modify any read-write objects. The defects responsible for these vulnerabilities are grouped here by function:
Full details are provided in the software section below regarding the status of each vulnerability in specific releases.
A separate Cisco Security Advisory has recently been announced regarding an SNMP vulnerability due to an undocumented default "ILMI" read-write community string in IOS. That advisory, http://www.cisco.com/warp/public/707/cisco-sa-20010227-ios-snmp-ilmi.shtml, should be consulted in tandem with this notice.
Knowledge of read-only community strings allows read access to information stored on an affected device, leading to a failure of confidentiality. Knowledge of read-write community strings allows remote configuration of affected devices without authorization, possibly without the awareness of the administrators of the device and resulting in a failure of integrity and a possible failure of availability.
These vulnerabilities could be exploited separately or in combination to gain access to or modify the configuration and operation of any affected devices without authorization. Customers are urged to upgrade affected systems to fixed releases of software, or to apply measures to protect such systems against unauthorized use by restricting access to SNMP services until such time as the devices can be upgraded.
This security advisory represents a combination of multiple related product security vulnerabilities. The affected trains and releases are not identical for all of the defects, but there are significant groups of releases where affected versions intersect with others. Unless otherwise noted, each label displayed under "Availability of Fixed Releases" identifies the release that resolves all of these defects for that specific train. Please note the following exceptions:
The following table summarizes the IOS software releases that are known to be affected, and the earliest estimated dates of availability for the recommended fixed versions. Dates are always tentative and subject to change.
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 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:
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 IOS 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* |
||
|---|---|---|---|---|
|
Catalyst Software Releases |
Rebuild |
Interim** |
Maintenance |
|
|
5.5 |
5.5(3) |
|||
|
Available |
||||
|
6.1 |
6.1(2) |
|||
|
Available |
||||
|
11.x-based Releases and Earlier |
Rebuild |
Interim** |
Maintenance |
|
|
11.x and earlier |
Multiple releases and platforms |
Not Vulnerable |
||
|
12.0-based Releases |
Rebuild |
Interim** |
Maintenance |
|
|
12.0 |
General Deployment release for all platforms |
Not Vulnerable |
||
|
12.0DA |
xDSL support: 6100, 6200 Vulnerable to CSCds32217 |
12.1(5)DA1 |
12.1(6)DA |
|
|
2001-Mar-19 |
Unscheduled |
|||
|
12.0DB |
General Deployment release for all platforms |
12.1(4)DB1 |
||
|
2001-Feb-26 |
||||
|
12.0DC |
General Deployment release for all platforms |
12.1(4)DC2 |
||
|
2001-Feb-20 |
||||
|
12.0S |
Core/ISP support: GSR, RSP, c7200 |
12.0(15)S1 |
12.0(16)S |
|
|
2001-Feb-20 |
2001-Mar-19 |
|||
|
12.0SC |
Cable/broadband ISP: ubr7200 |
12.0(15)SC |
||
|
2001-Mar-05 |
||||
|
12.0SL |
12.0(14)SL1 |
12.0(15)SL |
||
|
2001-Feb-26 |
2001-Mar-19 |
|||
|
12.0ST |
General Deployment release for all platforms |
12.0(11)ST2 |
12.0(15)ST |
|
|
2001-Feb-26 |
2001-Mar-05 |
|||
|
12.0T |
Early Deployment(ED): VPN, Distributed Director, various platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0W5 |
Catalyst switches: cat8510c, cat8540c, c6msm, ls1010, cat8510m, cat8540m, cat2948g, cat4232 |
Not Vulnerable |
||
|
12.0WT |
cat4840g |
Not Vulnerable |
||
|
12.0XA |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XB |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XC |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XD |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XE |
Early Deployment (ED): limited platforms |
12.1(5c)E8 |
||
|
2001-Feb-26 |
||||
|
12.0XF |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XG |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XH |
Early Deployment (ED): limited platforms |
12.0(4)XH5 |
||
|
2001-Mar-12 |
||||
|
12.0XI |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XJ |
Early Deployment (ED): limited platforms |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XK |
Early Deployment (ED): limited platforms |
12.0(7)XK3 |
||
|
2001-Mar-19 |
||||
|
12.0XL |
Early Deployment (ED): limited platforms |
12.0(4)XH5 |
||
|
2001-Mar-12 |
||||
|
12.0XM |
Short-lived early deployment release |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XN |
Early Deployment (ED): limited platforms |
Indeterminate |
||
|
Unscheduled |
||||
|
12.0XP |
Early Deployment (ED): limited platforms |
12.0(5)WC |
||
|
2001-APR-13 |
||||
|
12.0XQ |
Short-lived early deployment release |
12.1(7) |
||
|
2001-Feb-26 |
||||
|
12.0XR |
Short-lived early deployment release |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.0XS |
Short-lived early deployment release |
12.1(5c)E8 |
||
|
2001-Mar-05 |
||||
|
12.0XU |
Early Deployment (ED): limited platforms |
12.0(5)WC |
||
|
2001-APR-13 |
||||
|
12.0XW |
Early Deployment (ED): limited platforms |
12.0(5)WC |
||
|
2001-APR-13 |
||||
|
12.0XV |
Short-lived early deployment release |
12.1(5)T5 |
12.1WC |
|
|
2001-Mar-05 |
2001-Apr-12 |
|||
|
12.1-based and Later Releases |
Rebuild |
Interim** |
Maintenance |
|
|
12.1 |
General deployment release for all platforms |
12.1(5c) |
12.1(5.1) |
12.1(7) |
|
2001-Feb-20 |
Available |
2001-Feb-26 |
||
|
12.1AA |
Dial support |
12.1(7)AA |
||
|
2001-Mar-12 |
||||
|
12.1DA |
xDSL support: 6100, 6200 |
12.1(5)DA1 |
12.1(6)DA |
|
|
2001-Feb-28 |
2001-Feb-26 |
|||
|
12.1CX |
Core/ISP support: GSR, RSP, c7200 |
12.1(4)CX |
||
|
2001-Mar-13 |
||||
|
12.1DB |
General Deployment release for all platforms |
12.1(4)DB1 |
12.1(5)DB |
|
|
2001-Mar-05 |
2001-Mar-19 |
|||
|
12.1DC |
General Deployment release for all platforms |
12.1(4)DC2 |
12.1(5)DC |
|
|
2001-Mar-05 |
2001-Mar-19 |
|||
|
12.1E |
Core/ISP support: GSR, RSP, c7200 |
12.1(5c)E8 |
12.1(6)E |
|
|
2001-Mar-05 |
2001-Mar-12 |
|||
|
12.1EC |
Core/ISP support: GSR, RSP, c7200 |
12.1(5)EC1 |
12.1(6)EC |
|
|
2001-Feb-26 |
2001-Mar-26 |
|||
|
12.1EX |
Core/ISP support: GSR, RSP, c7200 |
12.1(5c)EX |
||
|
2001-Mar-12 |
||||
|
12.1EY |
Cat8510c, Cat8510m, Cat8540c, Cat8540m, LS1010 |
Not Affected |
||
|
12.1T |
Early Deployment(ED): VPN, Distributed Director, various platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XA |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XB |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XC |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XD |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XE |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XF |
Early Deployment (ED): 811 and 813 (c800 images) |
12.1(2)XF3 |
||
|
2001-Mar-05 |
||||
|
12.1XG |
Early Deployment (ED): 800, 805, 820, and 1600 |
12.1(3)XG4 |
||
|
2001-Mar-05 |
||||
|
12.1XH |
Early Deployment (ED): limited platforms |
12.1(2)XH5 |
||
|
2001-Mar-12 |
||||
|
12.1XI |
Early Deployment (ED): limited platforms |
12.1(3a)XI6 |
||
|
2001-Mar-19 |
||||
|
12.1XJ |
Early Deployment (ED): limited platforms |
Indeterminate |
||
|
Unscheduled |
||||
|
12.1XK |
Early Deployment (ED): limited platforms |
12.1(5)T5 |
||
|
2001-Mar-05 |
||||
|
12.1XL |
Early Deployment (ED): limited platforms |
12.1(3)XL1 |
||
|
2001-Mar-05 |
||||
|
12.1XM |
Short-lived early deployment release |
12.1(5)XM1 |
||
|
2001-Feb-28 |
||||
|
12.1XP |
Early Deployment (ED): 1700 and SOHO |
12.1(3)XP3 |
||
|
2001-Mar-05 |
||||
|
12.1XQ |
Short-lived early deployment release |
12.1(3)XQ3 |
||
|
2001-Mar |
||||
|
12.1XR |
Short-lived early deployment release |
12.1(5)XR1 |
||
|
2001-Feb-20 |
||||
|
12.1XS |
Short-lived early deployment release |
12.1(5)XS |
||
|
2001-Mar-12 |
||||
|
12.1XT |
Early Deployment (ED): 1700 series |
12.1(3)XT2 |
||
|
2001-Mar-05 |
||||
|
12.1XU |
Early Deployment (ED): limited platforms |
12.1(5)XU1 |
||
|
2001-Feb-15 |
||||
|
12.1XV |
Short-lived early deployment release |
12.1(5)XV1 |
||
|
2001-Mar-12 |
||||
|
12.1XW |
Short-lived early deployment release |
12.1(5)XW2 |
||
|
2001-Mar-6 |
||||
|
12.1XX |
Short-lived early deployment release |
12.1(5)XX3 |
||
|
2001-Mar-6 |
||||
|
12.1XY |
Short-lived early deployment release |
12.1(5)XY4 |
||
|
2001-Mar-6 |
||||
|
12.1XZ |
Short-lived early deployment release |
12.1(5)XZ2 |
||
|
2001-Mar-6 |
||||
|
12.1YA |
Short-lived early deployment release |
12.1(5)YA1 |
||
|
2001-Mar-6 |
||||
|
12.1YB |
Short-lived early deployment release |
12.1(5)YB |
||
|
2001-Feb-13 |
||||
|
12.1YC |
Short-lived early deployment release |
12.1(5)YC |
||
|
2001-Mar-12 |
||||
|
12.1YD |
Short-lived early deployment release |
12.1(5)YD |
||
|
2001-Mar-12 |
||||
|
Notes |
||||
|
* All dates are estimated and subject to change. ** Interim releases are subjected to less rigorous testing than regular maintenance releases, and may have serious bugs. |
||||
All of the following workarounds must be configured while in enable mode on the affected router or switch. Be sure to save the changes with the "write memory" command after each configuration change.
The workaround for the vulnerability introduced by CSCdr61016 and CSCds49183 is to configure community strings for the snmp-server hosts prior to configuring the snmp-server hosts. This command should include the desired access restrictions on this community string. In the following example, "1.2.3.4" is the IP address of the host intended to receive SNMP traps:
router#config term ! create access list router(config)#access-list 66 deny any ! configure community string with access restrictions router(config)#snmp-server community public ro 66 ! configure snmp-server host router(config)#snmp-server host 1.2.3.4 public router(config)#exit router#write memory router#
If the "snmp-server community" command is entered after one or more "snmp-server host" commands have been entered using the same community string, then all of the "snmp-server host" commands must be re-entered due to the otherwise unrelated defect CSCdr21997. This latter defect prevents traps or informs from leaving the router using the community string. The defect is present in some but not all of the same IOS releases as CSCdr61016.
To permanently remove communities after definition of the "snmp-server host" command, the associated "snmp-server host" commands that correspond to those communities must also be removed.
The vulnerability described in CSCds32217 and CSCds16384 can be remedied by using the "snmp-server view" command to block the ability to poll the SNMP-VIEW-BASED-ACM-MIB. The result is a view that restricts the ability to browse the SNMP-VIEW-BASED-ACM-MIB, and it must be applied to all read-only community strings. For example:
router#config term ! create view router(config)#snmp-server view novacm internet included ! block vacmSecurityToGroupEntry table router(config)#snmp-server view novacm internet.6.3.16 excluded ! apply view to read-only security string router(config)#snmp-server community public view novacm RO router(config)#exit router#write memory router#
If the affected router or switch already contains more than one read-write community string, then all read-write community strings must be prevented from reading the SNMP-VIEW-BASED-ACM-MIB. For read-write community strings that do not have a view applied, create a new view and apply it to the community string. If a read-write community string already has a view applied to it, then modify the view to prevent access to the SNMP-VIEW-BASED-ACM-MIB. Both situations are shown below.
If the following example is part of a pre-existing configuration:
router#show running-config ... snmp-server view oldview internet included snmp-server view oldview ipRouteTable excluded snmp-server view oldview ipNetToMediaTable excluded snmp-server view oldview at excluded snmp-server community tech view oldview RW snmp-server community private RW ...
then the following modifications will exclude the SNMP-VIEW-BASED-ACM-MIB:
router#config term ! block vacmSecurityToGroupEntry table in existing view router(config)#snmp-server view oldview internet.6.3.16 excluded ! create new view router(config)#snmp-server view novacm internet included router(config)#snmp-server view novacm internet.6.3.16 excluded ! apply new view router(config)#snmp-server community private view novacm RW router(config)#exit router#write memory router#
Note: For the fullest protection provided by this workaround, every existing view on the affected switch or router must be modified in a similar manner.
The vulnerability described in CSCds19674 for CatOS can be remedied by using the "set snmp view" command to prevent access to the SNMP-VIEW-BASED-ACM-MIB. For example:
switch#set snmp view defaultUserView 1.3.6.1.6.3.16.1.2 excluded nonvolatile
If the "cable-docsis" community string is deleted from the configuration, then CSCdr59314 causes it to automatically reappear after the system is reloaded. The following workaround prohibits the use of the "cable-docsis" community string by defining an access list statement that completely denies any requests for it:
router#config term ! create access list router(config)#access-list 66 deny any ! apply access restrictions to cable-docsis community string router(config)#snmp-server community cable-docsis ro 66 router(config)#exit router#write memory router#
Cisco has made free software available to address this vulnerability for affected customers. Prior to deploying software, customers should consult their maintenance provider or check the software for feature set compatibility and known issues specific to their environment.
Customers may only install and expect support for the feature sets they have purchased. By installing, downloading, accessing or otherwise using such software upgrades, customers agree to be bound by the terms of Cisco's software license terms found at http://www.cisco.com/public/sw-license-agreement.html, or as otherwise set forth at Cisco.com Downloads at http://www.cisco.com/public/sw-center/sw-usingswc.shtml.
Do not contact either "psirt@cisco.com" or "security-alert@cisco.com" for software upgrades.
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 website 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 guidance and assistance with the appropriate course of action in regards to this advisory.
The effectiveness of any workaround or fix is dependent on specific customer situations such as product mix, network topology, traffic behavior, and organizational mission. Due to the variety of affected products and releases, customers should consult with their service provider or support organization to ensure any applied workaround or fix is the most appropriate for use in the intended network before it is deployed.
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.
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.
Refer to http://www.cisco.com/warp/public/687/Directory/DirTAC.shtml for additional TAC contact information, including special localized telephone numbers and instructions and e-mail addresses for use in various languages.
CSCdr59314 was discovered internally and repaired. Cisco is aware of one incident in which a customer's routers were modified without authorization by using the "cable-docsis" community string. The vulnerability was brought to the attention of the Cisco Product Security Incident Response Team when the customer reported the incident. The other vulnerabilities were initially reported by customers on one product or confirmed internally on other products during repair.
Although Cisco has no knowledge of a specific program or script designed to make use of these vulnerabilities, there are numerous off-the-shelf programs and scripts available which could be used as-is or modified to exploit any of the vulnerabilities described in this notice.
Cisco is not aware of any general discussion of these vulnerabilities in public forums.
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. CISCO EXPECTS TO UPDATE THIS DOCUMENT AS NEW INFORMATION BECOMES AVAILABLE.
A stand-alone copy or Paraphrase of the text of this document that omits the distribution URL in the following section is an uncontrolled copy, and may lack important information or contain factual errors.
This advisory will be posted on Cisco's worldwide website at http://www.cisco.com/warp/public/707/cisco-sa-20010228-ios-snmp-community.shtml.
In addition to Worldwide Web posting, a text version of this notice will be clear-signed with the Cisco PSIRT PGP key and will be posted to the following e-mail and Usenet news recipients:
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 1.2 |
2001-March-07 |
Revised software table with corrected version numbers. Corrected typos. |
|
Revision 1.1 |
2001-March-02 |
Revised software table with corrected version numbers |
|
Revision 1.0 |
2001-February-28 |
Initial public release |
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/en/US/products/products_security_vulnerability_policy.html. This includes instructions for press inquiries regarding Cisco security notices.
| Updated: Mar 08, 2001 | Document ID: 13629 |