Skip to content
Heist/ feed
Back to feed
High

Security advisory

Type: advisorySources: OSVCVE: CVE-2020-26233

Git Credential Manager Core (GCM Core) is a secure Git credential helper built on .NET Core that runs on Windows and macOS. In Git Credential Manager Core before version 2.0.289, when recursively cloning a Git repository on Windows with submodules, Git will first clone the top-level repository and then recursively clone all submodules by starting new Git processes from the top-level working directory. If a malicious git.exe executable is present in the top-level repository then this binary will be started by Git Credential Manager Core when attempting to read configuration, and not git.exe as found on the %PATH%. This only affects GCM Core on Windows, not macOS or Linux-based distributions. GCM Core version 2.0.289 contains the fix for this vulnerability, and is available from the project's GitHub releases page. GCM Core 2.0.289 is also bundled in the latest Git for Windows release; version 2.29.2(3). As a workaround, users should avoid recursively cloning untrusted repositories with the --recurse-submodules option.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2020-26233
Confirmed fixed CVEs
Not specified
Updated in this feed
31 Oct 2026, 11:08 UTC · Revision 1

Source evidence

CVE-2020-26233

core-osv · Original source

Published 8 Dec 2020, 20:15 UTC

Git Credential Manager Core (GCM Core) is a secure Git credential helper built on .NET Core that runs on Windows and macOS. In Git Credential Manager Core before version 2.0.289, when recursively cloning a Git repository on Windows with submodules, Git will first clone the top-level repository and then recursively clone all submodules by starting new Git processes from the top-level working directory. If a malicious git.exe executable is present in the top-level repository then this binary will be started by Git Credential Manager Core when attempting to read configuration, and not git.exe as found on the %PATH%. This only affects GCM Core on Windows, not macOS or Linux-based distributions. GCM Core version 2.0.289 contains the fix for this vulnerability, and is available from the project's GitHub releases page. GCM Core 2.0.289 is also bundled in the latest Git for Windows release; version 2.29.2(3). As a workaround, users should avoid recursively cloning untrusted repositories with the --recurse-submodules option.

osv:CVE-2020-26233
Complete source record
{
  "id": "818ab8002f13db12ee1cecb58eeaeaf1531265a11bf0c952a5d095a64681d2cc",
  "url": "https://osv.dev/vulnerability/CVE-2020-26233",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "CVE-2020-26233",
    "summary": "Git Credential Manager Core (GCM Core) is a secure Git credential helper built on .NET Core that runs on Windows and macOS. In Git Credential Manager Core before version 2.0.289, when recursively cloning a Git repository on Windows with submodules, Git will first clone the top-level repository and then recursively clone all submodules by starting new Git processes from the top-level working directory. If a malicious git.exe executable is present in the top-level repository then this binary will be started by Git Credential Manager Core when attempting to read configuration, and not git.exe as found on the %PATH%. This only affects GCM Core on Windows, not macOS or Linux-based distributions. GCM Core version 2.0.289 contains the fix for this vulnerability, and is available from the project's GitHub releases page. GCM Core 2.0.289 is also bundled in the latest Git for Windows release; version 2.29.2(3). As a workaround, users should avoid recursively cloning untrusted repositories with the --recurse-submodules option.",
    "evidence": "osv:CVE-2020-26233",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2020-26233",
      "aliases": [
        "CVE-2020-26233",
        "GHSA-2gq7-ww4j-3m76"
      ],
      "metrics": [
        {
          "type": "CVSS_V3",
          "score": "CVSS:3.1/AV:N/AC:H/PR:H/UI:R/S:C/C:H/I:H/A:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/git-ecosystem/git-credential-manager",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "fixed": "61c0388e064babb3b4e60d3ec269e8a07ab3bc76"
                },
                {
                  "fixed": "22bd06dc577a40e3070e2d69e04f22841a12dbf8"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "fixed": "61c0388e064babb3b4e60d3ec269e8a07ab3bc76"
                      }
                    ],
                    "source": "REFERENCES_COMMIT"
                  },
                  {
                    "range": [
                      {
                        "fixed": "22bd06dc577a40e3070e2d69e04f22841a12dbf8"
                      }
                    ],
                    "source": "REFERENCES_TAG",
                    "original_tag": "v2.0.289-beta"
                  }
                ]
              }
            }
          ],
          "versions": [
            "v2.0.280-beta",
            "v2.0.252-beta",
            "v2.0.249-beta",
            "v2.0.246-beta",
            "v2.0.194-beta",
            "v2.0.164-beta",
            "v2.0.157-beta",
            "v2.0.153-beta",
            "v2.0.124-beta",
            "v2.0.87-beta",
            "v2.0.79-beta",
            "v2.0.33-beta",
            "v2.0.22-beta",
            "v2.0.5-beta"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2020-26233.json"
          }
        }
      ],
      "modified": "2026-10-20T10:52:56.795826390Z",
      "provider": "osv",
      "references": [
        "https://git-scm.com/docs/git-clone#Documentation/git-clone.txt---recurse-submodulesltpathspecgt",
        "https://github.com/microsoft/Git-Credential-Manager-Core/releases/tag/v2.0.289-beta",
        "https://github.com/microsoft/Git-Credential-Manager-Core/security/advisories/GHSA-2gq7-ww4j-3m76",
        "https://github.com/microsoft/Git-Credential-Manager-Core/commit/61c0388e064babb3b4e60d3ec269e8a07ab3bc76",
        "https://blog.blazeinfosec.com/attack-of-the-clones-2-git-command-client-remote-code-execution-strikes-back/"
      ],
      "provider_metadata": {
        "unresolved_ranges": [
          {
            "cpes": [
              "cpe:2.3:a:microsoft:git_credential_manager_core:*:*:*:*:*:windows:*:*"
            ],
            "vendor_product": "microsoft:git_credential_manager_core",
            "extracted_events": [
              {
                "range": [
                  {
                    "fixed": "2.0.289"
                  }
                ],
                "source": "CPE_RANGE"
              }
            ]
          },
          {
            "extracted_events": [
              {
                "range": [
                  {
                    "fixed": "2.0.289"
                  }
                ],
                "source": "DESCRIPTION"
              }
            ]
          }
        ]
      }
    },
    "related_cves": [
      {
        "value": "CVE-2020-26233",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 384076,
  "published_at": "2020-12-08T20:15:15.447+00:00"
}