CVE-2018-8778: High severity Apple macOS Mojave vulnerability

Published Mar 29, 2018
·
Updated

In Ruby before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1, an attacker controlling the unpacking format (similar to format string vulnerabilities) can trigger a buffer under-read in the String#unpack method, resulting in a massive and controlled information disclosure.

Other sources

Ruby. Multiple issues in Ruby were addressed in this update.

String#unpack receives format specifiers as its parameter, and can be specified the position of parsing the data by the specifier @. If a big number is passed with @, the number is treated as the negative value, and out-of-buffer read is occurred. So, if a script accepts an external input as the argument of String#unpack, the attacker can read data on heaps.

Affected versions:

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

External References:

https://www.ruby-lang.org/en/news/2018/03/28/buffer-under-read-unpack-cve-2018-8778/

Red Hat

Credit

CVE-2017-0898, CVE-2017-10784, CVE-2017-14033, CVE-2017-14064, CVE-2017-17405, CVE-2017-17742, CVE-2018-6914, CVE-2018-8777, CVE-2018-8778, CVE-2018-8779, CVE-2018-8780

Affected Software

29 affected componentsFixes available
redhat/ruby<2.2.10
2.2.10
redhat/ruby<2.3.7
2.3.7
redhat/ruby<2.4.4
2.4.4
redhat/ruby<2.5.1
2.5.1
debian/ruby1.8
debian/ruby1.9.1
debian/ruby2.1
debian/ruby2.5
Apple macOS Mojave<10.14.1
10.14.1
Apple High Sierra
Apple Sierra
Apple macOS High Sierra<10.13.6
10.13.6
Apple El Capitan
ruby-lang Ruby>=2.2.0<2.2.10
ruby-lang Ruby>=2.3.0<2.3.7
ruby-lang Ruby>=2.4.0<2.4.4
ruby-lang Ruby>=2.5.0<2.5.1
ruby-lang Ruby=2.6.0-preview1
Canonical Ubuntu Linux=14.04
Canonical Ubuntu Linux=16.04
Canonical Ubuntu Linux=17.10
Debian Debian Linux=7.0
Debian Debian Linux=8.0
Debian Debian Linux=9.0
redhat Enterprise Linux=6.0
redhat Enterprise Linux=7.0
redhat Enterprise Linux=7.4
redhat Enterprise Linux=7.5
redhat Enterprise Linux=7.6

Event History

Apr 3, 2018
CVE Published
via MITRE·10:00 PM
Data Sourced
via MITRE·10:00 PM
Description
Data Sourced
via NVD·10:29 PM
RemedyDescriptionSeverityWeaknessAffected Software
Jan 11, 2024
Data Sourced
via Launchpad·11:10 PM
Description
Feb 20, 2026
Data Sourced
via Ubuntu·08:44 PM
RemedyDescriptionSeverityAffected Software

Parent advisories

This vulnerability appears in the following advisories.

Free Weekly Intel

Don't miss critical vulnerabilities

Join thousands of security professionals who receive our weekly digest of trending CVEs, zero-days, and exploited vulnerabilities.

No spam. Unsubscribe anytime.

Frequently Asked Questions

1

What is CVE-2018-8778?

CVE-2018-8778 is a vulnerability in Ruby that allows an attacker to trigger a buffer under-read in the String#unpack method.

2

What is the severity of CVE-2018-8778?

CVE-2018-8778 has a severity rating of 7.5, which is considered high.

3

How does CVE-2018-8778 affect Ruby versions?

CVE-2018-8778 affects Ruby versions before 2.2.10, 2.3.x before 2.3.7, 2.4.x before 2.4.4, 2.5.x before 2.5.1, and 2.6.0-preview1.

4

What is the remedy for CVE-2018-8778?

To fix CVE-2018-8778, update Ruby to version 2.2.10, 2.3.7, 2.4.4, 2.5.1, or apply the appropriate security patches.

5

Where can I find more information about CVE-2018-8778?

More information about CVE-2018-8778 can be found at the following references: [link1], [link2], [link3].

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203