ubuntu-cve-2023-22490
Vulnerability from osv_ubuntu
Published
2023-02-14 18:00
Modified
2025-09-08 16:56
Summary
Details

Git is a revision control system. Using a specially-crafted repository, Git prior to versions 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7, and 2.30.8 can be tricked into using its local clone optimization even when using a non-local transport. Though Git will abort local clones whose source $GIT_DIR/objects directory contains symbolic links, the objects directory itself may still be a symbolic link. These two may be combined to include arbitrary files based on known paths on the victim's filesystem within the malicious repository's working copy, allowing for data exfiltration in a similar manner as CVE-2022-39253. A fix has been prepared and will appear in v2.39.2 v2.38.4 v2.37.6 v2.36.5 v2.35.7 v2.34.7 v2.33.7 v2.32.6, v2.31.7 and v2.30.8. If upgrading is impractical, two short-term workarounds are available. Avoid cloning repositories from untrusted sources with --recurse-submodules. Instead, consider cloning repositories without recursively cloning their submodules, and instead run git submodule update at each layer. Before doing so, inspect each new .gitmodules file to ensure that it does not contain suspicious module URLs.


{
  "affected": [
    {
      "ecosystem_specific": {
        "availability": "Available with Ubuntu Pro (Infra-only): https://ubuntu.com/pro",
        "binaries": [
          {
            "binary_name": "git",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-all",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-arch",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-core",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-cvs",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-daemon-run",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-daemon-sysvinit",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-el",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-email",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-gui",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-man",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-mediawiki",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "git-svn",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "gitk",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          },
          {
            "binary_name": "gitweb",
            "binary_version": "1:2.7.4-0ubuntu1.10+esm5"
          }
        ]
      },
      "package": {
        "ecosystem": "Ubuntu:Pro:16.04:LTS",
        "name": "git",
        "purl": "pkg:deb/ubuntu/git@1:2.7.4-0ubuntu1.10+esm5?arch=source\u0026distro=esm-infra/xenial"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1:2.7.4-0ubuntu1.10+esm5"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "1:2.5.0-1",
        "1:2.6.2-1",
        "1:2.6.3-1",
        "1:2.6.4-1",
        "1:2.7.0~rc3-1",
        "1:2.7.0-1",
        "1:2.7.3-0ubuntu1",
        "1:2.7.4-0ubuntu1",
        "1:2.7.4-0ubuntu1.1",
        "1:2.7.4-0ubuntu1.2",
        "1:2.7.4-0ubuntu1.3",
        "1:2.7.4-0ubuntu1.4",
        "1:2.7.4-0ubuntu1.5",
        "1:2.7.4-0ubuntu1.6",
        "1:2.7.4-0ubuntu1.7",
        "1:2.7.4-0ubuntu1.8",
        "1:2.7.4-0ubuntu1.9",
        "1:2.7.4-0ubuntu1.10",
        "1:2.7.4-0ubuntu1.10+esm1",
        "1:2.7.4-0ubuntu1.10+esm3",
        "1:2.7.4-0ubuntu1.10+esm4"
      ]
    },
    {
      "ecosystem_specific": {
        "availability": "No subscription required",
        "binaries": [
          {
            "binary_name": "git",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-all",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-cvs",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-daemon-run",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-daemon-sysvinit",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-el",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-email",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-gui",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-man",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-mediawiki",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "git-svn",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "gitk",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          },
          {
            "binary_name": "gitweb",
            "binary_version": "1:2.17.1-1ubuntu0.16"
          }
        ]
      },
      "package": {
        "ecosystem": "Ubuntu:18.04:LTS",
        "name": "git",
        "purl": "pkg:deb/ubuntu/git@1:2.17.1-1ubuntu0.16?arch=source\u0026distro=bionic"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1:2.17.1-1ubuntu0.16"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "1:2.14.1-1ubuntu4",
        "1:2.15.1-1ubuntu2",
        "1:2.17.0-1ubuntu1",
        "1:2.17.1-1ubuntu0.1",
        "1:2.17.1-1ubuntu0.3",
        "1:2.17.1-1ubuntu0.4",
        "1:2.17.1-1ubuntu0.5",
        "1:2.17.1-1ubuntu0.6",
        "1:2.17.1-1ubuntu0.7",
        "1:2.17.1-1ubuntu0.8",
        "1:2.17.1-1ubuntu0.9",
        "1:2.17.1-1ubuntu0.10",
        "1:2.17.1-1ubuntu0.11",
        "1:2.17.1-1ubuntu0.12",
        "1:2.17.1-1ubuntu0.13",
        "1:2.17.1-1ubuntu0.14",
        "1:2.17.1-1ubuntu0.15"
      ]
    },
    {
      "ecosystem_specific": {
        "availability": "No subscription required",
        "binaries": [
          {
            "binary_name": "git",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-all",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-cvs",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-daemon-run",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-daemon-sysvinit",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-el",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-email",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-gui",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-man",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-mediawiki",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "git-svn",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "gitk",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          },
          {
            "binary_name": "gitweb",
            "binary_version": "1:2.25.1-1ubuntu3.10"
          }
        ]
      },
      "package": {
        "ecosystem": "Ubuntu:20.04:LTS",
        "name": "git",
        "purl": "pkg:deb/ubuntu/git@1:2.25.1-1ubuntu3.10?arch=source\u0026distro=focal"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1:2.25.1-1ubuntu3.10"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "1:2.20.1-2ubuntu1",
        "1:2.24.0-1ubuntu1",
        "1:2.24.0-1ubuntu2",
        "1:2.25.0-1ubuntu1",
        "1:2.25.1-1ubuntu1",
        "1:2.25.1-1ubuntu2",
        "1:2.25.1-1ubuntu3",
        "1:2.25.1-1ubuntu3.1",
        "1:2.25.1-1ubuntu3.2",
        "1:2.25.1-1ubuntu3.3",
        "1:2.25.1-1ubuntu3.4",
        "1:2.25.1-1ubuntu3.5",
        "1:2.25.1-1ubuntu3.6",
        "1:2.25.1-1ubuntu3.7",
        "1:2.25.1-1ubuntu3.8"
      ]
    },
    {
      "ecosystem_specific": {
        "availability": "No subscription required",
        "binaries": [
          {
            "binary_name": "git",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-all",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-cvs",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-daemon-run",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-daemon-sysvinit",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-email",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-gui",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-man",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-mediawiki",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "git-svn",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "gitk",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          },
          {
            "binary_name": "gitweb",
            "binary_version": "1:2.34.1-1ubuntu1.8"
          }
        ]
      },
      "package": {
        "ecosystem": "Ubuntu:22.04:LTS",
        "name": "git",
        "purl": "pkg:deb/ubuntu/git@1:2.34.1-1ubuntu1.8?arch=source\u0026distro=jammy"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "1:2.34.1-1ubuntu1.8"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ],
      "versions": [
        "1:2.32.0-1ubuntu1",
        "1:2.33.1-1ubuntu1",
        "1:2.34.1-1ubuntu1",
        "1:2.34.1-1ubuntu1.1",
        "1:2.34.1-1ubuntu1.2",
        "1:2.34.1-1ubuntu1.4",
        "1:2.34.1-1ubuntu1.5",
        "1:2.34.1-1ubuntu1.6"
      ]
    }
  ],
  "aliases": [],
  "details": "Git is a revision control system. Using a specially-crafted repository, Git prior to versions 2.39.2, 2.38.4, 2.37.6, 2.36.5, 2.35.7, 2.34.7, 2.33.7, 2.32.6, 2.31.7, and 2.30.8 can be tricked into using its local clone optimization even when using a non-local transport. Though Git will abort local clones whose source `$GIT_DIR/objects` directory contains symbolic links, the `objects` directory itself may still be a symbolic link. These two may be combined to include arbitrary files based on known paths on the victim\u0027s filesystem within the malicious repository\u0027s working copy, allowing for data exfiltration in a similar manner as CVE-2022-39253. A fix has been prepared and will appear in v2.39.2 v2.38.4 v2.37.6 v2.36.5 v2.35.7 v2.34.7 v2.33.7 v2.32.6, v2.31.7 and v2.30.8. If upgrading is impractical, two short-term workarounds are available. Avoid cloning repositories from untrusted sources with `--recurse-submodules`. Instead, consider cloning repositories without recursively cloning their submodules, and instead run `git submodule update` at each layer. Before doing so, inspect each new `.gitmodules` file to ensure that it does not contain suspicious module URLs.",
  "id": "UBUNTU-CVE-2023-22490",
  "modified": "2025-09-08T16:56:06Z",
  "published": "2023-02-14T18:00:00Z",
  "references": [
    {
      "type": "REPORT",
      "url": "https://ubuntu.com/security/CVE-2023-22490"
    },
    {
      "type": "ADVISORY",
      "url": "https://ubuntu.com/security/notices/USN-5871-1"
    },
    {
      "type": "REPORT",
      "url": "https://www.cve.org/CVERecord?id=CVE-2023-22490"
    },
    {
      "type": "ADVISORY",
      "url": "https://ubuntu.com/security/notices/USN-5871-2"
    }
  ],
  "related": [
    "USN-5871-1",
    "USN-5871-2"
  ],
  "schema_version": "1.7.0",
  "severity": [
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N",
      "type": "CVSS_V3"
    },
    {
      "score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:N/A:N",
      "type": "CVSS_V3"
    },
    {
      "score": "medium",
      "type": "Ubuntu"
    }
  ],
  "upstream": [
    "CVE-2023-22490"
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…