Vulnerability · Published Jul 30, 2024 · Assigned by GitHub_M

CVE-2024-41945The fuels-ts typescript SDK has no awareness of to-be-spent transactions

Low 3.1

In plain English

A low-severity improper input validation in fuels-ts from FuelLabs. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 24% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)3.1Low
Exploit odds (30 days)0.3%top 76.1% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

Official description

fuels-ts is a library for interacting with Fuel v2. The typescript SDK has no awareness of to-be-spent transactions causing some transactions to fail or silently get pruned as they are funded with already used UTXOs. The problem occurs, because the `fund` function in `fuels-ts/packages/account/src/account.ts` gets the needed ressources statelessly with the function `getResourcesToSpend` without taking into consideration already used UTXOs. This issue will lead to unexpected SDK behaviour, such as a transaction not getting included in the `txpool` / in a block or a previous transaction silently getting removed from the `txpool` and replaced with a new one.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npm@fuel-ts/account0.93.0GHSA-3jcg-vx7f-j6qf

Affected products (as reported)

VendorProductVersions
FuelLabs fuels-ts < 0.93.0

Weakness: CWE-20 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:L/A:N

References