Cisco Security Advisory

Cisco IOS Software Session Initiation Protocol Denial of Service Vulnerability

Advisory ID: cisco-sa-20131106-sip

http://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20131106-sip

Revision 1.1

Last Updated  2013 November 15 16:42  UTC (GMT)

For Public Release 2013 November 6 16:00  UTC (GMT)


Summary

A vulnerability exists in the Session Initiation Protocol (SIP) implementation in Cisco IOS Software that could allow an unauthenticated, remote attacker to cause a reload of an affected device or cause memory leaks that may result in system instabilities. To exploit this vulnerability, affected devices must be configured to process SIP messages. Limited Cisco IOS Software releases are affected.

Cisco has released free software updates that address this vulnerability.

There are no workarounds for devices that must run SIP; however, mitigations are available to limit exposure to the vulnerability.

This advisory is available at the following link:
http://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20131106-sip

Affected Products

Vulnerable Products

Cisco devices are affected when they are running affected Cisco IOS Software releases that are configured to process SIP messages. The following Cisco IOS Software releases are affected by this vulnerability:
  • 15.1(4)GC and 15.1(4)GC1
  • 15.1(4)M4, 15.1(4)M5 and 15.1(4)M6
Recent releases of Cisco IOS Software do not process SIP messages by default. Creating a dial peer by issuing the dial-peer voice configuration command will start the SIP processes, causing the Cisco IOS device to process SIP messages. In addition, several features within Cisco Unified Communications Manager Express, such as ePhones, will also automatically start the SIP process when they are configured, causing the device to start processing SIP messages. An example of an affected configuration follows:

!
 dial-peer voice <Voice dial-peer tag> voip
 ...
!
In addition to inspecting the Cisco IOS device configuration for a dial-peer command that causes the device to process SIP messages, administrators can also use the show processes | include SIP command to determine whether Cisco IOS Software is running the processes that handle SIP messages. In the following example, the presence of the processes CCSIP_UDP_SOCKET or CCSIP_TCP_SOCKET indicates that the Cisco IOS device will process SIP messages:

Router# show processes | include SIP
 149 Mwe 40F48254            4          1    400023108/24000  0 CCSIP_UDP_SOCKET
 150 Mwe 40F48034            4          1    400023388/24000  0 CCSIP_TCP_SOCKET
Note: Because there are several ways that a device running Cisco IOS Software can start processing SIP messages, it is recommended that the show processes | include SIP command be used to determine whether the device is processing SIP messages instead of relying on the presence of specific configuration commands.

To determine the Cisco IOS 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 Software by displaying text similar to "Cisco Internetwork Operating System Software" or "Cisco IOS Software." The image name displays in parentheses, followed by "Version" and the Cisco IOS Software release name. Other Cisco devices do not have the show version command or may provide different output.

The following example identifies a Cisco product that is running Cisco IOS Software Release 15.0(1)M1 with an installed image name of C3900-UNIVERSALK9-M:

Router> show version
Cisco IOS Software, C3900 Software (C3900-UNIVERSALK9-M), Version 15.0(1)M1, RELEASE SOFTWARE (fc1)
Technical Support: http://www.cisco.com/techsupport
Copyright (c) 1986-2009 by Cisco Systems, Inc.
Compiled Wed 02-Dec-09 17:17 by prod_rel_team
!–- output truncated
Additional information about Cisco IOS Software release naming conventions is available in the white paper Cisco IOS and NX-OS Software Reference Guide available at: http://www.cisco.com/web/about/security/intelligence/ios-ref.html.

Products Confirmed Not Vulnerable

Cisco IOS XE Software and Cisco Unified Communications Manager are not affected by this vulnerability. No other Cisco products are currently known to be affected by this vulnerability.

Details

SIP is a popular signaling protocol that is used to manage voice and video calls across IP networks such as the Internet. SIP is responsible for handling all aspects of call setup and termination. Voice and video are the most popular types of sessions that SIP handles, but the protocol has the flexibility to accommodate other applications that require call setup and termination. SIP call signaling can use UDP port 5060, TCP port 5060, or Transport Layer Security (TLS) on TCP port 5061 as the underlying transport protocol.

A vulnerability in session initiation protocol functionality of Cisco IOS Software could allow an unauthenticated, remote attacker to trigger a memory leak or a device reload.

