Apple watchOS up to 3.2.1 WebKit JSObject::ensureLength ensureLengthSlow 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.
7.2$0-$5k0.00

Summaryinfo

A vulnerability marked as critical has been reported in Apple watchOS up to 3.2.1. This affects the function JSObject::ensureLength of the component WebKit. This manipulation of the argument ensureLengthSlow causes memory corruption. The identification of this vulnerability is CVE-2017-2521. It is possible to initiate the attack remotely. Furthermore, there is an exploit available. It is suggested to upgrade the affected component.

Detailsinfo

A vulnerability was found in Apple watchOS up to 3.2.1 (Smartwatch Operating System). It has been declared as critical. Affected by this vulnerability is the function JSObject::ensureLength of the component WebKit. The manipulation of the argument ensureLengthSlow with an unknown input leads to a memory corruption vulnerability. The CWE definition for the vulnerability is 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. As an impact it is known to affect confidentiality, integrity, and availability.

The bug was discovered 05/10/2017. The weakness was shared 05/15/2017 by lokihardt with Google Project Zero as HT207800 as confirmed advisory (Website). The advisory is shared at support.apple.com. This vulnerability is known as CVE-2017-2521 since 12/01/2016. The attack can be launched remotely. The exploitation doesn't need any form of authentication. It demands that the victim is doing some kind of user interaction. Technical details and also a public exploit are known. The advisory points out:

Multiple memory corruption issues were addressed with improved memory handling.

A public exploit has been developed by Google Security Research and been published 3 weeks after the advisory. It is possible to download the exploit at exploit-db.com. It is declared as proof-of-concept. The vulnerability was handled as a non-public zero-day exploit for at least 5 days. During that time the estimated underground price was around $5k-$25k. The vulnerability scanner Nessus provides a plugin with the ID 100355 (macOS : Apple Safari < 10.1.1 Multiple Vulnerabilities), which helps to determine the existence of the flaw in a target environment. It is assigned to the family MacOS X Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 371242 (Apple Safari 10.1.1 Not Installed (APPLE-SA-2017-05-15-7)).

Upgrading to version 3.2.2 eliminates this vulnerability. A possible mitigation has been published immediately after the disclosure of the vulnerability.

The vulnerability is also documented in the databases at Exploit-DB (42103), Tenable (100355) and SecurityFocus (BID 98456†). The entries VDB-101294, VDB-101254, VDB-101262 and VDB-101263 are related to this item. Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Productinfo

Type

Vendor

Name

Version

License

Website

CPE 2.3info

CPE 2.2info

CVSSv4info

VulDB Vector: 🔍
VulDB Reliability: 🔍

CVSSv3info

VulDB Meta Base Score: 7.6
VulDB Meta Temp Score: 7.2

VulDB Base Score: 6.3
VulDB Temp Score: 5.7
VulDB Vector: 🔍
VulDB Reliability: 🔍

NVD Base Score: 8.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: 🔍

Physical: No
Local: No
Remote: Yes

Availability: 🔍
Access: Public
Status: Proof-of-Concept
Author: Google Security Research
Download: 🔍

EPSS Score: 🔍
EPSS Percentile: 🔍

Price Prediction: 🔍
Current Price Estimation: 🔍

0-DayUnlockUnlockUnlockUnlock
TodayUnlockUnlockUnlockUnlock

Nessus ID: 100355
Nessus Name: macOS : Apple Safari < 10.1.1 Multiple Vulnerabilities
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍

OpenVAS ID: 802925
OpenVAS Name: Apple Safari Multiple Vulnerabilities-HT207804
OpenVAS File: 🔍
OpenVAS Family: 🔍

Qualys ID: 🔍
Qualys Name: 🔍

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: watchOS 3.2.2

Timelineinfo

12/01/2016 🔍
05/10/2017 +160 days 🔍
05/15/2017 +5 days 🔍
05/15/2017 +0 days 🔍
05/15/2017 +0 days 🔍
05/16/2017 +1 days 🔍
05/22/2017 +5 days 🔍
05/23/2017 +1 days 🔍
06/01/2017 +9 days 🔍
06/01/2017 +0 days 🔍
12/24/2024 +2763 days 🔍

Sourcesinfo

Vendor: apple.com

Advisory: HT207800
Researcher: lokihardt (lokihardt)
Organization: Google Project Zero
Status: Confirmed
Confirmation: 🔍

CVE: CVE-2017-2521 (🔍)
GCVE (CVE): GCVE-0-2017-2521
GCVE (VulDB): GCVE-100-101329
SecurityFocus: 98456 - WebKit CVE-2017-2521 Unspecified Memory Corruption Vulnerability
SecurityTracker: 1038487

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

Entryinfo

Created: 05/16/2017 09:09
Updated: 12/24/2024 13:19
Changes: 05/16/2017 09:09 (89), 10/13/2019 10:10 (6), 12/24/2020 08:05 (3), 12/24/2020 08:12 (1), 12/24/2024 13:19 (15)
Complete: 🔍
Cache ID: 216::103

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Discussion

No comments yet. Languages: en.

Please log in to comment.

Interested in the pricing of exploits?

See the underground prices here!