Ruby up to 2.2.9/2.3.6/2.4.3/2.5.0 RubyGems YAML File deserialization
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.4 | $0-$5k | 0.00 |
Summary
A vulnerability was found in Ruby up to 2.2.9/2.3.6/2.4.3/2.5.0. It has been rated as critical. The impacted element is an unknown function of the component RubyGems. Performing a manipulation as part of YAML File results in deserialization. This vulnerability is cataloged as CVE-2018-1000074. The attack must be initiated from a local position. There is no exploit available. Upgrading the affected component is advised.
Details
A vulnerability, which was classified as critical, was found in Ruby up to 2.2.9/2.3.6/2.4.3/2.5.0 (Programming Language Software). This affects an unknown function of the component RubyGems. The manipulation as part of a YAML File leads to a deserialization vulnerability. CWE is classifying the issue as CWE-502. The product deserializes untrusted data without sufficiently verifying that the resulting data will be valid. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
RubyGems version Ruby 2.2 series: 2.2.9 and earlier, Ruby 2.3 series: 2.3.6 and earlier, Ruby 2.4 series: 2.4.3 and earlier, Ruby 2.5 series: 2.5.0 and earlier, prior to trunk revision 62422 contains a Deserialization of Untrusted Data vulnerability in owner command that can result in code execution. This attack appear to be exploitable via victim must run the `gem owner` command on a gem with a specially crafted YAML file. This vulnerability appears to have been fixed in 2.7.6.
The bug was discovered 02/15/2018. The weakness was shared 03/13/2018 (Website). The advisory is shared at blog.rubygems.org. This vulnerability is uniquely identified as CVE-2018-1000074 since 02/21/2018. 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. Neither technical details nor an exploit are publicly available.
The vulnerability was handled as a non-public zero-day exploit for at least 26 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 110551 (Ubuntu 14.04 LTS / 16.04 LTS / 17.10 : ruby1.9.1, ruby2.0, ruby2.3 vulnerabilities (USN-3685-1)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family Ubuntu Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 237072 (Red Hat Update for rh-ruby25-ruby (RHSA-2018:3731)).
Upgrading eliminates this vulnerability. A possible mitigation has been published 4 months after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Tenable (110551) and SecurityFocus (BID 103686†). The entries VDB-114428, VDB-114430, VDB-114431 and VDB-114432 are related to this item. If you want to get the best quality for vulnerability data then you always have to consider VulDB.
Product
Type
Name
Version
- 2.0
- 2.1
- 2.2
- 2.2.0
- 2.2.1
- 2.2.2
- 2.2.3
- 2.2.4
- 2.2.5
- 2.2.6
- 2.2.7
- 2.2.8
- 2.2.9
- 2.3
- 2.3.0
- 2.3.1
- 2.3.2
- 2.3.3
- 2.3.4
- 2.3.5
- 2.3.6
- 2.4
- 2.4.0
- 2.4.1
- 2.4.2
- 2.4.3
- 2.5.0
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.5VulDB Meta Temp Score: 6.4
VulDB Base Score: 5.3
VulDB Temp Score: 5.1
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.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: DeserializationCWE: CWE-502 / CWE-20
CAPEC: 🔍
ATT&CK: 🔍
Physical: Partially
Local: Yes
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 110551
Nessus Name: Ubuntu 14.04 LTS / 16.04 LTS / 17.10 : ruby1.9.1, ruby2.0, ruby2.3 vulnerabilities (USN-3685-1)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
OpenVAS ID: 881453
OpenVAS Name: Fedora Update for ruby FEDORA-2018-1fffa787e7
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Patch: github.com
Timeline
02/15/2018 🔍02/21/2018 🔍
03/13/2018 🔍
03/13/2018 🔍
03/14/2018 🔍
03/28/2018 🔍
06/13/2018 🔍
06/15/2018 🔍
02/21/2023 🔍
Sources
Advisory: USN-3685-1Status: Confirmed
CVE: CVE-2018-1000074 (🔍)
GCVE (CVE): GCVE-0-2018-1000074
GCVE (VulDB): GCVE-100-114429
OVAL: 🔍
SecurityFocus: 103686 - Ruby CVE-2018-6914 Directory Traversal Vulnerability
See also: 🔍
Entry
Created: 03/14/2018 07:44Updated: 02/21/2023 14:18
Changes: 03/14/2018 07:44 (77), 01/13/2020 06:29 (5), 02/21/2023 14:14 (5), 02/21/2023 14:18 (1)
Complete: 🔍
Cache ID: 216::103
If you want to get the best quality for vulnerability data then you always have to consider VulDB.
No comments yet. Languages: en.
Please log in to comment.