p PatchFirst

PatchFirst · Latest vulnerabilities

git vulnerabilities

Vulnerabilities published for git in the last 30 days: 0. Listed in the KEV catalogue: 0.

Filter vulnerabilities
Clear filters

Vulnerabilities: 19

  1. CVE-2025-46835

    High · CVSS 8.5EPSS 0.61%Fix available

    Git GUI can create and overwrite files for which the user has write permission

    Git GUI allows you to use the Git source control management tools via a GUI. When a user clones an untrusted repository and is tricked into editing a file located in a maliciously named directory in the repository, then Git GUI can create and overwrite files for which the user has write permission. This vulnerability is fixed in 2.43.7, 2.44.4, 2.45.4, 2.46.4, 2.47.3, 2.48.2, 2.49.1, and 2.50.1.

    • Update to 1:2.7.4-0ubuntu1.10+esm11
    Published Updated
  2. CVE-2025-27613

    Low · CVSS 3.6EPSS 0.6%Fix available

    Gitk can create and truncate files in the user's home directory

    Gitk is a Tcl/Tk based Git history browser. Starting with 1.7.0, when a user clones an untrusted repository and runs gitk without additional command arguments, files for which the user has write permission can be created and truncated. The option Support per-file encoding must have been enabled before in Gitk's Preferences. This option is disabled by default. The same happens when Show origin of this line is used in the main window (regardless of whether Support per-file encoding is enabled or not). This vulnerability is fixed in 2.43.7, 2.44.4, 2.45.4, 2.46.4, 2.47.3, 2.48.2, 2.49.1, and 2.50.1.

    • Update to 1:2.7.4-0ubuntu1.10+esm11
    Published Updated
  3. CVE-2025-48384

    High · CVSS 8.1EPSS 4.38%In KEVPublic exploitFix available

    Git allows arbitrary code execution through broken config quoting

    Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. When reading a config value, Git strips any trailing carriage return and line feed (CRLF). When writing a config entry, values with a trailing CR are not quoted, causing the CR to be lost when the config is later read. When initializing a submodule, if the submodule path contains a trailing CR, the altered path is read resulting in the submodule being checked out to an incorrect location. If a symlink exists that points the altered path to the submodule hooks directory, and the

    • Update to 1:2.7.4-0ubuntu1.10+esm9
    Published Updated
  4. CVE-2025-48386

    Medium · CVSS 6.3EPSS 0.43%Fix available

    Git allows a buffer overflow in 'wincred' credential helper

    Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. The wincred credential helper uses a static buffer (target) as a unique key for storing and comparing against internal storage. This credential helper does not properly bounds check the available space remaining in the buffer before appending to it with wcsncat(), leading to potential buffer overflows. This vulnerability is fixed in v2.43.7, v2.44.4, v2.45.4, v2.46.4, v2.47.3, v2.48.2, v2.49.1, and v2.50.1.

    • Update to 1:2.7.4-0ubuntu1.10+esm9
    Published Updated
  5. CVE-2024-52005

    High · CVSS 7.5EPSS 0.51%Public exploitNo fix published

    The sideband payload is passed unfiltered to the terminal in git

    Git is a source code management tool. When cloning from a server (or fetching, or pushing), informational or error messages are transported from the remote Git process to the client via the so-called "sideband channel". These messages will be prefixed with "remote:" and printed directly to the standard error output. Typically, this standard error output is connected to a terminal that understands ANSI escape sequences, which Git did not protect against. Most modern terminals support control sequences that can be used by a malicious actor to hide and misrepresent information, or to mislead the user into executing untrusted scripts. As requeste

    Published Updated
  6. CVE-2024-50349

    Low · CVSS 2.1EPSS 0.65%Fix available

    Git does not sanitize URLs when asking for credentials interactively

    Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. When Git asks for credentials via a terminal prompt (i.e. without using any credential helper), it prints out the host name for which the user is expected to provide a username and/or a password. At this stage, any URL-encoded parts have been decoded already, and are printed verbatim. This allows attackers to craft URLs that contain ANSI escape sequences that the terminal interpret to confuse users e.g. into providing passwords for trusted Git hosting sites when in fact they are

    • Update to 1:2.7.4-0ubuntu1.10+esm13
    Published Updated
  7. CVE-2024-52006

    Low · CVSS 2.1EPSS 1.03%Fix available

    Newline confusion in credential helpers can lead to credential exfiltration in git

    Git is a fast, scalable, distributed revision control system with an unusually rich command set that provides both high-level operations and full access to internals. Git defines a line-based protocol that is used to exchange information between Git and Git credential helpers. Some ecosystems (most notably, .NET and node.js) interpret single Carriage Return characters as newlines, which renders the protections against CVE-2020-5260 incomplete for credential helpers that treat Carriage Returns in this way. This issue has been addressed in commit `b01b9b8` which is included in release versions v2.48.1, v2.47.2, v2.46.3, v2.45.3, v2.44.3, v2.43.

    • Update to 1:2.7.4-0ubuntu1.10+esm13
    Published Updated
  8. CVE-2023-29007

    High · CVSS 7EPSS 5.61%Fix available

    Arbitrary configuration injection via `git submodule deinit`

    Git is a revision control system. Prior to versions 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3, and 2.40.1, a specially crafted `.gitmodules` file with submodule URLs that are longer than 1024 characters can used to exploit a bug in `config.c::git_config_copy_or_rename_section_in_file()`. This bug can be used to inject arbitrary configuration into a user's `$GIT_DIR/config` when attempting to remove the configuration section associated with that submodule. When the attacker injects configuration values which specify executables to run (such as `core.pager`, `core.editor`, `core.sshCommand`, etc.) this can l

    • Update to 1:2.7.4-0ubuntu1.10+esm7
    Published Updated
  9. CVE-2023-25815

    Low · CVSS 3.3EPSS 0.84%Fix available

    Git looks for localized messages in the wrong place

    In Git for Windows, the Windows port of Git, no localized messages are shipped with the installer. As a consequence, Git is expected not to localize messages at all, and skips the gettext initialization. However, due to a change in MINGW-packages, the `gettext()` function's implicit initialization no longer uses the runtime prefix but uses the hard-coded path `C:\mingw64\share\locale` to look for localized messages. And since any authenticated user has the permission to create folders in `C:\` (and since `C:\mingw64` does not typically exist), it is possible for low-privilege users to place fake messages in that location where `git.exe` will

    • Update to 1:2.7.4-0ubuntu1.10+esm8
    Published Updated
  10. CVE-2023-25652

    High · CVSS 7.5EPSS 51.88%Fix available

    "git apply --reject" partially-controlled arbitrary file write

    Git is a revision control system. Prior to versions 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3, and 2.40.1, by feeding specially crafted input to `git apply --reject`, a path outside the working tree can be overwritten with partially controlled contents (corresponding to the rejected hunk(s) from the given patch). A fix is available in versions 2.30.9, 2.31.8, 2.32.7, 2.33.8, 2.34.8, 2.35.8, 2.36.6, 2.37.7, 2.38.5, 2.39.3, and 2.40.1. As a workaround, avoid using `git apply` with `--reject` when applying patches from an untrusted source. Use `git apply --stat` to inspect a patch before applying; avoid apply

    • Update to 1:2.7.4-0ubuntu1.10+esm7
    Published Updated
  11. CVE-2023-23946

    Medium · CVSS 6.2EPSS 1.14%Fix available

    Git's `git apply` overwriting paths outside the working tree

    Git, a revision control system, is vulnerable to path traversal 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. By feeding a crafted input to `git apply`, a path outside the working tree can be overwritten as the user who is running `git apply`. 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. As a workaround, use `git apply --stat` to inspect a patch before applying; avoid applying one that creates a symbolic link and then creates a file beyond the symbolic link.

    • Update to 1:2.7.4-0ubuntu1.10+esm5
    Published Updated
  12. CVE-2023-22490

    Medium · CVSS 5.5EPSS 0.71%Fix available

    Git vulnerable to local clone-based data exfiltration with non-local transports

    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-3925

    • Update to 1:2.7.4-0ubuntu1.10+esm5
    Published Updated
  13. CVE-2022-23521

    Critical · CVSS 9.8EPSS 56.33%Fix available

    gitattributes parsing integer overflow in git

    Git is distributed revision control system. gitattributes are a mechanism to allow defining attributes for paths. These attributes can be defined by adding a `.gitattributes` file to the repository, which contains a set of file patterns and the attributes that should be set for paths matching this pattern. When parsing gitattributes, multiple integer overflows can occur when there is a huge number of path patterns, a huge number of attributes for a single pattern, or when the declared attribute names are huge. These overflows can be triggered via a crafted `.gitattributes` file that may be part of the commit history. Git silently splits lines

    • Update to 1:2.7.4-0ubuntu1.10+esm4
    Published Updated
  14. CVE-2022-41903

    Critical · CVSS 9.8EPSS 44.27%Fix available

    Integer overflow in `git archive`, `git log --format` leading to RCE in git

    Git is distributed revision control system. `git log` can display commits in an arbitrary format using its `--format` specifiers. This functionality is also exposed to `git archive` via the `export-subst` gitattribute. When processing the padding operators, there is a integer overflow in `pretty.c::format_and_pad_commit()` where a `size_t` is stored improperly as an `int`, and then added as an offset to a `memcpy()`. This overflow can be triggered directly by a user running a command which invokes the commit formatting machinery (e.g., `git log --format=...`). It may also be triggered indirectly through git archive via the export-subst mechan

    • Update to 1:2.7.4-0ubuntu1.10+esm4
    Published Updated
  15. CVE-2022-39260

    High · CVSS 8.5EPSS 3.99%Fix available

    Git vulnerable to Remote Code Execution via Heap overflow in `git shell`

    Git is an open source, scalable, distributed revision control system. `git shell` is a restricted login shell that can be used to implement Git's push/pull functionality via SSH. In versions prior to 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3, and 2.37.4, the function that splits the command arguments into an array improperly uses an `int` to represent the number of entries in the array, allowing a malicious actor to intentionally overflow the return value, leading to arbitrary heap writes. Because the resulting array is then passed to `execv()`, it is possible to leverage this attack to gain remote code execution on a victim mach

    • Update to 1:2.7.4-0ubuntu1.10+esm3
    Published Updated
  16. CVE-2022-39253

    Medium · CVSS 5.5EPSS 1.48%Fix available

    Git subject to exposure of sensitive information via local clone of symbolic links

    Git is an open source, scalable, distributed revision control system. Versions prior to 2.30.6, 2.31.5, 2.32.4, 2.33.5, 2.34.5, 2.35.5, 2.36.3, and 2.37.4 are subject to exposure of sensitive information to a malicious actor. When performing a local clone (where the source and target of the clone are on the same volume), Git copies the contents of the source's `$GIT_DIR/objects` directory into the destination by either creating hardlinks to the source contents, or copying them (if hardlinks are disabled via `--no-hardlinks`). A malicious actor could convince a victim to clone a repository with a symbolic link pointing at sensitive information

    • Update to 1:2.7.4-0ubuntu1.10+esm6
    Published Updated
  17. CVE-2022-24975

    High · CVSS 7.5EPSS 2.62%No fix published

    CVE-2022-24975

    The --mirror documentation for Git through 2.35.1 does not mention the availability of deleted content, aka the "GitBleed" issue. This could present a security risk if information-disclosure auditing processes rely on a clone operation without the --mirror option. Note: This has been disputed by multiple 3rd parties who believe this is an intended feature of the git binary and does not pose a security risk.

    Published Updated
  18. CVE-2018-1000021

    High · CVSS 8.8EPSS 1.07%No fix published

    CVE-2018-1000021

    GIT version 2.15.1 and earlier contains a Input Validation Error vulnerability in Client that can result in problems including messing up terminal configuration to RCE. This attack appear to be exploitable via The user must interact with a malicious git server, (or have their traffic modified in a MITM attack).

    Published Updated

Check your server

Check your installed stack and versions against the current vulnerability feeds.

Check your server →