Buffer overflow in Ruby
CVE-2016-2339
An exploitable heap overflow vulnerability exists in the Fiddle::Function.new "initialize" function functionality of Ruby. In Fiddle::Function.new "initialize" heap buffer "arg_types" allocation is made based on args array length. Specially constructed object passed as element of args array can increase this array size after mentioned allocation and cause heap overflow.
Vulnerability class: Buffer Overflow
EPSS: 0.052 (91.9th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
Affected products
- Ruby — versions 2.2.2, 2.3.0 dev
- Ruby-lang Ruby — versions 2.2.2, 2.3.0
Weakness classification (CWE)
References
- cret@cert.org (mailing-list, x_refsource_MLIST)
- cret@cert.org (vdb-entry, x_refsource_BID)
- cret@cert.org (Technical Description, Exploit, VDB Entry, Third Party Advisory, x_refsource_MISC)
Frequently asked questions
- What is CVE-2016-2339?
- CVE-2016-2339 is a critical-severity vulnerability in Ruby, classified under Improper Restriction of Operations within the Bounds of a Memory Buffer. CVSS score: 9.8/10. Published 2017-01-06.
- How severe is CVE-2016-2339?
- Critical severity. CVSS v3 base score is 9.8 out of 10.