Skip to main content
VulnerabilityPublished 09/09/2026

Malicious code in easypanel-agent (npm)

Affects easypanel-agentSource GCVE Database

0
Severity
High

Rated by Threat Radar

Data as of 09/09/2026, 13:59:49 UTC

What to do

Affected software

ProductAffectedFixed in
npmeasypanel-agentAffected
  • =1.0.0
Fixed in–

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

Users should avoid installing easypanel-agent version 1.0.0 and verify dependencies carefully to prevent supply chain attacks such as typosquatting or dependency confusion. Monitor package sources and prefer official packages from trusted repositories.

Description

The easypanel-agent npm package version 1.0.0 contains malicious code in its preinstall lifecycle script that collects system information and transmits it to an external server without user consent. The package's main module is a stub, indicating the primary function is the data exfiltration during installation. This package appears to be a typosquatting or dependency confusion attempt targeting the legitimate easypanel product.

Impact

Installation of easypanel-agent version 1.0.0 results in unauthorized collection and exfiltration of sensitive environment and system information to an attacker-controlled server. This compromises user privacy and could facilitate further targeted attacks or reconnaissance. There is no indication of additional malicious payloads beyond data exfiltration.

Summary

The easypanel-agent npm package version 1.0.0 includes a preinstall.js script that executes automatically during npm install. This script collects the installer's hostname, OS username, current working directory, and CI-related environment variable names. The collected data is base64-encoded and sent to a hardcoded external collector domain (lyomeri.com) via DNS queries and HTTP GET requests. The main module exports an empty object, confirming that the install-time data exfiltration is the sole functionality. The package name mimics a legitimate product, suggesting it is used for dependency confusion or typosquatting attacks. An in-source comment describes the code as a 'benign canary,' but this does not negate the unauthorized data transmission.

References

Community reviews

Loading reviews…