{"id":"UBUNTU-CVE-2019-8320","details":"A Directory Traversal issue was discovered in RubyGems 2.7.6 and later through 3.0.2. Before making new directories or touching files (which now include path-checking code for symlinks), it would delete the target destination. If that destination was hidden behind a symlink, a malicious gem could delete arbitrary files on the user's machine, presuming the attacker could guess at paths. Given how frequently gem is run as sudo, and how predictable paths are on modern systems (/tmp, /usr, etc.), this could likely lead to data loss or an unusable system.","modified":"2026-01-30T02:38:00.705985Z","published":"2019-03-27T00:00:00Z","related":["USN-3945-1"],"upstream":["CVE-2019-8320"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2019-8320"},{"type":"REPORT","url":"https://bugs.ruby-lang.org/attachments/7669"},{"type":"REPORT","url":"https://bugs.ruby-lang.org/attachments/7670"},{"type":"REPORT","url":"https://www.ruby-lang.org/en/news/2019/03/05/multiple-vulnerabilities-in-rubygems/"},{"type":"REPORT","url":"https://blog.rubygems.org/2019/03/05/security-advisories-2019-03.html"},{"type":"ADVISORY","url":"https://ubuntu.com/security/notices/USN-3945-1"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2019-8320"}],"affected":[{"package":{"name":"ruby1.9.1","ecosystem":"Ubuntu:14.04:LTS","purl":"pkg:deb/ubuntu/ruby1.9.1@1.9.3.484-2ubuntu1.14?arch=source&distro=trusty"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"1.9.3.484-2ubuntu1.14"}]}],"versions":["1.9.3.194-8.1ubuntu2","1.9.3.448-1ubuntu1","1.9.3.448-1ubuntu2","1.9.3.484-1ubuntu1","1.9.3.484-1ubuntu2","1.9.3.484-2ubuntu1","1.9.3.484-2ubuntu1.1","1.9.3.484-2ubuntu1.2","1.9.3.484-2ubuntu1.3","1.9.3.484-2ubuntu1.5","1.9.3.484-2ubuntu1.6","1.9.3.484-2ubuntu1.7","1.9.3.484-2ubuntu1.8","1.9.3.484-2ubuntu1.10","1.9.3.484-2ubuntu1.11","1.9.3.484-2ubuntu1.12","1.9.3.484-2ubuntu1.13"],"ecosystem_specific":{"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"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-8320.json"}},{"package":{"name":"ruby2.0","ecosystem":"Ubuntu:14.04:LTS","purl":"pkg:deb/ubuntu/ruby2.0@2.0.0.484-1ubuntu2.13?arch=source&distro=trusty"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.0.0.484-1ubuntu2.13"}]}],"versions":["2.0.0.299-2","2.0.0.343-1","2.0.0.343-1ubuntu1","2.0.0.353-1","2.0.0.353-1ubuntu1","2.0.0.484-1ubuntu1","2.0.0.484-1ubuntu2","2.0.0.484-1ubuntu2.1","2.0.0.484-1ubuntu2.2","2.0.0.484-1ubuntu2.4","2.0.0.484-1ubuntu2.5","2.0.0.484-1ubuntu2.6","2.0.0.484-1ubuntu2.8","2.0.0.484-1ubuntu2.9","2.0.0.484-1ubuntu2.10","2.0.0.484-1ubuntu2.11"],"ecosystem_specific":{"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"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-8320.json"}},{"package":{"name":"ruby2.3","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/ruby2.3@2.3.1-2~16.04.12?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.1-2~16.04.12"}]}],"versions":["2.3.0-1","2.3.0-2","2.3.0-4ubuntu2","2.3.0-4ubuntu3","2.3.0-5ubuntu1","2.3.1-2~16.04","2.3.1-2~16.04.2","2.3.1-2~16.04.4","2.3.1-2~16.04.5","2.3.1-2~16.04.6","2.3.1-2~16.04.7","2.3.1-2~16.04.9","2.3.1-2~16.04.10","2.3.1-2~16.04.11"],"ecosystem_specific":{"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"}],"availability":"No subscription required"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-8320.json"}},{"package":{"name":"ruby2.5","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/ruby2.5@2.5.1-1ubuntu1.2?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.5.1-1ubuntu1.2"}]}],"versions":["2.5.0~preview1-1ubuntu2","2.5.0-4ubuntu1","2.5.0-4ubuntu4","2.5.0-5ubuntu1","2.5.0-6ubuntu1","2.5.1-1ubuntu1","2.5.1-1ubuntu1.1"],"ecosystem_specific":{"binaries":[{"binary_version":"2.5.1-1ubuntu1.2","binary_name":"libruby2.5"},{"binary_version":"2.5.1-1ubuntu1.2","binary_name":"ruby2.5"},{"binary_version":"2.5.1-1ubuntu1.2","binary_name":"ruby2.5-dev"}],"availability":"No subscription required"},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-8320.json"}},{"package":{"name":"jruby","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/jruby@9.1.17.0-1~18.04?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["9.1.13.0-1","9.1.17.0-1~18.04"],"ecosystem_specific":{"binaries":[{"binary_version":"9.1.17.0-1~18.04","binary_name":"jruby"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2019/UBUNTU-CVE-2019-8320.json"}}],"schema_version":"1.7.3","severity":[{"type":"CVSS_V3","score":"CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:H"},{"type":"Ubuntu","score":"medium"}]}