| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Apple Safari 10.0.3 on MacOS. It has been rated as critical. This issue affects the function JSC::CachedCall. Performing a manipulation results in access control.
This vulnerability was named CVE-2017-2491. The attack may be initiated remotely. In addition, an exploit is available.
Upgrading the affected component is advised.
Details
A vulnerability classified as critical has been found in Apple Safari 10.0.3 on MacOS (Web Browser). This affects the function JSC::CachedCall. The manipulation with an unknown input leads to a access control vulnerability. CWE is classifying the issue as CWE-284. The product does not restrict or incorrectly restricts access to a resource from an unauthorized actor. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
Use after free vulnerability in the String.replace method JavaScriptCore in Apple Safari in iOS before 10.3 allows remote attackers to execute arbitrary code via a crafted web page, or a crafted file.
The bug was discovered 03/17/2017. The weakness was presented 05/04/2017 as ZDI-17-231 as confirmed exploit (Exploit-DB). It is possible to read the advisory at exploit-db.com. This vulnerability is uniquely identified as CVE-2017-2491 since 12/01/2016. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. It demands that the victim is doing some kind of user interaction. Technical details and a public exploit are known. The attack technique deployed by this issue is T1068 according to MITRE ATT&CK. The advisory points out:
The WebKit bug we used at Pwn2Own is CVE-2017-2491 / ZDI-17-231, a use-after-free of a JSString object in JavaScriptCore. By triggering it, we can obtain a dangling pointer to a JSString object in a JavaScript callback. At first, the specific scenario seems very hard to exploit, but we found a rather generic technique to still get a reliable read/write primitive out of it, although it requires a very large (~28 GiB) heap spray. This is possible even on a MacBook with 8 GB of RAM thanks to the page compression mechanism in macOS.
A public exploit has been developed by saelo/niklasb in Javascript and been published immediately after the advisory. The exploit is shared for download 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 10 days. During that time the estimated underground price was around $25k-$100k. The vulnerability scanner Nessus provides a plugin with the ID 99264 (Apple TV < 10.2 Multiple Vulnerabilities), which helps to determine the existence of the flaw in a target environment. It is assigned to the family Misc. and running in the context r.
Upgrading eliminates this vulnerability. A possible mitigation has been published before and not just after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Exploit-DB (41964), Tenable (99264) and SecurityFocus (BID 98316†). See VDB-98613, VDB-98614, VDB-98618 and VDB-98623 for similar entries. Be aware that VulDB is the high quality source for vulnerability data.
Product
Type
Vendor
Name
Version
License
Website
- Vendor: https://www.apple.com/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.6VulDB 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: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Access controlCWE: CWE-284 / CWE-266
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Access: Public
Status: Proof-of-Concept
Author: saelo/niklasb
Programming Language: 🔍
Download: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 99264
Nessus Name: Apple TV < 10.2 Multiple Vulnerabilities
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
Exploit-DB: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔍
Exploit Delay Time: 🔍
Timeline
12/01/2016 🔍03/17/2017 🔍
03/27/2017 🔍
04/10/2017 🔍
05/04/2017 🔍
05/04/2017 🔍
05/04/2017 🔍
05/04/2017 🔍
05/05/2017 🔍
06/27/2017 🔍
01/24/2025 🔍
Sources
Vendor: apple.comAdvisory: ZDI-17-231
Researcher: Samuel Gro??, Niklas Baumstark.
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2017-2491 (🔍)
GCVE (CVE): GCVE-0-2017-2491
GCVE (VulDB): GCVE-100-100863
SecurityFocus: 98316 - Apple Safari CVE-2017-2491 Use After Free Remote Code Execution Vulnerability
OSVDB: - CVE-2017-2491 - Apple - Iphone Os - Medium
scip Labs: https://www.scip.ch/en/?labs.20161013
See also: 🔍
Entry
Created: 05/05/2017 09:17Updated: 01/24/2025 11:17
Changes: 05/05/2017 09:17 (80), 09/23/2020 22:23 (8), 12/22/2020 12:58 (3), 01/24/2025 11:17 (15)
Complete: 🔍
Cache ID: 216::103
Be aware that VulDB is the high quality source for vulnerability data.

No comments yet. Languages: en.
Please log in to comment.