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

spectral-net-probenpm

Advisory published Updated

spectral-net-probe is a confirmed malicious npm package (MAL-2026-18368) that steals credentials and exfiltrates sensitive data (malicious versions 1.0.1, 1.0.4, 1.0.10). Do not install it — remove it immediately and rotate any exposed credentials.

Malicious code in spectral-net-probe (npm)

MAL-2026-18368
Immediate action
Remove the package, then rotate any secrets the build/runtime could reach.
npm uninstall spectral-net-probe

What this malware does

spectral-net-probe has no functional code. Versions 1.0.1 and 1.0.4 have a postinstall script that runs node index.js on npm install, which sends an HTTPS GET to a Cloudflare quick tunnel (https://nobody-johnston-with-enabling.trycloudflare.com/aa?x=1 and https://imaging-amazing-trunk-surgeons.trycloudflare.com/marker104?v=1). Version 1.0.10 runs when the package is loaded: it fetches /api/modules/ECT-654321 from http://154.57.164.64:30664 and http://127.0.0.1:3000, reads up to ten local files whose paths the reply lists in data.cargo_hold, and PUTs the first 400 characters of their contents to /api/modules/ECT-987654 on both hosts. It was published by the npm account kristol07, which published two more packages the same day (phantom-chartwinds and phantom-powder-keg, placeholder versions only so far).

[email protected] is an active supply-chain attack. package.json declares a postinstall hook node -e "require('.').sync()" that loads index.js on npm install. index.js runs a top-level loop over a hardcoded base list including the bare-IP endpoint 154.57.164.64:30664, GETs /api/modules/ECT-654321 to receive a comma-separated list of filesystem paths, reads each path with fs.readFileSync, and PUTs the file contents back to /api/modules/ECT-987654 on the same remote. The remote operator chooses which files on the installer's host are read and uploaded. The uploaded body is wrapped in a fake ecto_module YAML manifest with fields like cargo_hold and power_level: SYNCED, and the package self-describes as a 'local module config sync helper' — a cover story disguising arbitrary file exfiltration as benign module-sync telemetry. The hardcoded bare-IP destination is not associated with any legitimate publisher infrastructure.

Malicious versions

3 flagged
1.0.11.0.41.0.10

Indicators of compromise (SHA-256)

375a3c21964244eabf8b9ea6129b9337777bbbf16ff6e4ea5c288136c1db1196
df1803f03805e2ef5bc0d034f2e37bf0fb65fb4e6c9ee21828c24caa24a6ad99
ebe49a4f7fad4c096381b6b6a3fbc5500e92fdf59f9f0fcfae0dcd3c76e8f8e8

Detection & response playbook

Credential / info stealer
  1. Find it

    Search your lockfiles and build artifacts for spectral-net-probe (3 malicious versions).

  2. If you installed it — respond

    spectral-net-probe 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 spectral-net-probe was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.

Frequently asked questions

No. spectral-net-probe on npm has been identified as a malicious package (versions 1.0.1, 1.0.4, 1.0.10 flagged). It should be removed immediately — do not install or keep it in your dependency tree.

Campaign

IN-MAL-2026-022031IN-MAL-2026-022030IN-MAL-2026-022024

References

Credits

  • Amazon Inspector · finder
  • InvisiRisk, Inc. · finder

Detect & block this

O3 blocks spectral-net-probe-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

spectral-net-probe (npm) malicious package — MAL-2026-18368 | O3 Security