CVE-2017-17405

NameCVE-2017-17405
DescriptionRuby 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.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)
ReferencesDLA-1221-1, DLA-1222-1, DLA-1421-1, DSA-4259-1
Debian Bugs884437, 884438

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
ruby2.1 (PTS)jessie, jessie (lts)2.1.5-2+deb8u13fixed
ruby2.3 (PTS)stretch (security), stretch (lts), stretch2.3.3-1+deb9u11fixed
ruby2.5 (PTS)buster2.5.5-3+deb10u4fixed
buster (security)2.5.5-3+deb10u6fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
ruby1.8sourcewheezy1.8.7.358-7.1+deb7u5DLA-1222-1
ruby1.8source(unstable)(unfixed)
ruby1.9.1sourcewheezy1.9.3.194-8.1+deb7u7DLA-1221-1
ruby1.9.1source(unstable)(unfixed)
ruby2.1sourcejessie2.1.5-2+deb8u4DLA-1421-1
ruby2.1source(unstable)(unfixed)
ruby2.3sourcestretch2.3.3-1+deb9u3DSA-4259-1
ruby2.3source(unstable)2.3.6-1884438
ruby2.5source(unstable)2.5.0~rc1-1884437

Notes

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

Search for package or bug name: Reporting problems