漏洞描述
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.
影响产品
修复建议
建议关注厂商安全公告,及时升级至已修复版本,并结合实际资产暴露情况采取缓解措施。
参考链接
access.redhat.comhttps://access.redhat.com/errata/RHSA-2018:0378↗lists.debian.orghttps://lists.debian.org/debian-lts-announce/2017/12/msg00025.html↗access.redhat.comhttps://access.redhat.com/errata/RHSA-2018:0585↗access.redhat.comhttps://access.redhat.com/errata/RHSA-2018:0584↗lists.debian.orghttps://lists.debian.org/debian-lts-announce/2018/07/msg00012.html↗www.securityfocus.comhttp://www.securityfocus.com/bid/102204↗www.ruby-lang.orghttps://www.ruby-lang.org/en/news/2017/12/14/net-ftp-command-injection-cve-2017-17405/↗access.redhat.comhttps://access.redhat.com/errata/RHSA-2019:2806↗access.redhat.comhttps://access.redhat.com/errata/RHSA-2018:0583↗www.ruby-lang.orghttps://www.ruby-lang.org/en/news/2017/12/14/ruby-2-4-3-released/↗www.securitytracker.comhttp://www.securitytracker.com/id/1042004↗www.debian.orghttps://www.debian.org/security/2018/dsa-4259↗lists.debian.orghttps://lists.debian.org/debian-lts-announce/2017/12/msg00024.html↗