CVE-2019-1387 Command injection in Git

High 8.8 Published Updated

Attackers can achieve remote code execution via targeted attacks on recursive clones due to lax submodule name validation in Git.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
A user has to click or open something
Fix
Available

What is CVE-2019-1387?

CVE-2019-1387 is a high-severity command injection vulnerability in Microsoft Corporation Git, published on 18 Dec 2019. An attacker can exploit it over the internet without logging in, and only if a user opens a file or follows a link.

Official description

An issue was found in Git before v2.24.1, v2.23.1, v2.22.2, v2.21.1, v2.20.2, v2.19.3, v2.18.2, v2.17.3, v2.16.6, v2.15.4, and v2.14.6. Recursive clones are currently affected by a vulnerability that is caused by too-lax validation of submodule names, allowing very targeted attacks via remote code execution in recursive clones.

Which versions are affected by CVE-2019-1387?

It affects 1 product.

Linux distribution packages (40)
emacs-git Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
emacs-git-el Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-all Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-bzr Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-cvs Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-daemon Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-debuginfo Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-email Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-gnome-keyring Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-gui Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-hg Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-instaweb Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-p4 Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
git-svn Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
gitk Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
gitweb Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
perl-Git Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
perl-Git-SVN Red Hat:enterprise_linux:7::clientAll versions0:1.8.3.1-21.el7_7
emacs-git Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
emacs-git-el Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-all Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-bzr Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-cvs Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-daemon Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-debuginfo Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-email Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-gnome-keyring Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-gui Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-hg Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-instaweb Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-p4 Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
git-svn Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
gitk Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
gitweb Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
perl-Git Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
perl-Git-SVN Red Hat:enterprise_linux:7::computenodeAll versions0:1.8.3.1-21.el7_7
emacs-git Red Hat:enterprise_linux:7::serverAll versions0:1.8.3.1-21.el7_7
emacs-git-el Red Hat:enterprise_linux:7::serverAll versions0:1.8.3.1-21.el7_7

Products include Git-Scm Git.

How do I fix CVE-2019-1387?

Upgrade to a fixed version.

Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.

Is CVE-2019-1387 being exploited?

There is no known exploitation of CVE-2019-1387 in the wild and no public exploit code.

Sources

Also known as ALPINE-CVE-2019-1387, CLEANSTART-2026-LI11422, DEBIAN-CVE-2019-1387, GHSA-9mhc-h3vf-83fw, RHSA-2020:0124, UBUNTU-CVE-2019-1387.

Is CVE-2019-1387 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free