CVE Vulnerabilities

CVE-2017-17790

Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

Published: Dec 20, 2017 | Modified: Aug 03, 2018
CVSS 3.x
9.8
CRITICAL
Source:
NVD
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS 2.x
7.5 HIGH
AV:N/AC:L/Au:N/C:P/I:P/A:P
RedHat/V2
RedHat/V3
Ubuntu

The lazy_initialize function in lib/resolv.rb in Ruby through 2.4.3 uses Kernel#open, which might allow Command Injection attacks, as demonstrated by a Resolv::Hosts::new argument beginning with a | character, a different vulnerability than CVE-2017-17405. NOTE: situations with untrusted input may be highly unlikely.

Weakness

The product constructs all or part of a command, data structure, or record using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify how it is parsed or interpreted when it is sent to a downstream component.

Affected Software

Name Vendor Start Version End Version
Ruby Ruby-lang 2.2 (including) 2.2.8 (including)
Ruby Ruby-lang 2.3 (including) 2.3.5 (including)
Ruby Ruby-lang 2.4 (including) 2.4.2 (including)
Ruby Ruby-lang 2.5.0-preview1 (including) 2.5.0-preview1 (including)

Potential Mitigations

References