Affected versions of Git have a vulnerability whereby Git can be tricked into sending private credentials to a host controlled by an attacker. Git uses external "credential helper" programs to store and retrieve passwords or other credentials from secure storage provided by the operating system. Specially-crafted URLs that contain an encoded newline can inject unintended values into the credential helper protocol stream, causing the credential helper to retrieve the password for one server (e.g., good.example.com) for an HTTP request being made to another server (e.g., evil.example.com), resulting in credentials for the former being sent to the latter. There are no restrictions on the relationship between the two, meaning that an attacker can craft a URL that will present stored credentials for any host to a host of their choosing. The vulnerability can be triggered by feeding a malicious URL to git clone. However, the affected URLs look rather suspicious; the likely vector would be through systems which automatically clone URLs not visible to the user, such as Git submodules, or package systems built around Git. The problem has been patched in the versions published on April 14th, 2020, going back to v2.17.x. Anyone wishing to backport the change further can do so by applying commit 9a6bbee (the full release includes extra checks for git fsck, but that commit is sufficient to protect clients against the vulnerability). The patched versions are: 2.17.4, 2.18.3, 2.19.4, 2.20.3, 2.21.2, 2.22.3, 2.23.2, 2.24.2, 2.25.3, 2.26.1.
CVSS Details
- CVSS 3.1 Base Score: 9.3
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alpine Linux | — | Upgrade git | Aug 22, 2024 | Apr 14, 2020 |
| Amazon Linux Ami 2 | — | Upgrade gitkUpgrade perl-Git-SVNUpgrade gitUpgrade git-coreUpgrade git-cvsUpgrade gitwebUpgrade git-core-docUpgrade git-subtreeUpgrade perl-GitUpgrade git-debuginfoUpgrade git-guiUpgrade git-daemonUpgrade git-emailUpgrade git-allUpgrade git-svnUpgrade git-instawebUpgrade git-p4 | Apr 27, 2020 | Apr 14, 2020 |
| Amazon_linux | — | Upgrade git | Apr 17, 2020 | Apr 14, 2020 |
| Arch Linux | — | Upgrade to the latest version of Arch Linux | Jul 11, 2025 | Apr 14, 2020 |
| Centos_linux | — | Upgrade git-allUpgrade git-gnome-keyringUpgrade emacs-git-elUpgrade git-coreUpgrade perl-GitUpgrade git-subtreeUpgrade gitUpgrade gitwebUpgrade git-bzrUpgrade git-cvsUpgrade git-svnUpgrade git-core-debuginfoUpgrade git-daemonUpgrade git-hgUpgrade git-svn-debuginfoUpgrade git-debugsourceUpgrade git-instawebUpgrade git-debuginfoUpgrade git-p4Upgrade emacs-gitUpgrade git-emailUpgrade perl-Git-SVNUpgrade git-guiUpgrade git-core-docUpgrade git-daemon-debuginfoUpgrade gitk | Apr 22, 2020 | Apr 14, 2020 |
| Debian | — | Upgrade git | Apr 16, 2020 | Apr 14, 2020 |
| Freebsd | — | Upgrade git-guiUpgrade gitUpgrade git-lite | Jun 5, 2020 | Apr 22, 2020 |
| Gentoo Linux | — | Upgrade dev-vcs/git. | Apr 24, 2020 | Apr 14, 2020 |
| Huawei Euleros 2_0_sp2 | — | Upgrade git | Jun 17, 2020 | Apr 14, 2020 |
| Huawei Euleros 2_0_sp3 | — | Upgrade git | Sep 28, 2020 | Apr 14, 2020 |
| Huawei Euleros 2_0_sp5 | — | Upgrade git-core-docUpgrade gitUpgrade git-core | Jun 3, 2020 | Apr 14, 2020 |
| Huawei Euleros 2_0_sp8 | — | Upgrade git-coreUpgrade git-core-docUpgrade git | Apr 21, 2020 | Apr 14, 2020 |
| Huawei Euleros 2_0_sp9 | — | Upgrade git-helpUpgrade git | Sep 29, 2021 | Apr 14, 2020 |
| Oracle Solaris | — | Upgrade developer/versioning/git to version 2.19.5-11.4.24.0.1.75.1 on Solaris 11.4 | Jan 19, 2021 | Apr 14, 2020 |
| Oracle_linux | — | Upgrade git-gnome-keyringUpgrade gitkUpgrade git-subtreeUpgrade gitwebUpgrade git-hgUpgrade git-cvsUpgrade perl-Git-SVNUpgrade git-core-docUpgrade emacs-git-elUpgrade gitUpgrade git-svnUpgrade perl-GitUpgrade emacs-gitUpgrade git-bzrUpgrade git-coreUpgrade git-allUpgrade git-p4Upgrade git-instawebUpgrade git-daemonUpgrade git-emailUpgrade git-gui | Oct 5, 2022 | Apr 14, 2020 |
| Redhat_linux | — | Upgrade gitkUpgrade git-debugsourceUpgrade gitUpgrade git-allUpgrade git-hgUpgrade git-daemon-debuginfoUpgrade git-core-docUpgrade emacs-git-elUpgrade git-gnome-keyringUpgrade gitwebUpgrade git-coreUpgrade git-p4Upgrade git-guiUpgrade perl-Git-SVNUpgrade git-instawebUpgrade emacs-gitUpgrade perl-GitUpgrade git-cvsUpgrade git-emailUpgrade git-subtreeUpgrade git-daemonUpgrade git-core-debuginfoUpgrade git-bzrUpgrade git-svnUpgrade git-svn-debuginfoUpgrade git-debuginfo | Apr 22, 2020 | Apr 14, 2020 |
| Suse | — | Upgrade git-coreUpgrade libpcre2-16-0Upgrade git-cvsUpgrade git-svnUpgrade libpcre2-8-0Upgrade gitUpgrade git-credential-libsecretUpgrade perl-CGIUpgrade git-archUpgrade git-credential-gnome-keyringUpgrade git-webUpgrade pcre2-devel-staticUpgrade pcre2-develUpgrade pcre2-toolsUpgrade git-p4Upgrade git-daemonUpgrade libpcre2-32-0Upgrade libpcre2-posix2Upgrade git-guiUpgrade git-docUpgrade gitkUpgrade git-email | Apr 15, 2020 | Apr 14, 2020 |
| Ubuntu | — | Upgrade git | Apr 15, 2020 | Apr 14, 2020 |
| Vmware Photon_os | — | Use 'tdnf update' to upgrade all packages to the latest version. | Jan 20, 2025 | Apr 14, 2020 |
Prioritize with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub