Vulnerabilities / CVE-2017-14064

critical

CVE-2017-14064

ruby: Arbitrary heap exposure during a JSON.generate call

Published Modified CWE 119
In the Trivy database since at least 24 Oct 2026, 07:11 UTCWhen it arrived before that build is not recorded.

Severity by source

NVD9.8CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Red Hat5.9CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N

Trivy's own label is CRITICAL. Rated critical by NVD. Rated lower by Oracle (high), Photon OS (high), Amazon (medium), Red Hat (low), Ubuntu (low).

Description

Ruby through 2.2.7, 2.3.x through 2.3.4, and 2.4.x through 2.4.1 can expose arbitrary memory during a JSON.generate call. The issues lies in using strdup in ext/json/ext/generator/generator.c, which will stop after encountering a '\0' byte, returning a pointer to a string of length zero, which is not the length stored in space_len.

Affected packages and fixed versions

SourcePackageFixed in
alpine 3.10ruby2.4.2-r0
alpine 3.11ruby2.4.2-r0
alpine 3.12ruby2.4.2-r0
alpine 3.13ruby2.4.2-r0
alpine 3.14ruby2.4.2-r0
alpine 3.15ruby2.4.2-r0
alpine 3.16ruby2.4.2-r0
alpine 3.17ruby2.4.2-r0
alpine 3.18ruby2.4.2-r0
alpine 3.19ruby2.4.2-r0
alpine 3.20ruby2.4.2-r0
alpine 3.21ruby2.4.2-r0
Show all 88 entries from 34 sources
SourcePackageFixed in
alpine 3.10ruby2.4.2-r0
alpine 3.11ruby2.4.2-r0
alpine 3.12ruby2.4.2-r0
alpine 3.13ruby2.4.2-r0
alpine 3.14ruby2.4.2-r0
alpine 3.15ruby2.4.2-r0
alpine 3.16ruby2.4.2-r0
alpine 3.17ruby2.4.2-r0
alpine 3.18ruby2.4.2-r0
alpine 3.19ruby2.4.2-r0
alpine 3.20ruby2.4.2-r0
alpine 3.21ruby2.4.2-r0
alpine 3.22ruby2.4.2-r0
alpine 3.23ruby2.4.2-r0
alpine 3.24ruby2.4.2-r0
alpine 3.3ruby2.2.8-r0
alpine 3.4ruby2.3.5-r0
alpine 3.5ruby2.3.5-r0
alpine 3.5ruby2.22.2.8-r0
alpine 3.6ruby2.4.2-r0
alpine 3.6ruby2.22.2.8-r0
alpine 3.7ruby2.4.2-r0
alpine 3.8ruby2.4.2-r0
alpine 3.9ruby2.4.2-r0
alpine edgeruby2.4.2-r0
amazon linux 1ruby222.2.8-1.9.amzn1
amazon linux 1ruby22-debuginfo2.2.8-1.9.amzn1
amazon linux 1ruby22-devel2.2.8-1.9.amzn1
amazon linux 1ruby22-doc2.2.8-1.9.amzn1
amazon linux 1ruby22-irb2.2.8-1.9.amzn1
amazon linux 1ruby22-libs2.2.8-1.9.amzn1
amazon linux 1ruby232.3.5-1.17.amzn1
amazon linux 1ruby23-debuginfo2.3.5-1.17.amzn1
amazon linux 1ruby23-devel2.3.5-1.17.amzn1
amazon linux 1ruby23-doc2.3.5-1.17.amzn1
amazon linux 1ruby23-irb2.3.5-1.17.amzn1
amazon linux 1ruby23-libs2.3.5-1.17.amzn1
amazon linux 1ruby242.4.2-1.30.4.amzn1
amazon linux 1ruby24-debuginfo2.4.2-1.30.4.amzn1
amazon linux 1ruby24-devel2.4.2-1.30.4.amzn1
amazon linux 1ruby24-doc2.4.2-1.30.4.amzn1
amazon linux 1ruby24-irb2.4.2-1.30.4.amzn1
amazon linux 1ruby24-libs2.4.2-1.30.4.amzn1
amazon linux 1rubygem22-bigdecimal1.2.6-1.9.amzn1
amazon linux 1rubygem22-io-console0.4.3-1.9.amzn1
amazon linux 1rubygem22-psych2.0.8.1-1.9.amzn1
amazon linux 1rubygem23-bigdecimal1.2.8-1.17.amzn1
amazon linux 1rubygem23-did_you_mean1.0.0-1.17.amzn1
amazon linux 1rubygem23-io-console0.4.5-1.17.amzn1
amazon linux 1rubygem23-json1.8.3.1-1.17.amzn1
amazon linux 1rubygem23-psych2.1.0.1-1.17.amzn1
amazon linux 1rubygem24-bigdecimal1.3.0-1.30.4.amzn1
amazon linux 1rubygem24-did_you_mean1.1.0-1.30.4.amzn1
amazon linux 1rubygem24-io-console0.4.6-1.30.4.amzn1
amazon linux 1rubygem24-json2.0.4-1.30.4.amzn1
amazon linux 1rubygem24-psych2.2.2-1.30.4.amzn1
amazon linux 1rubygem24-xmlrpc0.2.1-1.30.4.amzn1
amazon linux 1rubygems222.4.5.2-1.9.amzn1
amazon linux 1rubygems22-devel2.4.5.2-1.9.amzn1
amazon linux 1rubygems232.5.2.1-1.17.amzn1
amazon linux 1rubygems23-devel2.5.2.1-1.17.amzn1
amazon linux 1rubygems242.6.13-1.30.4.amzn1
amazon linux 1rubygems24-devel2.6.13-1.30.4.amzn1
debian 7ruby1.9.11.9.3.194-8.1+deb7u6
debian 8ruby2.12.1.5-2+deb8u4
debian 9ruby2.32.3.3-1+deb9u1
Oracle Linux 7ruby2.0.0.648-33.el7_4
Oracle Linux 7ruby-devel2.0.0.648-33.el7_4
Oracle Linux 7ruby-doc2.0.0.648-33.el7_4
Oracle Linux 7ruby-irb2.0.0.648-33.el7_4
Oracle Linux 7ruby-libs2.0.0.648-33.el7_4
Oracle Linux 7ruby-tcltk2.0.0.648-33.el7_4
Oracle Linux 7rubygem-bigdecimal1.2.0-33.el7_4
Oracle Linux 7rubygem-io-console0.4.2-33.el7_4
Oracle Linux 7rubygem-json1.7.7-33.el7_4
Oracle Linux 7rubygem-minitest4.3.2-33.el7_4
Oracle Linux 7rubygem-psych2.0.0-33.el7_4
Oracle Linux 7rubygem-rake0.9.6-33.el7_4
Oracle Linux 7rubygem-rdoc4.0.0-33.el7_4
Oracle Linux 7rubygems2.0.14.1-33.el7_4
Oracle Linux 7rubygems-devel2.0.14.1-33.el7_4
Photon OS 1.0ruby2.4.0-6.ph1
Photon OS 2.0ruby2.4.2-1.ph2
ubuntu 14.04ruby1.9.11.9.3.484-2ubuntu1.5
ubuntu 14.04ruby2.02.0.0.484-1ubuntu2.10
ubuntu 16.04ruby2.32.3.1-2~16.04.5
ubuntu 16.04-ESMruby2.32.3.1-2~16.04.5
ubuntu 17.10ruby2.32.3.3-1ubuntu1.2

References

All 25 references

Vulnerability data compiled from the Trivy vulnerability database (trivy-db, Aqua Security, Apache License 2.0), which aggregates third-party advisories. CVE records are published by The MITRE Corporation under the CVE Terms of Use; CVE is a trademark of MITRE. This product uses data from the NVD API but is not endorsed or certified by the NVD. Severity, titles and advisory data from the GitHub Advisory Database (CC BY 4.0), Red Hat security data (CC BY 4.0) and the other sources linked on each entry. Entries may be summarised or re-formatted; the linked original is the authoritative record.