RCE in Nokogiri
CVE-2019-5477
A command injection vulnerability in Nokogiri v1.10.3 and earlier allows commands to be executed in a subprocess via Ruby's `Kernel.open` method. Processes are vulnerable only if the undocumented method `Nokogiri::CSS::Tokenizer#load_file` is being called with unsafe user input as the filename. This vulnerability appears in code generated by the Rexical gem versions v1.0.6 and earlier. Rexical is used by Nokogiri to generate lexical scanner code for parsing CSS queries. The underlying vulnerability was addressed in Rexical v1.0.7 and Nokogiri upgraded to this version of Rexical in Nokogiri v1.10.4.
Vulnerability class: Command Injection (OS Command Injection)
EPSS: 0.059 (92.5th percentile) — read the EPSS interpretation.
CVSS v3 metric
CVSS v3 base score 9.8 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H.
Affected products
- Nokogiri
- Canonical Ubuntu_linux — versions 16.04, 18.04, 19.04
- Debian Debian_linux — versions 8.0, 10.0
- N/a Nokogiri (Ruby Gem) — versions Fixed in v1.10.4
Weakness classification (CWE)
Public proof-of-concept exploits
References
- support@hackerone.com (Permissions Required)
- support@hackerone.com (Release Notes)
- support@hackerone.com (Patch, Third Party Advisory)
- support@hackerone.com (mailing-list, Mailing List, Third Party Advisory)
- support@hackerone.com (vendor-advisory, Third Party Advisory)
- support@hackerone.com (vendor-advisory, Third Party Advisory)
- support@hackerone.com (mailing-list, Mailing List, Third Party Advisory)
- support@hackerone.com (mailing-list, Mailing List, Third Party Advisory)
Frequently asked questions
- What is CVE-2019-5477?
- CVE-2019-5477 is a critical-severity vulnerability in Nokogiri, classified under OS Command Injection. CVSS score: 9.8/10. Published 2019-08-16.
- How severe is CVE-2019-5477?
- Critical severity. CVSS v3 base score is 9.8 out of 10.
- Is CVE-2019-5477 known to be exploited?
- 1 public proof-of-concept repositories are indexed. Not currently listed in the CISA KEV catalog.