Malicious code in figma-to-apl (npm)
Collected exploitation and prediction evidence
Risk source coverageCISA KEV is observed exploitation evidence. FIRST EPSS is a dated prediction of exploitation in the next 30 days. Missing scores are unknown. This collector requests predictions only for explicit CVE aliases in the public NuGet archive; Microsoft release views retain their existing prediction scope.
No collected risk observation for these identifiers. This does not establish absence of exploitation or a zero probability.
osv · MAL-2026-17433
Publishedfigma-to-apl 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 figma-to-apl and 9 similar packages within two minutes on 2026-09-30, all with the same setup.js. --- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (7e8bd598a9ef9799fc78fb815fba85f3b58114b269ccd6dc710e2113bf13efca) [email protected] declares a preinstall script ("node setup.js || true") that runs automatically on npm install. setup.js collects installer-side identifiers — os.hostname(), os.userInfo().username, process.cwd(), process.platform, process.arch, Node version, and the configured npm registry — and POSTs them together with a hardcoded per-package token to https://s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook. The package's advertised functionality is a one-line string-truncation helper, unrelated to the beacon. The version number 100.0.0 combined with a per-package identifying token is characteristic of a dependency-confusion / typosquat reconnaissance probe designed to identify internal build systems that resolve the public package name.
- Source published
- 30 Sep 2026 07:11:22 UTC
- Source modified
- 4 Oct 2026 23:45:20 UTC
- Observed here
- 24 Oct 2026 13:17:17 UTC
- Source terms
- OSV · upstream source license applies
Original source record · Cite this exact observation · Complete original publisher JSON
This view projects the publisher's source fields for reading; the original JSON retains additional fields and CVE enrichment containers. Attribution: osv · OSV · upstream source license applies. Source text is retained; field grouping and change labels are provided by ChangeIntel.