Malicious Code Vulnerability in css-reading-flow-polyfill Package

css-reading-flow-polyfill Updated 05 Oct 2026

Summary

04/10/2026
CRITICAL
No i
Critical
Not published

MAL-2026-17483: Malicious code in css-reading-flow-polyfill (npm). Affects css-reading-flow-polyfill versions 1.0.0. No fix is published. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

The css-reading-flow-polyfill package is an npm module designed to provide a polyfill for CSS reading flow functionality. However, it has been discovered that this package contains malicious code that compromises the security of applications using it. The package masquerades as a legitimate utility while embedding harmful scripts that can execute unauthorized commands and exfiltrate sensitive information.

Vulnerability Detail

The vulnerability originates from the malicious code embedded in the css-reading-flow-polyfill package, specifically in the thunderboltRegistry.js file. This file impersonates internal Wix thunderbolt registry modules and executes a series of commands using child_process.execSync to gather system information, including user identity and network configuration. It then sends this information to an external server over plain HTTP, posing significant risks of data leakage and unauthorized access. The module also manipulates the require.cache to ensure that the malicious code runs on every require, making it difficult to detect and mitigate.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall css-reading-flow-polyfill

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Workaround

As a temporary workaround, you can avoid using the css-reading-flow-polyfill package altogether and look for alternative libraries that provide similar functionality without the associated risks.

Conclusion

The css-reading-flow-polyfill package contains a serious vulnerability due to embedded malicious code that can compromise system security. It is crucial to remove this package from your project and monitor for any updates or patches. Utilizing tools like Vulert can help keep your applications secure by alerting you to potential vulnerabilities.

See every vulnerability recorded for css-reading-flow-polyfill →

Share this vulnerability

FAQ

It is an npm package intended to provide a polyfill for CSS reading flow functionality, but it has been found to contain malicious code.

The malicious code executes system commands to gather sensitive information and sends it to an external server.

The risks include data leakage, unauthorized access to system information, and potential exploitation of the affected application.

You can use Vulert, which monitors and alerts for open-source vulnerabilities in real-time. Visit Vulert Scanner to check your application without needing to sign up.

The best course of action is to remove the package entirely, as there are no effective workarounds to mitigate the risks posed by the embedded malicious code.

How To Fix

This package is malicious. Remove it and rotate any credentials it could have accessed.

npm uninstall css-reading-flow-polyfill

If it arrived as a transitive dependency, remove the package that pulled it in, then reinstall.

Tip — Not sure whether your app is affected? Vulert can check the versions your app actually runs. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback