{"id":"MAL-2026-13545","summary":"Malicious code in devplatform-spa-errors (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (5cb27f42d7166d8e64db0a98a48a18f64817d801d1e4b6250c62320f08143d59)\nOn require() of the package, index.js unconditionally loads _loader.js, which selects a platform-specific payload path, fetches an opaque native binary from string-concatenated Cloudflare Workers subdomains (oob-worker.cf103-070.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev) with a DNS-TXT chunked fallback channel to *.dl.wel1.ru, writes the bytes to a temp path disguised as dotnet_diag_\u003ctok\u003e.exe on Windows or.cache_\u003ctok\u003e on POSIX, chmods it to 0755, and spawns it detached via /bin/sh -c \"\u003cpath\u003e &\" or cmd.exe /c start. Hostnames and dropped filenames are assembled at runtime from split-string arrays and framed with Analytics/telemetry SDK cover strings. lib/telemetry.js contains a duplicate copy of the dropper logic (base64-decoded chunks, chmodSync 0755, cp.spawn('/bin/sh', ['-c', filePath + ' &'])) inside a decoy Sentry-like observability module. The package delivers attacker-controlled native code to the installer's host on module load, with no integrity verification and active string obfuscation to evade review.\n","modified":"2026-08-07T13:20:24.521079236Z","published":"2026-08-07T12:27:43Z","database_specific":{"malicious-packages-origins":[{"versions":["35.5.7"],"id":"IN-MAL-2026-016990","import_time":"2026-08-07T12:51:21.203019366Z","modified_time":"2026-08-07T12:27:43Z","sha256":"5cb27f42d7166d8e64db0a98a48a18f64817d801d1e4b6250c62320f08143d59","source":"amazon-inspector"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/devplatform-spa-errors/v/35.5.7"}],"affected":[{"package":{"name":"devplatform-spa-errors","ecosystem":"npm","purl":"pkg:npm/devplatform-spa-errors"},"versions":["35.5.7"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"path":"_loader.js","sha256":"819346201a8c53d5f4ce4b42429c1d6aed5383d0479a609dd22ee298dee8a2db","tlsh":"cea196aa16a670198bb0d7e4c6175416f65bf6637380c194f75c95881fb322483b2efc"},{"sha256":"fa6fe4797e55bc0ea87df70c172730f113102613b2f2d64935935aa4b7d77452","tlsh":"a4835055566a242186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc","path":"lib/telemetry.js"}],"package_integrity":[{"filename":"devplatform-spa-errors-35.5.7.tgz","hashes":{"sha512_sri":"sha512-RFQN1I4Jh8lkgUJsbxCCKAuYd7jDh7O5QZQPMT0xPemUoJnLq1Kd7mJyAe+EfkBg6ksc6e9hKz4sb5wi+6xNdg==","sha1":"b76a90f579d2b8dbd36ae4bfd6d7bb924db1798d"}}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/devplatform-spa-errors/MAL-2026-13545.json"}}],"schema_version":"1.8.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}