This advisory announces vulnerabilities in the following Jenkins deliverables:
SECURITY-655 / CVE-2018-1000008 (PMD)
SECURITY-656 / CVE-2018-1000009 (Checkstyle)
SECURITY-657 / CVE-2018-1000010 (DRY)
SECURITY-658 / CVE-2018-1000011 (FindBugs)
SECURITY-695 / CVE-2018-1000012 (Warnings)
Multiple plugins based on Static Analysis Utilities plugin are affected by an XML External Entity (XXE) processing vulnerability. This allows attacker to configure build processes such that one of these plugins parses a maliciously crafted file that uses external entities for extraction of secrets from the Jenkins controller, server-side request forgery, or denial-of-service attacks.
External entity resolution has been disabled for these plugins.
SECURITY-607 / CVE-2018-1000013
Release plugin did not require form submissions to be submitted via POST, resulting in a CSRF vulnerability allowing attackers to trigger release builds.
Access to the form action URL now requires POST.
SECURITY-507 / CVE-2018-1000014
Translation Assistance plugin did not require form submissions to be submitted via POST, resulting in a CSRF vulnerability allowing attackers to override localized strings displayed to all users on the current Jenkins instance if the victim is a Jenkins administrator.
Access to the form action URL now requires POST.
SECURITY-675 / CVE-2018-1000015
On instances with Authorize Project plugin, the authentication associated with a build may lack the Computer/Build permission on some agents.
This did not prevent the execution of node
blocks on those agents due to incorrect permissions checks in Pipeline: Nodes and Processes plugin.
Build permissions on agents are now properly enforced for node
steps.
SECURITY-624 and SECURITY-694
Ant plugin failed to escape tool names it shows on job configuration screens, resulting in a cross-site scripting (XSS) vulnerability that is exploitable only by Jenkins administrators.
This is the same vulnerability that was announced without a fix on 2017-12-05. Contrary to what we wrote in that security advisory, Ant Plugin shows both the JDK and Ant tools on the configuration screen, and the vulnerability in Ant plugin was responsible for both problems we confirmed in the previous advisory.
Ant plugin now correctly escapes tool names shown on the job configuration screen.
These versions include fixes to the vulnerabilities described above. All prior versions are considered to be affected by these vulnerabilities unless otherwise indicated.
The Jenkins project would like to thank the reporters for discovering and reporting these vulnerabilities: