Ruby through 2.4.7, 2.5.x through 2.5.6, and 2.6.x through 2.6.4 allows code injection if the first argument (aka the "command" argument) to Shell#[] or Shell#test in lib/shell.rb is untrusted data. An attacker can exploit this to call an arbitrary Ruby method.
{
"unresolved_ranges": [
{
"cpes": [
"cpe:2.3:o:debian:debian_linux:8.0:*:*:*:*:*:*:*",
"cpe:2.3:o:debian:debian_linux:9.0:*:*:*:*:*:*:*"
],
"vendor_product": "debian:debian_linux",
"source": "CPE_STRING",
"extracted_events": [
{
"last_affected": "8.0"
},
{
"last_affected": "9.0"
}
]
},
{
"cpes": [
"cpe:2.3:o:opensuse:leap:15.1:*:*:*:*:*:*:*"
],
"vendor_product": "opensuse:leap",
"source": "CPE_STRING",
"extracted_events": [
{
"last_affected": "15.1"
}
]
}
]
}{
"extracted_events": [
{
"introduced": "0"
},
{
"last_affected": "19.3.0.2"
}
],
"source": "CPE_STRING",
"cpe": "cpe:2.3:a:oracle:graalvm:19.3.0.2:*:*:*:enterprise:*:*:*"
}{
"extracted_events": [
{
"introduced": "2.4.0"
},
{
"last_affected": "2.4.7"
},
{
"introduced": "2.5.0"
},
{
"last_affected": "2.5.6"
},
{
"introduced": "2.6.0"
},
{
"last_affected": "2.6.4"
}
],
"source": "CPE_RANGE",
"cpe": "cpe:2.3:a:ruby-lang:ruby:*:*:*:*:*:*:*:*"
}