Malicious Code Injection in persistent_perch_z3n: A Threat to npm Ecosystem

persistent_perch_z3n Updated 18 Nov 2025

Summary

11/11/2025
CRITICAL
No i
Critical
Not published

MAL-2025-107038: Malicious code in persistent_perch_z3n (npm). Affected versions are not published. 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 package 'persistent_perch_z3n' is part of the npm ecosystem, which is widely used for JavaScript package management. This package has been identified as part of a malicious campaign that aims to exploit the npm registry by flooding it with derivative packages. The malicious nature of this package lies in its ability to modify its own metadata and publish variants that can mislead developers and inflate reputation scores.

Vulnerability Detail

The vulnerability in 'persistent_perch_z3n' originates from its association with the tea.xyz token reward campaign. It contains scripts that automatically generate and publish derivative packages with randomized names, effectively polluting the npm registry. The malicious payload alters the package.json file by removing private flags, changing version numbers, and creating random package names, which can lead to a compromised development environment and potential security risks for users who unknowingly install these variants.

How To Fix

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

npm uninstall persistent_perch_z3n

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, you can avoid using the 'persistent_perch_z3n' package and check your project for any dependencies that might rely on it. You can also use the following command to audit your npm packages for vulnerabilities: 'npm audit'.

Conclusion

The 'persistent_perch_z3n' package poses a significant risk due to its malicious code that alters package metadata and floods the npm registry. It is crucial for developers to remove this package from their projects and utilize tools like Vulert to monitor for vulnerabilities in real-time. Staying informed and proactive can help mitigate the risks associated with such vulnerabilities.

See every vulnerability recorded for persistent_perch_z3n →

Share this vulnerability

FAQ

The package contains malicious code that modifies its own metadata and floods the npm registry with derivative packages.

You can use Vulert to monitor your application for vulnerabilities. By simply analyzing your package-lock.json file, Vulert provides real-time alerts for any open-source vulnerabilities.

You should uninstall the package immediately using 'npm uninstall persistent_perch_z3n' and check for any other affected packages.

Yes, tools like Vulert can help you monitor and alert for open-source vulnerabilities without requiring code access or installation.

Regularly update your dependencies, use tools like npm audit, and consider using Vulert for ongoing monitoring of your packages.

How To Fix

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

npm uninstall persistent_perch_z3n

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