CVE-2019-10392 Improper Neutralization of Special Elements used in an OS Command in Jenkins Git Client Plugin

High 8.8 Published Updated

Attackers can execute arbitrary OS commands via crafted URLs in the Jenkins Git Client Plugin, requiring an upgrade to remediate.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2019-10392?

CVE-2019-10392 is a high-severity command injection vulnerability in Jenkins Git Client Plugin, published on 12 Sep 2019. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Jenkins Git Client Plugin 2.8.4 and earlier and 3.0.0-rc did not properly restrict values passed as URL argument to an invocation of 'git ls-remote', resulting in OS command injection.

Weakness: CWE-78

Which versions are affected by CVE-2019-10392?

2 open source packages ship an affected version, including org.jenkins-ci.plugins:git-client. It affects 1 product.

PackageAffectedFixed in
org.jenkins-ci.plugins:git-client MavenAll versions2.8.5
org.jenkins-ci.plugins:git-client MavenAll versions2.8.5
Linux distribution packages (38)
atomic-enterprise-service-catalog Red Hat:openshift:4.1::el7All versions1:4.1.37-202003020601.git.0.5784dc4.el7
atomic-enterprise-service-catalog-svcat Red Hat:openshift:4.1::el7All versions1:4.1.37-202003020601.git.0.5784dc4.el7
cri-o Red Hat:openshift:4.1::el7All versions0:1.13.12-6.dev.rhaos4.1.git8abaaeb.el7
cri-o-debuginfo Red Hat:openshift:4.1::el7All versions0:1.13.12-6.dev.rhaos4.1.git8abaaeb.el7
jenkins Red Hat:openshift:4.1::el7All versions0:2.204.2.1583849753-1.el7
jenkins-2-plugins Red Hat:openshift:4.1::el7All versions0:4.1.1583850385-1.el7
openshift Red Hat:openshift:4.1::el7All versions0:4.1.37-202002280447.git.0.543873e.el7
openshift-ansible Red Hat:openshift:4.1::el7All versions0:4.1.37-202002280447.git.1.bb180eb.el7
openshift-clients Red Hat:openshift:4.1::el7All versions0:4.1.37-202002280447.git.0.543873e.el7
openshift-clients-redistributable Red Hat:openshift:4.1::el7All versions0:4.1.37-202002280447.git.0.543873e.el7
openshift-hyperkube Red Hat:openshift:4.1::el7All versions0:4.1.37-202002280447.git.0.543873e.el7
containers-common Red Hat:openshift:4.1::el8All versions1:0.1.32-6.git1715c90.el8_0
cri-o Red Hat:openshift:4.1::el8All versions0:1.13.12-6.dev.rhaos4.1.git8abaaeb.el8_0
cri-o-debuginfo Red Hat:openshift:4.1::el8All versions0:1.13.12-6.dev.rhaos4.1.git8abaaeb.el8_0
cri-o-debugsource Red Hat:openshift:4.1::el8All versions0:1.13.12-6.dev.rhaos4.1.git8abaaeb.el8_0
openshift Red Hat:openshift:4.1::el8All versions0:4.1.37-202002280447.git.0.543873e.el8_0
openshift-clients Red Hat:openshift:4.1::el8All versions0:4.1.37-202002280447.git.0.543873e.el8_0
openshift-clients-redistributable Red Hat:openshift:4.1::el8All versions0:4.1.37-202002280447.git.0.543873e.el8_0
openshift-hyperkube Red Hat:openshift:4.1::el8All versions0:4.1.37-202002280447.git.0.543873e.el8_0
podman Red Hat:openshift:4.1::el8All versions0:1.0.2-3.dev.git96ccc2e.el8_0
podman-debuginfo Red Hat:openshift:4.1::el8All versions0:1.0.2-3.dev.git96ccc2e.el8_0
podman-debugsource Red Hat:openshift:4.1::el8All versions0:1.0.2-3.dev.git96ccc2e.el8_0
podman-docker Red Hat:openshift:4.1::el8All versions0:1.0.2-3.dev.git96ccc2e.el8_0
runc Red Hat:openshift:4.1::el8All versions0:1.0.0-63.rc8.rhaos4.1.git3cbe540.el8_0
runc-debuginfo Red Hat:openshift:4.1::el8All versions0:1.0.0-63.rc8.rhaos4.1.git3cbe540.el8_0
runc-debugsource Red Hat:openshift:4.1::el8All versions0:1.0.0-63.rc8.rhaos4.1.git3cbe540.el8_0
skopeo Red Hat:openshift:4.1::el8All versions1:0.1.32-6.git1715c90.el8_0
skopeo-debuginfo Red Hat:openshift:4.1::el8All versions1:0.1.32-6.git1715c90.el8_0
skopeo-debugsource Red Hat:openshift:4.1::el8All versions1:0.1.32-6.git1715c90.el8_0
atomic-enterprise-service-catalog Red Hat:openshift:4.2::el7All versions1:4.2.20-202002170402.git.1.159e2f5.el7
atomic-enterprise-service-catalog-svcat Red Hat:openshift:4.2::el7All versions1:4.2.20-202002170402.git.1.159e2f5.el7
atomic-openshift-service-idler Red Hat:openshift:4.2::el7All versions0:4.2.20-202002170402.git.1.43218bc.el7
cri-o Red Hat:openshift:4.2::el7All versions0:1.14.12-19.dev.rhaos4.2.git313d784.el7
jenkins Red Hat:openshift:4.2::el7All versions0:2.204.1.1581951349-1.el7
jenkins-2-plugins Red Hat:openshift:4.2::el7All versions0:4.2.1581952573-1.el7
openshift Red Hat:openshift:4.2::el7All versions0:4.2.20-202002140432.git.0.47933cb.el7
openshift-ansible Red Hat:openshift:4.2::el7All versions0:4.2.20-202002140432.git.187.2308b53.el7
openshift-clients Red Hat:openshift:4.2::el7All versions0:4.2.20-202002140432.git.1.5dc67c9.el7

Products include Jenkins Git Client.

How do I fix CVE-2019-10392?

Upgrade org.jenkins-ci.plugins:git-client to 2.8.5 or later.

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

Is CVE-2019-10392 being exploited?

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

Public exploit code: 3 proofs of concept on GitHub.

Sources

Also known as GHSA-hw6x-2qwv-rxr7, RHBA-2020:0522, RHBA-2020:0690.

Is CVE-2019-10392 in your software?

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

Check your SBOMs for free