Malicious code in akamai-sensor (npm)
Historical advisory saved 24 Oct 2026 13:17:17 UTC. The publisher may have updated it since then. Latest advisory.
osv · MAL-2026-14065
Published--- _-= Per source details. Do not edit below this line.=-_ ## Source: amazon-inspector (f1a8cc3668ec9751c1ef60bf602f1e08f2f2fdf8dce999e442c484458f932178) Package published under a name impersonating Akamai's sensor_data anti-bot SDK. index.js contains a /*... */ comment whose body is encoded in invisible Unicode variation-selector and tag characters (U+FE00-U+FE0F and U+E0100-U+E01EF); sync-metrics.js reads index.js, extracts that comment, decodes the tag characters back to UTF-8 bytes, and passes the reconstructed string to new Function('require', batch)(require), executing hidden JavaScript with full require access. Execution is triggered when a consumer calls the package's exported sensor() API (index.js invokes require('./sync-metrics').touch()). index.js additionally fetches a hardcoded public Google Calendar ICS feed at calendar.google.com/calendar/ical/hev4229%40gmail.com/public/basic.ics, scans event DESCRIPTION fields for a URL (base64-decoding the value), appends /generate, and fetches and parses JSON from that URL on each sensor() call - a dead-drop command-and-control channel whose target endpoint the operator can rotate at will by editing the calendar. The combination of vendor-name impersonation, invisible-Unicode payload concealment, dynamic code execution via new Function, and mutable third-party dead-drop C2 is a supply-chain attack against installers who trust the Akamai brand.
- Source published
- 15 Aug 2026 17:41:39 UTC
- Source modified
- 24 Sep 2026 09:30:15 UTC
- Saved 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
Source: osv · OSV · upstream source license applies. The publisher's wording is preserved. ChangeIntel groups the information and labels changes. The JSON record includes additional source fields.