Cisco ASA up to 9.5 IKEv1/IKEv2 ikev2_add_rcv_frag UDP Packet memory corruption

CVSS Meta Temp Score
CVSS is a standardized scoring system to determine possibilities of attacks. The Temp Score considers temporal factors like disclosure, exploit and countermeasures. The unique Meta Score calculates the average score of different sources to provide a normalized scoring system.
Current Exploit Price (≈)
Our analysts are monitoring exploit markets and are in contact with vulnerability brokers. The range indicates the observed or calculated exploit price to be seen on exploit markets. A good indicator to understand the monetary effort required for and the popularity of an attack.
CTI Interest Score
Our Cyber Threat Intelligence team is monitoring different web sites, mailing lists, exploit markets and social media networks. The CTI Interest Score identifies the interest of attackers and the security community for this specific vulnerability in real-time. A high score indicates an elevated risk to be targeted for this vulnerability.
9.4$0-$5k0.00

A vulnerability, which was classified as very critical, has been found in Cisco ASA up to 9.5 (Firewall Software). This issue affects the function ikev2_add_rcv_frag of the component IKEv1/IKEv2. The manipulation as part of a UDP Packet leads to a memory corruption vulnerability. Using CWE to declare the problem leads to CWE-119. The product performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer. Impacted is confidentiality, integrity, and availability.

The bug was discovered 02/10/2016. The weakness was released 02/10/2016 by David Barksdale, Jordan Gruskovnjak and Alex Wheeler with Exodus Intelligence as cisco-sa-20160210-asa-ike / CSCux29978 / CSCux42019 as confirmed advisory (Website). The advisory is shared at tools.cisco.com. The public release was coordinated with Cisco. The identification of this vulnerability is CVE-2016-1287 since 01/04/2016. The attack may be initiated remotely. No form of authentication is needed for a successful exploitation. Technical details as well as a public exploit are known. The price for an exploit might be around USD $0-$5k at the moment (estimation calculated on 07/08/2022). Due to its background and reception, this vulnerability has a historic impact. The advisory points out:

The call to my_malloc() is passed the queue length plus a header size. There are several ways to attack this code. The most basic way to attack this code is to create a reassembly queue where one of the fragments has a length less than the default fragment header size of 8 bytes, which underflows the copy length during reassembly. This small value allows the length check (signed) in ikev2_add_rcv_frag() to be passed and the copy length to be larger (underflowed) than the allocated buffer size of: reassembly queue length + 8 in ikev2_reassemble_pkt().

