Description
simple-git, an interface for running git commands in any node.js application, enables applications to execute Git operations from JavaScript. Prior to 4.0.0, the default blockUnsafeOperationsPlugin does not completely reject configuration includes supplied through customArgs to git.clone(). The missing include.path classification permits Git to load an attacker-controlled configuration file, and the initial remediation does not cover includeIf.<condition>.path, allowing the same file-loading primitive through a conditional include. A loaded configuration can set an executable Git option such as core.sshCommand, which Git invokes during the clone operation with the privileges of the Node.js process. Exploitation requires the application to pass attacker-influenced custom arguments and requires an attacker-controlled file that the process can read. This issue is fixed in 4.0.0.
Published: 2026-09-29
Score: 8.1 High
EPSS: < 1% Very Low
KEV: No
Impact: Remote Code Execution
Action: Immediate Patch
AI Analysis

Impact

simple‑git, a JavaScript wrapper for Git commands, contains an error in its default safety plug‑in that fails to block certain Git configuration includes passed through custom arguments to git.clone(). The resulting flaw lets an attacker supply a file path that Git will load as configuration, allowing that file to set options such as core.sshCommand. When Git invokes core.sshCommand during the clone operation it runs with the same privileges as the Node.js process. This flaw is a command‑execution vulnerability, classified as CWE‑78 (OS Command Injection) and CWE‑77 (Improperly Restricting Identifier or Path). An attacker can exploit the weakness to execute arbitrary code on the host system with the permissions of the running application.

Affected Systems

The vulnerability affects all releases of the steveukx:git-js package that are older than version 4.0.0. Developers using these versions in any Node.js application are at risk if the application passes attacker‑controlled arguments to git.clone(). Any earlier release of this package is similarly impacted.

Risk and Exploitability

The flaw carries a CVSS score of 8.1, indicating high severity. No EPSS score is available, but the vulnerability is not listed in the CISA KEV catalog, suggesting no confirmed exploitation in the wild at the time of this assessment. The likely attack vector is inferred to be a remote or local source that can influence the customArgs sent to git.clone(); the exploit requires the attacker to supply a file that the application can read and that contains a Git configuration directive. Once the include is processed, Git will run an attacker‑supplied command with the application’s privileges, giving the attacker control of the target system.

Generated by OpenCVE AI on September 29, 2026 at 22:08 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade the steveukx:git-js package to version 4.0.0 or later, which removes the vulnerability.
  • Review the application code for any customArgs passed to git.clone() and sanitize or eliminate arguments that reference include paths or includeIf directives.
  • If an upgrade is impossible, explicitly disable configuration includes by configuring the blockUnsafeOperationsPlugin to reject all include paths, or enforce strict validation of any user‑supplied arguments to prevent an attacker from injecting a configuration file.

Generated by OpenCVE AI on September 29, 2026 at 22:08 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-g4wm-2vf7-vfgr simple-git allows command execution through unblocked Git configuration includes
History

Thu, 08 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
First Time appeared Simple-git Project
Simple-git Project simple-git
CPEs cpe:2.3:a:simple-git_project:simple-git:*:*:*:*:*:node.js:*:*
Vendors & Products Simple-git Project
Simple-git Project simple-git

Fri, 02 Oct 2026 00:15:00 +0000

Type Values Removed Values Added
References
Metrics threat_severity

None

threat_severity

Important


Tue, 29 Sep 2026 21:45:00 +0000

Type Values Removed Values Added
First Time appeared Steveukx
Steveukx git-js
Vendors & Products Steveukx
Steveukx git-js

Tue, 29 Sep 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

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


Tue, 29 Sep 2026 18:45:00 +0000

Type Values Removed Values Added
Description simple-git, an interface for running git commands in any node.js application, enables applications to execute Git operations from JavaScript. Prior to 4.0.0, the default blockUnsafeOperationsPlugin does not completely reject configuration includes supplied through customArgs to git.clone(). The missing include.path classification permits Git to load an attacker-controlled configuration file, and the initial remediation does not cover includeIf.<condition>.path, allowing the same file-loading primitive through a conditional include. A loaded configuration can set an executable Git option such as core.sshCommand, which Git invokes during the clone operation with the privileges of the Node.js process. Exploitation requires the application to pass attacker-influenced custom arguments and requires an attacker-controlled file that the process can read. This issue is fixed in 4.0.0.
Title simple-git allows command execution through unblocked Git configuration includes
Weaknesses CWE-77
CWE-78
References
Metrics cvssV3_1

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


Subscriptions

Simple-git Project Simple-git
Steveukx Git-js
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-09-29T19:58:38.849Z

Reserved: 2026-09-29T17:25:25.265Z

Link: CVE-2026-102826

cve-icon Vulnrichment

Updated: 2026-09-29T19:58:34.742Z

cve-icon NVD

Status : Analyzed

Published: 2026-09-29T19:17:24.883

Modified: 2026-10-08T20:21:08.930

Link: CVE-2026-102826

cve-icon Redhat

Severity : Important

Publid Date: 2026-09-29T18:37:10Z

Links: CVE-2026-102826 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-29T22:15:08Z

Weaknesses
  • CWE-77

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

  • CWE-78

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