CVE-2019-8324 Code injection in RubyGems

High 8.8 Published Updated

Attackers can execute arbitrary code by crafting a gem with a multi-line name, exploiting improper handling in RubyGems during preinstall checks.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2019-8324?

CVE-2019-8324 is a high-severity code injection vulnerability in Debian Debian Linux, published on 17 Jun 2019. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

An issue was discovered in RubyGems 2.6 and later through 3.0.2. A crafted gem with a multi-line name is not handled correctly. Therefore, an attacker could inject arbitrary code to the stub line of gemspec, which is eval-ed by code in ensure_loadable_spec during the preinstall check.

Weakness: CWE-94

Which versions are affected by CVE-2019-8324?

4 open source packages ship an affected version, including rubygems-update. It affects 4 products.

PackageAffectedFixed in
rubygems-update RubyGemsFrom 2.6.02.7.9
rubygems-update RubyGemsFrom 2.6.02.7.9
rubygems-update RubyGemsFrom 3.0.03.0.2
rubygems-update RubyGemsFrom 3.0.03.0.2
Linux distribution packages (36)
rubygem-abrt AlmaLinux:8All versions0.3.0-4.module_el8.5.0+259+8cec6917
rubygem-abrt AlmaLinux:8All versions0.3.0-4.module_el8.5.0+2623+08a8ba32
rubygem-abrt-doc AlmaLinux:8All versions0.3.0-4.module_el8.5.0+259+8cec6917
rubygem-abrt-doc AlmaLinux:8All versions0.3.0-4.module_el8.5.0+2623+08a8ba32
rubygem-bson AlmaLinux:8All versions4.3.0-2.module_el8.5.0+259+8cec6917
rubygem-bson AlmaLinux:8All versions4.3.0-2.module_el8.5.0+2625+ec418553
rubygem-bson-doc AlmaLinux:8All versions4.3.0-2.module_el8.5.0+259+8cec6917
rubygem-bson-doc AlmaLinux:8All versions4.3.0-2.module_el8.5.0+2625+ec418553
rubygem-mongo AlmaLinux:8All versions2.5.1-2.module_el8.5.0+259+8cec6917
rubygem-mongo AlmaLinux:8All versions2.5.1-2.module_el8.5.0+2625+ec418553
rubygem-mongo-doc AlmaLinux:8All versions2.5.1-2.module_el8.5.0+259+8cec6917
rubygem-mongo-doc AlmaLinux:8All versions2.5.1-2.module_el8.5.0+2625+ec418553
rubygem-mysql2 AlmaLinux:8All versions0.4.10-4.module_el8.5.0+259+8cec6917
rubygem-mysql2 AlmaLinux:8All versions0.4.10-4.module_el8.5.0+2625+ec418553
rubygem-mysql2-doc AlmaLinux:8All versions0.4.10-4.module_el8.5.0+259+8cec6917
rubygem-mysql2-doc AlmaLinux:8All versions0.4.10-4.module_el8.5.0+2625+ec418553
rubygem-pg AlmaLinux:8All versions1.0.0-2.module_el8.5.0+259+8cec6917
rubygem-pg AlmaLinux:8All versions1.0.0-2.module_el8.5.0+2625+ec418553
rubygem-pg-doc AlmaLinux:8All versions1.0.0-2.module_el8.5.0+259+8cec6917
rubygem-pg-doc AlmaLinux:8All versions1.0.0-2.module_el8.5.0+2625+ec418553
ruby Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-debugsource Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-devel Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-doc Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-irb Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-libs Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
ruby-libs-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:2.5.3-104.module+el8.0.0+3250+4b7d6d43
rubygem-abrt Red Hat:enterprise_linux:8::appstreamAll versions0:0.3.0-4.module+el8.0.0+3250+4b7d6d43
rubygem-abrt-doc Red Hat:enterprise_linux:8::appstreamAll versions0:0.3.0-4.module+el8.0.0+3250+4b7d6d43
rubygem-bigdecimal Red Hat:enterprise_linux:8::appstreamAll versions0:1.3.4-104.module+el8.0.0+3250+4b7d6d43
rubygem-bigdecimal-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:1.3.4-104.module+el8.0.0+3250+4b7d6d43
rubygem-bson Red Hat:enterprise_linux:8::appstreamAll versions0:4.3.0-2.module+el8.0.0+3250+4b7d6d43
rubygem-bson-debuginfo Red Hat:enterprise_linux:8::appstreamAll versions0:4.3.0-2.module+el8.0.0+3250+4b7d6d43
rubygem-bson-debugsource Red Hat:enterprise_linux:8::appstreamAll versions0:4.3.0-2.module+el8.0.0+3250+4b7d6d43
rubygem-bson-doc Red Hat:enterprise_linux:8::appstreamAll versions0:4.3.0-2.module+el8.0.0+3250+4b7d6d43

Products include Debian Debian Linux, Opensuse Leap, Redhat Enterprise Linux, Rubygems Rubygems.

How do I fix CVE-2019-8324?

Upgrade rubygems-update to a fixed version for your release line: 2.7.9 or 3.0.2.

Upgrade, and never evaluate templates, expressions or code built from user input. More about Code injection.

Is CVE-2019-8324 being exploited?

There is no known exploitation of CVE-2019-8324 in the wild and no public exploit code.

All Debian Debian Linux vulnerabilities

Sources

Also known as ALPINE-CVE-2019-8324, ALSA-2019:1972, DEBIAN-CVE-2019-8324, GHSA-76wm-422q-92mq, RHSA-2019:1151, RHSA-2019:1972 and 2 more.

Is CVE-2019-8324 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free