Improper access control in Script Security - CVE-2019-1003000
Published: October 7, 2019 / Updated: June 17, 2021
Vulnerability details
The vulnerability allows a remote attacker to bypass sandbox restrictions.
The vulnerability exists due to improper access restrictions in "src/main/java/org/jenkinsci/plugins/scriptsecurity/sandbox/groovy/GroovySandbox.java" when applying AST transforming annotations such as @Grab to source code elements. A remote authenticated attacker with Overall/Read permission, or able to control Jenkins file or sandboxed Pipeline shared library contents in SCM, can bypass the sandbox protection and execute arbitrary code on the Jenkins master.
Affected software
How to mitigate CVE-2019-1003000
Links to Public Exploits and PoC-codes
- Exploit #6028 - Jenkins 2.137 and Pipeline Groovy Plugin 2.61 - ACL Bypass and Metaprogramming Remote Code Execution (Metasploit) (June 17, 2021)
- Exploit #5950 - Jenkins Plugin Script Security 1.49/Declarative 1.3.4/Groovy 2.60 - Remote Code Execution (June 17, 2021)
- Exploit #2346 - cve-2019-1003000-jenkins-rce-poc (Jenkins RCE Proof-of-Concept: SECURITY-1266 / CVE-2019-1003000 (Script Security), CVE-2019-1003001 (Pipeline: Groovy), CVE-2019-1003002 (Pipeline: Declarative)) (April 7, 2020)
- Exploit #2217 - Exploit-Development (CVE-2020-8012, CVE-2016-10709, CVE-2017-17099, CVE-2017-18047, CVE-2019-1003000, CVE-2018-1999002) (March 18, 2020)
- Exploit #1551 - Jenkins ACL Bypass and Metaprogramming RCE (March 18, 2020)