Skip to content
OpenAdvisories
Malicious MAL-2026-17547

css-at-scope-polyfill

npm package · versions 1.0.0

Reported Oct 5, 2026 · Updated Oct 5, 2026

If this package is installed

Remove it, treat the machine (or CI runner) as compromised, and rotate every secret, token and key it could access — from a different, clean machine.

Details

Source: amazon-inspector (c4d8d974b7fabf04fa662971cd8041fb76775bf5ed2902cbbffed0f881e2036d)
Package is published under a CSS-polyfill name but ships thunderboltRegistry.js, which exports Wix internal registry module names (thunderboltRegistry, siteAssetsRegistry, editorRegistry, corvidRegistry, etc.) so that a build resolving any of those names will load this file. On require(), an IIFE runs child_process.execSync to collect `id`, `whoami`, `uname`, `ifconfig`/`ip addr`, and the contents of /etc/hosts, plus a beacon containing node version, platform, pid, and hostname, and POSTs the output via fetch to the hardcoded HTTP endpoint http://dxpoc.gt.tc/callback.php/bb8968d0f67000433bf7005dd5ad2d1f. The payload clears any require.cache entries referencing 'thunderboltRegistry' and acquires child_process through three fallbacks, including instantiating a new Module via module.constructor to bypass mocks or sandboxes. The declared CSS-polyfill purpose has no relation to this behavior; the shape is a dependency-confusion squat against internal Wix modules.