Malicious Code Injection in ruji-14 Package: A Threat to npm Ecosystem
Summary
MAL-2025-165238: Malicious code in ruji-14 (npm). Affected versions are not published. 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 ruji-14 package is part of the npm ecosystem, which is widely used for JavaScript package management. This package has been associated with the tea.xyz token reward campaign, which has been known to flood the npm registry with malicious packages. These packages often contain scripts designed to manipulate package metadata and inflate developer reputation scores, posing a significant risk to developers and users alike.
Vulnerability Detail
The vulnerability in the ruji-14 package originates from its inclusion in a malicious campaign that utilizes autopublish scripts to generate and publish derivative packages with randomized names. This manipulation modifies the package.json file by removing private flags, altering version numbers, and continuously republishing variants to pollute the npm registry. The ramifications of this vulnerability include potential exposure to malicious code, compromised developer reputation, and degradation of the npm ecosystem's integrity.
How To Fix
This package is malicious. Remove it and rotate any credentials it could have accessed.
npm uninstall ruji-14
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 prevent the installation of the ruji-14 package by using npm's package-lock.json file to lock your dependencies. Ensure that your package-lock.json does not include ruji-14 or any of its derivatives. Additionally, consider using tools like Vulert to monitor your dependencies for vulnerabilities.
Conclusion
The ruji-14 package presents a significant risk due to its malicious code and association with a fraudulent campaign. It is crucial for developers to remove this package from their projects and utilize tools like Vulert to monitor for vulnerabilities. Staying informed and proactive can help maintain the integrity of the npm ecosystem.
See every vulnerability recorded for ruji-14 →
FAQ
The ruji-14 package is an npm package that has been linked to malicious activities, specifically designed to manipulate package metadata for fraudulent purposes.
You can use Vulert, a tool that monitors your package-lock.json file for vulnerabilities. Visit the Vulert playground at Vulert Scanner to check if your application is affected.
If you have installed ruji-14, you should immediately uninstall it using 'npm uninstall ruji-14' and check for any other affected packages.
Yes, the vulnerability allows for the modification of package.json files, which can lead to the injection of malicious code into applications that depend on the compromised packages.
Vulert provides real-time monitoring and alerts for open-source vulnerabilities in your software by analyzing your package-lock.json file, ensuring you stay informed about potential risks.