lbryio / lbryio/lbry-sdk

CVE-2024-34155 BIP32 Derivation

Open
#3,747 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
7.2k
Forks
493
PR merge metrics
No merged PRs in 30d

Description

#3442

BIP32 Derivation found in the API.

Image Image Image Image

PoC

https://github.com/user-attachments/assets/ea845c64-2cc6-4eac-aa6e-901399068605

Integrity discrepancy found in centralized "Rewards" Ledger vs. Decentralized SDK UTXO State. (CORS/Middleware/Environment Isolation/Balance Derivation).

Account reveals material discrepancy between "earned" LBC and "spendable" LBC. The API records a variable amount. The SDK v0.113.0 remains unaware of these assets even after the master seed injection address gap widens.

Vulnerable code as it stands: tox.ini confirms blockchain and transactions operate in isolated environments. The Ghost Ledger 'transacts' credited rewards without corresponding UTXO elements to broadcast the "Blockchain" ledger. server.go Explicitly sets Access-Control-Origin: "*" permitting cross-origin theft of session tokens which uses Ghost balances before hitting the decentralized chain.

UTXOs of earned rewards are withheld, subsequently.

Sub-account isolation results in loss of user access to "Earned" rewards. JSON-RPC reveals unauthenticated local ports which allows Remote code execution if port 5279 is exposed via a browser-based "CORS bypass."

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the referenced #3442 and inspecting tox.ini, server.go, and the JSON-RPC surface around port 5279; use the supplied PoC to compare the API Rewards ledger with SDK v0.113.0 UTXO state. Done means the reported vulnerability scope is reproducible and confirmed, with the CORS, isolation, and ledger discrepancies resolved or disproved.

Written by the indexing model from the issue text.

Assessment

Tech stack
blockchain, go, python
Domain
api, blockchain, security
Issue type
Bug
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
15/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.