Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as Termix admin
-
DeliveryStore shell metacharacters in ACME domain/email via PATCH /users/acme-ssl-settings
-
ExploitTrigger certbot build via POST /users/acme-ssl-request
-
ExecutionexecSync passes payload to /bin/sh -c
-
PersistExecute arbitrary OS commands as backend process
-
ImpactExfiltrate databases, secrets, and stored SSH credentials
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Termix administrator account (PR:H) with access to the ACME/SSL certificate feature: the attacker must reach PATCH /users/acme-ssl-settings to store attacker-controlled domain and email values and POST /users/acme-ssl-request to trigger certbot execution. Affected versions are 2.4.1 through 2.5.0 only (fixed in 2.5.1). Both HTTP-webroot and DNS-Cloudflare challenge modes are vulnerable, so no specific challenge configuration limits exploitation. The primary limiting factor is the admin privilege requirement - this is not remotely reachable pre-authentication, and there is no known public exploit - so realistic risk is confined to environments where the admin role is shared, delegated to lower-trust operators, or exposed to credential theft. |
| Impact | This is a genuine command-injection RCE (CWE-78) but its real-world priority is materially constrained by the privilege requirement. The CVSS vector CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H scores 9.1, driven by full C/I/A impact plus a scope change; however PR:H means the attacker must already hold Termix administrator rights, and the two-step vector (PATCH /users/acme-ssl-settings to store the payload, then POST /users/acme-ssl-request to trigger it) is a privileged self-service ACME/SSL configuration flow, not an anonymous endpoint. This is effectively an authenticated-admin-to-OS-RCE escalation on the host running the Termix backend. No EPSS score, no CISA KEV listing, and no public exploit code were provided, so this is 'no public exploit identified at time of analysis' - the 9.1 reflects worst-case technical impact rather than mass-exploitability. The source-code diff (execSync of /bin/sh -c with values only double-quoted, fixed by switching to execFileSync with argv arrays) unambiguously confirms the root cause and the fix, so the vulnerability itself is not in doubt. One scoring note to verify: NVD assigns S:C, but since the injection yields code execution as the same backend process on the same host, S:U is equally defensible, which would lower the base score to roughly 7.2 - this is a scope-interpretation difference, not a factual dispute. Overall: real and serious for anyone who considers their admin account a trust boundary (or uses shared/federated admin access), but low mass-exploitation urgency given the admin prerequisite and niche product footprint. |
| Exploit ScenarioDerived | An authenticated Termix administrator (or an attacker who has phished/stolen admin credentials, or a lower-trust operator in a multi-admin deployment) sets the ACME domain or email field to a value containing shell metacharacters via PATCH /users/acme-ssl-settings, then invokes POST /users/acme-ssl-request; the certbot command built by execSync passes the payload to /bin/sh -c, executing arbitrary commands as the Termix backend process. No user interaction and no public PoC are known, and both HTTP-webroot and DNS-Cloudflare challenge modes are exploitable, so the attacker immediately reaches the databases, process secrets, and stored SSH credentials Termix manages. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 24, 2026
Command injection in Termix 2.4.1 through 2.5.0 lets an authenticated administrator execute arbitrary operating-system commands as the Termix backend process by storing crafted domain and email values via PATCH /users/acme-ssl-settings and then triggering their interpolation into a certbot shell invocation through POST /users/acme-ssl-request. Successful exploitation exposes Termix databases, process secrets, stored credentials, and the backend's network reachability, with both HTTP-webroot and DNS-Cloudflare challenge modes affected. The issue is fixed in 2.5.1; no public exploit code has been identified at time of analysis, and the practical risk is bounded by the requirement for a high-privileged (administrator) account rather than being reachable pre-authentication.
RemediationAI
Upgrade to Termix 2.5.1, which is the vendor-released patch (release-2.5.1-tag) and the only version confirmed to contain the execFileSync-based argument-array fix; verify the deployed build after upgrading via the release page at https://github.com/Termix-SSH/Termix/releases/tag/release-2.5.1-tag and review the advisory at https://github.com/Termix-SSH/Termix/security/advisories/GHSA-pr55-25gf-5f9v. Because exploitation requires an authenticated administrator account, the most effective compensating control for systems that cannot be patched immediately is to tighten the Termix admin role: remove or downgrade admin privileges for any operator who does not genuinely need ACME/SSL certificate management, since the injection path depends on PATCH /users/acme-ssl-settings and POST /users/acme-ssl-request, and the trade-off is loss of delegated certificate provisioning. Where the ACME/SSL feature is unused, restricting or blocking those endpoints at a reverse proxy (and disabling certbot access on the host) removes the attack surface entirely, though this will break legitimate certificate issuance and renewal workflows. Additionally, avoid exposing the Termix administrative interface directly to untrusted networks by placing it behind a VPN or IP-allowlisted access layer and enforcing strong authentication with MFA to reduce the risk of admin credential theft - the primary realistic route to exploitation given the PR:H prerequisite - while monitoring backend process execution and auditing ACME settings changes for shell metacharacters as a detection measure. No vendor-released workaround short of upgrading has been published, and the upstream commits serve only as fix references, not as a shippable patched artifact for downstream users.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The root cause is OS command injection (CWE-78) in src/backend/database/routes/acme-ssl-routes.ts, where child_process.execSync was used to invoke /bin/sh -c. User-supplied domain and email values captured from the ACME/SSL settings endpoint were concatenated into the certbot command line and only wrapped in double quotes, so shell metacharacters inside those values were interpreted by the shell rather than treated as literal data. The same unsafe pattern affected auxiliary openssl certificate-inspection calls. The upstream fix replaces execSync with execFileSync and passes each element as a discrete argument array (for example certbotArgs = ["--dns-cloudflare-credentials", CLOUDFLARE_CREDENTIALS_FILE, domain, email, ...certbotDirArgs]), which bypasses the shell entirely and neutralizes metacharacter interpretation. Termix is a TypeScript/Node.js web-based server management platform providing an SSH terminal, tunneling, and file editing; the vulnerable component sits in the backend database routes that power its ACME certificate provisioning feature. Notably, the CVE record's CVSS vector declares Scope Changed (S:C) while the independent assessment scores it Scope Unchanged (S:U); the assessed vector of AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H is the authoritative position used here.
Know when Termix gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:H/UI:N/S:C/C:H/I:H/A:H
Network-reachable admin API with low complexity but admin-only access (PR:H); command execution as the backend process on the same host yields full C/I/A but no cross-authority boundary, so S:U (NVD chose S:C, 9.1).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Termix is a web-based server management platform with SSH terminal, tunneling, and file editing capabilities. From 2.4.1 until 2.5.1, an authenticated Termix administrator can store attacker-controlled domain and email values through PATCH /users/acme-ssl-settings and trigger their interpolation into a certbot shell command through POST /users/acme-ssl-request. In src/backend/database/routes/acme-ssl-routes.ts, child_process.execSync invokes /bin/sh -c with those values only wrapped in double quotes, so shell metacharacters can execute arbitrary operating-system commands as the Termix backend process. Both HTTP webroot and DNS Cloudflare challenge modes are affected, and compromise exposes Termix databases, process secrets, stored credentials, and network reachability. This issue is fixed in version 2.5.1.
Technical POC Analysis
CWE-78: OS Command Injection.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Termix versions 2.4.1 through 2.5.0 contain a command injection flaw that lets a high-privileged administrator account turn the certificate-automation workflow into arbitrary operating-system command execution on the Termix backend server. A successful attack would expose the system's databases, process secrets, stored credentials, and its network reachability, creating a credible path to broader data loss and lateral movement. Because the flaw requires an administrator-level account rather than being reachable before login, the immediate external risk is contained, but the value of the data and secrets held by this service makes it a priority for remediation by security and platform leadership.
Apply vendor patch (2.5.1) once confirmed available from the vendor. Until a vendor-released patch is confirmed, treat this as no vendor-released patch identified at time of analysis and apply interim mitigations: restrict administrative access to Termix to the smallest possible set of trusted accounts, disable or tightly limit the ACME/SSL settings and request endpoints (PATCH /users/acme-ssl-settings, POST /users/acme-ssl-request), monitor and alert on changes to domain and email values and on certbot shell invocations, run the backend under a least-privilege service account with constrained network egress, and rotate all secrets, credentials, and API tokens accessible to the backend process.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
Unauthenticated attackers can retrieve stored SSH host credentials - including addresses, usernames, and passwords - fro
Stored XSS in Termix File Manager (versions 1.7.0-1.9.0) allows attackers with SSH server access to execute arbitrary Ja
Remote command execution in Termix web-based server management platform (versions prior to 2.3.2) allows any authenticat
Remote code execution in Termix (self-hosted web-based server management platform) before version 2.1.0 lets an authenti
OS command injection in Termix (self-hosted web SSH/tunneling platform) before 2.3.2 lets an authenticated user who can
OS command injection in Termix web-based server management platform prior to version 2.3.2 allows remote unauthenticated
Cross-user SSH credential disclosure in Termix, a self-hosted web server-management platform, allows an authenticated lo
Broken authorization in Termix (self-hosted web-based SSH/server management platform) before 2.6.1 lets any authenticate
Cross-tenant remote code execution in Termix (web-based SSH/file management platform) prior to version 2.3.2 allows an a
Command injection in Termix server management platform before version 2.3.2 allows authenticated users to execute arbitr
Remote command injection in Termix, a web-based SSH server management platform, allows any authenticated user with file-
Unauthorized data exposure in Termix prior to 2.3.2 allows a low-privileged authenticated user to exfiltrate password-re
EUVD-2026-86161
NVD
CVE.org
EPSS
GitHub
Exploit-DB