Severity by source
AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:H
Lifecycle Timeline
5Blast Radius
ecosystem impact- 2 npm packages depend on @haxtheweb/haxcms-nodejs (1 direct, 1 indirect)
Ecosystem-wide dependent count for version 11.0.3.
DescriptionGitHub Advisory
HAX CMS PHP allows users to manage their microsite universe with a PHP backend. Prior to version 11.0.3, the gitImportSite functionality obtains a URL string from a POST request and insufficiently validates user input. The set_remote function later passes this input into proc_open, yielding OS command injection. An authenticated attacker can craft a URL string that bypasses the validation checks employed by the filter_var and strpos functions in order to execute arbitrary OS commands on the backend server. The attacker can exfiltrate command output via an HTTP request. Version 11.0.3 contains a patch for the issue.
AnalysisAI
HAX CMS PHP versions prior to 11.0.3 contain an OS command injection vulnerability in the gitImportSite functionality where insufficient input validation on user-supplied URL parameters allows authenticated attackers to bypass filter_var and strpos checks and execute arbitrary OS commands via the set_remote function's proc_open call. An authenticated attacker can leverage this to execute arbitrary commands and exfiltrate output, representing a critical post-authentication code execution risk with high real-world impact due to full OS command execution capability.
Technical ContextAI
The vulnerability exists in HAX CMS PHP's git import functionality, specifically in how the application handles URL input in POST requests. The application attempts to validate user input using PHP's filter_var function (typically FILTER_VALIDATE_URL) and strpos string matching, which are insufficient validators for preventing command injection. The root cause (CWE-78: Improper Neutralization of Special Elements used in an OS Command) occurs because user-controlled input is passed unsanitized to proc_open, a PHP function that directly executes OS commands via shell interpretation. The set_remote function receives the attacker-crafted URL and passes it into the process execution pipeline without proper escaping, allowing shell metacharacters to break out of intended command boundaries. This is a classic command injection pattern where validation logic (checking for valid URL format) is insufficient to prevent command syntax injection.
RemediationAI
Immediate: upgrade HAX CMS PHP to version 11.0.3 or later, which contains the patch for input validation in gitImportSite. For organizations unable to immediately patch, implement network-level mitigations: (1) restrict access to HAX CMS authentication endpoints to trusted networks/VPNs only; (2) implement Web Application Firewall (WAF) rules to detect command injection patterns in POST parameters related to git import (looking for shell metacharacters like backticks, $(), |, &, ;, >, < in URL parameters); (3) disable git import functionality if not actively used; (4) monitor proc_open execution logs for suspicious command patterns. Long-term: ensure HAX CMS deployment restricts admin/import functionality to principle-of-least-privilege users only.
More from same product – last 7 days
Authentication bypass in Discuz! X5.0 releases 20260320 through 20260501 allows unauthenticated remote attackers to acce
Authenticated remote code execution in Discuz! X5.0 releases 20260320 through 20260501 allows administrators to chain a
Unauthenticated PHP Object Injection in the Happyforms WordPress plugin (versions <= 1.26.13) allows remote attackers to
Unauthenticated PHP Object Injection in the Broadcast Live Video WordPress plugin (versions prior to 7.1.3) allows remot
Unauthenticated PHP object injection in the WordPress plugin 'Integration for Keap/Infusionsoft and Contact Form 7, WPFo
Share
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-17578
GHSA-g4cf-pp4x-hqgw