A public exploit has been developed by David Barksdale/Jordan Gruskovnjak/Alex Wheeler and been published immediately after the advisory. The exploit is available at blog.exodusintel.com. It is declared as proof-of-concept. We expect the 0-day to have been worth approximately $100k and more. The vulnerability scanner Nessus provides a plugin with the ID 88713 (Cisco ASA Software IKEv1 and IKEv2 UDP Packet Handling RCE (cisco-sa-20160210-asa-ike)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family CISCO and running in the context l. The advisory illustrates:

After having successfully crafted fragments with length less than 8, the corruption happens during the fragments reassembly.

Upgrading to version 8.4(7.30), 8.7(1.18), 9.0(4.38), 9.1(7), 9.2(4.5), 9.3(3.7), 9.4(2.4) or 9.5(2.2) eliminates this vulnerability. A possible mitigation has been published immediately after the disclosure of the vulnerability. The advisory contains the following remark:

Looking for the value of the length field of a Fragment Payload (type 132) IKEv2 or IKEv1 packet allows detecting an exploitation attempt. Any length field with a value < 8 must be considered as an attempt to exploit the vulnerability. The detection also has to deal with the fact that the multiple payloads can be chained inside an IKEv2 packet, and that the Fragment Payload may not be the only/first payload of the packet.
Furthermore it is possible to detect and prevent this kind of attack with TippingPoint and the filter 23897.

The vulnerability is also documented in the databases at X-Force (110524), Tenable (88713) and Exploit-DB (39823). blog.exodusintel.com is providing further details. Entries connected to this vulnerability are available at VDB-139665, VDB-139666, VDB-139667 and VDB-142839.

Productinfo

Type

Vendor

Name

Version

License

Support

  • end of life (old version)

CPE 2.3info

CPE 2.2info

Video

CVSSv4info

VulDB CVSS-B Score: 🔍
VulDB CVSS-BT Score: 🔍
VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 9.9
VulDB Meta Temp Score: 9.4

VulDB Base Score: 10.0
VulDB Temp Score: 9.0
VulDB Vector: 🔍
VulDB Reliability: 🔍

NVD Base Score: 9.8
NVD Vector: 🔍

CVSSv2info

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexityAuthenticationConfidentialityIntegrityAvailability
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock
unlockunlockunlockunlockunlockunlock

VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍

NVD Base Score: 🔍

Exploitinginfo

Class: Memory corruption
CWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍

Local: No
Remote: Yes

Availability: 🔍
Access: Public
Status: Proof-of-Concept
Author: David Barksdale/Jordan Gruskovnjak/Alex Wheeler
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Price Prediction: 🔍
Current Price Estimation: 🔍

0-Dayunlockunlockunlockunlock
Todayunlockunlockunlockunlock

Nessus ID: 88713
Nessus Name: Cisco ASA Software IKEv1 and IKEv2 UDP Packet Handling RCE (cisco-sa-20160210-asa-ike)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 800316
OpenVAS Name: Cisco ASA Software IKEv1 and IKEv2 Buffer Overflow Vulnerability
OpenVAS File: 🔍
OpenVAS Family: 🔍

Exploit-DB: 🔍

Threat Intelligenceinfo

Interest: 🔍
Active Actors: 🔍
Active APT Groups: 🔍

Countermeasuresinfo

Recommended: Upgrade
Status: 🔍

Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Exploit Delay Time: 🔍

Upgrade: ASA 8.4(7.30)/8.7(1.18)/9.0(4.38)/9.1(7)/9.2(4.5)/9.3(3.7)/9.4(2.4)/9.5(2.2)
Suricata ID: 2022506
Suricata Class: 🔍
Suricata Message: 🔍

TippingPoint: 🔍

McAfee IPS: 🔍
McAfee IPS Version: 🔍

Timelineinfo

01/04/2016 🔍
02/10/2016 +37 days 🔍
02/10/2016 +0 days 🔍
02/10/2016 +0 days 🔍
02/10/2016 +0 days 🔍
02/10/2016 +0 days 🔍
02/10/2016 +0 days 🔍
02/10/2016 +0 days 🔍
02/11/2016 +1 days 🔍
02/11/2016 +0 days 🔍
02/11/2016 +0 days 🔍
02/12/2016 +1 days 🔍
07/08/2022 +2338 days 🔍

Sourcesinfo

Vendor: cisco.com

Advisory: cisco-sa-20160210-asa-ike / CSCux29978 / CSCux42019
Researcher: David Barksdale, Jordan Gruskovnjak, Alex Wheeler
Organization: Exodus Intelligence
Status: Confirmed
Coordinated: 🔍

CVE: CVE-2016-1287 (🔍)
X-Force: 110524 - Cisco ASA IKE buffer overflow
SecurityTracker: 1034997
Vulnerability Center: 56581 - [cisco-sa-20160210-asa-ike] Cisco ASA Remote DoS and Code Execution in IKEv1 and IKEv2, Critical
SecurityFocus: 83161 - Cisco Adaptive Security Appliance Software CVE-2016-1287 Buffer Overflow Vulnerability

scip Labs: https://www.scip.ch/en/?labs.20161013
Misc.: 🔍
See also: 🔍

Entryinfo

Created: 02/11/2016 16:23
Updated: 07/08/2022 02:48
Changes: 02/11/2016 16:23 (113), 07/29/2019 18:42 (4), 07/08/2022 02:48 (3)
Complete: 🔍
Cache ID: 18:FF3:103

Discussion

No comments yet. Languages: en.

Please log in to comment.

Do you need the next level of professionalism?

Upgrade your account now!