CVE-2026-70375

HashBrown CMS - OS Command Injection via Git Deployer Branch Field

Published Aug 5, 2026 CVSS 3.1 · 8.8 High EPSS 1.9% KEV · Not listed
Description
HashBrown CMS through 1.4.6 contains an OS Command Injection vulnerability (CWE-78) in the Git deployer component. GitDeployer.pullRepo in src/Server/Entity/Deployer/GitDeployer.js executes AppService.exec, interpolating the configured branch value directly into a shell command with no escaping.

Analysis

AI-generated

Technical impact

According to the updated description, HashBrown CMS versions up to 1.4.6 contain an OS Command Injection flaw in the Git deployer. The vulnerability arises because the configured Git branch name is directly inserted into a shell command without any sanitization. An attacker who can set the branch field can inject shell metacharacters, causing arbitrary commands to execute when the deployer performs a checkout during routine operations such as media uploads or content saves. The flaw is identified as CWE‑78.

Affected Systems

Impacted are installations of HashBrown CMS that use the Git deployer feature. Any deployment environment running HashBrown CMS version 1.4.6 or earlier is vulnerable, regardless of the underlying operating system. The issue was present before the release of 1.4.6 and 1.4.6 itself carries the flaw; no later fixed version is listed in the provided data.

Risk and Exploitability

The EPSS score is <1%, but the CVSS score of 8.8 highlights a high severity OS Command Injection risk. The vulnerability can be exploited only when an attacker has the ability to modify the project's Git deployer configuration. If such privileges are available, arbitrary code execution on the hosting server is possible, providing full system compromise. This flaw is not listed in CISA KEV, indicating no known widespread exploitation, but the absence of mitigations such as input validation and the unconditional execution of the checkout command make it a high‑risk issue. Immediate patching or mitigation is recommended to prevent potential compromise.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade HashBrown CMS to the latest release that addresses the Git deployer branch sanitization issue.
  • If an immediately available patch is not possible, restrict access to the Git deployer configuration to trusted administrators and implement a custom filter that rejects shell metacharacters – enforce a whitelist such as alphanumeric characters and underscores for branch names.
  • Disable the Git deployer component entirely or remove it from projects that do not require automatic deployment.

Generated by OpenCVE AI on August 10, 2026 at 22:04 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Description HashBrown CMS through 1.4.6 contains an OS Command Injection vulnerability (CWE-78) in the Git deployer component. GitDeployer.pullRepo() in src/Server/Entity/Deployer/GitDeployer.js executes AppService.exec(`git checkout ${this.branch || 'master'}`), interpolating the configured branch value directly into a shell command with no escaping. GitDeployer.validate() only rejects a single-quote character in the repo, branch, username, and password fields; shell metacharacters such as ';', '&&', '|', backticks, and '$()' are not filtered. A user able to configure a project's Git deployer settings can set a malicious branch value (e.g. 'master;<command>#') that executes automatically on every subsequent deployer operation (media upload, content save, etc.), since pullRepo() is invoked unconditionally at the start of each such operation. This is related to CVE-2020-6948, which addressed single-quote escaping of the repo, username, and password fields in the same file's git clone invocation; the branch field used in the unquoted git checkout command was not covered by that fix and remains injectable. HashBrown CMS through 1.4.6 contains an OS Command Injection vulnerability (CWE-78) in the Git deployer component. GitDeployer.pullRepo in src/Server/Entity/Deployer/GitDeployer.js executes AppService.exec, interpolating the configured branch value directly into a shell command with no escaping.
Type Values Removed Values Added
Title HashBrown CMS: OS Command Injection via Git Deployer Branch Field HashBrown CMS - OS Command Injection via Git Deployer Branch Field
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 8.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'}

Type Values Removed Values Added
First Time appeared Hashbrowncms
Hashbrowncms hashbrown Cms
Vendors & Products Hashbrowncms
Hashbrowncms hashbrown Cms
Type Values Removed Values Added
Description HashBrown CMS through 1.4.6 contains an OS Command Injection vulnerability (CWE-78) in the Git deployer component. GitDeployer.pullRepo() in src/Server/Entity/Deployer/GitDeployer.js executes AppService.exec(`git checkout ${this.branch || 'master'}`), interpolating the configured branch value directly into a shell command with no escaping. GitDeployer.validate() only rejects a single-quote character in the repo, branch, username, and password fields; shell metacharacters such as ';', '&&', '|', backticks, and '$()' are not filtered. A user able to configure a project's Git deployer settings can set a malicious branch value (e.g. 'master;<command>#') that executes automatically on every subsequent deployer operation (media upload, content save, etc.), since pullRepo() is invoked unconditionally at the start of each such operation. This is related to CVE-2020-6948, which addressed single-quote escaping of the repo, username, and password fields in the same file's git clone invocation; the branch field used in the unquoted git checkout command was not covered by that fix and remains injectable.
Title HashBrown CMS: OS Command Injection via Git Deployer Branch Field
Weaknesses CWE-78
References
Weaknesses
  • CWE-78

    Improper Neutralization of Special Elements used in an OS Command ('OS Command Injection')

Sources

Status
PUBLISHED
Assigner
TuranSec
Published
Updated
Aug 10, 2026, 11:44 AM
Reserved
Aug 4, 2026, 7:13 AM
Status
Deferred
Published
Aug 5, 2026, 7:16 AM
Modified
Oct 24, 2026, 4:10 PM