Name | CVE-2017-16516 |
Description | In the yajl-ruby gem 1.3.0 for Ruby, when a crafted JSON file is supplied to Yajl::Parser.new.parse, the whole ruby process crashes with a SIGABRT in the yajl_string_decode function in yajl_encode.c. This results in the whole ruby process terminating and potentially a denial of service. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
References | DLA-1167-1, DLA-3492-1, DLA-3516-1, ELA-892-1 |
Debian Bugs | 880691, 1040036, 1040146, 1040161 |
Vulnerable and fixed packages
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|
argyll (PTS) | jessie | 1.6.3-4 | vulnerable |
burp (PTS) | jessie | 1.3.48-4.1 | fixed |
| stretch | 2.0.54-1 | vulnerable |
| buster (security), buster, buster (lts) | 2.1.32-2+deb10u1 | fixed |
| bullseye | 2.2.18-8 | vulnerable |
| bookworm | 3.1.4-1 | vulnerable |
| sid, trixie | 3.1.4-3.1 | fixed |
collada2gltf (PTS) | stretch | 20140924-4 | vulnerable |
epics-base (PTS) | bookworm | 7.0.3.1-4 | fixed |
| sid, trixie | 7.0.8.1+dfsg1-6 | fixed |
r-cran-jsonlite (PTS) | stretch | 1.2-1 | vulnerable |
| buster | 1.6+dfsg-1 | vulnerable |
| bullseye | 1.7.2+dfsg-1 | vulnerable |
| bookworm | 1.8.4+dfsg-1 | vulnerable |
| sid, trixie | 1.8.9+dfsg-1 | fixed |
ruby-yajl (PTS) | jessie | 1.2.0-2 | vulnerable |
| stretch | 1.2.0-3 | vulnerable |
| buster | 1.3.1-1 | fixed |
| bullseye | 1.4.1-1 | fixed |
| sid, trixie, bookworm | 1.4.3-1 | fixed |
whitedb (PTS) | jessie | 0.7.2-1 | vulnerable |
| stretch | 0.7.3-2 | vulnerable |
xqilla (PTS) | jessie | 2.3.0-2 | vulnerable |
| stretch | 2.3.3-2 | vulnerable |
| buster, bullseye | 2.3.4-1 | fixed |
yajl (PTS) | jessie, jessie (lts) | 2.1.0-2+deb8u2 | fixed |
| stretch (lts), stretch | 2.1.0-2+deb9u2 | fixed |
| buster (security), buster, buster (lts) | 2.1.0-3+deb10u2 | fixed |
| bullseye | 2.1.0-3+deb11u2 | fixed |
| bookworm | 2.1.0-3+deb12u2 | fixed |
| sid, trixie | 2.1.0-5 | fixed |
The information below is based on the following data on fixed versions.
Notes
[stretch] - ruby-yajl <no-dsa> (Minor issue)
[jessie] - ruby-yajl <no-dsa> (Minor issue)
[bookworm] - burp <no-dsa> (Minor issue)
[bullseye] - burp <no-dsa> (Minor issue)
- epics-base <not-affected> (Forked parser not affected, #1040159)
[bookworm] - r-cran-jsonlite <no-dsa> (Minor issue)
[bullseye] - r-cran-jsonlite <no-dsa> (Minor issue)
[buster] - r-cran-jsonlite <no-dsa> (Minor issue)
- xqilla <not-affected> (Vulnerable code not present; embeds not-affected ancient yajl version)
xqilla's embedded yajl is ancient (around 0.2.2), not having the vulnerable code
https://github.com/brianmario/yajl-ruby/issues/176
https://github.com/brianmario/yajl-ruby/commit/a8ca8f476655adaa187eedc60bdc770fff3c51ce
burp fix: https://github.com/grke/burp/commit/5ce44cdf7018767b53a4c5466c62e4dc99d0bc93
epics-base: https://github.com/epics-base/epics-base/issues/405
r-cran-jsonlite: https://github.com/jeroen/jsonlite/issues/431
r-cran-jsonlite: https://github.com/jeroen/jsonlite/commit/ce9520f888c2339b48565fcc5ffecc85091e589e (v1.8.8)
[stretch] - burp <postponed> (Minor issue, DoS / clean crash)
[jessie] - burp <not-affected> (yajl not embedded before stretch)
[stretch] - r-cran-jsonlite <no-dsa> (Minor issue)
[jessie] - r-cran-jsonlite <no-dsa> (Minor issue)