The vulnerability is due to incorrect processing of specially crafted SIP messages. An attacker could exploit this vulnerability by sending specific valid SIP messages to the SIP gateway.  An exploit could allow the attacker to trigger a memory leak or a device reload.

This vulnerability is triggered when a device that is running Cisco IOS Software processes specific, valid SIP messages. Only traffic destined to the device can trigger the vulnerability; transit SIP traffic is not an exploit vector. This vulnerability can be exploited with SIP over IPv4 or IPv6 communications protocol.

Note: In cases where SIP is running over TCP transport, a TCP three-way handshake is necessary to exploit this vulnerability.

This vulnerability is documented in Cisco bug ID: CSCuc42558 (registered customers only) and CSCug25383 (registered customers only). This vulnerability has been assigned Common Vulnerabilities and Exposures (CVE) ID CVE-2013-5553.

Vulnerability Scoring Details

Cisco has scored the vulnerability in this advisory based on the Common Vulnerability Scoring System (CVSS). The CVSS scoring in this security advisory is in accordance with CVSS version 2.0.

CVSS is a standards-based scoring method that conveys vulnerability severity and helps organizations determine the urgency and priority of a response.

Cisco has provided a base and temporal score. Customers can also compute environmental scores that help determine the impact of the vulnerability in their own networks.

Cisco has provided additional information regarding CVSS at the following link:
http://www.cisco.com/web/about/security/intelligence/cvss-qandas.html

Cisco has also provided a CVSS calculator to compute the environmental impact for individual networks at the following link:
http://intellishield.cisco.com/security/alertmanager/cvss


CSCuc42558 and CSCug25383 - Cisco IOS Software Session Initiation Protocol Denial of Service Vulnerability

Calculate the environmental score of CSCuc42558 and CSCug25383

CVSS Base Score - 7.8

Access Vector

Access Complexity

Authentication

Confidentiality Impact

Integrity Impact

Availability Impact

Network

Low

None

None

None

Complete

CVSS Temporal Score - 6.4

Exploitability

Remediation Level

Report Confidence

Functional

Official-Fix

Confirmed

Impact

Successful exploitation of the vulnerability in this advisory may result in system instabilities or a reload of an affected device. Repeated exploitation could result in a sustained denial of service (DoS) condition.

Software Versions and Fixes

When considering software upgrades, customers are advised to consult the Cisco Security Advisories, Responses, and Notices archive at http://www.cisco.com/go/psirt and review subsequent advisories to determine exposure and a complete upgrade solution.

In all cases, customers should ensure that the devices to be upgraded contain sufficient memory and confirm that current hardware and software configurations will continue to be supported properly by the new release. If the information is not clear, customers are advised to contact the Cisco Technical Assistance Center (TAC) or their contracted maintenance providers.

Cisco IOS Software

Each row of the following Cisco IOS Software table corresponds to a Cisco IOS Software train. If a particular train is vulnerable, the earliest releases that contain the fix are listed in the First Fixed Release column. Cisco recommends upgrading to the latest available release, where possible.

The Cisco IOS Software Checker allows customers to search for Cisco Security Advisories that address specific Cisco IOS Software releases. This tool is available on the Cisco Security Intelligence Operations (SIO) portal at http://tools.cisco.com/security/center/selectIOSVersion.x


Major Release      Availability of Repaired Releases
Affected 12.0-Based Releases First Fixed Release
There are no affected 12.0 based releases
Affected 12.2-Based Releases First Fixed Release
There are no affected 12.2 based releases
Affected 12.3-Based Releases First Fixed Release
There are no affected 12.3 based releases
Affected 12.4-Based Releases First Fixed Release
There are no affected 12.4 based releases
Affected 15.0-Based Releases First Fixed Release
There are no affected 15.0 based releases
Affected 15.1-Based Releases First Fixed Release
15.1EY Not vulnerable
15.1GC Vulnerable; first fixed in release 15.1M

Releases prior to 15.1(2)GC2 are not affected.
15.1M 15.1(4)M7

