{"id":"MAL-2026-18368","summary":"Malicious code in spectral-net-probe (npm)","details":"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).","modified":"2026-10-29T09:00:05.080450777Z","published":"2026-10-28T05:37:50Z","database_specific":{"iocs":{"ips":["154.57.164.64"],"urls":["https://nobody-johnston-with-enabling.trycloudflare.com/aa?x=1","https://imaging-amazing-trunk-surgeons.trycloudflare.com/marker104?v=1","http://154.57.164.64:30664/api/modules/ECT-654321","http://154.57.164.64:30664/api/modules/ECT-987654"],"files":[{"source":"PACKAGE_ARCHIVE","digests":{"sha256":"7a6c6de967bf3ed91cc46d59d8c0934a92d2d1d1554d45b07295a8b30526d791"},"note":"Main module of spectral-net-probe@1.0.10; runs on require, reads files listed by 154.57.164.64:30664 and PUTs their contents back.","paths":["index.js"]},{"paths":["package.json"],"source":"PACKAGE_ARCHIVE","digests":{"sha256":"e0af9e2a480ebbd6362db84a631a1b1840a3e9992098ddc1d752b2b8895ea722"},"note":"postinstall script: node index.js"},{"digests":{"sha256":"0385a9b88818b96708d6c93a7e6c6328ec39643653b89d1de48554cc7e05eb79"},"note":"Executed by the postinstall script of spectral-net-probe@1.0.1.","paths":["index.js"],"source":"PACKAGE_ARCHIVE"},{"digests":{"sha256":"f36c8163900065c171c7172cc7b30553990726b6772a73c9706ce72368d40817"},"note":"postinstall script: node index.js","paths":["package.json"],"source":"PACKAGE_ARCHIVE"},{"digests":{"sha256":"88bbef970e7fa5cfa45934efccaa89e4b4beeb30cc0139a45093b053353a4630"},"note":"Executed by the postinstall script of spectral-net-probe@1.0.4.","paths":["index.js"],"source":"PACKAGE_ARCHIVE"},{"paths":["package.json"],"source":"PACKAGE_ARCHIVE","digests":{"sha256":"ffa6e421cd65a24492700f33589acb1d97782f1a66137ddf0de7fc847661d267"},"note":"postinstall script: node -e \"require(\".\").sync()\""}]}},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/spectral-net-probe"}],"affected":[{"package":{"name":"spectral-net-probe","ecosystem":"npm","purl":"pkg:npm/spectral-net-probe"},"versions":["1.0.1","1.0.4","1.0.10"],"database_specific":{"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/spectral-net-probe/MAL-2026-18368.json","cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}]}}],"schema_version":"1.9.2","credits":[{"name":"InvisiRisk, Inc.","contact":["https://www.invisirisk.com","mailto:research@invisirisk.com"],"type":"FINDER"}]}