Skip to content

← Public intelligence

crates.io package

gix-path

Open actionable advisories and recorded vendor fixes. This public package view has no inventory attached and cannot establish whether your deployment is affected. A vendor fix never resolves your finding; verify your installed version and the source guidance.

Open advisories

3 actionable advisories, newest first. Withdrawn advisories and news are excluded. Coverage is partial.

  1. Medium, CVSS 5.3crates.ioPublished

    gix-path improperly resolves configuration path reported by Git

    CVE-2024-45405 · GHSA-m8rp-vv92-46c7

    Affected
    • crates.io gix-path <= 0.10.10
    Fixed in
    0.10.11· Vendor fix available
    Issue
    gix-path runs git to find the path of a configuration file associated with the git installation, but improperly resolves paths containing unusual or non-ASCII characters, in rare cases enabling a local attacker to inject configuration leading to code execution. Details In gixpath::env, the underlying implementation of the installationconfig and installationconfigprefix functions calls git config -l --show-origin to find the path of a file to treat as belonging to the git installation. Affected versions of gix-path do not pass -z/--null to cause git to report literal paths (650a1b5). Instead, to cover the occasional case that git outputs a quoted path, they attempt to parse the path by stripping the quotation marks: https://github.com/Byron/gitoxide/blob/1cfe577d461293879e91538dbc4bbfe01722e1e8/gix-path/src/env/git/mod.rs#L138-L142 The problem is that, when a path is quoted, it may change in substantial ways beyond the concatenation of quotation marks. If not reversed, these…

    Recommended action: Upgrade to 0.10.11 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  2. Low, CVSS 2.0crates.ioPublished

    gix-path uses local config across repos when it is the highest scope

    CVE-2024-45305 · GHSA-v26r-4c9c-h3j6

    Affected
    • crates.io gix-path < 0.10.10
    Fixed in
    0.10.10· Vendor fix available
    Issue
    gix-path executes git to find the path of a configuration file that belongs to the git installation itself, but mistakenly treats the local repository's configuration as system-wide if no higher scoped configuration is found. In rare cases, this causes a less trusted repository to be treated as more trusted, or leaks sensitive information from one repository to another, such as sending credentials to another repository's remote. Details In gixpath::env, the underlying implementation of the installationconfig and installationconfigprefix functions calls git config -l --show-origin and parses the first line of the output to extract the path to the configuration file holding the configuration variable of highest scope: https://github.com/Byron/gitoxide/blob/12251eb052df30105538fa831e641eea557f13d8/gix-path/src/env/git/mod.rs#L91 https://github.com/Byron/gitoxide/blob/12251eb052df30105538fa831e641eea557f13d8/gix-path/src/env/git/mod.rs#L112 While the configuration variable of…

    Recommended action: Upgrade to 0.10.10 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →
  3. High, CVSS 8.6crates.ioPublished

    gix-path can use a fake program files location

    CVE-2024-40644 · GHSA-mgvv-9p9g-3jv4

    Affected
    • crates.io gix-path >= 0.10.8, <= 0.10.8
    Fixed in
    0.10.9· Vendor fix available
    Issue
    When looking for Git for Windows so it can run it to report its paths, gix-path can be tricked into running another git.exe placed in an untrusted location by a limited user account. Details Windows permits limited user accounts without administrative privileges to create new directories in the root of the system drive. While gix-path first looks for git using a PATH search, in version 0.10.8 it also has a fallback strategy on Windows of checking two hard-coded paths intended to be the 64-bit and 32-bit Program Files directories: https://github.com/Byron/gitoxide/blob/6cd8b4665bb7582f744c3244abaef812be39ec35/gix-path/src/env/git.rs#L9-L14 Existing functions, as well as the newly introduced exeinvocation function, were updated to make use of these alternative locations. This causes facilities in gixpath::env to directly execute git.exe in those locations, as well as to return its path or whatever configuration it reports to callers who rely on it. Although unusual setups where…

    Recommended action: Upgrade to 0.10.9 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.

    Sources:github.comSource checked Evidence →