Malicious Code Injection in 'is' Package - Security Compromise
Summary
MAL-2025-6020: Malicious code in is (npm). Affects is versions 3.3.1 – 5.0.0. No fix is published. How to fix ↓
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.
No signup required · Results in about 60 seconds
Background
The 'is' package is a popular utility in the npm ecosystem, widely used for type checking in JavaScript applications. It provides a simple API to determine the type of a variable, making it a staple in many projects. However, recent events have revealed that unauthorized versions of this package were published, containing malicious obfuscated code due to an account compromise.
Vulnerability Detail
The vulnerability stems from unauthorized new versions of the 'is' package being published, which included malicious code. This incident was caused by a compromise of the maintainer's account. The ramifications of this vulnerability are severe, as it can lead to the execution of malicious code in applications that rely on the affected versions. Users of versions 3.3.1 and 5.0.0 are particularly at risk, as these versions contain the injected malicious code.
How To Fix
This package is malicious. Remove it and rotate any credentials it could have accessed.
npm uninstall is
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
If immediate updating is not feasible, consider removing the 'is' package from your project temporarily until a secure version is confirmed. You can do this by executing: 'npm uninstall is'. Additionally, monitor your application for any unusual behavior that may indicate exploitation of this vulnerability.
Conclusion
The 'is' package has been compromised, leading to the publication of malicious versions. It is essential for users to update to a secure version immediately to mitigate risks. Utilizing tools like Vulert can help in monitoring and identifying vulnerabilities in your applications.
See every vulnerability recorded for is →
FAQ
Versions 3.3.1 and 5.0.0 of the 'is' package are known to contain malicious code.
You can use Vulert, which monitors and alerts for open-source vulnerabilities in your software. Visit Vulert Scanner to check your application without needing to sign up.
Consider removing the 'is' package from your project until a secure version is available. Monitor your application for any unusual behavior.
The vulnerability occurred due to the compromise of the maintainer's account, allowing unauthorized versions to be published.
Using the compromised package can lead to the execution of malicious code, potentially compromising your application's security and data integrity.