Releases prior to 15.1(4)M4 are not affected.
15.1MR Not vulnerable
15.1S Not vulnerable
15.1SG Not vulnerable
15.1SNG Not vulnerable
15.1SNH Not vulnerable
15.1T Not vulnerable
Affected 15.2-Based Releases First Fixed Release
There are no affected 15.2 based releases
Affected 15.3-Based Releases First Fixed Release
There are no affected 15.3 based releases

Workarounds

If the affected Cisco IOS device requires SIP for VoIP services, SIP cannot be disabled, and no workarounds are available. Users are advised to apply mitigation techniques to help limit exposure to the vulnerability. Mitigation consists of allowing only legitimate devices to connect to affected devices. To increase effectiveness, the mitigation must be coupled with anti-spoofing measures on the network edge. This action is required because SIP can use UDP as the transport protocol.

Additional mitigations that can be deployed on Cisco devices within the network are available in the companion document "Identifying and Mitigating Exploitation of the Cisco IOS Software Session Initiation Protocol Denial of Service Vulnerability", which is available at the following link: http://tools.cisco.com/security/center/viewAMBAlert.x?alertId=31516

Disabling SIP Listening Ports

For devices that do not require SIP to be enabled, the simplest and most effective workaround is to disable SIP processing on the device. Some releases of Cisco IOS Software allow administrators to disable SIP with the following commands:

sip-ua
 no transport udp
 no transport tcp
 no transport tcp tls
Warning: When applying this workaround to devices that are processing Media Gateway Control Protocol (MGCP) or H.323 calls, the device will not stop SIP processing while active calls are being processed. Under these circumstances, this workaround should be implemented during a maintenance window when active calls can be briefly stopped.

The show udp connections, show tcp brief all, and show control-plane host open-ports commands can be used to confirm that the SIP UDP and TCP ports are closed after applying this workaround.

Depending on the Cisco IOS Software release in use, when SIP is disabled the output from the show ip sockets command may still show the SIP ports open, but sending traffic to them will cause the SIP process to emit the following message:

*Nov 2 11:36:47.691: sip_udp_sock_process_read: SIP UDP Listener is DISABLED

Control Plane Policing

For devices that need to offer SIP services, it is possible to use Control Plane Policing (CoPP) to block SIP traffic to the device from untrusted sources. Cisco IOS Releases 12.0S, 12.2SX, 12.2S, 12.3T, 12.4, and 12.4T support the CoPP feature. CoPP may be configured on a device to protect the management and control planes to minimize the risk and effectiveness of direct infrastructure attacks by explicitly permitting only authorized traffic sent to infrastructure devices in accordance with existing security policies and configurations. The following example can be adapted to specific network configurations:

!– The 192.168.1.0/24 network and the 172.16.1.1 host are trusted.
!– Everything else is not trusted. The following access list is used
!– to determine what traffic needs to be dropped by a control plane
!– policy (the CoPP feature): if the access list matches (permit)
!– then traffic will be dropped and if the access list does not
!– match (deny) then traffic will be processed by the router.
access-list 100 deny udp 192.168.1.0 0.0.0.255 any eq 5060 access-list 100 deny tcp 192.168.1.0 0.0.0.255 any eq 5060 access-list 100 deny tcp 192.168.1.0 0.0.0.255 any eq 5061 access-list 100 deny udp host 172.16.1.1 any eq 5060 access-list 100 deny tcp host 172.16.1.1 any eq 5060 access-list 100 deny tcp host 172.16.1.1 any eq 5061 access-list 100 permit udp any any eq 5060 access-list 100 permit tcp any any eq 5060 access-list 100 permit tcp any any eq 5061
!– Permit (Police or Drop)/Deny (Allow) all other Layer3 and Layer4 !– traffic in accordance with existing security policies and !– configurations for traffic that is authorized to be sent !– to infrastructure devices. !– Create a Class-Map for traffic to be policed by !– the CoPP feature.
class-map match-all drop-sip-class   match access-group 100
!– Create a Policy-Map that will be applied to the !– Control-Plane of the device.
policy-map control-plane-policy  class drop-sip-class   drop
!– Apply the Policy-Map to the Control-Plane of the !– device. control-plane  service-policy input control-plane-policy
Note: Because SIP can use UDP as a transport protocol, it is possible to spoof the source address of an IP packet, which may bypass access control lists that permit communication to these ports from trusted IP addresses. Additional information on understanding unicast reverse path forwarding can be found at http://www.cisco.com/web/about/security/intelligence/unicast-rpf.html

