Skip to content

RubyGems Delete directory using symlink when decompressing tar

High severity GitHub Reviewed Published Jun 20, 2019 to the GitHub Advisory Database • Updated Aug 28, 2023

Package

bundler rubygems-update (RubyGems)

Affected versions

>= 2.7.6, < 2.7.9
>= 3.0.0, < 3.0.3

Patched versions

2.7.9
3.0.3

Description

A Directory Traversal issue was discovered in RubyGems 2.7.6 and later through 3.0.2. Before making new directories or touching files (which now include path-checking code for symlinks), it would delete the target destination. If that destination was hidden behind a symlink, a malicious gem could delete arbitrary files on the user's machine, presuming the attacker could guess at paths. Given how frequently gem is run as sudo, and how predictable paths are on modern systems (/tmp, /usr, etc.), this could likely lead to data loss or an unusable system.

References

Reviewed Jun 20, 2019
Published to the GitHub Advisory Database Jun 20, 2019
Last updated Aug 28, 2023

Severity

High
7.4
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
High
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H

Weaknesses

CVE ID

CVE-2019-8320

GHSA ID

GHSA-5x32-c9mf-49cc

Source code

Loading Checking history
See something to contribute? Suggest improvements for this vulnerability.