Malicious Code Injection in riyanto-poke39: A Threat to npm Users
Summary
MAL-2025-165146: Malicious code in riyanto-poke39 (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 riyanto-poke39 package is part of the npm ecosystem, which is widely used for JavaScript package management. This package is associated with the tea.xyz token reward campaign, which has been linked to a series of malicious activities aimed at inflating developer reputation scores. The package's primary function is to facilitate the distribution of software, but it has been compromised to include harmful scripts that manipulate its own metadata.
Vulnerability Detail
The vulnerability in riyanto-poke39 stems from its inclusion in a malicious campaign that deploys autopublish scripts. These scripts modify the package.json file to remove private flags, alter version numbers, and generate random package names, leading to the continuous republishing of variants that pollute the npm registry. This not only affects the integrity of the npm ecosystem but also poses risks to developers who may unknowingly use these compromised packages.
How To Fix
This package is malicious. Remove it and rotate any credentials it could have accessed.
npm uninstall riyanto-poke39
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 measure, avoid using the riyanto-poke39 package and consider using alternative packages that provide similar functionality without the associated risks. Regularly audit your package dependencies using tools like Vulert to monitor for vulnerabilities.
Conclusion
The riyanto-poke39 package poses a significant threat due to its malicious code that alters package metadata and repopulates the npm registry with compromised versions. It is essential for developers to remove this package and monitor their dependencies for vulnerabilities to maintain the security of their applications.
See every vulnerability recorded for riyanto-poke39 →
FAQ
The riyanto-poke39 package is an npm package that has been compromised to include malicious code as part of a token reward campaign.
The vulnerability can lead to the introduction of malicious code in your project, potentially compromising its security and integrity.
You should uninstall the package immediately using npm uninstall riyanto-poke39 and check for any other compromised packages in your project.
You can use tools like Vulert, which monitors your package-lock.json for vulnerabilities in real-time without requiring code access or installation.
Yes, you can use the Vulert playground at Vulert Scanner to check if your application is affected by this vulnerability without any signup.