#VU32012 Command Injection in Nokogiri


Published: 2019-08-16 | Updated: 2022-06-12

Vulnerability identifier: #VU32012

Vulnerability risk: High

CVSSv3.1: 8.5 [CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C]

CVE-ID: CVE-2019-5477

CWE-ID: CWE-77

Exploitation vector: Network

Exploit availability: No

Vulnerable software:
Nokogiri
Universal components / Libraries / Programming Languages & Components

Vendor: nokogiri.org

Description

The vulnerability allows a remote non-authenticated attacker to execute arbitrary code.

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.

Mitigation
Install update from vendor's website.

Vulnerable software versions

Nokogiri: 1.10.0 - 1.10.3


External links
http://github.com/sparklemotion/nokogiri/issues/1915
http://github.com/tenderlove/rexical/blob/master/CHANGELOG.rdoc
http://hackerone.com/reports/650835
http://lists.debian.org/debian-lts-announce/2019/09/msg00027.html
http://security.gentoo.org/glsa/202006-05
http://usn.ubuntu.com/4175-1/


Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.


Latest bulletins with this vulnerability