MAL-2026-17549 Malicious code in css-display-reading-polyfill (npm)

Malicious package Published
Package
css-display-reading-polyfill
Registry
npm

What is MAL-2026-17549?

MAL-2026-17549 is a malicious package in css-display-reading-polyfill, published on 5 Oct 2026.

Official description

The package ships payload.bundle.min.js, which on load runs an IIFE that invokes child_process.execSync to run id, whoami, and uname, collects os.hostname(), node version, process.platform, and pid, and transmits the results to the hardcoded collector https://webhook.site/5e52603d-f802-4a6f-b91b-43c3a5b45b6b via fetch and https.get. The published name impersonates an internal Wix thunderbolt module: shipped thunderbolt manifest JSON files declare this package as the loader entry for dozens of Wix component registry names (Container, StylableButton, MasterPage,…) and nine host registries (thunderboltRegistry, editorRegistry, corvidRegistry,…), with "shared":["payload.bundle.min.js"] and components mapped to that bundle. index.js is a benign stub; the exfil code lives entirely in the bundle, so any Wix runtime that resolves these internal registry names from this public package executes the host-reconnaissance payload. This is a dependency-confusion active attack: installer-side shell command output and host identifiers are sent to an attacker-controlled, non-first-party endpoint.

What should I do about MAL-2026-17549?

Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.

Sources

Is MAL-2026-17549 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free