CVE-2020-2135
Sandbox bypass vulnerability in Script Security Plugin
Sandbox protection in Jenkins Script Security Plugin 1.70 and earlier could be circumvented through crafted method calls on objects that implement GroovyInterceptable.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- Low
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
8.8
Sandbox protection in Jenkins Script Security Plugin 1.70 and earlier could be circumvented through crafted method calls on objects that implement GroovyInterceptable.
- Record
CVE-2020-2135- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - CVSS 2.0
- 6.5 Medium
AV:N/AC:L/Au:S/C:P/I:P/A:P - Weakness
- CWE-863
- Updated
- 2026-11-02
CVE List No score
Sandbox protection in Jenkins Script Security Plugin 1.70 and earlier could be circumvented through crafted method calls on objects that implement GroovyInterceptable.
- Record
CVE-2020-2135- Updated
- 2026-11-02
EUVDEUVD-2022-5034 No score
Sandbox protection in Jenkins Script Security Plugin 1.70 and earlier could be circumvented through crafted method calls on objects that implement GroovyInterceptable.
- Record
EUVD-2022-5034- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-qvhf-3567-pc4v
8.8
Sandbox bypass vulnerability in Script Security Plugin
Sandbox protection in Script Security Plugin 1.70 and earlier can be circumvented through:
- Crafted constructor calls and bodies (due to an incomplete fix of SECURITY-582)
- Crafted method calls on objects that implement
GroovyInterceptable
This allows attackers able to specify and run sandboxed scripts to execute arbitrary code in the context of the Jenkins controller JVM.
Script Security Plugin 1.71 has additional restrictions and sanity checks to ensure that super constructors cannot be constructed without being intercepted by the sandbox. In addition, it also intercepts method calls on objects that implement GroovyInterceptable as calls to GroovyObject#invokeMethod(String, Object), which is on the list of dangerous signatures and should not be approved for use in the sandbox.
- Record
GHSA-qvhf-3567-pc4v- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-693, CWE-863
- Updated
- 2026-11-02
OSV
8.8
Sandbox protection in Jenkins Script Security Plugin 1.70 and earlier could be circumvented through crafted method calls on objects that implement GroovyInterceptable.
- Record
CVE-2020-2135- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-qvhf-3567-pc4v
8.8
Sandbox bypass vulnerability in Script Security Plugin
Sandbox protection in Script Security Plugin 1.70 and earlier can be circumvented through:
- Crafted constructor calls and bodies (due to an incomplete fix of SECURITY-582)
- Crafted method calls on objects that implement
GroovyInterceptable
This allows attackers able to specify and run sandboxed scripts to execute arbitrary code in the context of the Jenkins controller JVM.
Script Security Plugin 1.71 has additional restrictions and sanity checks to ensure that super constructors cannot be constructed without being intercepted by the sandbox. In addition, it also intercepts method calls on objects that implement GroovyInterceptable as calls to GroovyObject#invokeMethod(String, Object), which is on the list of dangerous signatures and should not be approved for use in the sandbox.
- Record
GHSA-qvhf-3567-pc4v- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-693, CWE-863
- Updated
- 2026-11-02
OSVRHSA-2020:2478
8.8
Red Hat Security Advisory: OpenShift Container Platform 3.11 jenkins-2-plugins security update
- Record
RHSA-2020:2478- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVRHSA-2020:2737
8.8
Red Hat Security Advisory: OpenShift Container Platform 4.4.z jenkins-2-plugins security update
- Record
RHSA-2020:2737- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVRHSA-2020:3616
8.8
Red Hat Security Advisory: OpenShift Container Platform 4.3.35 jenkins-2-plugins security update
- Record
RHSA-2020:3616- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
org.jenkins-ci.plugins:script-securityMaven |
through 1.70 | 1.71 |
org.jenkins-ci.plugins:script-securityMaven |
before 1.71, plus listed versions 1.01.0-beta-11.0-beta-21.0-beta-31.0-beta-4 Show 45 moreShow less1.0-beta-51.0-beta-61.11.101.111.121.131.141.151.161.171.181.18.11.191.21.201.211.221.231.241.251.261.271.281.291.29.11.31.301.311.331.341.351.361.371.381.391.41.401.411.421.431.441.44.11.451.46 |
1.71 |
jenkins-2-pluginsRed Hat:openshift:3.11::el7 From an advisory covering 8 CVEs |
before 0:3.11.1591354111-1.el7 | 0:3.11.1591354111-1.el7 |
jenkins-2-pluginsRed Hat:openshift:4.4::el7 From an advisory covering 7 CVEs |
before 0:4.4.1592817009-1.el7 | 0:4.4.1592817009-1.el7 |
jenkins-2-pluginsRed Hat:openshift:4.3::el7 From an advisory covering 7 CVEs |
before 0:4.3.1597915133-1.el7 | 0:4.3.1597915133-1.el7 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2020-2135 is a high vulnerability (CVSS 8.8) in Jenkins Script Security, published March 9, 2020. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.01%, the 63rd percentile. Fixed in org.jenkins-ci.plugins:script-security 1.71.
References
jenkins.io/security/advisory/2020-03-09
openwall.com/lists/oss-security/2020/03/09/1
nvd.nist.gov/vuln/detail/CVE-2020-2135
github.com/jenkinsci/script-security-plugin/commit/5b1969e0bdf5cde04a165b847144756b28495788
github.com/advisories/GHSA-qvhf-3567-pc4v
github.com/jenkinsci/script-security-plugin
Show 41 moreShow less
access.redhat.com/errata/RHSA-2020:2478
access.redhat.com/security/updates/classification
bugzilla.redhat.com/show_bug.cgi?id=1819074
bugzilla.redhat.com/show_bug.cgi?id=1819078
bugzilla.redhat.com/show_bug.cgi?id=1819091
bugzilla.redhat.com/show_bug.cgi?id=1819093
bugzilla.redhat.com/show_bug.cgi?id=1819095
bugzilla.redhat.com/show_bug.cgi?id=1819105
bugzilla.redhat.com/show_bug.cgi?id=1819652
bugzilla.redhat.com/show_bug.cgi?id=1819704
security.access.redhat.com/data/csaf/v2/advisories/2020/rhsa-2020_2478.json
access.redhat.com/security/cve/CVE-2019-10392
cve.org/CVERecord?id=CVE-2019-10392
nvd.nist.gov/vuln/detail/CVE-2019-10392
jenkins.io/security/advisory/2019-09-12
access.redhat.com/security/cve/CVE-2019-16538
cve.org/CVERecord?id=CVE-2019-16538
nvd.nist.gov/vuln/detail/CVE-2019-16538
jenkins.io/security/advisory/2019-11-21
access.redhat.com/security/cve/CVE-2020-2109
cve.org/CVERecord?id=CVE-2020-2109
nvd.nist.gov/vuln/detail/CVE-2020-2109
jenkins.io/security/advisory/2020-02-12
access.redhat.com/security/cve/CVE-2020-2110
cve.org/CVERecord?id=CVE-2020-2110
nvd.nist.gov/vuln/detail/CVE-2020-2110
access.redhat.com/security/cve/CVE-2020-2111
cve.org/CVERecord?id=CVE-2020-2111
nvd.nist.gov/vuln/detail/CVE-2020-2111
access.redhat.com/security/cve/CVE-2020-2134
cve.org/CVERecord?id=CVE-2020-2134
nvd.nist.gov/vuln/detail/CVE-2020-2134
access.redhat.com/security/cve/CVE-2020-2135
cve.org/CVERecord?id=CVE-2020-2135
access.redhat.com/security/cve/CVE-2020-2136
cve.org/CVERecord?id=CVE-2020-2136
nvd.nist.gov/vuln/detail/CVE-2020-2136
access.redhat.com/errata/RHSA-2020:2737
security.access.redhat.com/data/csaf/v2/advisories/2020/rhsa-2020_2737.json
access.redhat.com/errata/RHSA-2020:3616
security.access.redhat.com/data/csaf/v2/advisories/2020/rhsa-2020_3616.json
Left out here: 47 versions. The JSON record has them.