In the above CoPP example, the access control entries (ACEs) that match the potential exploit packets with the "permit" action result in these packets being discarded by the policy-map "drop" function, while packets that match the "deny" action (not shown) are not affected by the policy-map "drop" function. Additional information on the configuration and use of the CoPP feature can be found at http://www.cisco.com/web/about/security/intelligence/coppwp_gs.html and http://www.cisco.com/en/US/docs/ios/12_3t/12_3t4/feature/guide/gtrtlimt.html.

Obtaining Fixed Software

Cisco has released free software updates that address the vulnerability described in this advisory. Prior to deploying software, customers are advised to consult their maintenance providers or check the software for feature set compatibility and known issues that are specific to their environments.

Customers may only install and expect support for feature sets they have purchased. By installing, downloading, accessing, or otherwise using such software upgrades, customers agree to follow the terms of the Cisco software license at http://www.cisco.com/en/US/docs/general/warranty/English/EU1KEN_.html.

Customers with Service Contracts

Customers with contracts should obtain upgraded software through their regular update channels. For most customers, upgrades should be obtained through the Software Navigator on Cisco.com at http://www.cisco.com/cisco/software/navigator.html.

Customers Using Third-Party Support Organizations

Customers with Cisco products that are provided or maintained through prior or existing agreements with third-party support organizations, such as Cisco Partners, authorized resellers, or service providers, should contact that organization for assistance with the appropriate course of action.

The effectiveness of any workaround or fix depends on specific customer situations, such as product mix, network topology, traffic behavior, and organizational mission. Because of the variety of affected products and releases, customers should consult their service providers or support organizations to ensure that any applied workaround or fix is the most appropriate in the intended network before it is deployed.

Customers Without Service Contracts

Customers who purchase directly from Cisco but do not hold a Cisco service contract and customers who make purchases through third-party vendors but are unsuccessful in obtaining fixed software through their point of sale should obtain upgrades by contacting the Cisco Technical Assistance Center (TAC):
  • +1 800 553 2447 (toll free from within North America)
  • +1 408 526 7209 (toll call from anywhere in the world)
  • email: tac@cisco.com
Customers should have the product serial number available and be prepared to provide the URL of this advisory as evidence of entitlement to a free upgrade. Customers without service contracts should request free upgrades through the TAC.

Refer to Cisco Worldwide Contacts at http://www.cisco.com/en/US/support/tsd_cisco_worldwide_contacts.html for additional TAC contact information, including localized telephone numbers, instructions, and email addresses for support in various languages.

Exploitation and Public Announcements

The Cisco Product Security Incident Response Team (PSIRT) is not aware of any public announcements or malicious use of the vulnerability that is described in this advisory.

This vulnerability was discovered by Cisco during the handling of customer service requests.

Status of This Notice: Final

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 in the following section is an uncontrolled copy, and may lack important information or contain factual errors.


Distribution

This advisory is posted on Cisco Security Intelligence Operations at the following link:
http://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-20131106-sip

Additionally, a text version of this advisory is clear signed with the Cisco PSIRT PGP key and circulated among the following email addresses:
  • cust-security-announce@cisco.com
  • first-bulletins@lists.first.org
  • bugtraq@securityfocus.com
  • vulnwatch@vulnwatch.org
  • cisco@spot.colorado.edu
  • cisco-nsp@puck.nether.net
  • full-disclosure@lists.grok.org.uk
Future updates of this advisory, if any, will reside on Cisco.com but may not be announced on mailing lists. Users can monitor this advisory's URL for any updates.

Revision History

Revision 1.1 2013-November-15 Minor changes to wording of "Disabling SIP Listening Ports" section in Workarounds.
Revision 1.0 2013-November-06 Initial public release.

Cisco Security Procedures

Complete information about reporting security vulnerabilities in Cisco products, obtaining assistance with security incidents, and registering to receive security information from Cisco is available on Cisco.com at http://www.cisco.com/web/about/security/psirt/security_vulnerability_policy.html. This web page includes instructions for press inquiries regarding Cisco Security Advisories. All Cisco Security Advisories are available at http://www.cisco.com/go/psirt.
Download this document (PDF)
 Download OVAL
View Printable Version