{"items":[{"id":"NVI-00013010","kind":"vulnerability","title":"GitPython: Environment-variable exfiltration via os.path.expandvars() on Repo.clone_from() URL","revision":3,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-rwj8-pgh3-r573","CVE-2026-67322"],"plain_summary":"GitHub lists this reviewed advisory for GitPython. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-0ec6d2380743e57b8e0f7ea89feae25f"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-09-24T14:40:15.000Z","value":"7.5 high","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-389ec97cfab224ecef6afc184cc55e79"},{"kind":"CVSS","as_of":"2026-10-23T23:10:00.157Z","value":"7.5 HIGH (3.1)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-42a6d3197852469de832d353f9ef8a79"},{"kind":"CVSS","as_of":"2026-10-23T23:10:00.157Z","value":"8.7 HIGH (4.0)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-42a6d3197852469de832d353f9ef8a79"},{"kind":"EPSS","as_of":"2026-11-04T12:03:12.000Z","value":"0.328%","meaning":"FIRST EPSS model v2026.06.15; exploitation probability over 30 days, percentile 0.26025. Missing scores are unknown.","source_id":"sr-0ec6d2380743e57b8e0f7ea89feae25f"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-389ec97cfab224ecef6afc184cc55e79","url":"https://github.com/advisories/GHSA-rwj8-pgh3-r573","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-rwj8-pgh3-r573","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T07:25:10.521Z"},{"id":"sr-42a6d3197852469de832d353f9ef8a79","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-67322","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-67322","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-04T02:48:59.971Z"},{"id":"sr-0ec6d2380743e57b8e0f7ea89feae25f","url":"https://www.first.org/epss/data.html","basis":"official_catalog","notes":"FIRST EPSS; probability of exploitation in the next 30 days, not local compromise. Dataset date/model retained; FIRST services terms apply.","title":"CVE-2026-67322","publisher":"FIRST EPSS","observed_at":"2026-11-04T23:33:33.060Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-389ec97cfab224ecef6afc184cc55e79"],"technology":"GitPython","known_exclusions":[],"conditions_summary":"### Summary\n`Repo.clone_from()` passes the caller-supplied remote URL through `Git.polish_url()`, which on every non-Cygwin platform calls `os.path.expandvars()` on the URL before handing it to `git clone`. An attacker who controls the URL argument — the documented use case for `clone_from()` in \"import repository from URL\" features of CI servers, git-hosting mirrors, and dependency scanners — can embed `$NAME` / `${NAME}` tokens that are expanded server-side to the values of the hosting process's environment variables. The resulting URL, now containing the secret, is transmitted over the network to the attacker-named host. This crosses the trust boundary between an untrusted remote URL and the server's process environment, disclosing secrets such as `AWS_SECRET_ACCESS_KEY` or `GITHUB_TOKEN` with no precondition beyond the ability to submit a clone URL.\n\n### Details\n**Affected versions:** `gitpython` (PyPI) — all releases up to and including `3.1.50` (latest at time of reporting); confirmed present on the `main` branch.\n\n`Git.polish_url()` unconditionally applies environment-variable expansion to its input on the non-Cygwin branch:\n\n`git/cmd.py` (v3.1.50), lines 907–925:\n```python\n","public_affected_ranges":["< 3.1.52"]}],"null_published_at":"2026-11-07T14:02:01.391Z","source_updated_at":"2026-09-24T14:40:15.000Z","source_disclosed_at":"2026-07-21T22:06:09.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Dated EPSS estimate updated; this is not a new disclosure or proof of exploitation.","null_first_observed_at":"2026-11-01T07:25:10.521Z"},{"id":"NVI-00013010","kind":"vulnerability","title":"GitPython: Environment-variable exfiltration via os.path.expandvars() on Repo.clone_from() URL","revision":2,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-rwj8-pgh3-r573","CVE-2026-67322"],"plain_summary":"GitHub lists this reviewed advisory for GitPython. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-42a6d3197852469de832d353f9ef8a79"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-09-24T14:40:15.000Z","value":"7.5 high","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-389ec97cfab224ecef6afc184cc55e79"},{"kind":"CVSS","as_of":"2026-10-23T23:10:00.157Z","value":"7.5 HIGH (3.1)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-42a6d3197852469de832d353f9ef8a79"},{"kind":"CVSS","as_of":"2026-10-23T23:10:00.157Z","value":"8.7 HIGH (4.0)","meaning":"disclosure@vulncheck.com severity; no combined Null risk score.","source_id":"sr-42a6d3197852469de832d353f9ef8a79"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-389ec97cfab224ecef6afc184cc55e79","url":"https://github.com/advisories/GHSA-rwj8-pgh3-r573","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-rwj8-pgh3-r573","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T07:25:10.521Z"},{"id":"sr-42a6d3197852469de832d353f9ef8a79","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-67322","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-67322","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-04T02:48:59.971Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-389ec97cfab224ecef6afc184cc55e79"],"technology":"GitPython","known_exclusions":[],"conditions_summary":"### Summary\n`Repo.clone_from()` passes the caller-supplied remote URL through `Git.polish_url()`, which on every non-Cygwin platform calls `os.path.expandvars()` on the URL before handing it to `git clone`. An attacker who controls the URL argument — the documented use case for `clone_from()` in \"import repository from URL\" features of CI servers, git-hosting mirrors, and dependency scanners — can embed `$NAME` / `${NAME}` tokens that are expanded server-side to the values of the hosting process's environment variables. The resulting URL, now containing the secret, is transmitted over the network to the attacker-named host. This crosses the trust boundary between an untrusted remote URL and the server's process environment, disclosing secrets such as `AWS_SECRET_ACCESS_KEY` or `GITHUB_TOKEN` with no precondition beyond the ability to submit a clone URL.\n\n### Details\n**Affected versions:** `gitpython` (PyPI) — all releases up to and including `3.1.50` (latest at time of reporting); confirmed present on the `main` branch.\n\n`Git.polish_url()` unconditionally applies environment-variable expansion to its input on the non-Cygwin branch:\n\n`git/cmd.py` (v3.1.50), lines 907–925:\n```python\n","public_affected_ranges":["< 3.1.52"]}],"null_published_at":"2026-11-04T10:04:35.943Z","source_updated_at":"2026-09-24T14:40:15.000Z","source_disclosed_at":"2026-07-21T22:06:09.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Source facts changed; compare the preserved prior revision.","null_first_observed_at":"2026-11-01T07:25:10.521Z"},{"id":"NVI-00013010","kind":"vulnerability","title":"GitPython: Environment-variable exfiltration via os.path.expandvars() on Repo.clone_from() URL","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-rwj8-pgh3-r573","CVE-2026-67322"],"plain_summary":"GitHub lists this reviewed advisory for GitPython. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-389ec97cfab224ecef6afc184cc55e79"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-09-24T14:40:15.000Z","value":"7.5 high","meaning":"GitHub source severity; exploitability and local consequence require separate evidence.","source_id":"sr-389ec97cfab224ecef6afc184cc55e79"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-389ec97cfab224ecef6afc184cc55e79","url":"https://github.com/advisories/GHSA-rwj8-pgh3-r573","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-rwj8-pgh3-r573","publisher":"GitHub Advisory Database","observed_at":"2026-11-01T07:25:10.521Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-389ec97cfab224ecef6afc184cc55e79"],"technology":"GitPython","known_exclusions":[],"conditions_summary":"### Summary\n`Repo.clone_from()` passes the caller-supplied remote URL through `Git.polish_url()`, which on every non-Cygwin platform calls `os.path.expandvars()` on the URL before handing it to `git clone`. An attacker who controls the URL argument — the documented use case for `clone_from()` in \"import repository from URL\" features of CI servers, git-hosting mirrors, and dependency scanners — can embed `$NAME` / `${NAME}` tokens that are expanded server-side to the values of the hosting process's environment variables. The resulting URL, now containing the secret, is transmitted over the network to the attacker-named host. This crosses the trust boundary between an untrusted remote URL and the server's process environment, disclosing secrets such as `AWS_SECRET_ACCESS_KEY` or `GITHUB_TOKEN` with no precondition beyond the ability to submit a clone URL.\n\n### Details\n**Affected versions:** `gitpython` (PyPI) — all releases up to and including `3.1.50` (latest at time of reporting); confirmed present on the `main` branch.\n\n`Git.polish_url()` unconditionally applies environment-variable expansion to its input on the non-Cygwin branch:\n\n`git/cmd.py` (v3.1.50), lines 907–925:\n```python\n","public_affected_ranges":["< 3.1.52"]}],"null_published_at":"2026-11-01T07:29:12.908Z","source_updated_at":"2026-09-24T14:40:15.000Z","source_disclosed_at":"2026-07-21T22:06:09.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-01T07:25:10.521Z"}],"next_cursor":null,"snapshot_revision":"42594"}