CVE-2016-2338

NameCVE-2016-2338
DescriptionAn exploitable heap overflow vulnerability exists in the Psych::Emitter start_document function of Ruby. In Psych::Emitter start_document function heap buffer "head" allocation is made based on tags array length. Specially constructed object passed as element of tags array can increase this array size after mentioned allocation and cause heap overflow.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-2158-1, ELA-1148-1

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
ruby2.1 (PTS)jessie, jessie (lts)2.1.5-2+deb8u14fixed
ruby2.3 (PTS)stretch (security)2.3.3-1+deb9u11fixed
stretch (lts), stretch2.3.3-1+deb9u12fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
ruby2.1sourcejessie2.1.5-2+deb8u14ELA-1148-1
ruby2.1source(unstable)(unfixed)
ruby2.3source(unstable)2.3.0-1

Notes

https://talosintelligence.com/reports/TALOS-2016-0032
https://git.ruby-lang.org/ruby.git/commit/?id=cc0313436160b735a3d41361cb5e3eeb10fcbdad (v2_3_0)
https://git.ruby-lang.org/ruby.git/commit/?id=db48c307944a9a18877236bdf9e9b778875f38ed (v2_3_0)

Search for package or bug name: Reporting problems