p PatchFirst

PatchFirst · Vulnérabilités récentes

Vulnérabilités de python-git · Page n° 2

Vulnérabilités publiées pour python-git au cours des 30 derniers jours : 8. Présentes dans le catalogue KEV : 0.

RSS ↗
Filtrer les vulnérabilités
Effacer les filtres

Vulnérabilités : 42

  1. CVE-2026-76218

    Élevée · CVSS 7.7EPSS 0,83%Correctif disponible

    GitPython before 3.1.58 Remote Code Execution via Repo.init

    GitPython before 3.1.58 contains a remote code execution vulnerability in Repo.init that forwards unsafe git options without validation. Attackers can supply a template parameter pointing to a directory with malicious git hooks that execute arbitrary code when git operations are performed on the initialized repository.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  2. CVE-2026-76217

    Élevée · CVSS 7.1EPSS 0,41%Correctif disponible

    GitPython before 3.1.58 Arbitrary File Read via pathspec-from-file

    GitPython versions before 3.1.58 fail to validate options passed to git rm and git checkout commands in IndexFile.remove() and Head.checkout(). Attackers can supply --pathspec-from-file and --pathspec-file-nul parameters to read arbitrary files accessible to the process, with full file contents returned in GitCommandError.stderr.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  3. CVE-2026-73625

    Élevée · CVSS 8.7EPSS 0,92%Correctif disponible

    GitPython before 3.1.54 Remote Code Execution via kwarg value smuggling

    GitPython versions before 3.1.54 contain a remote code execution vulnerability in the check_unsafe_options guard that can be bypassed by smuggling git options inside single-character kwarg values. Attackers can supply crafted option dictionaries to clone_from, fetch, pull, push, ls_remote, iter_commits, blame, or archive methods to execute arbitrary OS commands via the --upload-pack parameter.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  4. CVE-2026-73624

    Élevée · CVSS 7.2EPSS 0,55%Correctif disponible

    GitPython before 3.1.54 Arbitrary File Overwrite via diff

    GitPython versions before 3.1.54 contain an arbitrary file overwrite vulnerability in the Diffable.diff method that fails to validate git options passed through kwargs. Attackers can supply the --output argument via the other parameter or output kwarg to write patch content to attacker-chosen file paths at process privilege level.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  5. CVE-2026-73623

    Élevée · CVSS 7.7EPSS 0,83%Correctif disponible

    GitPython before 3.1.54 Remote Code Execution via --template

    GitPython before 3.1.54 contains an incomplete denylist in unsafe_git_clone_options that omits --template, allowing attackers to achieve arbitrary command execution during clone operations. Attackers can supply --template pointing to a directory containing malicious post-checkout hooks that execute when git clones the repository.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  6. CVE-2026-73622

    Élevée · CVSS 8.7EPSS 0,51%Correctif disponible

    GitPython before 3.1.55 Environment Variable Exfiltration via Remote.add()

    GitPython before 3.1.55 fails to disable environment variable expansion in Remote.create() and Submodule.add() URL handling, allowing attackers to exfiltrate secrets by supplying URLs containing variable references. Attackers can craft URLs with environment variable tokens that are expanded into .git/config and .gitmodules, then transmitted to attacker-controlled hosts during fetch or pull operations.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  7. CVE-2026-73621

    Moyenne · CVSS 5.3EPSS 0,36%Correctif disponible

    GitPython before 3.1.56 Arbitrary File Truncation via Commit.count

    GitPython before 3.1.56 contains an argument injection vulnerability in the Commit.count() method, which forwards keyword arguments to 'git rev-list' without the check_unsafe_options guard present in the sibling iter_items method. An attacker who can control options passed to Commit.count (e.g., via an application that forwards a user-supplied options dict) can supply output=<path>, causing 'git rev-list --output=<path>' to open and truncate the target file to zero bytes before revision parsing. This allows destruction/blanking of an arbitrary file at the process's privilege level (no content control, 0-byte truncation).

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  8. CVE-2026-73620

    Élevée · CVSS 7.2EPSS 0,57%Correctif disponible

    GitPython before 3.1.57 Arbitrary File Overwrite and Read

    GitPython before 3.1.57 fails to guard git option forwarding in IndexFile.checkout() and TagReference.create(), allowing attackers to pass unsafe options via kwargs. Attackers can use --prefix to overwrite arbitrary files with repository content or -F to read arbitrary files returned in-band.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  9. CVE-2026-73619

    Élevée · CVSS 7.1EPSS 0,41%Correctif disponible

    GitPython before 3.1.57 Arbitrary File Read via Repo.archive()

    GitPython before 3.1.57 contains an incomplete denylist in the unsafe_git_archive_options guard that omits --add-file and --add-virtual-file options. Attackers can supply these options to Repo.archive() to read arbitrary files from the filesystem and include them in the returned archive.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  10. CVE-2026-69097

    Élevée · CVSS 7.3EPSS 0,27%Correctif disponible

    GitPython before 3.1.53 Config Injection via Submodule Names

    GitPython before 3.1.53 fails to properly escape section names in git config files, allowing attackers to inject arbitrary configuration directives through malicious submodule names. Attackers can inject core.sshCommand or other dangerous config keys into the victim's .git/config via create_submodule or clone_from operations, achieving remote code execution when git performs ssh operations.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  11. CVE-2026-67326

    Élevée · CVSS 7.3EPSS 0,25%Correctif disponible

    GitPython before 3.1.50 Newline Injection via config_writer section

    GitPython before 3.1.50 fails to validate newline characters in the section parameter of config_writer(), allowing attackers to inject arbitrary section headers into .git/config. Attackers can inject newlines to create a forged [core] section with hooksPath pointing to attacker-controlled directories, achieving remote code execution when git hooks are triggered.

    • Mettez à jour vers 3.1.50-1
    Publication Mise à jour
  12. CVE-2026-67324

    Critique · CVSS 9.3EPSS 0,64%Correctif disponible

    GitPython 3.1.50 Authentication Bypass via Joined Short Options

    GitPython 3.1.50 fails to recognize joined short-option forms such as -u<value> (the short form of --upload-pack=<value>) when enforcing its default unsafe-option gate. When an application passes attacker-influenced clone options into Repo.clone_from(..., multi_options=..., allow_unsafe_options=False), an attacker can supply -u<helper> to bypass the gate that blocks --upload-pack/-u, causing Git to execute the specified helper command during clone. Fixed in 3.1.51.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  13. CVE-2026-67323

    Élevée · CVSS 8.6EPSS 1,25%Correctif disponible

    GitPython before 3.1.51 Command Injection via unguarded Git options

    GitPython before 3.1.51 fails to guard against dangerous Git options passed as keyword arguments in Repo.archive() and git.ls_remote(), allowing command injection via options such as --exec/--upload-pack (leading to arbitrary command execution). Additionally, Repo.iter_commits() and Repo.blame() do not check for leading-dash revision arguments, so a revision like --output=<path> can cause Git to open and truncate an arbitrary file. Exploitation requires an application that passes attacker-controlled arguments to these methods.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  14. CVE-2026-67322

    Élevée · CVSS 8.7EPSS 0,33%Correctif disponible

    GitPython before 3.1.52 Environment Variable Exfiltration via clone_from

    GitPython before 3.1.52 is vulnerable to environment-variable exfiltration in Repo.clone_from(). The caller-supplied remote URL is passed through Git.polish_url(), which on non-Cygwin platforms calls os.path.expandvars() on the URL before invoking git clone. An attacker who controls the clone URL can embed $NAME or ${NAME} tokens that are expanded to the values of the hosting process's environment variables (e.g., AWS_SECRET_ACCESS_KEY or GITHUB_TOKEN). The resulting URL, now containing the secret, is transmitted over the network to an attacker-controlled host during the clone attempt, disclosing the secret.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  15. CVE-2026-67325

    Élevée · CVSS 8.7EPSS 2,21%Correctif disponible

    GitPython before 3.1.51 Command Injection via option prefix abbreviation

    GitPython before 3.1.51 contains an incomplete command injection blocklist that fails to account for git's long-option prefix abbreviation feature. Attackers can bypass the unsafe options guard by using abbreviated option names like upload_p instead of upload_pack, which git resolves to dangerous options and executes arbitrary commands.

    • Mettez à jour vers 3.1.61-1
    Publication Mise à jour
  16. CVE-2026-44243

    Élevée · CVSS 7.8EPSS 0,44%Correctif disponible

    GitPython: Path traversal in GitPython reference APIs allows arbitrary file write and delete outside the repository

    GitPython is a python library used to interact with Git repositories. Prior to version 3.1.48, a vulnerability in GitPython allows attackers who can supply a crafted reference path to an application using GitPython to write, overwrite, move, or delete files outside the repository’s .git directory via insufficient validation of reference paths in reference creation, rename, and delete operations. This issue has been patched in version 3.1.48.

    • Mettez à jour vers 3.1.50-1
    Publication Mise à jour
  17. CVE-2026-44244

    Élevée · CVSS 7.8EPSS 0,22%Correctif disponible

    GitPython: Newline injection in config_writer().set_value() enables RCE via core.hooksPath

    GitPython is a python library used to interact with Git repositories. Prior to version 3.1.49, GitConfigParser.set_value() passes values to Python's configparser without validating for newlines. GitPython's own _write() converts embedded newlines into indented continuation lines (e.g. \n becomes \n\t), but Git still accepts an indented [core] stanza as a section header — so the injected core.hooksPath becomes effective configuration. Any Git operation that invokes hooks (commit, merge, checkout) will then execute scripts from the attacker-controlled path. This issue has been patched in version 3.1.49.

    • Mettez à jour vers 3.1.50-1
    Publication Mise à jour
  18. CVE-2026-42284

    Élevée · CVSS 8.1EPSS 0,71%Correctif disponible

    GitPython: Unsafe option check validates multi_options before shlex.split transforms it

    GitPython is a python library used to interact with Git repositories. Prior to version 3.1.47, _clone() validates multi_options as the original list, then executes shlex.split(" ".join(multi_options)). A string like "--branch main --config core.hooksPath=/x" passes validation (starts with --branch), but after split becomes ["--branch", "main", "--config", "core.hooksPath=/x"]. Git applies the config and executes attacker hooks during clone. This issue has been patched in version 3.1.47.

    • Mettez à jour vers 3.1.50-1
    Publication Mise à jour
  19. CVE-2026-42215

    Élevée · CVSS 8.8EPSS 0,9%Correctif disponible

    GitPython: Command injection via Git options bypass

    GitPython is a python library used to interact with Git repositories. From version 3.1.30 to before version 3.1.47, GitPython blocks dangerous Git options such as --upload-pack and --receive-pack by default, but the equivalent Python kwargs upload_pack and receive_pack bypass that check. If an application passes attacker-controlled kwargs into Repo.clone_from(), Remote.fetch(), Remote.pull(), or Remote.push(), this leads to arbitrary command execution even when allow_unsafe_options is left at its default value of False. This issue has been patched in version 3.1.47.

    • Mettez à jour vers 3.1.50-1
    Publication Mise à jour
  20. CVE-2023-41040

    Moyenne · CVSS 4EPSS 1,09%Correctif disponible

    GitPython blind local file inclusion

    GitPython is a python library used to interact with Git repositories. In order to resolve some git references, GitPython reads files from the `.git` directory, in some places the name of the file being read is provided by the user, GitPython doesn't check if this file is located outside the `.git` directory. This allows an attacker to make GitPython read any file from the system. This vulnerability is present in https://github.com/gitpython-developers/GitPython/blob/1c8310d7cae144f74a671cbe17e51f63a830adbf/git/refs/symbolic.py#L174-L175. That code joins the base directory with a user given string without checking if the final path is located

    • Mettez à jour vers 3.1.36-1
    Publication Mise à jour

Vérifiez votre serveur

Comparez votre pile et les versions installées aux bases de vulnérabilités actuelles.

Vérifiez votre serveur →