Cisco IOS software contains two vulnerabilities within the Cisco IOS
WebVPN or Cisco IOS SSLVPN feature (SSLVPN) that can be remotely exploited
without authentication to cause a denial of service condition. Both
vulnerabilities affect both Cisco IOS WebVPN and Cisco IOS SSLVPN
features:

Crafted HTTPS packet will crash device.

SSLVPN sessions cause a memory leak in the device.

Cisco has released free software updates that address these
vulnerabilities.

Note: The March 25, 2009, Cisco IOS Security Advisory bundled publication
includes eight Security Advisories. All of the advisories address
vulnerabilities in Cisco IOS Software. Each advisory lists the releases that
correct the vulnerability or vulnerabilities in the advisory.

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 12.3(26) with an installed image name of
C2500-IS-L:

To determine that SSLVPN is enabled on your device, log in to the
device and issue the command-line interface (CLI) command "show
running-config | include webvpn". If the device returns any output
this means that SSLVPN is configured on the device and the device may be
vulnerable. Vulnerable configurations vary depending on whether the device is
supporting Cisco IOS WebVPN (introduced in Release 12.3(14)T) or Cisco IOS
SSLVPNs (introduced in Release 12.4(6)T). The following methods describe how to
confirm if the device is vulnerable:

If the output from "show running-config | include
webvpn" contains "webvpn enable" then the device is
configured with the original Cisco IOS WebVPN. The only way to confirm the
device is vulnerable is to examine the output of "show
running-config" to confirm that webvpn is enabled via the command
"webvpn enable" and that a "ssl trustpoint"
has been configured. The following example shows a vulnerable device configured
with Cisco IOS WebVPN:

webvpn enable
!
webvpn
ssl trustpoint TP-self-signed-29742012

If the output from "show running-config | include
webvpn" contains "webvpn gateway
<word>" then the device is supporting the
Cisco IOS SSLVPN feature. A device is vulnerable if it has the
"inservice"command in at least one of the "webvpn
gateway" sections. The following example shows a vulnerable device
configured with Cisco IOS SSLVPN:

The Cisco SSLVPN feature provides remote access to enterprise sites by
users from anywhere on the Internet. The SSLVPN provides users with secure
access to specific enterprise applications, such as e-mail and web browsing,
without requiring them to have VPN client software installed on their end-user
devices.

Details regarding these two vulnerabilities in Cisco IOS devices that
are running affected versions of system software are:

Crafted HTTPS packet will crash device

A device configured for SSLVPN may reload or hang when it receives a
specially crafted HTTPS packet. Completion of the 3-way handshake to the
associated TCP port number of the SSLVPN feature is required in order for the
vulnerability to be successfully exploited, however authentication is
"not" required. The default TCP port number for SSLVPN is
443.

This vulnerability is documented in Cisco bug ID CSCsk62253
(registered
customers only) and Common Vulnerabilities and Exposures (CVE)
identifier CVE-2009-0626 has been assigned to this vulnerability.

SSLVPN sessions cause a memory leak in the device

A device configured for SSLVPN may leak transmission control blocks
(TCBs) when processing an abnormally disconnected SSL session. Continued
exploitation may result in the device depleting its memory resources and result
in a crash of the device. Authentication is "not" required to
exploit this vulnerability.

The memory leak can be detected by running the command "show
tcp brief", like in the following example:

In the output above, those Transmission Control Blocks (TCBs) in the
state CLOSEWAIT will not go away and represent memory leaks. Please note that
only TCP connections with a local TCP port of 443 (the well-known port for
HTTPS) are relevant.

This vulnerability is documented in Cisco bug ID CSCsw24700
(registered
customers only) and Common Vulnerabilities and Exposures (CVE)
identifier CVE-2009-0628 has been assigned to this vulnerability.

Cisco has provided scores for the vulnerabilities in this advisory
based on the Common Vulnerability Scoring System (CVSS). The CVSS scoring in
this Security Advisory is done in accordance with CVSS version 2.0.

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

Cisco has provided a base and temporal score. Customers can
then compute environmental scores to assist in determining the impact of the
vulnerability in individual networks.

Cisco has provided an FAQ to answer additional questions
regarding CVSS at

Successful exploitation of any of the two vulnerabilities may result in
the device crashing, not accepting any new SSLVPN sessions or a memory leak.
Repeated exploitation may result in an extended denial of service (DoS)
condition.

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.

Each row of the Cisco IOS software table (below) names a
Cisco IOS release train. If a given release train is vulnerable, then the
earliest possible releases that contain the fix (along with the anticipated
date of availability for each, if applicable) are listed in the "First Fixed
Release" column of the table. The "Recommended Release" column indicates the
releases which have fixes for all the published vulnerabilities at the time of
this Advisory. A device running a release in the given train that is earlier
than the release in a specific column (less than the First Fixed Release) is
known to be vulnerable. Cisco recommends upgrading to a release equal to or
later than the release in the "Recommended Releases" column of the table.

Cisco has released free software updates that address these
vulnerabilities. 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 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 agreements 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 do not hold a Cisco
service contract, and customers who purchase through third-party vendors but
are unsuccessful in obtaining fixed software through their point of sale should
acquire 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

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

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.

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

first-teams@first.org

bugtraq@securityfocus.com

vulnwatch@vulnwatch.org

cisco@spot.colorado.edu

cisco-nsp@puck.nether.net

full-disclosure@lists.grok.org.uk

comp.dcom.sys.cisco@newsgate.cisco.com

Future updates of this advisory, if any, will be placed on Cisco's
worldwide website, but may or may not be actively announced on mailing lists or
newsgroups. Users concerned about this problem are encouraged to check the
above URL for any updates.