Quick answers
- Is CVE-2026-54755 exploited in the wild?
- No. Junglewise Threat Intelligence has no report of CVE-2026-54755 being exploited in the wild.
- How severe is CVE-2026-54755?
- Critical severity, with a CVSS score of 9.6, published 28 August 2026.
- Which products and versions are affected?
- github.com/klever-io/klever-go (Go) < 1.7.19, SEMVER:introduced=0,fixed=1.7.19.
- Is there a fix for CVE-2026-54755?
- Yes. github.com/klever-io/klever-go (Go): upgrade to 1.7.19 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
- How is CVE-2026-54755 attacked?
- It is attacked over the network, in a software library.
- Am I affected by CVE-2026-54755?
- Check whether you run github.com/klever-io/klever-go (Go) at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.
How to fix
- github.com/klever-io/klever-go (Go): upgrade to 1.7.19 or later
go get github.com/klever-io/klever-go@v1.7.19
Technical details
The vulnerability is a classic integer overflow in input validation chained with a silent error handler. Klever's KDA (asset creation) code in `core/kapp/builtInFunctions/utils.go` decodes split-royalty percentages as raw uint32 fields with no per-entry upper bound, then sums them into a uint32 accumulator in `core/kapp/kda/create.go` (lines 351–382). The validation function `CheckValid100Params` checks only whether the sum exceeds 10000 (HundredPercent); two entries of 0x80000000 (≈21.5 billion percent) sum to 0x100000000, which wraps to 0 in uint32, passing validation while each stored value remains 0x80000000. At payout time in `core/kapp/accounts/accounts.go` (lines 276–382), the split royalty is computed as `pool × inflatedPct / 10000`, which for a small pool fits in int64 without triggering overflow detection. The remainder after distributing inflated splits becomes negative; the code silently returns `Ok` instead of erroring (line 349: `if royaltiesToPay <= 0 { return Ok }`), effectively minting KLV. The same pattern exists in marketplace buy (`core/kapp/market/market.go`) and ITO buy (`core/kapp/ito/ito.go`). Any unprivileged account can trigger this on-demand by creating a malicious asset (one-time cost) and transferring it repeatedly; no role, allowlist, or smart contract is required. The minted amount is off-ledger (booked supply unchanged), making detection difficult.
Affected products
- Klever klever-go < 1.7.19
Identifiers
- CVE-2026-54755
- GHSA-cgc5-v3f2-8m2v
- GO-2026-6310
Timeline
- 2026-06-22: disclosed: Published in GitHub Advisory Database
- 2026-08-28: advisory: Advisory updated with full technical details and POC
- 2026-06-22: patched: Patched in version 1.7.19