SCMs support a number of different URL schemes, including local file system paths (e.g. using file:
URLs).
Historically in Jenkins, only agents checked out from SCM, and if multiple projects share the same agent, there is no expected isolation between builds besides using different workspaces unless overridden. Some Pipeline-related features check out SCMs from the Jenkins controller as well.
This allows attackers able to configure pipelines to check out some SCM repositories stored on the Jenkins controllerβs file system using local paths as SCM URLs, obtaining limited information about other projectsβ SCM contents.
www.openwall.com/lists/oss-security/2022/05/17/8
github.com/jenkinsci/git-plugin/commit/b295606e0b865c298fde27bea14f9b7535a976e6
github.com/jenkinsci/mercurial-plugin/commit/55904fbb8c9d3e0b36fc26330374904cb68e8758
github.com/jenkinsci/repo-plugin
github.com/jenkinsci/repo-plugin/commit/8c9cbb88baffc64d1b63183235eb86c773108235
nvd.nist.gov/vuln/detail/CVE-2022-30949
www.jenkins.io/security/advisory/2022-05-17/#SECURITY-2478