AI-generated analysisPublished automatically and not human-verified. Validated context appears in community notes below.
← Watch feed
Informational 21 Bitcoin

lightningd: new internal-use commands to allow utxo spend / deposit injection.

Public commit record

What the developer wrote

Authored by Rusty Russell

73/100 · Adequate
lightningd: new internal-use commands to allow utxo spend / deposit injection.

For the moment, we'll continue to use bookkeeper to monitor the
notifications to insert these (we don't have the internal infrastructure
for that, and actually these commands are probably better than using
notifications).

We hoist param_outpoint() into common code, since there are already
two uses.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
✓ Specific, descriptive subject✓ Names a concrete action or component✓ Provides detailed explanatory context
The short version

What changed, and why it matters

This commit adds two new internal-only JSON commands, injectutxodeposit and injectutxospend, that let the bookkeeper plugin manually insert records of coins moving into or out of the node's accounting ledger. It also moves a helper for parsing outpoints into shared code. There is no direct evidence in the commit that these commands are exposed to untrusted users or that they introduce a vulnerability, but any command that can write arbitrary ledger entries deserves careful access control review.

Recommended action

Verify that injectutxodeposit and injectutxospend are restricted to the bookkeeper plugin or otherwise protected by appropriate RPC permissions, and confirm that arbitrary callers cannot invoke them. Audit wallet_save_chain_mvt() for handling of duplicate or conflicting outpoints, and review param_msat_as_sat() for rounding edge cases. Treat this as a routine defensive review item rather than an active vulnerability.

Security signals we found

01

New RPC commands that write accounting/ledger records

02

Commands marked internal-use but registered through AUTODATA(json_command, ...)

03

No authentication or permission checks visible in the diff

04

Amount parsing accepts millisatoshi and converts to satoshi

05

FIXME comment indicates this is a temporary bridge mechanism

Risk score

Why this scored 21/100

Our methodology →
Potential impact 2/30
Exploitability 3/25
Stealth signal 4/15
Affected reach 3/15
Confidence 6/10
Evidence quality 3/5
Human-validated context

Community notes

Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.

No validated notes yet.

The AI analysis stands alone for now. Submit a note if you can add evidence or important context.