{"id":"UBUNTU-CVE-2026-49982","details":"tmp is a temporary file and directory creator for node.js. In version 0.2.6, the _assertPath guard added to tmp rejects only string values that contain the substring ... It is bypassed when prefix, postfix, or template is supplied as a non-string value (Array, Buffer, or any object) whose includes('..') returns falsy but whose stringification still contains ../. The value flows through Array.prototype.join/String coercion inside _generateTmpName and path.join(tmpDir, opts.dir, name), producing a final path that escapes tmpdir and creates a file or directory at an attacker-controlled location with the host process's privileges. This affects any application that forwards untrusted request data (a common pattern is JSON body fields or qs-parsed bracket-array query strings such as ?prefix[]=...) into tmp.file, tmp.fileSync, tmp.dir, tmp.dirSync, tmp.tmpName, or tmp.tmpNameSync without explicit type coercion. This vulnerability is fixed in 0.2.7.","modified":"2026-06-17T04:30:54Z","published":"2026-06-11T17:16:00Z","upstream":["CVE-2026-49982"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-49982"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-49982"},{"type":"REPORT","url":"https://github.com/raszi/node-tmp/security/advisories/GHSA-7c78-jf6q-g5cm"}],"affected":[{"package":{"name":"node-tmp","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.0.25-1","0.0.28-1"],"ecosystem_specific":{"binaries":[{"binary_name":"node-tmp","binary_version":"0.0.28-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.0.31-1"],"ecosystem_specific":{"binaries":[{"binary_name":"node-tmp","binary_version":"0.0.31-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:20.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=focal"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.0.33+dfsg-2","0.1.0+dfsg-2","0.1.0+dfsg-3","0.1.0+dfsg-6"],"ecosystem_specific":{"binaries":[{"binary_version":"0.1.0+dfsg-6","binary_name":"node-tmp"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:22.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=jammy"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.2.1+dfsg-1","0.2.1+dfsg-2","0.2.1+dfsg+~0.2.2-1"],"ecosystem_specific":{"binaries":[{"binary_name":"node-tmp","binary_version":"0.2.1+dfsg+~0.2.2-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:24.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=noble"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.2.2+dfsg+~0.2.3-1"],"ecosystem_specific":{"binaries":[{"binary_name":"node-tmp","binary_version":"0.2.2+dfsg+~0.2.3-1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:25.10","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=questing"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.2.2+dfsg+~0.2.3-1","0.2.2+dfsg+~0.2.3-1.1"],"ecosystem_specific":{"binaries":[{"binary_name":"node-tmp","binary_version":"0.2.2+dfsg+~0.2.3-1.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}},{"package":{"name":"node-tmp","ecosystem":"Ubuntu:26.04:LTS","purl":"pkg:deb/ubuntu/node-tmp?arch=source&distro=resolute"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.2.2+dfsg+~0.2.3-1.1","0.2.5+dfsg+~0.2.6-1","0.2.5+dfsg+~0.2.6-2"],"ecosystem_specific":{"binaries":[{"binary_version":"0.2.5+dfsg+~0.2.6-2","binary_name":"node-tmp"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-49982.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:L"},{"type":"Ubuntu","score":"medium"}]}