Skip to content

CVE-2019-5477 Nokogiri Command Injection Vulnerability

CriticalCVSS 9.8 EPSS 5.9% PoC
Published
Updated
Exploit status
Proof-of-concept only

Description

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.

Affected products

ProductAffected versionsFixed in
rubygems nokogiri(RubyGems) < 1.10.4 1.10.4
rubygems rexical(RubyGems) < 1.0.7 1.0.7
rubygems nokogiri(RubyGems) = 1.0.0 No fix listed
rubygems nokogiri(RubyGems) = 1.0.1 No fix listed
rubygems nokogiri(RubyGems) = 1.0.2 No fix listed
rubygems nokogiri(RubyGems) = 1.0.3 No fix listed
rubygems nokogiri(RubyGems) = 1.0.4 No fix listed
rubygems nokogiri(RubyGems) = 1.0.5 No fix listed
rubygems nokogiri(RubyGems) = 1.0.6 No fix listed
rubygems nokogiri(RubyGems) = 1.0.7 No fix listed
rubygems nokogiri(RubyGems) = 1.1.0 No fix listed
rubygems nokogiri(RubyGems) = 1.1.1 No fix listed
rubygems nokogiri(RubyGems) = 1.10.0 No fix listed
rubygems nokogiri(RubyGems) = 1.10.0.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.10.1 No fix listed
rubygems nokogiri(RubyGems) = 1.10.2 No fix listed
rubygems nokogiri(RubyGems) = 1.10.3 No fix listed
rubygems nokogiri(RubyGems) = 1.2.0 No fix listed
rubygems nokogiri(RubyGems) = 1.2.1 No fix listed
rubygems nokogiri(RubyGems) = 1.2.2 No fix listed
rubygems nokogiri(RubyGems) = 1.2.3 No fix listed
rubygems nokogiri(RubyGems) = 1.3.0 No fix listed
rubygems nokogiri(RubyGems) = 1.3.1 No fix listed
rubygems nokogiri(RubyGems) = 1.3.2 No fix listed
rubygems nokogiri(RubyGems) = 1.3.3 No fix listed
Show 123 more
ProductAffected versionsFixed in
rubygems nokogiri(RubyGems) = 1.4.0 No fix listed
rubygems nokogiri(RubyGems) = 1.4.1 No fix listed
rubygems nokogiri(RubyGems) = 1.4.2 No fix listed
rubygems nokogiri(RubyGems) = 1.4.2.1 No fix listed
rubygems nokogiri(RubyGems) = 1.4.3 No fix listed
rubygems nokogiri(RubyGems) = 1.4.3.1 No fix listed
rubygems nokogiri(RubyGems) = 1.4.4 No fix listed
rubygems nokogiri(RubyGems) = 1.4.4.1 No fix listed
rubygems nokogiri(RubyGems) = 1.4.4.2 No fix listed
rubygems nokogiri(RubyGems) = 1.4.5 No fix listed
rubygems nokogiri(RubyGems) = 1.4.6 No fix listed
rubygems nokogiri(RubyGems) = 1.4.7 No fix listed
rubygems nokogiri(RubyGems) = 1.5.0 No fix listed
rubygems nokogiri(RubyGems) = 1.5.0.beta.1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.0.beta.2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.0.beta.3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.0.beta.4 No fix listed
rubygems nokogiri(RubyGems) = 1.5.1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.1.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.10 No fix listed
rubygems nokogiri(RubyGems) = 1.5.11 No fix listed
rubygems nokogiri(RubyGems) = 1.5.2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3.rc4 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3.rc5 No fix listed
rubygems nokogiri(RubyGems) = 1.5.3.rc6 No fix listed
rubygems nokogiri(RubyGems) = 1.5.4 No fix listed
rubygems nokogiri(RubyGems) = 1.5.4.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.4.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.4.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.5 No fix listed
rubygems nokogiri(RubyGems) = 1.5.5.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.5.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.5.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.6 No fix listed
rubygems nokogiri(RubyGems) = 1.5.6.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.6.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.6.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.7 No fix listed
rubygems nokogiri(RubyGems) = 1.5.7.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.5.7.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.5.7.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.5.8 No fix listed
rubygems nokogiri(RubyGems) = 1.5.9 No fix listed
rubygems nokogiri(RubyGems) = 1.6.0 No fix listed
rubygems nokogiri(RubyGems) = 1.6.0.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.2.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.2.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.2.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.2.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.6.3 No fix listed
rubygems nokogiri(RubyGems) = 1.6.3.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.3.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.3.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.3.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.6.4 No fix listed
rubygems nokogiri(RubyGems) = 1.6.4.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.5 No fix listed
rubygems nokogiri(RubyGems) = 1.6.6.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.6.2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.6.3 No fix listed
rubygems nokogiri(RubyGems) = 1.6.6.4 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7.2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.6.7.rc4 No fix listed
rubygems nokogiri(RubyGems) = 1.6.8 No fix listed
rubygems nokogiri(RubyGems) = 1.6.8.1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.8.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.6.8.rc2 No fix listed
rubygems nokogiri(RubyGems) = 1.6.8.rc3 No fix listed
rubygems nokogiri(RubyGems) = 1.7.0 No fix listed
rubygems nokogiri(RubyGems) = 1.7.0.1 No fix listed
rubygems nokogiri(RubyGems) = 1.7.1 No fix listed
rubygems nokogiri(RubyGems) = 1.7.2 No fix listed
rubygems nokogiri(RubyGems) = 1.8.0 No fix listed
rubygems nokogiri(RubyGems) = 1.8.1 No fix listed
rubygems nokogiri(RubyGems) = 1.8.2 No fix listed
rubygems nokogiri(RubyGems) = 1.8.3 No fix listed
rubygems nokogiri(RubyGems) = 1.8.4 No fix listed
rubygems nokogiri(RubyGems) = 1.8.5 No fix listed
rubygems nokogiri(RubyGems) = 1.9.0 No fix listed
rubygems nokogiri(RubyGems) = 1.9.0.rc1 No fix listed
rubygems nokogiri(RubyGems) = 1.9.1 No fix listed
rubygems rexical(RubyGems) = 1.0.3 No fix listed
rubygems rexical(RubyGems) = 1.0.4 No fix listed
rubygems rexical(RubyGems) = 1.0.5 No fix listed
rubygems rexical(RubyGems) = 1.0.5.beta1 No fix listed
rubygems rexical(RubyGems) = 1.0.5.beta2 No fix listed
debian/rexical(Debian:12) < 1.0.7-1 1.0.7-1
debian/rexical(Debian:13) < 1.0.7-1 1.0.7-1
debian/rexical(Debian:14) < 1.0.7-1 1.0.7-1
debian/ruby-nokogiri(Debian:12) < 1.10.4+dfsg1-1 1.10.4+dfsg1-1
debian/ruby-nokogiri(Debian:13) < 1.10.4+dfsg1-1 1.10.4+dfsg1-1
debian/ruby-nokogiri(Debian:14) < 1.10.4+dfsg1-1 1.10.4+dfsg1-1
nokogiri <= 1.10.3 No fix listed
Canonical Ubuntu Linux = 16.04 No fix listed
Canonical Ubuntu Linux = 18.04 No fix listed
Canonical Ubuntu Linux = 19.04 No fix listed
Canonical Ubuntu Linux = 19.10 No fix listed
debian linux = 8.0 No fix listed
debian linux = 10.0 No fix listed
alpine/ruby-nokogiri(Alpine:v3.10) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.11) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.12) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.13) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.14) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.15) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.16) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.17) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.18) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.19) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.20) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.21) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.22) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.23) < 1.10.4-r0 1.10.4-r0
alpine/ruby-nokogiri(Alpine:v3.24) < 1.10.4-r0 1.10.4-r0

References