<?xml version='1.0' encoding='UTF-8'?>
<?xml-stylesheet href="/static/style.xsl" type="text/xsl"?>
<rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/" version="2.0">
  <channel>
    <title>Most recent entries from all</title>
    <link>https://vulnerability.circl.lu</link>
    <description>Contains only the most 10 recent entries.</description>
    <docs>http://www.rssboard.org/rss-specification</docs>
    <generator>python-feedgen</generator>
    <language>en</language>
    <lastBuildDate>Tue, 29 Sep 2026 20:05:39 +0000</lastBuildDate>
    <item>
      <title>fkie_cve-2026-55763</title>
      <link>https://vulnerability.circl.lu/vuln/fkie_cve-2026-55763</link>
      <description>&lt;p&gt;Klever-Go is the Go implementation of the Klever blockchain protocol. Prior to 1.7.19, processPercentageRoyaltiesTransfer in core/kapp/accounts/accounts.go calls SubFromBalance after the split loop and after the royaltiesToPay &amp;lt;= 0 early return. computeSplitRoyalties rejects only when splitToPay &amp;gt; royaltiesToPay, so a valid PercentTransferPercentage = 10000 split consumes exactly 100 percent of the royalty pool, sets royaltiesToPay to zero, and returns before the source account is debited. The split recipient receives the full royaltyAmount while the sender pays nothing and the supply counter is not updated, allowing unbounded off-the-books inflation of the transferred KDA. A KDA owner must configure a TransferPercentage royalty with a 100 percent split, after which any holder&amp;#39;s transfer of the asset triggers the mint; the sibling processFixedRoyaltiesTransfer path is not affected because it debits the source before distribution. This issue is fixed in version 1.7.19.&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;Klever-Go is the Go implementation of the Klever blockchain protocol. Prior to 1.7.19, processPercentageRoyaltiesTransfer in core/kapp/accounts/accounts.go calls SubFromBalance after the split loop and after the royaltiesToPay &amp;lt;= 0 early return. computeSplitRoyalties rejects only when splitToPay &amp;gt; royaltiesToPay, so a valid PercentTransferPercentage = 10000 split consumes exactly 100 percent of the royalty pool, sets royaltiesToPay to zero, and returns before the source account is debited. The split recipient receives the full royaltyAmount while the sender pays nothing and the supply counter is not updated, allowing unbounded off-the-books inflation of the transferred KDA. A KDA owner must configure a TransferPercentage royalty with a 100 percent split, after which any holder&amp;#39;s transfer of the asset triggers the mint; the sibling processFixedRoyaltiesTransfer path is not affected because it debits the source before distribution. This issue is fixed in version 1.7.19.&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/fkie_cve-2026-55763</guid>
    </item>
    <item>
      <title>GHSA-v358-wf77-39xv — klever-go: Percentage-transfer royalty skips the source debit at exactly-100% splits</title>
      <link>https://vulnerability.circl.lu/vuln/ghsa-v358-wf77-39xv</link>
      <description>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/klever-io/klever-go&lt;/p&gt;
&lt;p&gt;## Summary
In `processPercentageRoyaltiesTransfer` the royalty pool is collected from the sender by `SubFromBalance` that is
ordered **after** the split loop and after `if royaltiesToPay &amp;lt;= 0 { return Ok }`. The split-payout guard rejects
only an allocation that *exceeds* the pool (a strict `splitToPay &amp;gt; royaltiesToPay`), so a split entry of **exactly
100%** (`PercentTransferPercentage = 10000`) is a *valid* config: it drives `royaltiesToPay` to 0 and hits the
early-return **before** the sender is debited. The split recipient keeps the full royalty; the sender pays nothing
for it → mint. The sibling fixed-royalty path (`processFixedRoyaltiesTransfer`) debits the sender **first** and is
safe. Only the percentage-transfer path collects and distributes in the same function with the collect placed after
the early-return.&lt;/p&gt;
&lt;p&gt;## Affected code
- `core/kapp/accounts/accounts.go` — `processPercentageRoyaltiesTransfer`: split loop → `if royaltiesToPay &amp;lt;= 0
  { return Ok }` → `acntSrc.SubFromBalance(royaltyAmount)` (debit after the early-return). Contrast the safe
  `processFixedRoyaltiesTransfer` (debit before the loop).&lt;/p&gt;
&lt;p&gt;## Impact
Unbounded self-inflation of the transferred KDA: `royaltyAmount = transferValue × rate` is minted to an
owner-controlled split address on every transfer of the asset, with no source debit and no supply-counter update
(off-the-books).&lt;/p&gt;
&lt;p&gt;## Reachability
Owner-gated to configure (own KDA with a `TransferPercentage` royalty + a 100% split). Once configured, the mi…&lt;/p&gt;</description>
      <content:encoded>&lt;p&gt;&lt;strong&gt;Affected:&lt;/strong&gt; Go: github.com/klever-io/klever-go&lt;/p&gt;
&lt;p&gt;## Summary
In `processPercentageRoyaltiesTransfer` the royalty pool is collected from the sender by `SubFromBalance` that is
ordered **after** the split loop and after `if royaltiesToPay &amp;lt;= 0 { return Ok }`. The split-payout guard rejects
only an allocation that *exceeds* the pool (a strict `splitToPay &amp;gt; royaltiesToPay`), so a split entry of **exactly
100%** (`PercentTransferPercentage = 10000`) is a *valid* config: it drives `royaltiesToPay` to 0 and hits the
early-return **before** the sender is debited. The split recipient keeps the full royalty; the sender pays nothing
for it → mint. The sibling fixed-royalty path (`processFixedRoyaltiesTransfer`) debits the sender **first** and is
safe. Only the percentage-transfer path collects and distributes in the same function with the collect placed after
the early-return.&lt;/p&gt;
&lt;p&gt;## Affected code
- `core/kapp/accounts/accounts.go` — `processPercentageRoyaltiesTransfer`: split loop → `if royaltiesToPay &amp;lt;= 0
  { return Ok }` → `acntSrc.SubFromBalance(royaltyAmount)` (debit after the early-return). Contrast the safe
  `processFixedRoyaltiesTransfer` (debit before the loop).&lt;/p&gt;
&lt;p&gt;## Impact
Unbounded self-inflation of the transferred KDA: `royaltyAmount = transferValue × rate` is minted to an
owner-controlled split address on every transfer of the asset, with no source debit and no supply-counter update
(off-the-books).&lt;/p&gt;
&lt;p&gt;## Reachability
Owner-gated to configure (own KDA with a `TransferPercentage` royalty + a 100% split). Once configured, the mi…&lt;/p&gt;</content:encoded>
      <guid isPermaLink="false">https://vulnerability.circl.lu/vuln/ghsa-v358-wf77-39xv</guid>
    </item>
  </channel>
</rss>
