Malicious code in ai-workshop-maa15-radio (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-17427
Publishedai-workshop-maa15-radio 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 ai-workshop-maa15-radio 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 (694d978a9ca05c713784f60dbdc3e6bb41f7b05393e4d7811bd0c2abad93cf36) Package advertises itself as a trivial string helper (reverseWords) but its declared preinstall script (node setup.js) opens an HTTPS POST to a hardcoded endpoint at s85r5k14qk.execute-api.us-east-1.amazonaws.com/prod/hook on every npm install. The request body contains os.hostname(), os.userInfo().username, process.cwd(), os.platform(), os.arch(), process.version, and npm_config_registry, along with a hardcoded per-package tracking token. The version number (100.0.0) and the collection of npm_config_registry are consistent with a dependency-confusion reconnaissance beacon targeting internal package resolution. Installer host and user identifiers are transmitted to an attacker-controlled endpoint without consent, fired automatically at install time.
- Source published
- 30 Sep 2026 07:11:21 UTC
- Source modified
- 4 Oct 2026 23:45:17 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.