CVE-2017-16516 yajl-ruby gem Denial of Service vulnerability
A crafted JSON file causes the yajl-ruby library to crash the Ruby process, leading to a denial of service.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2017-16516?
CVE-2017-16516 is a high-severity denial of service vulnerability in Debian Debian Linux, published on 3 Nov 2017. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official 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.
Weakness: CWE-134
Which versions are affected by CVE-2017-16516?
2 open source packages ship an affected version, including yajl-ruby. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
yajl-ruby RubyGems | All versions | 1.3.1 |
yajl-ruby RubyGems | All versions | 1.3.1 |
Products include Debian Debian Linux, Yajl-Ruby Project Yajl-Ruby.
How do I fix CVE-2017-16516?
Upgrade yajl-ruby to 1.3.1 or later.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2017-16516 being exploited?
There is no known exploitation of CVE-2017-16516 in the wild and no public exploit code.
Other vulnerabilities in Debian Debian Linux
Sources
Also known as DEBIAN-CVE-2017-16516, DLA-1167-1, GHSA-wwh7-4jw9-33x6, OESA-2025-1156, UBUNTU-CVE-2017-16516.