CVE-2018-8778

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.

Published: 2018-04-03 Last update: 2024-11-21 Assigner: [email protected] Source: [email protected]

Conclusion & alert: CVE-2018-8778 is rated High Risk (67.9/100): CVSS High severity, with high exploitation likelihood (EPSS 7.83%, 94th percentile). Core evidence: EPSS ranks this CVE among the most likely to be exploited in the near term. EPSS rose +7.29% over the last day, indicating growing attacker interest. Mandatory action: High exploitation likelihood—assess exposure and prioritize remediation.

Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.

Exploit prediction scoring system (EPSS) score for CVE-2018-8778

EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).

# Date Old EPSS score New EPSS score Delta (New - Old)
1 2026-06-15 0.54% 7.83% +7.29%
2 2026-03-04 1.68% 0.54% -1.15%
3 2026-03-01 1.68%

Full EPSS history (53 records total)

Common vulnerability scoring system (CVSS) metrics for CVE-2018-8778

CVSS metrics for this CVE.

Base score Version Severity Vector Exploitability Impact Score source
7.5 3.0 HIGH
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N Click to expand
Attack vector (AV:N)
Could be attacked over the internet or any normal routed network—not just someone sitting at the machine.
Attack complexity (AC:L)
Once they can reach the bug, pulling it off is straightforward—no weird race conditions or rare setup.
Privileges required (PR:N)
No account or special rights needed—anonymous or random user is enough.
User interaction (UI:N)
Nobody has to click “OK” or open a trap file; it can work without a victim helping.
Scope (S:U)
Damage stays in the same “trust bubble” as the broken component—no big spill into unrelated systems.
Confidentiality (C:H)
Serious risk that confidential data gets exposed in a big way.
Integrity (I:N)
Data isn’t meaningfully altered or forged.
Availability (A:N)
Service keeps running; no real outage angle.
3.9 3.6 [email protected]
5.0 2.0 MEDIUM
AV:N/AC:L/Au:N/C:P/I:N/A:N Click to expand
Access vector (AV:N)
Can be exploited remotely over network reachability.
Access complexity (AC:L)
Exploitation conditions are straightforward and predictable.
Authentication (AU:N)
No authentication is required.
Confidentiality impact (C:P)
Partial confidentiality impact.
Integrity impact (I:N)
No integrity impact.
Availability impact (A:N)
No availability impact.
10.0 2.9 [email protected]

Weakness enumeration for CVE-2018-8778

OS Trackers for CVE-2018-8778

vendor priority summary link
alpine high CVE-2018-8778: 1 source package rows (ruby); 20 state rows across 10 repos (3.10-main, 3.11-main, 3.12-main, 3.17-main, 3.18-main, 3.19-main, 3.20-main, 3.21-main, 3.22-main, edge-main); fixed 10, open 10. https://security.alpinelinux.org/vuln/CVE-2018-8778
redhat medium https://access.redhat.com/security/cve/CVE-2018-8778
suse medium CVE-2018-8778 severity moderate: SUSE including 300 source package names (2.17-17.3:libruby2_5-2_5-2.5.5-4.3.1, 2.17-17.3:ruby2.5-2.5.5-4.3.1, …), 1000 product×package rows across 244 product lines (Container bci/ruby, Container suse/rmt-server, … (244 product lines)): Fixed 842, Known Affected 157, Known Not Affected 1. https://www.suse.com/security/cve/CVE-2018-8778/
ubuntu medium CVE-2018-8778 medium priority: Ubuntu including 4 source packages (ruby1.9.1, ruby2.0, ruby2.3, ruby2.5), 20 status rows across 5 suites (artful, bionic, trusty, upstream, xenial): DNE 11, released 5, needs-triage 4. https://ubuntu.com/security/CVE-2018-8778

Affected software / configurations for CVE-2018-8778

Vendor Product Version Raw CPE
ruby-lang ruby >= 2.2.0, < 2.2.10 cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*
ruby-lang ruby >= 2.3.0, < 2.3.7 cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*
ruby-lang ruby >= 2.4.0, < 2.4.4 cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*
ruby-lang ruby >= 2.5.0, < 2.5.1 cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*
ruby-lang ruby 2.6.0 cpe:2.3:a:ruby-lang:ruby:2.6.0:preview1:*:*:*:*:*:*
canonical ubuntu_linux 14.04 cpe:2.3:o:canonical:ubuntu_linux:14.04:*:*:*:lts:*:*:*
canonical ubuntu_linux 16.04 cpe:2.3:o:canonical:ubuntu_linux:16.04:*:*:*:lts:*:*:*
canonical ubuntu_linux 17.10 cpe:2.3:o:canonical:ubuntu_linux:17.10:*:*:*:*:*:*:*
debian debian_linux 7.0 cpe:2.3:o:debian:debian_linux:7.0:*:*:*:*:*:*:*
debian debian_linux 8.0 cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*
debian debian_linux 9.0 cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*
redhat enterprise_linux 6.0 cpe:2.3:o:redhat:enterprise_linux:6.0:*:*:*:*:*:*:*
redhat enterprise_linux 7.0 cpe:2.3:o:redhat:enterprise_linux:7.0:*:*:*:*:*:*:*
redhat enterprise_linux 7.4 cpe:2.3:o:redhat:enterprise_linux:7.4:*:*:*:*:*:*:*
redhat enterprise_linux 7.5 cpe:2.3:o:redhat:enterprise_linux:7.5:*:*:*:*:*:*:*
redhat enterprise_linux 7.6 cpe:2.3:o:redhat:enterprise_linux:7.6:*:*:*:*:*:*:*

References for CVE-2018-8778

URL Tags
http://lists.opensuse.org/opensuse-security-announce/2019-07/msg00036.html
http://www.securityfocus.com/bid/103693 Third Party Advisory VDB Entry
http://www.securitytracker.com/id/1042004 Third Party Advisory VDB Entry
https://access.redhat.com/errata/RHSA-2018:3729 Third Party Advisory
https://access.redhat.com/errata/RHSA-2018:3730 Third Party Advisory
https://access.redhat.com/errata/RHSA-2018:3731 Third Party Advisory
https://access.redhat.com/errata/RHSA-2019:2028
https://lists.debian.org/debian-lts-announce/2018/04/msg00023.html Mailing List Third Party Advisory
https://lists.debian.org/debian-lts-announce/2018/04/msg00024.html Mailing List Third Party Advisory
https://lists.debian.org/debian-lts-announce/2018/07/msg00012.html Mailing List Third Party Advisory
https://usn.ubuntu.com/3626-1/ Third Party Advisory
https://www.debian.org/security/2018/dsa-4259 Third Party Advisory
https://www.ruby-lang.org/en/news/2018/03/28/buffer-under-read-unpack-cve-2018-8778/ Vendor Advisory
https://www.ruby-lang.org/en/news/2018/03/28/ruby-2-2-10-released/ Patch Vendor Advisory
https://www.ruby-lang.org/en/news/2018/03/28/ruby-2-3-7-released/ Patch Vendor Advisory
https://www.ruby-lang.org/en/news/2018/03/28/ruby-2-4-4-released/ Patch Vendor Advisory
https://www.ruby-lang.org/en/news/2018/03/28/ruby-2-5-1-released/ Patch Vendor Advisory
cvelogic Threat Intelligence