Name | CVE-2017-17405 |
Description | Ruby before 2.4.3 allows Net::FTP command injection. Net::FTP#get, getbinaryfile, gettextfile, put, putbinaryfile, and puttextfile use Kernel#open to open a local file. If the localfile argument starts with the "|" pipe character, the command following the pipe character is executed. The default value of localfile is File.basename(remotefile), so malicious FTP servers could cause arbitrary command execution. |
Source | CVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more) |
References | DLA-1221-1, DLA-1222-1, DLA-1421-1, DSA-4259-1 |
Debian Bugs | 884437, 884438 |
The table below lists information on source packages.
Source Package | Release | Version | Status |
---|---|---|---|
ruby2.1 (PTS) | jessie, jessie (lts) | 2.1.5-2+deb8u14 | fixed |
ruby2.3 (PTS) | stretch (security) | 2.3.3-1+deb9u11 | fixed |
stretch (lts), stretch | 2.3.3-1+deb9u12 | fixed | |
ruby2.5 (PTS) | buster, buster (lts) | 2.5.5-3+deb10u7 | fixed |
buster (security) | 2.5.5-3+deb10u6 | fixed |
The information below is based on the following data on fixed versions.
Package | Type | Release | Fixed Version | Urgency | Origin | Debian Bugs |
---|---|---|---|---|---|---|
ruby1.8 | source | wheezy | 1.8.7.358-7.1+deb7u5 | DLA-1222-1 | ||
ruby1.8 | source | (unstable) | (unfixed) | |||
ruby1.9.1 | source | wheezy | 1.9.3.194-8.1+deb7u7 | DLA-1221-1 | ||
ruby1.9.1 | source | (unstable) | (unfixed) | |||
ruby2.1 | source | jessie | 2.1.5-2+deb8u4 | DLA-1421-1 | ||
ruby2.1 | source | (unstable) | (unfixed) | |||
ruby2.3 | source | stretch | 2.3.3-1+deb9u3 | DSA-4259-1 | ||
ruby2.3 | source | (unstable) | 2.3.6-1 | 884438 | ||
ruby2.5 | source | (unstable) | 2.5.0~rc1-1 | 884437 |
https://www.ruby-lang.org/en/news/2017/12/14/net-ftp-command-injection-cve-2017-17405/
https://github.com/ruby/ruby/commit/6d3f72e5be2312be312f2acbf3465b05293c1431
ruby2.3: https://github.com/ruby/ruby/commit/1cfe43fd85c66a9e2b5068480b3e043c31e6b8ca
ruby2.3: https://github.com/ruby/ruby/commit/3ec034c597e6d40543bb844dc8f96645bef4bed2