{"id":"MAL-2026-17431","summary":"Malicious code in apl-rive-renderer (npm)","details":"apl-rive-renderer is a dependency-confusion package: it takes a name that looks like an internal project, uses an inflated version (100.0.0) so it outranks private-registry versions, and runs `node setup.js || true` as a preinstall script on npm install. setup.js sends the hostname, username, working directory, OS, architecture, Node.js version and configured npm registry, with a per-package tracking token, in an HTTPS POST to `https://s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook`. The npm account amel10 published apl-rive-renderer and 9 similar packages within two minutes on 2026-09-30, all with the same setup.js.","modified":"2026-10-02T04:45:14.261039676Z","published":"2026-09-30T07:11:22Z","database_specific":{"iocs":{"urls":["https://s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook"],"domains":["s85r5k14qk.execute-api.us-east-1.amazonaws.com"],"files":[{"note":"preinstall: node setup.js || true","paths":["package.json"],"source":"PACKAGE_ARCHIVE","digests":{"sha256":"7feccf2e04bde74a6bd54837e477c5e61aa7811390a7c8da5f4edb37bbb67e93"}},{"paths":["setup.js"],"source":"PACKAGE_ARCHIVE","digests":{"sha256":"33cfa39e7bce830443bded8a853c99cd2d544faec778295c8fd9f9bdf65f47b4"},"note":"Executed by the preinstall script."}]}},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/apl-rive-renderer"}],"affected":[{"package":{"name":"apl-rive-renderer","ecosystem":"npm","purl":"pkg:npm/apl-rive-renderer"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"}]}],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/apl-rive-renderer/MAL-2026-17431.json"}}],"schema_version":"1.9.0","credits":[{"name":"InvisiRisk, Inc.","contact":["https://www.invisirisk.com","mailto:research@invisirisk.com"],"type":"FINDER"}]}