{"id":"CVE-2026-102474","aliases":["DEBIAN-CVE-2026-102474","EUVD-2026-88668","GHSA-fgjp-hq6c-rfv8","UBUNTU-CVE-2026-102474","openSUSE-SU-2026:11980-1"],"status":"published","title":"Dash: dash: heap out-of-bounds write in conv_escape via undersized unicode escape reservation","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","severity":{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00113,"percentile":0.01431,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-787"],"published":"2026-09-29T09:23:04Z","modified":"2026-11-05T16:04:03Z","fixes":[{"ecosystem":"openSUSE:Tumbleweed","package":"dash","fixed_in":["0.5.13.5-1.1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12+git20240518+f47009f9a76e-1","0.5.12+git20240518+f47009f9a76e-2","0.5.12-10","0.5.12-11","0.5.12-12","0.5.12-2","0.5.12-3","0.5.12-4","0.5.12-5","0.5.12-6","0.5.12-7","0.5.12-8","0.5.12-9","0.5.13.5-1"]},{"source":"osv","ecosystem":"Debian:13","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12+git20240518+f47009f9a76e-1","0.5.12+git20240518+f47009f9a76e-2","0.5.12-12","0.5.13.5-1"]},{"source":"osv","ecosystem":"Debian:14","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12+git20240518+f47009f9a76e-1","0.5.12+git20240518+f47009f9a76e-2","0.5.12-12","0.5.13.5-1"]},{"source":"osv","ecosystem":"Ubuntu:14.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.7-3ubuntu1","0.5.7-4ubuntu1"]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.7-4ubuntu2","0.5.8-2.1ubuntu2"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.8-2.3ubuntu1","0.5.8-2.5ubuntu1","0.5.8-2.9ubuntu1","0.5.8-2.10"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.10.2-6"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.11+git20210120+802ebd4-1build1","0.5.11+git20210903+057cd650a4ed-3","0.5.11+git20210903+057cd650a4ed-3build1"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12-6ubuntu1","0.5.12-6ubuntu3","0.5.12-6ubuntu4","0.5.12-6ubuntu5"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12-12ubuntu3"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.5.12-12ubuntu2","0.5.12-12ubuntu3"]},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"dash","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"0.5.13.5-1.1"}]}]}],"products":[{"vendor":"red hat","product":"red hat enterprise linux 6"}],"references":[{"url":"https://access.redhat.com/security/cve/CVE-2026-102474","tags":["vdb-entry","x_refsource_REDHAT","report"]},{"url":"https://bugzilla.redhat.com/show_bug.cgi?id=2543004","tags":["issue-tracking","x_refsource_REDHAT"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-102474"},{"url":"https://github.com/advisories/GHSA-fgjp-hq6c-rfv8"},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-102474","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-102474","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-102474","tags":["report"]},{"url":"","tags":["advisory"]},{"url":"https://www.suse.com/security/cve/CVE-2026-102474","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2026-102474","title":"Dash: dash: heap out-of-bounds write in conv_escape via undersized unicode escape reservation","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T09:23:04.27Z","modified":"2026-11-05T16:04:03.75Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"cna"}],"cwes":["CWE-787"],"updated_at":"2026-11-05T17:53:58.925122Z"}],"euvd":[{"id":"EUVD-2026-88668","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T09:23:04Z","modified":"2026-11-05T16:04:03Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-05T18:00:58.868629Z"}],"ghsa":[{"id":"GHSA-fgjp-hq6c-rfv8","title":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u...","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T12:31:28Z","modified":"2026-09-29T12:31:29Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"cwes":["CWE-787"],"updated_at":"2026-11-02T15:12:33.186319Z"}],"nvd":[{"id":"CVE-2026-102474","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T10:17:10.707Z","modified":"2026-11-05T17:17:31.94Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium","assessor":"secondary"}],"cwes":["CWE-787"],"updated_at":"2026-11-05T19:56:00.556424Z"}],"osv":[{"id":"DEBIAN-CVE-2026-102474","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T10:17:10.707Z","modified":"2026-09-30T09:00:10.075921026Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T15:45:48.903138Z"},{"id":"UBUNTU-CVE-2026-102474","description":"A flaw was found in dash. The printf builtin reserves four bytes before converting a Unicode \\u or \\U escape, but the multi-byte token can need five or six bytes. A local user who can supply such an escape to dash printf or echo %b, including through dash -c and a positional argument, can write one or two bytes past that reservation.","status":"published","published":"2026-09-29T10:17:00Z","modified":"2026-10-17T12:59:46.086863881Z","cvss":[{"version":"3.1","score":4,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N","level":"medium"}],"updated_at":"2026-11-02T16:55:58.519486Z"},{"id":"openSUSE-SU-2026:11980-1","title":"dash-0.5.13.5-1.1 on GA media","description":"These are all security issues fixed in the dash-0.5.13.5-1.1 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2026-10-04T00:00:00Z","modified":"2026-10-05T10:15:28.09150792Z","updated_at":"2026-11-02T16:58:40.245664Z"}]}}
