An issue was discovered in RubyGems 2.6 and later through 3.0.2. A crafted gem with a multi-line name is not handled correctly. Therefore, an attacker could inject arbitrary code to the stub line of gemspec, which is eval-ed by code in ensureloadablespec during the preinstall check.
{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "libruby1.9.1"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "libtcltk-ruby1.9.1"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ri1.9.1"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ruby1.9.1"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ruby1.9.1-dev"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ruby1.9.1-examples"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ruby1.9.1-full"
},
{
"binary_version": "1.9.3.484-2ubuntu1.14",
"binary_name": "ruby1.9.3"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2.0.0.484-1ubuntu2.13",
"binary_name": "libruby2.0"
},
{
"binary_version": "2.0.0.484-1ubuntu2.13",
"binary_name": "ruby2.0"
},
{
"binary_version": "2.0.0.484-1ubuntu2.13",
"binary_name": "ruby2.0-dev"
},
{
"binary_version": "2.0.0.484-1ubuntu2.13",
"binary_name": "ruby2.0-tcltk"
}
]
}{
"availability": "No subscription required",
"binaries": [
{
"binary_version": "2.3.1-2~16.04.12",
"binary_name": "libruby2.3"
},
{
"binary_version": "2.3.1-2~16.04.12",
"binary_name": "ruby2.3"
},
{
"binary_version": "2.3.1-2~16.04.12",
"binary_name": "ruby2.3-dev"
},
{
"binary_version": "2.3.1-2~16.04.12",
"binary_name": "ruby2.3-tcltk"
}
]
}