Every CVE Search/ Get API key

CVE-2017-12481

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial...

7.8 HighFix available

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Attack profile

How easy it is to exploit

Attack vector
Local
Complexity
Low
Privileges needed
None
User interaction
Required

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
High

Exploit likelihood

1.24%Down 0.4 points since Apr 14, 2021
90%50%10%1%

What each source reports

NVD Score used 7.8

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
CVE-2017-12481
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
CVSS 2.0
6.8 MediumAV:N/AC:M/Au:N/C:P/I:P/A:P
Weakness
CWE-119
Updated
2026-11-02
CVE List No score

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
CVE-2017-12481
Updated
2026-11-02
EUVDEUVD-2017-4053 No score

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
EUVD-2017-4053
Updated
2026-11-03
GitHub AdvisoriesGHSA-5fcm-3wm8-28vv 7.8

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial...

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
GHSA-5fcm-3wm8-28vv
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Weakness
CWE-119
Updated
2026-11-02
OSV 7.8

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
CVE-2017-12481
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVDEBIAN-CVE-2017-12481 7.8

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
DEBIAN-CVE-2017-12481
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
Show 4 moreShow less
OSVUBUNTU-CVE-2017-12481 7.8

The find_option function in option.cc in Ledger 3.1.1 allows remote attackers to cause a denial of service (stack-based buffer overflow and application crash) or possibly have unspecified other impact via a crafted file.

Record
UBUNTU-CVE-2017-12481
CVSS 3.0
7.8 HighCVSS:3.0/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Updated
2026-11-02
OSVopenSUSE-SU-2019:1779-1 No score

Security update for ledger

This update for ledger fixes the following issues:

