Your RSA-2048 keys break in 2030. Find every one of them before attackers do.
Malicious package

@solana-labs/web3jsnpm

@solana-labs/web3js is a confirmed malicious npm package (MAL-2026-5788) that steals credentials and exfiltrates sensitive data (malicious versions 1.0.0, 1.0.2, 1.0.3…). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in @solana-labs/web3js (npm)

MAL-2026-5788
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall @solana-labs/web3js

What this malware does

Package name @solana-labs/web3js closely resembles the well-known @solana/web3.js library (different scope, missing dot in module name). The bundled lib/index.cjs.js and lib/index.esm.js are large minified blobs that include require('child_process'), fetch(, POST, curl, and ping strings, but the bundle is consistent in shape with a Solana web3 client SDK (RPC client, websocket subscriptions, JSON-RPC POST calls to user-configured endpoints). The keyword co-occurrence in a minified rollup bundle does not by itself confirm exfiltration: a JSON-RPC client legitimately POSTs to caller-supplied RPC URLs, and child_process references can come from bundled diagnostics or test utilities pulled into the rollup. No lifecycle script, top-level network beacon, or hardcoded attacker endpoint has been confirmed in the traced code. The primary concern is name/scope confusion against the official @solana/web3.js package, which carries real installer risk if developers select the wrong dependency. Routing to human review to (a) confirm whether the scope @solana-labs is an official Solana publisher or a lookalike, and (b) de-minify the relevant spans of the bundle to confirm the network calls are caller-configured RPC endpoints rather than a hardcoded C2.

Malicious versions

17 flagged
1.0.01.0.21.0.31.0.41.0.51.0.61.0.71.0.81.0.101.98.1031.98.1051.98.1071.98.1081.98.1091.98.1101.98.1111.98.112

Indicators of compromise (SHA-256)

154c1945271241882ae87bc62a23737410f47d3c4d5bba00512af9d5a56efe5b
f5a3f5b21565aec159a2ed4715dd9616dbd9d8dcd43b08bb910193ee588da447
fb19c365b2473db2041cdda820b816e8d425e9769e496677b23b8cdeb05872d0
2fc0c80b84dcef600acb67cb8160f0ab52a49ba8df7d4e580466124435d09bbf
41785a71dc9811b8238c1766d0cbd16f34bfad11aa726fbfe2a3db4649246782
9916e7d1a9cf016186b532c3bb0a64848fe7a14da68984d9500a1fdb859bd972
2c46f3a816002f536ea6d4f674c13988a2da8febe492682f65ec57720df1bc97
36ca261f1c644617beb33a34e2530f5d4d8ded155cc385c65a5ac3dab7fd1123
3b60338ab17ff69f9602cd9bf37ca9c25b1335c777bafbd3d4e2f2842d2e05a4
a3eef5d02e2a799b24f5bc84c6fa4e57bc922a7182ba07145dc07c2ac5199238
b79f799d106eaad2a09af8eac8b3ac64a46966e392ec423461facd26dc958705
e83ed61e8324ee03cada69746e85f8e90b42e95ea300fc73e5b47a7e6c214d51
c524c90dba42c1ac6e89db619ace6b6c668fdd1e9381020dc821b70050432f0b
11d7621e5750d5dab20e6120bb0710589cc8fbf272c877dcb865a62515699890
333f4c79ecf1480fb1d8c5e9487a8086a73595c23f7b7b5e744f10a2ef3442f4
80acd3581e663428e1adc113296abf5d266ffd1ec76d214185c45f16c4d3890b
d9bcfcd3a9b7eb540a36cb0d90a75c1e0c94cb5e78e265a85539608e3503a214
0a797a2480183b8adcfcc43bb84c93fa32d1600f3bf472528ae78c1ad1edf55e
396327dd48d56cafc76b50112ae603fb6e5cd0d48969e415464ce096fd3d19b7
51684469e3db0855f1b8209984675d25ce32efea0bd7ef1276443b9af7d68cb0
a198098c537dcc1048633a5dd77b15c32fba01195492af4408f5ebdde86d5086
ad26022d456a92c7b1d76a371199145eb52b4d3a945082a5bca78a69ce749de3
c6ddd8077eb6eb45a905fdb154068cba8362cbe7859429f1380efbc3ee7eed42

Detection & response playbook

Credential / info stealer
  1. Find it

    Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for @solana-labs/web3js (17 malicious versions). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging @solana-labs/web3js across your stack and pipelines.

  2. If you installed it — respond

    @solana-labs/web3js is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.

  3. Did it already run?

    If @solana-labs/web3js was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.

  4. How O3 protects you

    O3 blocks @solana-labs/web3js before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.

Frequently asked questions

No. @solana-labs/web3js on npm has been identified as a malicious package (versions 1.0.0, 1.0.2, 1.0.3, 1.0.4, 1.0.5, 1.0.6, 1.0.7, 1.0.8, and 9 more flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-006571IN-MAL-2026-006566IN-MAL-2026-006572IN-MAL-2026-006562IN-MAL-2026-006570IN-MAL-2026-006563IN-MAL-2026-006568IN-MAL-2026-006565IN-MAL-2026-006567IN-MAL-2026-006561IN-MAL-2026-006569IN-MAL-2026-006564RLMA-2026-05469IN-MAL-2026-012980IN-MAL-2026-012945IN-MAL-2026-012922IN-MAL-2026-012973IN-MAL-2026-012942IN-MAL-2026-013010IN-MAL-2026-012986IN-MAL-2026-012979IN-MAL-2026-012941IN-MAL-2026-012971

References

Credits

  • Amazon Inspector · finder
  • ReversingLabs · finder

Detect & block this

O3 blocks @solana-labs/web3js-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.

Explore

@solana-labs/web3js (npm) malicious package — MAL-2026-5788 | O3 Security