CVE-2016-3721: Code Injection

Published May 12, 2016
·
Updated

Jenkins before 2.3 and LTS before 1.651.2 might allow remote authenticated users to inject arbitrary build parameters into the build environment via environment variables.

Other sources

The following flaw was found in Jenkins:

Build parameters in Jenkins typically are passed to build scripts as environment variables. Some plugins allow passing arbitrary (undeclared) parameters. Depending on access permissions and installed plugins, malicious users were able to trigger builds, passing arbitrary environment variables (e.g. PATH) to modify the behavior of those builds. Rather than expect all plugin authors to be aware of this potential problem, Jenkins now filters the build parameters based on what is defined on the job.

As this change is known to affect a number of plugins, it's possible to restore the previous behavior by setting the system property hudson.model.ParametersAction.keepUndefinedParameters to true. This is potentially very unsafe and intended as a short-term workaround only.

To allow specific, known safe parameter names to be passed to builds, set the system property hudson.model.ParametersAction.safeParameters to a comma-separated list of safe parameter names. Example:

java -Dhudson.model.ParametersAction.safeParameters=FOO,BARBAZ,qux -jar jenkins.war

External References:

https://wiki.jenkins-ci.org/display/SECURITY/Jenkins+Security+Advisory+2016-05-11

Red Hat

Affected Software

8 affected componentsFixes available
redhat/Jenkins<2.3
2.3
redhat/Jenkins<1.651.2
1.651.2
redhat Openshift=3.1
redhat Openshift=3.2
Jenkins Jenkins<=1.651.1
Jenkins Jenkins<=2.2
maven/org.jenkins-ci.main:jenkins-core<1.651.2
1.651.2
maven/org.jenkins-ci.main:jenkins-core>=1.660<2.3
2.3

Event History

May 17, 2016
CVE Published
via MITRE·12:00 AM
Data Sourced
via MITRE·12:00 AM
Description
May 14, 2022
Advisory Published
via GitHub·03:57 AM
Data Sourced
via GitHub·03:57 AM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2016-3721?

CVE-2016-3721 is considered a medium severity vulnerability due to the potential for arbitrary code injection by remote authenticated users.

2

How do I fix CVE-2016-3721?

To fix CVE-2016-3721, upgrade Jenkins to version 2.3 or later, or LTS version 1.651.2 or later.

3

Who is affected by CVE-2016-3721?

CVE-2016-3721 affects Jenkins users running versions prior to 2.3 and LTS versions prior to 1.651.2.

4

What type of vulnerability is CVE-2016-3721?

CVE-2016-3721 is a code injection vulnerability that allows remote authenticated users to inject arbitrary build parameters.

5

Can CVE-2016-3721 be exploited without authentication?

No, CVE-2016-3721 requires an attacker to be a remote authenticated user to exploit the vulnerability.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203