Description
Blue Ocean allows the creation of GitHub organization folders that are set up to scan a GitHub organization for repositories and branches containing a Jenkinsfile, and create corresponding pipelines in Jenkins. Its SCM content REST API supports the pipeline creation and editing feature in Blue Ocean. The SCM content REST API did not check the current user's authentication or credentials. If the GitHub organization folder was created via Blue Ocean, it retained a reference to its creator's GitHub credentials. This allowed users with read access to the GitHub organization folder to create arbitrary commits in the repositories inside the GitHub organization corresponding to the GitHub organization folder with the GitHub credentials of the creator of the organization folder. Additionally, users with read access to the GitHub organization folder could read arbitrary file contents from the repositories inside the GitHub organization corresponding to the GitHub organization folder if the branch contained a Jenkinsfile (which could be created using the other part of this vulnerability), and they could provide the organization folder name, repository name, branch name, and file name.
Remediation
References
https://jenkins.io/security/advisory/2017-08-07/
Related Vulnerabilities
CVE-2021-30180 Vulnerability in maven package org.apache.dubbo:dubbo
CVE-2023-49372 Vulnerability in maven package com.jfinal:jfinal
CVE-2018-1000109 Vulnerability in maven package org.jenkins-ci.plugins:google-play-android-publisher
CVE-2016-4436 Vulnerability in maven package org.apache.struts:struts2-rest-plugin
CVE-2022-38648 Vulnerability in maven package org.apache.xmlgraphics:batik-bridge