{"id":"CVE-2020-17354","aliases":["DEBIAN-CVE-2020-17354","EUVD-2020-9308","GHSA-vm3h-24gm-v3q6","MGASA-2023-0325","UBUNTU-CVE-2020-17354","openSUSE-SU-2023:0137-1"],"status":"published","title":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def...","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","severity":{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high","assessor":"primary","from":"nvd"},"epss":{"day":"2026-11-12","score":0.00414,"percentile":0.36172,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-863"],"published":"2023-04-15T00:00:00Z","modified":"2026-10-26T12:00:46Z","fixes":[{"ecosystem":"Debian:12","package":"lilypond","fixed_in":["2.22.1-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"lilypond","fixed_in":["2.22.1-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"lilypond","fixed_in":["2.22.1-1"],"sources":["osv"]},{"ecosystem":"Mageia:9","package":"lilypond","fixed_in":["2.24.2-2.mga9"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.22.1-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.22.1-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.22.1-1"}]}]},{"source":"osv","ecosystem":"Mageia:9","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.24.2-2.mga9"}]}]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.18.2-4","2.18.2-4.1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.18.2-9","2.18.2-11","2.18.2-12","2.18.2-12build1"]},{"source":"osv","ecosystem":"Ubuntu:20.04:LTS","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.19.81+really-2.18.2-13ubuntu1","2.19.81+really-2.18.2-13ubuntu2","2.19.81+really-2.18.2-14","2.20.0-1"]},{"source":"osv","ecosystem":"SUSE:Package Hub 15 SP4","package":"guile1","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.6-bp154.3.3.1"}]}],"bundled":2},{"source":"osv","ecosystem":"SUSE:Package Hub 15 SP4","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.24.1-bp154.2.3.2"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"guile1","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.2.6-bp154.3.3.1"}]}],"bundled":2},{"source":"osv","ecosystem":"openSUSE:Leap 15.4","package":"lilypond","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.24.1-bp154.2.3.2"}]}],"bundled":2}],"products":[{"vendor":"lilypond","product":"lilypond"}],"references":[{"url":"http://lilypond.org/doc/v2.18/Documentation/usage/command_002dline-usage","tags":["x_transferred","Release Notes","advisory"]},{"url":"https://phabricator.wikimedia.org/T259210","tags":["x_transferred","Exploit","Third Party Advisory","evidence","report"]},{"url":"https://www.mediawiki.org/wiki/Extension:Score/2021_security_advisory","tags":["x_transferred","Third Party Advisory","advisory","report"]},{"url":"https://tracker.debian.org/news/1249694/accepted-lilypond-2221-1-source-into-unstable/","tags":["x_transferred","Mailing List","Release Notes","Third Party Advisory","advisory"]},{"url":"https://gitlab.com/lilypond/lilypond/-/merge_requests/1522","tags":["x_transferred","Patch","Vendor Advisory","fix"]},{"url":"https://lilypond.org/download.html","tags":["x_transferred","Product","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ST5BLLQ4GDME3SN7UE5OMNE5GZE66X4Y/","tags":["vendor-advisory","x_transferred","web"]},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/K43PF6VGFJNNGAPY57BW3VMEFFOSMRLF/","tags":["vendor-advisory","x_transferred","web"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2020-17354"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/K43PF6VGFJNNGAPY57BW3VMEFFOSMRLF"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/ST5BLLQ4GDME3SN7UE5OMNE5GZE66X4Y"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/K43PF6VGFJNNGAPY57BW3VMEFFOSMRLF"},{"url":"https://lists.fedoraproject.org/archives/list/package-announce@lists.fedoraproject.org/message/ST5BLLQ4GDME3SN7UE5OMNE5GZE66X4Y"},{"url":"https://tracker.debian.org/news/1249694/accepted-lilypond-2221-1-source-into-unstable"},{"url":"https://github.com/advisories/GHSA-vm3h-24gm-v3q6"},{"url":"https://security-tracker.debian.org/tracker/CVE-2020-17354","tags":["advisory"]},{"url":"https://advisories.mageia.org/MGASA-2023-0325.html","tags":["advisory"]},{"url":"https://bugs.mageia.org/show_bug.cgi?id=31889","tags":["report"]},{"url":"https://ubuntu.com/security/CVE-2020-17354","tags":["report"]},{"url":"https://phabricator.wikimedia.org/T257062","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2020-17354","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/ROLJCNPWZ2G4IQWP7NQKXNBT2QR32K2A/","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1210502","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2016-8605","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2020-17354","tags":["web"]}],"sources":{"cve":[{"id":"CVE-2020-17354","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T00:00:00Z","modified":"2025-02-06T17:00:20.661Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high","assessor":"adp"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T14:35:54.468882Z"}],"euvd":[{"id":"EUVD-2020-9308","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T00:00:00Z","modified":"2025-02-06T17:00:20Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-03T00:04:02.906364Z"}],"ghsa":[{"id":"GHSA-vm3h-24gm-v3q6","title":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def...","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-16T00:30:25Z","modified":"2024-04-04T03:30:15Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T14:56:15.423381Z"}],"nvd":[{"id":"CVE-2020-17354","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T22:15:06.913Z","modified":"2026-06-17T02:58:47.563Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high","assessor":"secondary"}],"cwes":["CWE-863"],"updated_at":"2026-11-02T14:06:47.910346Z"}],"osv":[{"id":"CVE-2020-17354","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T22:15:06.913Z","modified":"2026-10-24T10:30:17.961726046Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:14.828228Z"},{"id":"DEBIAN-CVE-2020-17354","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T22:15:06.913Z","modified":"2026-10-26T12:00:46.510415781Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:33.384087Z"},{"id":"UBUNTU-CVE-2020-17354","description":"LilyPond before 2.24 allows attackers to bypass the -dsafe protection mechanism via output-def-lookup or output-def-scope, as demonstrated by dangerous Scheme code in a .ly file that causes arbitrary code execution during conversion to a different file format. NOTE: in 2.24 and later versions, safe mode is removed, and the product no longer tries to block code execution when external files are used.","status":"published","published":"2023-04-15T22:15:00Z","modified":"2025-10-24T04:48:38Z","cvss":[{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"},{"version":"3.1","score":8.6,"vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:23.344108Z"},{"id":"MGASA-2023-0325","title":"Updated lilypond packages fix a security vulnerability","description":"Updated lilypond packages fix a security vulnerability:\n\nLilyPond before 2.24 allows attackers to bypass the -dsafe protection\nmechanism via output-def-lookup or output-def-scope, as demonstrated by\ndangerous Scheme code in a .ly file that causes arbitrary code execution\nduring conversion to a different file format. NOTE: in 2.24 and later\nversions, safe mode is removed, and the product no longer tries to block\ncode execution when external files are used.\n","status":"published","published":"2023-11-27T15:16:47Z","modified":"2026-04-16T04:41:11.647746867Z","updated_at":"2026-11-02T15:49:42.684501Z"},{"id":"openSUSE-SU-2023:0137-1","title":"Security update for guile1, lilypond","description":"This update for guile1, lilypond fixes the following issues:\n\nguile1:\n\n- Add service file to download release from git excluding the\n  directory with commercial non free files.\n- Update to version 2.2.6 to enable lilypond to be updated to \n  2.24.1 to fix boo#1210502 and CVE-2020-17354.\n\nlilypond:\n\n- Update to version lilypond-2.24.1 to fix boo#1210502 -\n  CVE-2020-17354: lilypond: Lilypond allows attackers to bypass \n  the -dsafe protection mechanism.\n","status":"published","published":"2023-06-27T15:41:48Z","modified":"2026-02-04T03:14:12.131359Z","updated_at":"2026-11-02T16:58:32.653274Z"}]}}
