Vulnerability · Published Apr 17, 2024 · Assigned by GitHub_M
CVE-2024-30253Handling untrusted input can result in a crash, leading to loss of availability / denial of service
High 7.5
In plain English
A high-severity memory corruption in solana-web3.js from solana-labs. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.6% (higher than 49% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
@solana/web3.js is the Solana JavaScript SDK. Using particular inputs with `@solana/web3.js` will result in memory exhaustion (OOM). If you have a server, client, mobile, or desktop product that accepts untrusted input for use with `@solana/web3.js`, your application/service may crash, resulting in a loss of availability. This vulnerability is fixed in 1.0.1, 1.10.2, 1.11.1, 1.12.1, 1.1.2, 1.13.1, 1.14.1, 1.15.1, 1.16.2, 1.17.1, 1.18.1, 1.19.1, 1.20.3, 1.21.1, 1.22.1, 1.23.1, 1.24.3, 1.25.1, 1.26.1, 1.27.1, 1.28.1, 1.2.8, 1.29.4, 1.30.3, 1.31.1, 1.3.1, 1.32.3, 1.33.1, 1.34.1, 1.35.2, 1.36.1, 1.37.3, 1.38.1, 1.39.2, 1.40.2, 1.41.11, 1.4.1, 1.42.1, 1.43.7, 1.44.4, 1.45.1, 1.46.1, 1.47.5, 1.48.1, 1.49.1, 1.50.2, 1.51.1, 1.5.1, 1.52.1, 1.53.1, 1.54.2, 1.55.1, 1.56.3, 1.57.1, 1.58.1, 1.59.2, 1.60.1, 1.61.2, 1.6.1, 1.62.2, 1.63.2, 1.64.1, 1.65.1, 1.66.6, 1.67.3, 1.68.2, 1.69.1, 1.70.4, 1.71.1, 1.72.1, 1.7.2, 1.73.5, 1.74.1, 1.75.1, 1.76.1, 1.77.4, 1.78.8, 1.79.1, 1.80.1, 1.81.1, 1.8.1, 1.82.1, 1.83.1, 1.84.1, 1.85.1, 1.86.1, 1.87.7, 1.88.1, 1.89.2, 1.90.2, 1.9.2, and 1.91.3.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @solana/web3.js | 1.91.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.90.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.89.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.88.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.87.7 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.86.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.85.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.84.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.83.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.82.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.81.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.80.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.79.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.78.8 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.77.4 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.76.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.75.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.74.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.73.5 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.72.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.71.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.70.4 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.69.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.68.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.67.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.66.6 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.65.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.64.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.63.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.62.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.61.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.60.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.59.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.58.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.57.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.56.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.55.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.54.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.53.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.52.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.51.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.50.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.49.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.48.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.47.5 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.46.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.45.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.44.4 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.43.7 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.42.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.41.11 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.40.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.39.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.38.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.37.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.36.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.35.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.34.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.33.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.32.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.31.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.30.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.29.4 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.28.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.27.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.26.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.25.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.24.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.23.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.22.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.21.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.20.3 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.19.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.18.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.17.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.16.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.15.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.14.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.13.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.12.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.11.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.10.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.9.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.8.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.7.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.6.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.5.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.4.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.3.1 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.2.8 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.1.2 | GHSA-8m45-2rjm-j347 |
| npm | @solana/web3.js | 1.0.1 | GHSA-8m45-2rjm-j347 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| solana-labs | solana-web3.js | >= 1.91.0, < 1.91.3>= 1.90, < 1.90.2>= 1.89, < 1.89.2= 1.88.0>=1.87.0, < 1.87.7= 1.86.0= 1.85.0= 1.84.0 |
Weakness: CWE-119 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H