{"id":"CVE-2017-2808","aliases":["DEBIAN-CVE-2017-2808","EUVD-2017-11951","GHSA-9329-p7mv-f8p5","UBUNTU-CVE-2017-2808","openSUSE-SU-2019:1779-1","openSUSE-SU-2019:1895-1","openSUSE-SU-2024:10913-1"],"status":"published","title":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger...","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","severity":{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-08","score":0.01709,"percentile":0.77481,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-416"],"published":"2017-09-05T18:00:00Z","modified":"2026-10-24T10:30:29Z","fixes":[{"ecosystem":"Debian:12","package":"ledger","fixed_in":["3.1.2+dfsg1-1"],"sources":["osv"]},{"ecosystem":"Debian:13","package":"ledger","fixed_in":["3.1.2+dfsg1-1"],"sources":["osv"]},{"ecosystem":"Debian:14","package":"ledger","fixed_in":["3.1.2+dfsg1-1"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.2+dfsg1-1"}]}]},{"source":"osv","ecosystem":"Debian:13","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.2+dfsg1-1"}]}]},{"source":"osv","ecosystem":"Debian:14","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.2+dfsg1-1"}]}]},{"source":"osv","ecosystem":"Ubuntu:16.04:LTS","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.1+dfsg1-5","3.1+dfsg1-6","3.1+dfsg1-7","3.1.1+dfsg1-1"]},{"source":"osv","ecosystem":"Ubuntu:18.04:LTS","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["3.1.2~pre1+g3a00e1c+dfsg1-5","3.1.2~pre1+g3a00e1c+dfsg1-5build1","3.1.2~pre1+g3a00e1c+dfsg1-5build2","3.1.2~pre1+g3a00e1c+dfsg1-5build3","3.1.2~pre1+g3a00e1c+dfsg1-5build4","3.1.2~pre1+g3a00e1c+dfsg1-5build5"]},{"source":"osv","ecosystem":"openSUSE:Leap 15.0","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.3-lp151.3.3.1"}]}],"bundled":4},{"source":"osv","ecosystem":"openSUSE:Leap 15.1","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.3-lp151.3.3.1"}]}],"bundled":4},{"source":"osv","ecosystem":"SUSE:Package Hub 15 SP1","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.1.3-bp151.4.3.1"}]}],"bundled":4},{"source":"osv","ecosystem":"openSUSE:Tumbleweed","package":"ledger","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.2.1-3.3"}]}],"bundled":4}],"products":[{"vendor":"ledger","product":"ledger cli"},{"vendor":"ledger-cli","product":"ledger"}],"references":[{"url":"http://www.securityfocus.com/bid/100546","tags":["vdb-entry","x_refsource_BID","x_transferred","Third Party Advisory","VDB Entry","advisory"]},{"url":"http://lists.opensuse.org/opensuse-security-announce/2019-07/msg00031.html","tags":["vendor-advisory","x_refsource_SUSE","x_transferred","web"]},{"url":"http://lists.opensuse.org/opensuse-security-announce/2019-08/msg00029.html","tags":["vendor-advisory","x_refsource_SUSE","x_transferred","web"]},{"url":"https://security.gentoo.org/glsa/202004-05","tags":["vendor-advisory","x_refsource_GENTOO","x_transferred","advisory"]},{"url":"https://www.talosintelligence.com/vulnerability_reports/TALOS-2017-0304","tags":["x_refsource_MISC","x_transferred","Technical Description","Third Party Advisory","advisory","report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2017-2808"},{"url":"https://github.com/advisories/GHSA-9329-p7mv-f8p5"},{"url":"https://security-tracker.debian.org/tracker/CVE-2017-2808","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2017-2808","tags":["report"]},{"url":"https://github.com/ledger/ledger/commit/f3bad93db256db07b6cb831d4d24f47543f57e4a","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2017-2808","tags":["report"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/YSPDVC274T4T34MJVEXTDY2YYV5NIYUC/#YSPDVC274T4T34MJVEXTDY2YYV5NIYUC","tags":["advisory"]},{"url":"https://bugzilla.suse.com/1052478","tags":["report"]},{"url":"https://bugzilla.suse.com/1052484","tags":["report"]},{"url":"https://bugzilla.suse.com/1105084","tags":["report"]},{"url":"https://www.suse.com/security/cve/CVE-2017-12481","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-12482","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-2807","tags":["web"]},{"url":"https://www.suse.com/security/cve/CVE-2017-2808","tags":["web"]},{"url":"https://lists.opensuse.org/archives/list/security-announce@lists.opensuse.org/thread/EZUJ46TYCWE2TE7FRC3IOXNICT5SPVVM/#EZUJ46TYCWE2TE7FRC3IOXNICT5SPVVM","tags":["advisory"]},{"url":"","tags":["advisory"]}],"sources":{"cve":[{"id":"CVE-2017-2808","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:00:00Z","modified":"2024-09-16T20:32:31.398Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"cna"}],"updated_at":"2026-11-02T14:33:15.201133Z"}],"euvd":[{"id":"EUVD-2017-11951","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:00:00Z","modified":"2024-09-16T20:32:31Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-03T00:55:13.041098Z"}],"ghsa":[{"id":"GHSA-9329-p7mv-f8p5","title":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger...","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2022-05-13T01:01:25Z","modified":"2023-02-01T05:02:26Z","cvss":[{"version":"3.0","score":7.8,"vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"cwes":["CWE-416"],"updated_at":"2026-11-02T14:49:54.32219Z"}],"nvd":[{"id":"CVE-2017-2808","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:29:00.447Z","modified":"2026-06-17T01:16:54.273Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"secondary"},{"version":"3.0","score":7.8,"vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high","assessor":"primary"},{"version":"2.0","score":6.8,"vector":"AV:N/AC:M/Au:N/C:P/I:P/A:P","level":"medium","assessor":"primary"}],"cwes":["CWE-416"],"updated_at":"2026-11-02T14:03:58.85945Z"}],"osv":[{"id":"CVE-2017-2808","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:29:00.447Z","modified":"2026-10-24T10:30:29.932832308Z","cvss":[{"version":"3.0","score":7.8,"vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:44:05.486486Z"},{"id":"DEBIAN-CVE-2017-2808","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:29:00.447Z","modified":"2026-09-01T20:03:47.828776903Z","cvss":[{"version":"3.0","score":7.8,"vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:45:29.100767Z"},{"id":"UBUNTU-CVE-2017-2808","description":"An exploitable use-after-free vulnerability exists in the account parsing component of the Ledger-CLI 3.1.1. A specially crafted ledger file can cause a use-after-free vulnerability resulting in arbitrary code execution. An attacker can convince a user to load a journal file to trigger this vulnerability.","status":"published","published":"2017-09-05T18:29:00Z","modified":"2025-10-24T04:46:06Z","cvss":[{"version":"3.0","score":7.5,"vector":"CVSS:3.0/AV:N/AC:H/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"},{"version":"3.0","score":7.8,"vector":"CVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","level":"high"}],"updated_at":"2026-11-02T15:54:14.977781Z"},{"id":"openSUSE-SU-2019:1779-1","title":"Security update for ledger","description":"This update for ledger fixes the following issues:\n\nledger was updated to 3.1.3:\n\n+ Properly reject postings with a comment right after the flag (bug #1753)\n+ Make sorting order of lot information deterministic (bug #1747)\n+ Fix bug in tag value parsing (bug #1702)\n+ Remove the org command, which was always a hack to begin with (bug #1706)\n+ Provide Docker information in README\n+ Various small documentation improvements \n\nThis also includes the update to 3.1.2:\n\n+ Increase maximum length for regex from 255 to 4095 (bug #981)\n+ Initialize periods from from/since clause rather than earliest \n  transaction date (bug #1159)\n+ Check balance assertions against the amount after the posting (bug #1147)\n+ Allow balance assertions with multiple posts to same account (bug #1187)\n+ Fix period duration of 'every X days' and similar statements (bug #370)\n+ Make option --force-color not require --color anymore (bug #1109)\n+ Add quoted_rfc4180 to allow CVS output with RFC 4180 compliant quoting.\n+ Add support for --prepend-format in accounts command\n+ Fix handling of edge cases in trim function (bug #520)\n+ Fix auto xact posts not getting applied to account total during \n  journal parse (bug #552)\n+ Transfer null_post flags to generated postings\n+ Fix segfault when using --market with --group-by\n+ Use amount_width variable for budget report\n+ Keep pending items in budgets until the last day they apply\n+ Fix bug where .total used in value expressions breaks totals\n+ Make automated transactions work with assertions (bug #1127)\n+ Improve parsing of date tokens (bug #1626)\n+ Don't attempt to invert a value if it's already zero (bug #1703)\n+ Do not parse user-specified init-file twice\n+ Fix parsing issue of effective dates \n  (bug #1722, TALOS-2017-0303, CVE-2017-2807)\n+ Fix use-after-free issue with deferred postings \n  (bug #1723, TALOS-2017-0304, CVE-2017-2808)\n+ Fix possible stack overflow in option parsing routine \n  (bug #1222, CVE-2017-12481)\n+ Fix possible stack overflow in date parsing routine \n  (bug #1224, CVE-2017-12482)\n+ Fix use-after-free when using --gain (bug #541)\n+ Python: Removed double quotes from Unicode values.\n+ Python: Ensure that parse errors produce useful RuntimeErrors\n+ Python: Expose journal expand_aliases\n+ Python: Expose journal_t::register_account\n+ Improve bash completion\n+ Emacs Lisp files have been moved to https://github.com/ledger/ledger-mode\n+ Various documentation improvements\n","status":"published","published":"2019-07-21T05:39:40Z","modified":"2026-02-04T02:38:52.119816Z","updated_at":"2026-11-02T16:58:30.784344Z"},{"id":"openSUSE-SU-2019:1895-1","title":"Security update for ledger","description":"This update for ledger fixes the following issues:\n\nledger was updated to 3.1.3:\n\n+ Properly reject postings with a comment right after the flag (bug #1753)\n+ Make sorting order of lot information deterministic (bug #1747)\n+ Fix bug in tag value parsing (bug #1702)\n+ Remove the org command, which was always a hack to begin with (bug #1706)\n+ Provide Docker information in README\n+ Various small documentation improvements \n\nThis also includes the update to 3.1.2:\n\n+ Increase maximum length for regex from 255 to 4095 (bug #981)\n+ Initialize periods from from/since clause rather than earliest \n  transaction date (bug #1159)\n+ Check balance assertions against the amount after the posting (bug #1147)\n+ Allow balance assertions with multiple posts to same account (bug #1187)\n+ Fix period duration of 'every X days' and similar statements (bug #370)\n+ Make option --force-color not require --color anymore (bug #1109)\n+ Add quoted_rfc4180 to allow CVS output with RFC 4180 compliant quoting.\n+ Add support for --prepend-format in accounts command\n+ Fix handling of edge cases in trim function (bug #520)\n+ Fix auto xact posts not getting applied to account total during \n  journal parse (bug #552)\n+ Transfer null_post flags to generated postings\n+ Fix segfault when using --market with --group-by\n+ Use amount_width variable for budget report\n+ Keep pending items in budgets until the last day they apply\n+ Fix bug where .total used in value expressions breaks totals\n+ Make automated transactions work with assertions (bug #1127)\n+ Improve parsing of date tokens (bug #1626)\n+ Don't attempt to invert a value if it's already zero (bug #1703)\n+ Do not parse user-specified init-file twice\n+ Fix parsing issue of effective dates \n  (bug #1722, TALOS-2017-0303, CVE-2017-2807)\n+ Fix use-after-free issue with deferred postings \n  (bug #1723, TALOS-2017-0304, CVE-2017-2808)\n+ Fix possible stack overflow in option parsing routine \n  (bug #1222, CVE-2017-12481)\n+ Fix possible stack overflow in date parsing routine \n  (bug #1224, CVE-2017-12482)\n+ Fix use-after-free when using --gain (bug #541)\n+ Python: Removed double quotes from Unicode values.\n+ Python: Ensure that parse errors produce useful RuntimeErrors\n+ Python: Expose journal expand_aliases\n+ Python: Expose journal_t::register_account\n+ Improve bash completion\n+ Emacs Lisp files have been moved to https://github.com/ledger/ledger-mode\n+ Various documentation improvements\n\nThis update was imported from the openSUSE:Leap:15.0:Update update project.","status":"published","published":"2019-08-14T15:47:31Z","modified":"2025-05-07T18:09:31.652967Z","updated_at":"2026-11-02T16:58:30.784344Z"},{"id":"openSUSE-SU-2024:10913-1","title":"ledger-3.2.1-3.3 on GA media","description":"These are all security issues fixed in the ledger-3.2.1-3.3 package on the GA media of openSUSE Tumbleweed.","status":"published","published":"2024-06-15T00:00:00Z","modified":"2026-02-04T02:39:03.572786Z","updated_at":"2026-11-02T16:58:34.894275Z"}]}}
