{"id":"CVE-2015-3649","aliases":["EUVD-2022-3027","GHSA-7m2w-9gw7-c3xp"],"status":"published","title":"open-uri-cached Gem for Ruby Unsafe Temporary File Creation Enables Code Execution","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a meta file is created.","severity":{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-08","score":0.00388,"percentile":0.33174,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":false},"cwes":["CWE-20"],"published":"2017-08-18T16:00:00Z","modified":"2026-06-17T00:26:02Z","affected":[{"source":"ghsa","ecosystem":"RubyGems","package":"open-uri-cached","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.0.0"}]}]},{"source":"osv","ecosystem":"RubyGems","package":"open-uri-cached","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"last_affected":"1.0.0"}]}],"versions":["0.0.1","0.0.3","0.0.4","0.0.5","1.0.0"]}],"products":[{"vendor":"open-uri-cached_project","product":"open-uri-cached"}],"references":[{"url":"https://github.com/tigris/open-uri-cached/blob/master/lib/open-uri/cached.rb#L39","tags":["x_refsource_MISC","x_transferred","Third Party Advisory"]},{"url":"https://github.com/tigris/open-uri-cached/blob/master/lib/open-uri/cached.rb#L115","tags":["x_refsource_MISC","x_transferred","Third Party Advisory"]},{"url":"https://github.com/tigris/open-uri-cached/blob/master/lib/open-uri/cached.rb#L25","tags":["x_refsource_MISC","x_transferred","Third Party Advisory"]},{"url":"http://www.openwall.com/lists/oss-security/2015/05/06/2","tags":["mailing-list","x_refsource_MLIST","x_transferred","Mailing List","Third Party Advisory","web"]},{"url":"http://www.securityfocus.com/bid/74469","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry"]},{"url":"http://www.benjaminfleischer.com/2013/03/20/yaml-and-security-in-ruby/","tags":["x_refsource_MISC","x_transferred","Third Party Advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2015-3649","tags":["advisory"]},{"url":"https://github.com/tigris/open-uri-cached/issues/8","tags":["web"]},{"url":"https://github.com/rubysec/ruby-advisory-db/blob/master/gems/open-uri-cached/CVE-2015-3649.yml","tags":["web"]},{"url":"http://seclists.org/oss-sec/2015/q2/373","tags":["web"]},{"url":"https://github.com/tigris/open-uri-cached/blob/master/lib/open-uri/cached.rb","tags":["web"]},{"url":"https://web.archive.org/web/20210119122105/http://www.securityfocus.com/bid/74469","tags":["web"]},{"url":"https://github.com/advisories/GHSA-7m2w-9gw7-c3xp"},{"url":"https://github.com/tigris/open-uri-cached","tags":["package"]},{"url":"http://www.benjaminfleischer.com/2013/03/20/yaml-and-security-in-ruby","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2015-3649","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a meta file is created.","status":"published","published":"2017-08-18T16:00:00Z","modified":"2024-08-06T05:47:57.887Z","updated_at":"2026-11-02T14:35:42.331636Z"}],"euvd":[{"id":"EUVD-2022-3027","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a meta file is created.","status":"published","published":"2017-08-18T16:00:00Z","modified":"2024-08-06T05:47:57Z","updated_at":"2026-11-03T02:22:07.516949Z"}],"ghsa":[{"id":"GHSA-7m2w-9gw7-c3xp","title":"open-uri-cached Gem for Ruby Unsafe Temporary File Creation Enables Code Execution","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a metafile is created.","status":"published","published":"2022-05-13T01:13:48Z","modified":"2023-07-03T23:13:41Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:36:55.91458Z"}],"nvd":[{"id":"CVE-2015-3649","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a meta file is created.","status":"published","published":"2017-08-18T16:29:00.297Z","modified":"2026-06-17T00:26:02.577Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":4.6,"vector":"AV:L/AC:L/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T14:03:17.730372Z"}],"osv":[{"id":"GHSA-7m2w-9gw7-c3xp","title":"open-uri-cached Gem for Ruby Unsafe Temporary File Creation Enables Code Execution","description":"The open-uri-cached rubygem allows local users to execute arbitrary Ruby code by creating a directory under /tmp containing \"openuri-\" followed by a crafted UID, and putting Ruby code in said directory once a metafile is created.","status":"published","published":"2022-05-13T01:13:48Z","modified":"2024-02-20T05:32:37.867211Z","cvss":[{"version":"3.1","score":7.8,"vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-20"],"updated_at":"2026-11-02T15:46:41.349637Z"}]}}
