CVE-2026-72573
Received Received - Intake

OS Command Injection in pm2panel

Vulnerability report for CVE-2026-72573, including description, CVSS score, EPSS score, affected products, exploitability, helpful resources, and attack-flow context.

Publication date: 2026-08-10

Last updated on: 2026-08-10

Assigner: 309f9ea4-e3e9-4c6c-b79d-e8eb01244f2c

Description

An OS command injection vulnerability in 4xmen/pm2panel (all versions) allows an authenticated remote attacker to execute arbitrary system commands on the host. The pm2panel.js handler at line 188 passes the unsanitized req.query.id parameter directly to exec('pm2 restart ' + id) without input validation or shell escaping, enabling command chaining via semicolons or other shell metacharacters.

CVSS Scores

EPSS Scores

Probability:
Percentile:

Meta Information

Published
2026-08-10
Last Modified
2026-08-10
Generated
2026-08-10
AI Q&A
2026-08-10
EPSS Evaluated
N/A
NVD
EUVD

Affected Vendors & Products

Showing 1 associated CPE
Vendor Product Version / Range
4xmen pm2panel *

Helpful Resources

Exploitability

CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-78 The product constructs all or part of an OS command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended OS command when it is sent to a downstream component.

Attack-Flow Graph

AI Quick Actions

Instant insights powered by AI
Executive Summary

This is an OS command injection vulnerability in pm2panel, a web-based control panel for managing PM2 processes. An authenticated remote attacker can execute arbitrary system commands on the host by injecting commands via the req.query.id parameter in the pm2panel.js handler. The application passes this unsanitized input directly to a system exec call without validation or shell escaping, allowing command chaining with semicolons or other shell metacharacters.

Detection Guidance

Check if pm2panel is running on your system by inspecting active processes with commands like 'ps aux | grep pm2panel' or 'netstat -tulnp | grep 3001'. Review the pm2panel.js file for the vulnerable exec call at line 188 where req.query.id is passed unsanitized to 'pm2 restart'. Search for 'exec' and 'req.query.id' in the codebase.

Impact Analysis

An attacker could gain full control over the server hosting pm2panel, allowing them to execute any system command with the privileges of the application. This could lead to data theft, system compromise, installation of malware, or disruption of services. Since pm2panel manages PM2 processes, attackers might also manipulate running applications.

Compliance Impact

This vulnerability could lead to unauthorized access and data breaches, violating GDPR's data protection requirements and HIPAA's security rules for protected health information. Organizations using pm2panel may face compliance violations, legal penalties, and reputational damage due to potential exposure of sensitive data.

Mitigation Strategies

Immediately disable or remove pm2panel if not essential. If removal is not possible, restrict access to the application via firewall rules or network segmentation. Update the pm2panel.js file to sanitize the 'id' parameter before passing it to exec, or replace exec with safer alternatives like child_process.spawn. Rotate default credentials admin/admin.

Chat Assistant

Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-72573. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70

EPSS Chart