ledger was updated to 3.1.3:

  • Properly reject postings with a comment right after the flag (bug #1753)
  • Make sorting order of lot information deterministic (bug #1747)
  • Fix bug in tag value parsing (bug #1702)
  • Remove the org command, which was always a hack to begin with (bug #1706)
  • Provide Docker information in README
  • Various small documentation improvements

This also includes the update to 3.1.2:

  • Increase maximum length for regex from 255 to 4095 (bug #981)
  • Initialize periods from from/since clause rather than earliest transaction date (bug #1159)
  • Check balance assertions against the amount after the posting (bug #1147)
  • Allow balance assertions with multiple posts to same account (bug #1187)
  • Fix period duration of 'every X days' and similar statements (bug #370)
  • Make option --force-color not require --color anymore (bug #1109)
  • Add quoted_rfc4180 to allow CVS output with RFC 4180 compliant quoting.
  • Add support for --prepend-format in accounts command
  • Fix handling of edge cases in trim function (bug #520)
  • Fix auto xact posts not getting applied to account total during journal parse (bug #552)
  • Transfer null_post flags to generated postings
  • Fix segfault when using --market with --group-by
  • Use amount_width variable for budget report
  • Keep pending items in budgets until the last day they apply
  • Fix bug where .total used in value expressions breaks totals
  • Make automated transactions work with assertions (bug #1127)
  • Improve parsing of date tokens (bug #1626)
  • Don't attempt to invert a value if it's already zero (bug #1703)
  • Do not parse user-specified init-file twice
  • Fix parsing issue of effective dates (bug #1722, TALOS-2017-0303, CVE-2017-2807)
  • Fix use-after-free issue with deferred postings (bug #1723, TALOS-2017-0304, CVE-2017-2808)
  • Fix possible stack overflow in option parsing routine (bug #1222, CVE-2017-12481)
  • Fix possible stack overflow in date parsing routine (bug #1224, CVE-2017-12482)
  • Fix use-after-free when using --gain (bug #541)
  • Python: Removed double quotes from Unicode values.
  • Python: Ensure that parse errors produce useful RuntimeErrors
  • Python: Expose journal expand_aliases
  • Python: Expose journal_t::register_account
  • Improve bash completion
  • Emacs Lisp files have been moved to https://github.com/ledger/ledger-mode
  • Various documentation improvements
Record
openSUSE-SU-2019:1779-1
Updated
2026-11-02
OSVopenSUSE-SU-2019:1895-1 No score

Security update for ledger

This update for ledger fixes the following issues:

ledger was updated to 3.1.3:

  • Properly reject postings with a comment right after the flag (bug #1753)
  • Make sorting order of lot information deterministic (bug #1747)
  • Fix bug in tag value parsing (bug #1702)
  • Remove the org command, which was always a hack to begin with (bug #1706)
  • Provide Docker information in README
  • Various small documentation improvements

This also includes the update to 3.1.2:

  • Increase maximum length for regex from 255 to 4095 (bug #981)
  • Initialize periods from from/since clause rather than earliest transaction date (bug #1159)
  • Check balance assertions against the amount after the posting (bug #1147)
  • Allow balance assertions with multiple posts to same account (bug #1187)
  • Fix period duration of 'every X days' and similar statements (bug #370)
  • Make option --force-color not require --color anymore (bug #1109)
  • Add quoted_rfc4180 to allow CVS output with RFC 4180 compliant quoting.
  • Add support for --prepend-format in accounts command
  • Fix handling of edge cases in trim function (bug #520)
  • Fix auto xact posts not getting applied to account total during journal parse (bug #552)
  • Transfer null_post flags to generated postings
  • Fix segfault when using --market with --group-by
  • Use amount_width variable for budget report
  • Keep pending items in budgets until the last day they apply
  • Fix bug where .total used in value expressions breaks totals
  • Make automated transactions work with assertions (bug #1127)
  • Improve parsing of date tokens (bug #1626)
  • Don't attempt to invert a value if it's already zero (bug #1703)
  • Do not parse user-specified init-file twice
  • Fix parsing issue of effective dates (bug #1722, TALOS-2017-0303, CVE-2017-2807)
  • Fix use-after-free issue with deferred postings (bug #1723, TALOS-2017-0304, CVE-2017-2808)
  • Fix possible stack overflow in option parsing routine (bug #1222, CVE-2017-12481)
  • Fix possible stack overflow in date parsing routine (bug #1224, CVE-2017-12482)
  • Fix use-after-free when using --gain (bug #541)
  • Python: Removed double quotes from Unicode values.
  • Python: Ensure that parse errors produce useful RuntimeErrors
  • Python: Expose journal expand_aliases
  • Python: Expose journal_t::register_account
  • Improve bash completion
  • Emacs Lisp files have been moved to https://github.com/ledger/ledger-mode
  • Various documentation improvements

This update was imported from the openSUSE:Leap:15.0:Update update project.

Record
openSUSE-SU-2019:1895-1
Updated
2026-11-02
OSVopenSUSE-SU-2024:10913-1 No score

ledger-3.2.1-3.3 on GA media

These are all security issues fixed in the ledger-3.2.1-3.3 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:10913-1
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
ledger
Debian:12
before 3.1.2+dfsg1-1
3.1.2+dfsg1-1
ledger
Debian:13
before 3.1.2+dfsg1-1
3.1.2+dfsg1-1
ledger
Debian:14
before 3.1.2+dfsg1-1
3.1.2+dfsg1-1
ledger
Ubuntu:16.04:LTS
All versions, plus listed versions
3.1+dfsg1-53.1+dfsg1-63.1+dfsg1-73.1.1+dfsg1-1
None known
ledger
Ubuntu:18.04:LTS
All versions, plus listed versions
3.1.2~pre1+g3a00e1c+dfsg1-53.1.2~pre1+g3a00e1c+dfsg1-5build13.1.2~pre1+g3a00e1c+dfsg1-5build23.1.2~pre1+g3a00e1c+dfsg1-5build33.1.2~pre1+g3a00e1c+dfsg1-5build43.1.2~pre1+g3a00e1c+dfsg1-5build5
None known
ledger
openSUSE:Leap 15.0
before 3.1.3-lp151.3.3.1
3.1.3-lp151.3.3.1
ledger
openSUSE:Leap 15.1
before 3.1.3-lp151.3.3.1
3.1.3-lp151.3.3.1
ledger
SUSE:Package Hub 15 SP1
before 3.1.3-bp151.4.3.1
3.1.3-bp151.4.3.1
ledger
openSUSE:Tumbleweed
before 3.2.1-3.3
3.2.1-3.3

History

History
RecordedChangedSources
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2017-12481 is a high vulnerability (CVSS 7.8) in Ledger-cli Ledger, published August 4, 2017. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.24%, the 69th percentile. Fixed in ledger 3.1.2+dfsg1-1.

References

Show 13 moreShow less
MoveEnter Open